778 Commits

Author SHA1 Message Date
morkt
f6fd50bae8 (MioAudio): relaxed signature check. 2016-01-25 09:03:16 +04:00
morkt
3a5b3f7ca0 implemented 'Nemesis' compression. 2016-01-25 09:02:39 +04:00
morkt
0b1f554660 implemented LINK3 archives and AP-2 images. 2016-01-24 04:10:39 +04:00
morkt
8469deef17 implemented DAF2 archives. 2016-01-22 02:34:07 +04:00
morkt
c8a656e172 (DatOpener): additional sanity check. 2016-01-21 15:30:32 +04:00
morkt
dbd95d62e3 (EAGLS): auto-detect CG archive encryption scheme. 2016-01-21 15:30:06 +04:00
morkt
10e3846f51 (GdOpener.TryOpen): adjusted entries name format. 2016-01-20 01:05:02 +04:00
morkt
25c584d2ca (ArcAI5Opener.OpenEntry): decompress entries. 2016-01-20 01:04:00 +04:00
morkt
689b1d48d1 (WagOpener.GenerateKey): banished 'index' argument. 2016-01-18 20:43:38 +04:00
morkt
38e87316ab additional sanity checks. 2016-01-18 20:35:43 +04:00
morkt
2bae9b188b implemented GD archives. 2016-01-18 20:34:45 +04:00
morkt
bb49a1376a (AutoEntry): file type detection moved to separate method. 2016-01-18 20:27:40 +04:00
morkt
15d17e80be (WagOpener.GenerateKey): fixed key generation for non-ascii characters. 2016-01-17 23:52:16 +04:00
morkt
a8491dcbfc (BinOpener): adjusted sanity checks. 2016-01-17 23:34:37 +04:00
morkt
dc95bd18d4 description fix. 2016-01-17 23:33:13 +04:00
morkt
53501d5bb2 implemented AOIBX10 script containers. 2016-01-17 15:21:48 +04:00
morkt
6f0a334b05 implemented VFS archives and AOG audio files. 2016-01-17 12:11:17 +04:00
morkt
4901741a7e adjusted file signature check. 2016-01-17 12:09:58 +04:00
morkt
81b1793bc5 (WagOpener): use shortcut methods. 2016-01-16 17:16:26 +04:00
morkt
e80d8c3366 (LzReader): implement IDisposable interface. 2016-01-16 17:14:45 +04:00
morkt
e2cb4424c7 (ParallelCbgDecoder): implement IDisposable interface. 2016-01-16 17:14:24 +04:00
morkt
749aca45cd (MioInput.Dispose): dispose of m_worker. 2016-01-16 17:13:06 +04:00
morkt
54883418e2 (MskFormat): fixed sanity check. 2016-01-16 17:12:19 +04:00
morkt
a1a9a17703 implemented encrypted AZ system archives and TYP1 images. 2016-01-15 11:56:10 +04:00
morkt
04aa35e638 (ArcOpener): use ArcView.ReadBytes shortcut method. 2016-01-15 11:51:35 +04:00
morkt
c9ab33addf implemented VAFS archives and BPIC images. 2016-01-15 11:49:20 +04:00
morkt
526904af29 (PrefixStream): don't seek over unseekable streams. 2016-01-15 11:48:50 +04:00
morkt
632d4b4602 another XP3 encryption scheme. 2016-01-12 02:25:00 +04:00
morkt
fa5015c1e8 (LwgOpener): moved to separate source file. 2016-01-10 02:46:58 +04:00
morkt
bc737cd19d implemented SNN+INX archives and ZBM images. 2016-01-10 02:39:55 +04:00
morkt
0e17348a7d (LpkOpener): shortened some methods calls. 2016-01-10 02:37:28 +04:00
morkt
24a9594273 (WcgFormat.Reader): use BitStream class. 2016-01-10 02:34:52 +04:00
morkt
83f6f469e5 (LwgOpener): filenames stored in Shift-JIS encoding. 2016-01-10 02:33:42 +04:00
morkt
ca269364ae fixed stride calculation for 8-bit GGD images. 2016-01-10 02:30:17 +04:00
morkt
a1ac261ce7 fixed reading of AST index with zero-length entries. 2016-01-10 02:29:20 +04:00
morkt
0833259e3b updated year. 2016-01-10 02:21:07 +04:00
morkt
f85cf12fcd released v1.2.12 2016-01-07 18:08:46 +04:00
morkt
1fa643b628 implemented another variant of ELG images. 2016-01-06 19:54:00 +04:00
morkt
eac5f21bd6 (LpkOpener): minor fixes.
use Binary.Rotate methods;
ignore 'WholeCrypt' flag for "patch.lpk" archives.
2016-01-06 19:50:43 +04:00
morkt
7e4425cb13 (GrFormat): handle zero image size field. 2016-01-06 19:33:42 +04:00
morkt
664f7ca415 additional sanity checks to reduce false positives. 2016-01-05 23:55:58 +04:00
morkt
d1e6ee4a35 implemented Xuse audio archives. 2016-01-05 23:54:54 +04:00
morkt
d04169d729 implemented another WA1 format. 2016-01-05 23:51:34 +04:00
morkt
95448329d8 implemented ANT bitmaps. 2016-01-05 23:50:36 +04:00
morkt
6831125278 (DrgFormat): fixed stride calculation and tweaked decoder. 2015-12-29 09:54:31 +04:00
morkt
36ebffb010 huffman tree implementation moved to separate class. 2015-12-28 10:54:38 +04:00
morkt
7078e586be (IBitStream): new interface. 2015-12-28 10:52:44 +04:00
morkt
808e737576 (ParallelCbgDecoder): new internal class. 2015-12-28 00:58:12 +04:00
morkt
294a8d2581 use parallel tasks to decode CompressedBG. 2015-12-27 23:47:22 +04:00
morkt
b24a91a57f (ArcOpener): use ImageFormat.FindByTag shortcut method. 2015-12-27 18:38:00 +04:00
morkt
583b2f60b3 (DscDecoder): tweaked huffman decompression. 2015-12-27 18:37:18 +04:00
morkt
ddbc68d941 implemented CompressedBG images version 2. 2015-12-27 18:34:05 +04:00
morkt
da7a5f8898 (BitStream.CacheSize): new property.
returns number of bits currently buffered.
2015-12-27 18:30:54 +04:00
morkt
7ff67b1922 implemented Tmr-Hiro PAC archives. 2015-12-23 19:48:21 +04:00
morkt
bf676b9198 (ReadIndexV2): use Binary.GetCString instead of ArcView.ReadString.
temporary buffer allocation within ArcView.ReadString makes reading of
large indices (20000+ entries) somewhat slow.
2015-12-23 09:42:08 +04:00
morkt
ab0ef6f3c5 flags are actually bitflags. 2015-12-23 09:39:51 +04:00
morkt
0b89f83742 (Xp3Opener): entry considered encrypted if cipher isn't "NoCrypt". 2015-12-23 09:37:16 +04:00
morkt
87dd1792ce (MblOpener): use ImageFormat.FindByTag shortcut. 2015-12-22 09:11:58 +04:00
morkt
9520f312b7 implemented ESC-ARC archives. 2015-12-20 09:33:51 +04:00
morkt
27c07a3821 (ArcOpener): use some shortcut methods. 2015-12-20 09:29:04 +04:00
morkt
b592a7dd52 (BinOpener): refined LZW decompression. 2015-12-20 09:27:30 +04:00
morkt
d2e7882e6d (YpfOpener): support YSTB scripts decryption. 2015-12-20 06:31:20 +04:00
morkt
12aa9eade5 added another XP3 encryption scheme. 2015-12-19 06:39:13 +04:00
morkt
32cae5a2f3 fixed SwapTable10. 2015-12-18 14:12:17 +04:00
morkt
923f520814 support different schemes for YPF archives. 2015-12-18 13:39:26 +04:00
morkt
0a118f6911 (TryOpen): use IsSaneCount method. 2015-12-18 13:32:18 +04:00
morkt
b951729993 implemented YCG images. 2015-12-18 13:31:26 +04:00
morkt
c93d8c3076 DET archives are hierarchic. 2015-12-15 00:48:21 +04:00
morkt
4969c7023e generalized CPZ archives access.
support different encryption schemes.
2015-12-12 18:25:50 +04:00
morkt
6613f11461 (Pb3Reader.Unpack): throw InvalidEncryptionScheme on unknown type id. 2015-12-12 18:18:10 +04:00
morkt
63c57cccce released v1.2.11 2015-12-11 16:33:05 +04:00
morkt
03e9e5f7b9 should do something with two signature declarations. 2015-12-10 20:03:47 +04:00
morkt
a086c699de (OpenEntry): use Binary.RotByteR method. 2015-12-10 20:00:02 +04:00
morkt
69382f33b9 implemented Favorite BIN archives and HZC1 images. 2015-12-09 18:30:17 +04:00
morkt
0b9391e59a (TgaStream): interpret 8bpp images as grayscaled. 2015-12-09 17:59:22 +04:00
morkt
17e9273e3e (BinOpener): changed credentials. 2015-12-08 22:41:07 +04:00
morkt
95e649ca59 (OggInput): override Dispose method. 2015-12-08 22:40:00 +04:00
morkt
74cfcfe78c (Mp3Input): adjusted Dispose method. 2015-12-08 22:38:59 +04:00
morkt
4ef415935f renamed ArcInnGrey to ArcPACKDAT. 2015-12-08 21:42:53 +04:00
morkt
9e26853c46 ArcFVP moved into separate folder. 2015-12-08 21:41:09 +04:00
morkt
341800cda9 implemented G2 archives and PGX images. 2015-12-08 21:19:13 +04:00
morkt
cf0d6e9e3c (Xp3Opener): altered signature lookup within executables.
archives could reside within executable resources and not necessarily on
the 16-bytes boundary.
2015-12-07 18:26:19 +04:00
morkt
92caed4901 (IntOpener.TryOpen): clear directory before attempting new entry size. 2015-12-07 18:20:36 +04:00
morkt
853ed0eaa8 (ICrypt.ObfuscatedIndex): new virtual property. 2015-12-07 00:29:45 +04:00
morkt
7916c171c1 (Xp3Stream): fixed compressed segments reading.
bug prevented decompression when compressed size was larger than
original.
2015-12-07 00:00:47 +04:00
morkt
d462cf2269 implemented MCA and CLM images. 2015-12-06 22:30:18 +04:00
morkt
2dae9872ef use Binary.RotByteL method where appropriate. 2015-12-06 22:28:13 +04:00
morkt
fd18f21b40 (TgaStream): added Create method for images with non-default stride. 2015-12-06 22:24:14 +04:00
morkt
f87944b7e1 implemented VSD video (AI5WIN engine).
implemented as an archive containing single MPG file.
2015-12-03 16:19:57 +04:00
morkt
7e30141e94 implemented CPZ archives and PB3 images (#10) 2015-12-03 16:16:54 +04:00
morkt
007b835320 (MMX.PSlld): shift count limited to 32 bits. 2015-12-03 15:54:09 +04:00
morkt
af9ec6f096 (ArcAI5Opener): scheme definitions moved to external project. 2015-12-03 15:52:50 +04:00
morkt
8bdde818c9 (KiriKiri): implemented Natsupochi encryption. 2015-11-30 03:55:17 +04:00
morkt
bfc1d4e5ee implemented HG2 images containing multiple frames. 2015-11-30 03:52:18 +04:00
morkt
3a6f30f316 use TgaStream.Create where appropriate. 2015-11-30 03:50:03 +04:00
morkt
abe08cd457 (TgaStream): new static class.
create TGA image stream from the given image meta-data and pixels array.
2015-11-30 03:41:20 +04:00
morkt
ca919c1ee9 implemented CatSystem HG2 images. 2015-11-29 12:28:12 +04:00
morkt
bc0af8d910 overhauled HG3 reader. 2015-11-29 12:27:49 +04:00
morkt
da51f3d7b2 (AkbReader.Unpack): simplified if/else branching. 2015-11-29 09:05:03 +04:00
morkt
dea492a27f support old INT archives with different index entry size. 2015-11-29 07:29:45 +04:00
morkt
5f8fd31d20 implemented Pulltop ARC archives (#12). 2015-11-29 05:30:28 +04:00
morkt
91ef658397 (AkbFormat): reading moved to a separate class AkbReader. 2015-11-29 01:53:31 +04:00
morkt
3b5d19fa98 implemented AI6WIN ARC archives and AKB images. 2015-11-28 16:35:49 +04:00
morkt
e7814ba985 implemented PK archives and MAG images.
"BANANA Shu-Shu" formats
2015-11-28 08:12:08 +04:00
morkt
82d491155d (KiriKiri): implemented Altered Pink encryption. 2015-11-28 07:30:47 +04:00
morkt
7ca6a5d1a4 released v1.2.10 2015-11-28 01:46:23 +04:00
morkt
452cf3b807 implemented PBX "Pandora.box" archives. 2015-11-27 06:06:37 +04:00
morkt
c1bfb00249 (TryOpen): set IsPacked property. 2015-11-26 02:25:00 +04:00
morkt
2f7706f228 implemented Kaguya "AO" images. 2015-11-24 17:02:26 +04:00
morkt
0924d385e8 implemented "MCG 1.01" images. 2015-11-23 21:31:10 +04:00
morkt
bcc3583885 (MrgOpener.Decrypt): added array range parameters. 2015-11-23 21:29:35 +04:00
morkt
203172be77 renamed some common string resources. 2015-11-23 21:28:32 +04:00
morkt
ff00799d2d (MrgOpener): decryption moved to a static method. 2015-11-23 14:51:56 +04:00
morkt
111ffab7ac implemented sudio e.go! PAK0 archives. 2015-11-22 18:30:49 +04:00
morkt
84447709c7 comment 2015-11-22 18:23:47 +04:00
morkt
c40e7ae9f7 moved into separate folder. 2015-11-22 10:30:41 +04:00
morkt
383439403e added CHERRY PACK 3 image variant. 2015-11-22 06:28:04 +04:00
morkt
5e55256d8e implemented "CHERRY PACK 3.0" archives. 2015-11-22 06:27:09 +04:00
morkt
3110f78e6d (ArcOpener.IsScriptFile): separate method to check script filenames. 2015-11-21 23:47:30 +04:00
morkt
c461da3cd7 implemented propeller MPK archives and MGR images. 2015-11-21 10:27:36 +04:00
morkt
aed3a38bf8 (Hg3Reader.ApplyDelta): replaced 4 tables with one multi-dimensional array. 2015-11-21 10:25:42 +04:00
morkt
1f7e1e9f50 (IntOpener.DecipherName): check for array bounds. 2015-11-20 17:47:02 +04:00
morkt
33e83b196d implemented key extraction from executable resources for encrypted INT archives. 2015-11-20 01:01:25 +04:00
morkt
5a5c10d91a (Pak2Opener.OpenEntry): removed unused local var. 2015-11-20 00:44:57 +04:00
morkt
69f3e2777d (GrpReader): added another header variation. 2015-11-19 11:42:54 +04:00
morkt
00f8965a9d separated "CHERRY PACK 2.0" archives implementation.
support archives with encrypted index.
2015-11-19 11:41:47 +04:00
morkt
65ae716469 (AutoEntry): don't return file type for ambiguously detected files. 2015-11-19 11:35:02 +04:00
morkt
16670c872f (AniOpener): extract animation frames using key frames. 2015-11-18 06:52:12 +04:00
morkt
ce7cd94814 (DwqFormat): added 'IF PACKTYPE==' format variation. 2015-11-18 01:34:09 +04:00
morkt
2eea046139 (VawAudio.TryOpen): don't dispose intermediate stream on error. 2015-11-18 01:29:55 +04:00
morkt
2b592c89f3 refactored INT archives implementation. 2015-11-17 21:33:24 +04:00
morkt
a67f319694 implemented Adobe Photoshop PSD images. 2015-11-17 21:31:09 +04:00
morkt
3f900739f9 (DwqBmpReader): fixed indexed images reading. 2015-11-17 21:21:23 +04:00
morkt
152e180f0b (AbmFormat.ReadMetaData): ignore ordinary BMP files. 2015-11-15 14:09:31 +04:00
morkt
d63477801b (AwfOpener): prepend WAVE header to audio files. 2015-11-15 14:08:01 +04:00
morkt
83ebaec6be (PcmAudio): refined signature check. 2015-11-15 14:06:34 +04:00
morkt
3ad0b80d0f implemented old Eushully archives. 2015-11-13 11:44:12 +04:00
morkt
8f6d2963bb (NsaOpener.ReadIndex): abort on zero-length file name. 2015-11-13 11:41:02 +04:00
morkt
81b604b54d implemented IPH image format. 2015-11-12 09:37:17 +04:00
morkt
1221269919 (PacOpener): set default archive extension to "pac". 2015-11-12 09:35:57 +04:00
morkt
2f8c18f6d8 implemented WA2 audio format. 2015-11-11 22:38:38 +04:00
morkt
505dc64fe9 (Wa1Reader.SampleTable): made accessible from internal classes. 2015-11-11 22:32:06 +04:00
morkt
5cfa6243c8 implemented PT1 images version 3. 2015-11-11 20:52:19 +04:00
morkt
58718944ab released v1.2.9 2015-11-11 12:56:31 +04:00
morkt
a3f07173a5 implemented μ-GOS bitmaps. 2015-11-11 12:48:13 +04:00
morkt
09c5b82b76 implemented DET archives. 2015-11-09 04:14:37 +04:00
morkt
8735d234f7 implemented HXP archives. 2015-11-09 00:11:29 +04:00
morkt
fb24c0363b (SafOpener): ignore archives with no entries. 2015-11-09 00:10:34 +04:00
morkt
85282b82d9 (ArcOpener): allow zero-length entries. 2015-11-09 00:08:55 +04:00
morkt
bccc8303ae implemented NFS archives and NGP images. 2015-11-08 17:34:41 +04:00