Commit Graph

1067 Commits

Author SHA1 Message Date
morkt
372a1336da (PicFormat): read image coordinates. 2016-02-10 07:15:12 +04:00
morkt
ce7a34648d (PakOpener): use GameRes short methods. 2016-02-10 07:13:58 +04:00
morkt
c54f59a05a implemented another version of NEKOPACK archives. 2016-02-09 10:18:54 +04:00
morkt
77af4a7f50 (MMX): added PSubB, PSubW and PSubD methods. 2016-02-09 09:56:51 +04:00
morkt
c559dbccee (NsaOpener.OpenEntry): use StreamRegion instead of MemoryStream. 2016-02-08 09:24:02 +04:00
morkt
c0afc205ee removed NScripter.ViewStream class as it duplicates functionality of the ArcView.ArcStream 2016-02-08 09:18:21 +04:00
morkt
1b5e682fe7 (ArcView.ArcStream): don't limit stream size to uint.MaxValue. 2016-02-08 09:14:43 +04:00
morkt
17ffc41a75 implemented ADS archives. 2016-02-07 19:24:28 +04:00
morkt
9b90903100 (ViewStream): use ArcView.Frame as backend. 2016-02-07 19:18:44 +04:00
morkt
89e7d14a97 (DatOpener): added another possible signature. 2016-02-07 19:16:46 +04:00
morkt
05837d28ba released v1.2.13 2016-02-07 09:58:51 +04:00
morkt
9b4e4a9089 (ReadMetaData): section header is 16 bytes long. 2016-02-07 09:37:25 +04:00
morkt
dca410a260 (SaiminCrypt): switched hex constants to decimals. 2016-02-07 09:32:55 +04:00
morkt
ac18fccfc0 fixed transparency handling. 2016-02-07 04:34:22 +04:00
morkt
9eeec45c0f implemented zlib-compressed XPCM audio. 2016-02-07 04:30:31 +04:00
morkt
81e4637750 adjusted CRXG interpreter. 2016-02-05 18:08:59 +04:00
morkt
840751b703 implemented Circus PCK archives. 2016-02-05 17:28:56 +04:00
morkt
54fbad25aa implemented CRX images version 2. 2016-02-05 15:53:01 +04:00
morkt
d0b4b1e8a5 variation of Circus resource archives. 2016-02-05 15:51:43 +04:00
morkt
693d4dfa59 implemented 'Moko Pro' compressed resources. 2016-02-05 06:08:54 +04:00
morkt
9f4459441c (KiriKiri): encryption algorithms implementations moved to a separate file. 2016-02-04 12:18:19 +04:00
morkt
01874b69ae (DecryptScript): dispose of the input stream after decryption is done. 2016-02-04 10:36:27 +04:00
morkt
4262db76fb (Xp3Opener): decrypt text entries. 2016-02-04 09:40:42 +04:00
morkt
fc6192bb2f (GpFormat.ReadMetaData): stricter sanity check. 2016-02-04 06:00:46 +04:00
morkt
7756f8d8e8 use ArView.ReadBytes and Binary.RotR shortcut methods. 2016-02-04 05:59:55 +04:00
morkt
f502e9578c implemented CGF and IAF image sets. 2016-02-04 05:58:47 +04:00
morkt
0fe5d01ed7 (VafsOpener): added TP.055 audio decoder. 2016-02-03 12:12:19 +04:00
morkt
6bfd5c285f (PakOpener): determine BMR-compressed entries earlier. 2016-02-01 22:43:41 +04:00
morkt
a4279005a6 (OpenEntry): recognize actual WAV files. 2016-02-01 08:31:23 +04:00
morkt
2e21deb2db (OpenAudioEntry): fixed channel positioning. 2016-02-01 06:11:08 +04:00
morkt
2df23d677e (VafsOpener): implemented audio entries decoding. 2016-02-01 05:53:25 +04:00
morkt
721a644f42 (DetectFileType): removed 'new' qualifier. 2016-02-01 05:52:27 +04:00
morkt
c364325dad (VafsOpener): detect PicFormat images. 2016-01-31 06:24:38 +04:00
morkt
db78e57c41 (PicFormat): removed "pic" from extensions list. 2016-01-31 06:22:34 +04:00
morkt
6d508f8595 (AutoEntry.DetectFileType): changed arguments. 2016-01-31 06:20:34 +04:00
morkt
9b6c4ddff0 implemented image format used in Softpal archives (VAFSH). 2016-01-31 02:58:23 +04:00
morkt
00f4fd6e23 implemented PCS archives. 2016-01-29 18:28:58 +04:00
morkt
74a8964353 (EriFormat): implemented reference-based images (#14) 2016-01-27 11:46:49 +04:00
morkt
82f7c2de16 (ProbDecodeContext): moved member declaration to class where it actually used. 2016-01-27 11:39:17 +04:00
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
morkt
a44c9b15a5 (MioDecoder.DecodeSoundPCM16): use unsafe block to pack 16-bit samples into byte array. 2015-11-07 14:40:40 +04:00
morkt
4543d06841 fixed 16-bit PCM decoder. 2015-11-07 14:07:04 +04:00
morkt
6b8a402ce2 (AbmpOpener): various fixes. 2015-11-07 09:22:38 +04:00
morkt
d23a67ea08 implemented "strong" QLIE archives encryption. 2015-11-07 03:11:26 +04:00
morkt
2d2da5e3e5 (AosOpener): recognize compressed ABM images. 2015-11-07 03:05:35 +04:00
morkt
247f067737 implemented DPNG tiled image format. 2015-11-07 00:31:13 +04:00
morkt
2c3a2b5a68 added modified Mersenne Twister for QLIE archives decryption. 2015-11-07 00:26:04 +04:00
morkt
2871af397a (BipFormat.Read): refactored. 2015-11-07 00:18:31 +04:00
morkt
6e11938080 (AbmpOpener): fixed contents parsing. 2015-11-07 00:15:08 +04:00
morkt
682be864fa (MMX): added paddb and pslld instructions. 2015-11-07 00:14:03 +04:00
morkt
99ae2f3e4e implemented recent version of FFA System/G-Sys archives. 2015-11-06 02:50:32 +04:00
morkt
ce559e7ea4 partially implemented AWF audio archives. 2015-11-06 02:38:45 +04:00
morkt
bb3a0af09d implemented AnimeGameSystem resources. 2015-11-05 21:46:15 +04:00
morkt
379dab350d implemented AnimeGameSystem audio format. 2015-11-05 21:30:03 +04:00
morkt
3a7537afd1 (CgFormat.Reader): use Binary.CopyOverlapped where applicable. 2015-11-05 21:25:27 +04:00
morkt
64b6312e0b ANI format implementation moved to AnimeGameSystem folder. 2015-11-05 06:25:31 +04:00
morkt
2938fc111f implemented ACTGS archives format. 2015-11-04 04:03:36 +04:00
morkt
68832d9544 fixed GYU decompression. 2015-11-04 04:01:04 +04:00
morkt
2b6f14d01b (GyuReader): use Binary.CopyOverlapped. 2015-11-02 09:43:43 +04:00
morkt
7aed98ed2f implemented GYU image format. 2015-11-02 05:51:04 +04:00
morkt
b3f7ab6784 (PakOpener): changed index offset type to avoid casts. 2015-11-02 05:48:28 +04:00
morkt
cacacd45dc (AbmOpener): pixel size depends on image 'type' field. 2015-11-02 05:46:59 +04:00
morkt
c6850236da another version of AOS archives. 2015-11-02 05:43:45 +04:00
morkt
87b5b3ebc8 (IarOpener.CombineImage): adjusted blending logic. 2015-11-02 05:41:55 +04:00
morkt
456971553a Mersenne Twister pseudorandom number generator. 2015-11-02 05:40:57 +04:00
morkt
6d22544732 (Arc2Opener): autodetect entry type. 2015-10-30 08:53:05 +04:00
morkt
7800b6fd3d corrected overlayed IAR images handling. 2015-10-30 04:52:56 +04:00
morkt
b9378e2d2b improved layered IAR images composition. 2015-10-29 19:58:46 +04:00
morkt
46631796b8 (AutoEntry.Create): ignore zero signatures. 2015-10-28 23:13:13 +04:00
morkt
6369489fc6 implemented ABMP multi-frame images. 2015-10-28 23:12:43 +04:00
morkt
0b0d27c628 QLIE archive implementation moved to a separate folder. 2015-10-28 02:51:21 +04:00
morkt
91af591363 implemented QLIE archives versions 1 and 3. 2015-10-28 02:49:44 +04:00
morkt
9e5990b118 added 'padd' MMX instructions emulation. 2015-10-28 00:51:55 +04:00
morkt
d1fa630f3d updated string resources. 2015-10-27 20:27:15 +04:00
mireado
fbefb7b542 Merge pull request #1 from mireado/master
arcStrings translation
2015-10-27 23:34:13 +09:00
mireado
1f57a07771 arcStrings translation 2015-10-27 23:28:18 +09:00
morkt
153da0d951 fixed compilation error. 2015-10-27 11:36:17 +04:00
morkt
68baeb5c22 (ChrOpener): added virtual char entries. 2015-10-27 10:26:09 +04:00
morkt
6730b14c98 implemented Palette PACK2 archives, PGA and CHR images 2015-10-26 22:17:12 +04:00
morkt
97c5849edd released v1.2.8 2015-10-26 03:19:35 +04:00
morkt
b5e535835d implemented GPK2 archives and GFB images. 2015-10-25 15:27:38 +04:00
morkt
1ea054050c changed image resource draft. 2015-10-25 15:24:05 +04:00
morkt
83b61f6d50 (IarImage.Blend): use Drawing.Rectangle instead of Windows.Rect structure. 2015-10-25 15:23:27 +04:00
morkt
b2b2d674dd (BsgMetaData): removed unused field. 2015-10-25 02:58:45 +04:00
morkt
e03d502008 (IarFormat.ReadMetaData): fixed offset sign. 2015-10-25 02:58:30 +04:00
morkt
ec9b17367d implemented layered IAR images. 2015-10-25 02:35:38 +04:00
morkt
00fe80b415 extended SEC5 resource index parser. 2015-10-25 01:31:19 +04:00
morkt
1ddb25ec3d (IndexReader): clear entries list and path before parsing. 2015-10-25 01:21:11 +04:00
morkt
d8a1109ddb implemented Bishop BSA archives and BSG images. 2015-10-24 20:20:24 +04:00
morkt
f901f8252f implemented IAR and WAR archives. 2015-10-24 15:54:07 +04:00
morkt
12d9ea4765 ignore errors in pre-build events. 2015-10-22 21:04:05 +04:00
morkt
48d38a5eaf Silky's bitmap mask format. 2015-10-20 15:15:27 +04:00
morkt
0a35f9acf6 (G24Format.ReadMetaData): fixed sanity check. 2015-10-20 15:15:08 +04:00
morkt
0dc038be69 (Hg3Opener.OpenEntry): flip image according to Hg3Reader. 2015-10-19 09:17:14 +04:00
morkt
4b2217d80c multi-frame HG-3 images could be opened as archives now. 2015-10-19 09:08:56 +04:00
morkt
19d707828c refactored HG-3 decoder. 2015-10-19 09:08:23 +04:00
morkt
a6832a6a8c (DatOpener.OpenEntry): decrypt only files with encrypted "PJADV" signature. 2015-10-19 09:06:54 +04:00
morkt
09f21a2fcc CherrySoft archives variations. 2015-10-19 09:05:26 +04:00
morkt
6b77284713 (PakOpener): decrypt script files. 2015-10-19 09:04:24 +04:00
morkt
75a85ee85a added LsbBitStream class. 2015-10-19 09:03:32 +04:00
morkt
c396b86c22 (StreamRegion): added leave_open argument to constructor. 2015-10-19 09:02:53 +04:00
morkt
5305c19354 (ArcAI5Opener): iterate through known schemes. 2015-10-14 10:38:21 +04:00
morkt
a5c359d922 implemented GP8 and G24 images. 2015-10-14 03:10:06 +04:00
morkt
04030a6e77 Elf.ArcOpener moved to Silky namespace. 2015-10-12 12:24:13 +04:00
morkt
2d1f18903a use ImageData.Create method instead of BitmapSource.Create. 2015-10-12 12:16:23 +04:00
morkt
42fdf330ee variation of Silky's ARC archives. 2015-10-12 06:53:14 +04:00
morkt
d8c9d84902 implemented PTI images (BMP with alignment between sections). 2015-10-12 06:51:49 +04:00
morkt
c92229b714 implemented ERISA decoder for ERI images. 2015-10-12 06:50:20 +04:00
morkt
8514f261cd refined SPDC entries matching. 2015-10-10 03:00:41 +04:00
morkt
f09921cd1d reduced unsafe block. 2015-10-10 02:46:02 +04:00
morkt
8711349c19 implemented TCD3 archives and SPDC images. 2015-10-10 02:33:09 +04:00
morkt
f433ff6fa2 implemented encrypted DX archives. 2015-10-08 04:58:23 +04:00
morkt
2b749500d5 implemented GLNK archives. 2015-10-08 04:56:11 +04:00
morkt
69658a505c check that index file name isn't same as a source file name. 2015-09-22 22:40:52 +04:00
morkt
de5bb88256 released v1.2.7 2015-09-21 22:13:34 +04:00
morkt
c1614d3706 (AlfOpener.TryOpen): recognize "sys3ini.bin" index file. 2015-09-21 21:48:44 +04:00
morkt
5edbc9aa3f implemented ALF archives and AGF images. 2015-09-21 17:56:27 +04:00
morkt
46fbd3928f (PakOpener): default extension set to "pak". 2015-09-21 17:56:00 +04:00
morkt
56ec975998 refined instdata.arc special case. 2015-09-20 08:22:01 +04:00
morkt
9371221b19 (ArcOpener.TryOpen): additional count sanity check. 2015-09-20 05:40:37 +04:00
morkt
ae900e22ea (NpaEntry): removed unused field. 2015-09-20 05:27:24 +04:00
morkt
6d8cbd594f (EriReader): removed unused fields. 2015-09-20 05:27:08 +04:00
morkt
61aa5cd1c2 AdvCls archives are a subset of Rpm archives. 2015-09-20 05:26:38 +04:00
morkt
888b81572b implemented Rpm engine archives. 2015-09-20 05:25:48 +04:00
morkt
2f3b80e744 ZLibStream moved to GameRes assembly. 2015-09-19 10:24:14 +04:00
morkt
2d85b8a9ef implemented Debonosu Works PAK archive. 2015-09-19 10:08:05 +04:00
morkt
809c43c564 removed unused usings. 2015-09-19 07:58:13 +04:00
morkt
26d7251705 fixed CxEncryption deserialization. 2015-09-18 08:47:28 +04:00
morkt
9a8bff184d implemented external storage of resource schemes. 2015-09-18 01:27:53 +04:00
morkt
2477f889a1 another Entis encryption scheme. 2015-09-16 09:29:38 +04:00
morkt
0002d55d7d (LzReader): slightly improved LZSS decompression performance. 2015-09-13 19:27:00 +04:00
morkt
3be1c106c0 SPL image format. 2015-09-10 04:37:31 +04:00
morkt
8cb813f6c9 fixed YH1 decompression. 2015-09-10 04:32:27 +04:00
morkt
a5a9d10678 WARC archive variation. 2015-09-09 22:06:55 +04:00
morkt
0fb2fa9a8a another CxDec encryption scheme.
Walpurgis
2015-09-06 09:04:02 +04:00
morkt
184208f496 implemented two more KiriKiri decryption schemes.
Haruiro ☆ Communication ♪
Zecchou Spiral!!
2015-09-06 05:39:01 +04:00
morkt
67b24e5823 check whether "tex" is a directory. 2015-09-05 10:03:34 +04:00
morkt
9be57a39ed miris archives implementation. 2015-09-03 17:40:10 +04:00
morkt
a647b68fed updated assembly versions to reflect VFS implementation. 2015-09-03 07:21:41 +04:00
morkt
503855b55b recognize more of Nexas archives. 2015-09-03 07:13:12 +04:00
morkt
40c280a23c (ZLibStream): dispose of supplied stream in case of initialization errors. 2015-09-03 07:05:55 +04:00
morkt
8105d7c59f (ReadBaseImage): use VFS.CombinePath() 2015-09-02 04:11:22 +04:00
morkt
4d48b25512 virtual file system migration. 2015-09-01 14:20:18 +04:00
morkt
ddfd5a117d (ReadIndex): clear directory index that was possibly partially-filled. 2015-09-01 14:14:39 +04:00
morkt
aa225cc967 implemented encrypted NSA archives. 2015-09-01 03:38:04 +04:00
morkt
47b3d6adf0 released v1.1.6 2015-08-31 01:22:50 +04:00
morkt
0a8a6247a4 implemented CompressedBG image format. 2015-08-31 01:09:27 +04:00
morkt
ff54563560 (DscDecoder): added Length property. 2015-08-31 01:06:40 +04:00
morkt
46dbf2b142 GameRes refactoring.
(FormatCatalog.CreateEntry): method renamed to 'Create' and made generic
towards Entry type.
2015-08-30 22:34:06 +04:00
morkt
4bfdc502e4 (BgiAudio.TryOpen): check stream position against file length. 2015-08-30 03:43:12 +04:00
morkt
46bd0a5e47 implemented Emic engine formats.
PAC archives / MWP bitmaps.
2015-08-30 03:39:01 +04:00
morkt
275652e3d7 fixed BGI huffman decompression. 2015-08-29 23:27:00 +04:00
morkt
a0ae95d1ef added BURIKO ARC20 archives reader. 2015-08-29 22:10:59 +04:00
morkt
fdd5a2aba6 BGI audio format interpreter moved to separate class. 2015-08-29 22:09:58 +04:00
morkt
5968f6cd24 set default extension to PAK. 2015-08-29 19:40:14 +04:00
morkt
036a5dd878 added Amber Quartz passphrase. 2015-08-29 19:39:27 +04:00
morkt
d67b4b05fa (DscDecoder): derive from MsbBitStream class. 2015-08-27 03:12:42 +04:00
morkt
29b0658460 (BinOpener.IsHierarchic): true 2015-08-27 03:11:32 +04:00
morkt
21c88e184d (Reset): new public method. 2015-08-27 03:07:38 +04:00
morkt
aadddecc9b renamed GSD folder [Game Script Decoder engine]. 2015-08-27 03:06:50 +04:00
morkt
4e5aed23d8 (YkcOpener): decrypt YKS script files. 2015-08-23 09:51:49 +04:00
morkt
ce27b2a5db YKG image format variation. 2015-08-23 09:50:49 +04:00
morkt
31842bdea5 implemented BDF multi-frame images. 2015-08-23 07:33:37 +04:00
morkt
b926bff7f5 removed superfluous usings. 2015-08-23 07:31:47 +04:00
morkt
5895886a8f Bit stream on top of the IO.Stream 2015-08-23 07:30:29 +04:00
morkt
7213e8d61e (PacOpener): decompress CMP1-compressed scripts. 2015-08-21 02:22:29 +04:00
morkt
18e7d1f849 slightly improved CMP1 decompression performance. 2015-08-21 02:21:31 +04:00
morkt
d38386ae16 added another ISF encryption scheme. 2015-08-20 21:19:20 +04:00
morkt
b05c253e8b reorganized project directory structure. 2015-08-19 21:40:32 +04:00
morkt
dd2c19c8c1 fixed GCE1 decompression. 2015-08-18 23:26:30 +04:00
morkt
42b5206def implemented GCEX archives and BGRA images. 2015-08-18 18:18:22 +04:00
morkt
718c20eb3d (WwaInput): implemented WWA decoder. 2015-08-18 00:18:40 +04:00
morkt
f5211b18c3 (WbmReader): stream i/o methods moved to separate class. 2015-08-18 00:17:50 +04:00
morkt
d526ef96fc (WbmFormat): added compression methods and alpha-channel support. 2015-08-17 23:08:02 +04:00
morkt
947e0a6664 preliminary WWA audio format implementation. 2015-08-17 23:06:54 +04:00
morkt
6acb80e5fd (WagOpener): strip possible drive specification from file names. 2015-08-17 07:08:49 +04:00
morkt
6b62a1701d (ArcOpener): report real file size as UnpackedSize. 2015-08-17 07:07:19 +04:00
morkt
f3902a4cf1 (HashCrypt): another encryption scheme.
simple xor against file hash value.
2015-08-17 07:06:16 +04:00
morkt
09c9b416ad implemented KG image format. 2015-08-17 07:03:43 +04:00
morkt
c63ca4d5e5 variation of the FPK archives. 2015-08-17 07:03:15 +04:00
morkt
74ea0ab92a implemented Xuse/Eternal WAG archives. 2015-08-15 18:34:31 +04:00
morkt
570f29da97 implemented YKC archives creation. 2015-08-14 21:48:46 +04:00
morkt
df5eea6683 (RctFormat): image data reading separated to ReadPixelsData method. 2015-08-14 21:47:33 +04:00
morkt
58dec16f25 (RctFormat.Read): use ImageMetaData.FileName to extract base file location. 2015-08-14 20:04:16 +04:00
morkt
d542fe3c59 (RctFormat): added support for "incremental" images.
doesn't work inside archives, requires filesystem abstraction layer.
2015-08-14 06:14:35 +04:00
morkt
4888a65349 implemented WAG archives. 2015-08-14 06:13:07 +04:00
morkt
9d457f99d6 implemented YKC archives and YKG images. 2015-08-14 06:12:35 +04:00
morkt
19b8c0015c (MblOpener): added static shortcut to PrsFormat. 2015-08-14 06:10:27 +04:00
morkt
5830c0d8a2 use FirstOrDefault() in linq query instead of Where(). 2015-08-14 06:09:04 +04:00
morkt
ba6b8b4f8e use ImageFormat.Png/AudioFormat.Wav shortcuts. 2015-08-14 06:07:55 +04:00
morkt
7fb26371e3 implemented Majiro RCT images decryption. 2015-08-12 01:33:51 +04:00
morkt
63e83447ff implemented Majiro archives version 3. 2015-08-12 01:28:24 +04:00
morkt
429ac63a30 Wild bug PCM audio format. 2015-08-11 17:49:10 +04:00
morkt
d41c9330f9 implemented Nitro+ PAK version 2 archives. 2015-08-11 17:44:18 +04:00
morkt
c20660583e implemented Xuse/Eternal resource archives. 2015-08-11 09:37:48 +04:00
morkt
9cdb4f0efe (IndexReader.ReadIndex): don't try to open *.ari index as archive body. 2015-08-11 07:08:19 +04:00
morkt
c5aee52d96 (DameganeCrypt): another decryption scheme. 2015-08-11 07:06:00 +04:00
morkt
0db69aea4e released v1.1.5 2015-08-07 14:55:35 +04:00
morkt
621ab35da1 (DwqFormat): improved BMP packtype support. 2015-08-07 11:45:03 +04:00
morkt
f0b327594b (DwqFormat): implemented BMP+MASK format.
read BMP images manually as they're not really BMPs suitable for
BmpBitmapDecoder.
2015-08-05 21:22:02 +04:00
morkt
3a96fd0efd (AbmOpener.TryOpen): prepend name of archive to contained filenames. 2015-08-05 21:19:57 +04:00
morkt
d72ed765b3 (DatOpener.TryOpen): do not lookup zero signatures. 2015-08-05 21:18:43 +04:00
morkt
126e037ac9 implemented ABM images. 2015-08-05 11:57:55 +04:00
morkt
e8ffc7d38e (S25Opener): removed constructor. 2015-08-05 11:54:44 +04:00
morkt
43406ffd66 implemented AOS resource archives. 2015-08-04 22:30:36 +04:00
morkt
321ac1cf69 (HuffmanDecoder) renamed some private fields. 2015-08-04 22:26:38 +04:00
morkt
db0902751a Entis code moved to separate source files. 2015-08-04 22:26:00 +04:00
morkt
0f30dfeb18 (DatOpener.OpenEntry): decrypt textdata.bin file. 2015-08-04 06:25:52 +04:00
morkt
3c032a8ae6 (WarOpener.Dump): removed in favor of the new static Dump class. 2015-08-03 22:47:56 +04:00
morkt
54d8d1cd86 added alternative version of the TACTICS_ARC_FILE. 2015-08-03 22:30:22 +04:00
morkt
1aa82884bd (LstOpener.OpenNexton): removed redundant check. 2015-08-03 22:29:14 +04:00
morkt
dd3d87aff7 (Dump): convenient class for tracing/debugging. 2015-08-03 22:26:26 +04:00
morkt
63bb1995ef (ArcOpener.OpenEntry): recognize *.wsc as script files. 2015-08-02 23:00:49 +04:00
morkt
47bc5b17b1 (ResourceHeader.Read): create class on return. 2015-08-02 22:59:57 +04:00
morkt
0ef85a0c94 added another parameter to encryption scheme.
patch Decode.bin with "date" 32-bit value.
2015-08-01 18:34:14 +04:00
morkt
ea245a054d (PakOpener): sanity checks. 2015-08-01 18:32:42 +04:00
morkt
1fc106c51a implemented Black Cyc resources.
VPK and GPK archives,
DWQ images,
VAW and WGQ audio files.
2015-08-01 18:32:07 +04:00
morkt
3342461ac6 (DatOpener.TryOpen): compare .lst filename against archive name. 2015-08-01 18:29:07 +04:00
morkt
2d22dbe946 implemented incremental compression of S25 images. 2015-08-01 00:24:04 +04:00
morkt
ea6eab502c added encryption schemes. 2015-08-01 00:23:04 +04:00
morkt
7838fc36f6 implemented elf AV King resources.
*.bin+*.pak archives,
HIZ and HIP images.
2015-08-01 00:22:06 +04:00
morkt
145de377b0 known passwords description update. 2015-08-01 00:20:55 +04:00
morkt
4c8ce07e1d fixed segment size sanity check. 2015-07-31 04:34:44 +04:00
morkt
f3173e87ac additional encryption schemes. 2015-07-31 04:34:08 +04:00
morkt
0f72ee702a updated assembly version to v1.1
major change: replaced ZLibNet assembly with System.IO.Compression.
2015-07-28 23:23:19 +04:00
morkt
ef50d4ac2f (ZLibStream): checksum is written correctly. 2015-07-28 23:22:16 +04:00
morkt
c5ba498983 (ArcOpener.IndexReader): try to guess archive encryption scheme. 2015-07-28 12:21:19 +04:00
morkt
002298bb93 replaced ZLibNet with .Net DeflateStream class. 2015-07-28 12:20:20 +04:00
morkt
8eea67faee RFC1950-compatible wrapper around DeflateStream class. 2015-07-28 12:12:23 +04:00
morkt
15b6d6156f (NoaOpener): additional encryption schemes. 2015-07-27 01:34:41 +04:00
morkt
eee1bdae38 (EriFormat.Read): use ImageData.Create shortcut method. 2015-07-27 01:33:03 +04:00
morkt
4cd5b81f21 fixed ShiinaRio v2.39 archives handling. 2015-07-25 20:34:37 +04:00
morkt
cb2ce6b96c changed tag properties to more convenient format. 2015-07-25 10:10:36 +04:00
morkt
230ba532f0 LzssStream and related classes moved to separate namespace. 2015-07-25 04:20:20 +04:00
morkt
ca42a0cfa4 (IafFormat): new file layout variant.
recognize bitmaps with appended alpha-channel.
2015-07-25 03:57:47 +04:00
morkt
8dabf68291 added another encryption scheme. 2015-07-25 03:55:54 +04:00
morkt
a3469689b1 implemented SUD audio archives. 2015-07-25 03:52:22 +04:00
morkt
be4154a725 implemented Direct Draw Surface image format. 2015-07-23 20:26:30 +04:00
morkt
8df51d152f implemented Tactics archive file. 2015-07-23 20:25:12 +04:00
morkt
ce54fb1a4e NotTransorm class moved to common namespace. 2015-07-23 20:23:14 +04:00
morkt
674a1b8c51 implemented decryption for PACKDAT archives. 2015-07-23 09:18:46 +04:00
morkt
725c01498c implemented AdvSys_T formats.
FPK/MFWY archives and GR2 images.
2015-07-22 09:30:14 +04:00
morkt
168f637dc3 (ICrypt): swapped abstract and virtual Decrypt methods. 2015-07-22 09:29:10 +04:00
morkt
5e5bb6ed3b released v1.1.4 2015-07-20 02:44:21 +04:00
morkt
c8d7066f24 (ElgFormat.Reader): moved output bounds check into loop body. 2015-07-20 00:20:30 +04:00
morkt
e6dd091316 (ElgFormat.Reader): check output boundary. 2015-07-19 15:33:57 +04:00
morkt
71c6623918 support old LPK archives with different index entry size. 2015-07-19 15:32:07 +04:00
morkt
d283ea800f fixed archive key guess. 2015-07-19 15:30:45 +04:00
morkt
557aff8fe4 implemented rare "Seraphim" engine formats. 2015-07-19 15:30:16 +04:00
morkt
4f86894f9f implemented *.pk archives and *.grx images. 2015-07-16 21:44:20 +04:00
morkt
2b59a488c4 (MblOpener): tweaked file type detection. 2015-07-15 14:10:14 +04:00