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
morkt
2a3c4fb005
(MrgOpener): check if index size is too small.
2015-07-15 06:41:19 +04:00
morkt
f4e15de73b
added some predefined pass-phrases.
2015-07-15 06:40:18 +04:00
morkt
bdf06d3e9f
implemented LIM image format.
2015-07-14 21:23:03 +04:00
morkt
5907b0ad5c
remember last used MCG image key.
2015-07-14 18:44:27 +04:00
morkt
c4acb0c44b
allow access to Settings from different threads.
2015-07-14 18:43:24 +04:00
morkt
f883d9d4af
(MrgOpener): guess index encryption key.
2015-07-14 17:47:13 +04:00
morkt
d312da7de5
implemented F&C resource formats.
...
*.mrg archives
*.mcg and *.acd images
2015-07-14 05:15:26 +04:00
morkt
4977331692
draft tweak.
2015-07-14 05:14:15 +04:00
morkt
f734780143
unused variable.
2015-07-14 05:13:54 +04:00
morkt
ef913539e9
implemented ShiinaRio MAI4 image format.
2015-07-12 20:13:51 +04:00
morkt
c09057b8b9
support WARC archives version 1.50
2015-07-12 15:39:28 +04:00
morkt
f20a22f56e
implemented Wild Bug's WBM image format.
2015-07-12 15:37:50 +04:00
morkt
9ef31d3fcb
added new formats.
2015-07-11 10:31:10 +04:00
morkt
41d198b0aa
Malie DZI tiled images descriptor implementation.
2015-07-11 10:28:39 +04:00
morkt
300f9f97e4
implemented encrypted Malie archives.
2015-07-11 10:27:21 +04:00
morkt
6f3295c7ce
template files.
2015-07-11 10:25:09 +04:00
morkt
2881ef163b
moved to Liar namespace.
2015-07-11 10:23:06 +04:00
morkt
1b30a3791f
implemented Wild Bug's resource archives.
2015-07-11 10:22:32 +04:00
morkt
9ed37fd878
implemented X[iks] resource archive format.
2015-07-09 07:03:57 +04:00
morkt
e60d52c9fa
(NsaOpener): added rare variation of archive layout.
2015-07-09 06:56:00 +04:00
morkt
919ef22202
additional sanity checks to reduce false positive detections.
2015-07-09 06:53:55 +04:00
morkt
4d2b2689bb
(WipFormat): added "mos" filename extension.
2015-07-08 02:50:21 +04:00
morkt
55d98c5ec0
implemented *.scr files decoding/encoding.
2015-07-08 02:49:57 +04:00
morkt
7dc62fd114
added GsWin engine image format.
2015-07-07 11:31:28 +04:00
morkt
859c9dcbdf
(PicFormat.Read): use LzssStream.
2015-07-07 11:30:50 +04:00
morkt
e193a4de91
(ArcOpener.OpenEntry): use LzssStream.
2015-07-07 11:30:10 +04:00
morkt
ed5873b9be
(DatOpener.OpenEntry): use LzssStream.
...
(GsScriptFormat): stub class that provides detection of SCW scripts.
2015-07-07 11:29:17 +04:00
morkt
d08f6249c2
(LzssStream): LZSS-compressed stream implementation.
2015-07-07 11:27:30 +04:00
morkt
24ccc70ee9
Tumugi archive format.
2015-07-05 09:30:13 +04:00
morkt
526e813f74
fixed Dispose pattern.
2015-07-02 03:22:22 +04:00
morkt
8d5e1d602a
(GccFormat.ReadMetaData): return 32bpp for masked images.
2015-07-02 03:21:32 +04:00
morkt
d2aaa1b075
implemented Ai5Win resources (*.arc archives and *.gcc images)
...
only one archives encryption scheme for now.
2015-07-01 01:06:35 +04:00
morkt
8cdae1027c
implemented Silky's IGF images.
2015-06-28 07:43:04 +04:00
morkt
e39dd18ff9
(IflOpener.OpenEntry): decompress *.snc scripts.
2015-06-28 07:41:47 +04:00
morkt
b32ac64569
(Mp3Audio.TryOpen): recognize MPEG 2.5 signature.
2015-06-28 07:38:28 +04:00
morkt
02e68fcda9
(PdOpener.TryOpen): check that index lies within file bounds.
2015-06-28 07:37:20 +04:00
morkt
7f42177c48
implemented Macromedia Director resources.
...
- *.cct archives (XFIR signature)
- 'Edim' audio
- 'Bitd' images
2015-06-27 14:33:58 +04:00
morkt
128f1f1477
(OgvAudio.TryOpen): don't dispose of intermediate stream.
2015-06-27 14:30:20 +04:00
morkt
781ad04b95
implemented Malie script engine resources.
...
- *.lib archives
- *.mgf images
2015-06-25 11:33:14 +04:00
morkt
efe0c82de0
removed unused namespaces and variables.
2015-06-25 11:27:56 +04:00
morkt
8e405e8fe6
(PrefixStream): added leave_open argument to constructor.
2015-06-25 11:27:29 +04:00
morkt
115ac939f5
implemented Cherry Soft resources.
2015-06-25 05:40:55 +04:00
morkt
1879eb3daf
long constant.
2015-06-23 10:19:28 +04:00
morkt
6e6cec2cf9
comment on S25Opener.
2015-06-23 10:18:50 +04:00
morkt
6ab0378410
implemented ShiinaRio PAD compressed audio format.
2015-06-22 03:00:45 +04:00
morkt
c6d5a78c8e
(S25Opener): sort entries by offset.
2015-06-22 02:56:05 +04:00
morkt
dfc22f87bb
fixed ShiinaRio YLZ decompression.
2015-06-21 23:51:55 +04:00
morkt
fc411624df
support WARC archives version 1.30
2015-06-21 20:44:16 +04:00
morkt
598b50750b
(CRangeCoder.Decode): fixed buffers length checks.
2015-06-21 20:41:43 +04:00
morkt
1fad53c137
(PkwOpener): variation of Crowd audio resources archive.
2015-06-20 21:31:31 +04:00
morkt
d1ac47ad03
(Dispose): dispose of members only when 'disposing' argument is true.
2015-06-20 21:30:21 +04:00
morkt
a47817101e
(EogAudio.TryOpen): don't dispose of intermediate stream.
2015-06-20 21:29:05 +04:00
morkt
6f8b57cc03
implemented ISF scripts decryption.
2015-06-18 17:04:12 +04:00
morkt
5288e75c6b
renamed audio format class to PcmAudio.
2015-06-17 17:50:46 +04:00
morkt
182ab4b019
implemented Circus resources.
...
- *.dat archives
- *.crx images
- *.pcm audio
2015-06-17 17:44:01 +04:00
morkt
53e8be6020
(TryOpen): check file count against zero.
2015-06-17 17:38:35 +04:00
morkt
147ef67c7d
added EGN, rare compressed bitmap format.
2015-06-17 17:38:04 +04:00
morkt
df66b70a38
released v1.1.3
2015-06-15 09:04:51 +04:00
morkt
bf2acd076e
implemented QLIE engine archives version 2.
2015-06-15 08:52:58 +04:00
morkt
c43368150e
(MpxOpener): assign "script" type to *.isf files.
2015-06-15 08:23:56 +04:00
morkt
0bc57de734
(DrgIndexedFormat): changed Tag property.
2015-06-14 14:30:01 +04:00
morkt
9d88975f13
(Wa1Reader): adjust RIFF block length.
2015-06-14 13:53:04 +04:00
morkt
b334222997
implemented GGP images.
2015-06-14 10:21:19 +04:00
morkt
0955c15181
(StreamRegion): added leave_open argument to constructor.
2015-06-14 10:19:16 +04:00
morkt
227eae0dbe
convert OGV format into Ogg propery.
2015-06-14 04:10:00 +04:00
morkt
d7030ecbdc
implemented Crowd CWL images.
2015-06-13 12:54:23 +04:00
morkt
104e32a150
assembly version update.
2015-06-12 22:53:11 +04:00
morkt
df9193bf11
removed unused namespaces.
2015-06-12 22:52:37 +04:00
morkt
cf721eab0d
implemented CwpFormat.Write method.
2015-06-12 22:52:22 +04:00
morkt
10a52b7f5a
(ReadIndex): prioritize PRS images detection.
2015-06-12 22:51:43 +04:00
morkt
dfcf169f61
implemented Crowd engine ('Main Program Hoep') formats.
2015-06-12 01:48:28 +04:00
morkt
29bd97fca9
(StreamRange): new wrapper around IO.Stream.
...
(LzssReader): allow compressed format customization.
2015-06-12 01:47:00 +04:00
morkt
fc27ece34d
(S25Format.Read): use ImageData.Create shortcut.
2015-06-11 12:39:26 +04:00
morkt
1f9e4d7b33
ShiinaRio S25 image sets.
2015-06-11 12:38:00 +04:00
morkt
e7672ceb2c
added predefined encryption schemes.
2015-06-11 12:32:52 +04:00
morkt
34a2391811
some additions.
...
- added "Konneko" passphrase to known encryption schemes.
- added attached context to ErisaDecodeContext class.
2015-06-08 19:19:47 +04:00
morkt
eb5392a16b
(MblOpener): manually assign "image" type to *.prs entries.
2015-06-04 02:06:34 +04:00
morkt
2da5ed1961
implemented Marble scripts decryption.
2015-06-04 01:13:25 +04:00
morkt
41c76ae50e
removed unused namespace declaration.
2015-06-04 01:10:02 +04:00
morkt
86ccf69aef
released v1.1.2
2015-06-03 14:05:20 +04:00
morkt
56e1116971
(DgcFormat.Reader): use CopyOverlapped instead of BlockCopy.
2015-06-02 19:50:11 +04:00
morkt
b8a74160c3
(DpkOpener): use Path.GetFileName to strip path off filename.
2015-06-02 19:48:24 +04:00
morkt
ce67fd0759
(WidgetDPK): set scheme to default for default key values.
2015-06-02 17:27:50 +04:00
morkt
315aa97e88
(WidgetDPK): update key fields in code-behind.
2015-06-02 16:56:32 +04:00
morkt
60f853835e
merged some common strings in resource dictionary.
2015-06-02 15:45:19 +04:00
morkt
26c738d6d0
implemented DGC image format.
2015-06-02 15:28:11 +04:00
morkt
6861f95bf6
fixed xaml error.
2015-06-02 03:23:48 +04:00
morkt
884fd12607
implemented DPK resource archives.
...
known encryption keys for:
Inbou no Wakusei
Ryoshuu
Ryobaku ~Haitoku no Atelier~
Ryoshuu ~Jogakusei Choukyou~
Shirogane no Cal to Soukuu no Joou
Shiromiko
Shoujotachi no Saezuri
Yumemiru Tsuki no Lunalutia
2015-06-02 03:16:11 +04:00
morkt
314f4869cd
implemented *.ari and *.saf archives.
2015-06-01 13:02:08 +04:00
morkt
6e65901330
added IAF image format.
2015-06-01 01:00:06 +04:00
morkt
a6adad554a
(WarOpener): implemented YLZ decompression.
...
(CachedResource.LoadRegion): fixed caching.
(Decoder.KnownSchemes): added preliminary encryption scheme from some
v2.49 archives.
2015-06-01 00:59:46 +04:00
morkt
1a5300a26b
(MioInput): limit EriFile wrapper lifetime to constructor.
2015-06-01 00:55:31 +04:00
morkt
ef0f5f9eaf
(GgaFormat): added "gg0" extension.
2015-06-01 00:52:12 +04:00
morkt
c635d2263f
(TgfFormat): additional input sanity checks.
2015-06-01 00:51:54 +04:00
morkt
31b114f7a4
(MioInput): perform decoding in separate thread.
2015-05-29 22:54:16 +04:00
morkt
d95b0d8bbd
(MioInput): check for Nemesis encoding in constructor.
2015-05-29 19:00:11 +04:00
morkt
0892e32a74
(EriReader): added stubs for lossy decompression.
2015-05-29 18:59:23 +04:00
morkt
92604f96cc
(MioDecoder): implemented PCM and MSS decompression.
2015-05-29 18:21:16 +04:00
morkt
15dfa73de8
Entis audio format implementation.
2015-05-29 14:58:13 +04:00
morkt
74e8d13846
(EriFile): new wrapper class for Entis files reading.
2015-05-29 14:57:21 +04:00
morkt
5d2d620153
(EriFormat): implemented huffman decompression.
2015-05-28 13:11:48 +04:00
morkt
68493ede0f
removed header length check.
2015-05-27 14:42:11 +04:00
morkt
ed9ae05853
implemented Entis rasterized image format.
2015-05-27 14:19:54 +04:00
morkt
11b6b12f07
FPK archives implementation.
2015-05-27 13:58:00 +04:00
morkt
d2eb1bbf8f
implemented Entis archives decryption.
2015-05-27 13:57:34 +04:00
morkt
6fa4b53299
disable unused variable warning.
2015-05-27 13:55:42 +04:00
morkt
461e31b0d7
implemented 'SPack' archives.
2015-05-22 10:08:11 +04:00
morkt
3041b90606
fixed index size check.
2015-05-22 10:06:12 +04:00
morkt
fcce2da234
fixed scripts decryption.
2015-05-21 23:42:45 +04:00
morkt
c2d54d4bfa
(UnpackV0): limit decompression loop by input length.
2015-05-21 23:42:03 +04:00
morkt
a3f973c1f7
improved HyPack archive version awareness.
2015-05-16 19:16:49 +04:00
morkt
f7e5b40314
assembly version update.
2015-05-15 18:50:05 +04:00
morkt
a2051e6752
use string.EndsWith() method instead of Path.GetExtension()
2015-05-15 18:49:37 +04:00
morkt
8640e34c27
renamed local var.
2015-05-15 17:51:23 +04:00
morkt
a60a95f226
recognize LZSS-compressed entries.
2015-05-15 17:34:45 +04:00
morkt
a313a32c03
implemented EAGLS system resources.
2015-05-15 17:32:07 +04:00
morkt
08abdbfd92
released v1.1.1
2015-05-14 20:04:35 +04:00
morkt
18a4089224
(Pt1Format): implemented compression type 0.
2015-05-14 15:42:58 +04:00
morkt
9a43b6b055
refactored SoundInput interface.
...
added Source property for access to underlying stream.
2015-05-14 11:26:47 +04:00
morkt
7e5dc325c0
(Wa1Audio.TryOpen): removed redundant null checks.
2015-05-13 23:49:58 +04:00
morkt
9e9e88f09d
use Stream.WriteByte() to overwrite signature.
2015-05-13 23:49:08 +04:00
morkt
27d4cb6b69
implemented FFA System resources.
2015-05-13 23:22:27 +04:00
morkt
3425b92ef2
(Pt1Format): implemented V1 reader.
2015-05-13 23:21:41 +04:00
morkt
76d0dce6b2
recognize and unpack LZSS-compressed files.
2015-05-13 23:20:25 +04:00
morkt
6150e7f29c
(Mp3Input): removed wave conversion streams.
2015-05-13 23:19:09 +04:00
morkt
6b4ee7a146
implemented MEGU engine resources.
2015-05-11 20:23:32 +04:00
morkt
417fbfdc78
(ArcOpener): recognize BMP file header.
2015-05-06 02:51:09 +04:00
morkt
308b881f45
(AmiFormat.Reader): removed unused field.
2015-05-06 02:50:15 +04:00
morkt
72eff1fb2c
(Xp3Opener): support XP3 archives merged with EXE files.
2015-05-06 02:48:13 +04:00
morkt
d686846894
'MAI' resources implementation.
2015-05-03 22:06:09 +04:00
morkt
946173bd1a
use remainder for format check.
2015-05-03 05:37:08 +04:00
morkt
9527412933
(PacOpener): fixed compressed entries extraction.
2015-05-03 05:34:05 +04:00
morkt
436e447d1b
removed unused namespaces.
2015-05-03 05:33:07 +04:00
morkt
2ce7c55bdf
implemented MP3 audio wrapper.
2015-05-01 23:33:22 +04:00
morkt
ca01b2c13b
some fixes.
2015-05-01 23:32:04 +04:00
morkt
a2a9ced8df
Pajamas Adventure System formats implementation.
2015-05-01 09:30:31 +04:00
morkt
7b1d5dc2f9
(PmpFormat.ReadMetaData): refined checking for valid zlib stream.
2015-05-01 09:24:57 +04:00
morkt
6e0a1ceff5
ScenePlayer compressed files implementation.
2015-05-01 03:03:03 +04:00
morkt
d7f7548fd0
(LpkOpener): added some predefined keys.
2015-04-30 21:08:17 +04:00
morkt
b6a354f52a
Silky's MFG format implementation.
2015-04-30 21:07:11 +04:00
morkt
9aa4f8bb77
(AdvReader): fixed encryption scheme search logic.
2015-04-27 21:40:51 +04:00
morkt
35ad091adf
(ArcOpener.OpenEntry): decrypt ASB scripts (the only known key is hard-coded).
2015-04-27 21:35:48 +04:00
morkt
8ee82a8c31
alternative encryption schemes for LPK archives.
2015-04-25 02:07:14 +04:00
morkt
0e18247492
removed copy-paste remnants.
2015-04-25 02:05:52 +04:00
morkt
17037fd7eb
Entis GLS archives preliminary implementation (no encryption yet).
2015-04-25 02:04:43 +04:00
morkt
a12d481d21
minor fixes.
2015-04-23 13:39:04 +04:00
morkt
3a4a3901fc
AZ system engine resources implementation.
2015-04-22 22:39:16 +04:00
morkt
ec8f39a2c7
Lucifen Game System resources implementation.
...
LPK archives;
ELG images.
2015-04-22 05:14:41 +04:00
morkt
62a1bcc738
updated supported formats.
2015-04-21 03:51:05 +04:00
morkt
d8811e17e3
Ail (?) resource archives implementation.
2015-04-21 03:42:13 +04:00
morkt
b74f27cd6a
Nexton LikeC script engine archives.
2015-04-21 03:39:55 +04:00
morkt
f929504e91
implemented AST script engine archives.
2015-04-21 03:39:17 +04:00
morkt
1a8add3ab9
implemented ShiinaRio resources.
...
WARC archives;
S25 images;
OGV sound files.
2015-04-20 20:57:01 +04:00
morkt
1ca1a219c2
generalized public methods interface for convenience.
2015-04-20 14:14:21 +04:00
morkt
44cf44f7c9
(Pt1Format): use ImageData.Create method.
2015-04-20 14:13:10 +04:00
morkt
b33577c051
DRG images implementation updates.
...
support for 8-bit images;
support for alpha-channel in GGA0 images.
2015-04-20 14:11:36 +04:00
morkt
c641738821
(DatOpener.OpenEntry): get rid of the intermediate MemoryStream.
2015-04-20 14:08:59 +04:00
morkt
167d9b53a1
(HuffmanDecode): clean-up reverse-engineered stuff.
2015-04-20 14:06:20 +04:00
morkt
1342736ee6
renamed Will ARC-related settings and widget.
...
to distinguish from upcoming ShiinaRio WARC stuff.
2015-04-19 19:08:56 +04:00
morkt
00f5d31d23
ignore private stuff.
2015-04-19 15:30:42 +04:00
morkt
329b7f476d
Black Package resources implementation.
2015-04-19 15:29:35 +04:00
morkt
d3a459cfb0
(MblOpener): another archive format variant.
2015-04-19 15:27:52 +04:00
morkt
c5c996b092
(AniOpener): discard empty containers.
2015-04-19 15:21:41 +04:00
morkt
41d2accec5
GsPack resources implementation.
2015-04-16 22:41:34 +04:00
morkt
127a2bcf4d
AutoEntry.Offset set in constructor now.
2015-04-16 22:41:03 +04:00
morkt
0aaf977c8a
AuroEntry changes.
...
(constructor): set offset property.
(GetName): use Path.ChangeExtension to set filename extension.
2015-04-16 22:38:47 +04:00
morkt
75c3f8b61e
(HuffmanDecoder): class made public and moved to ArcCommon.cs
2015-04-14 10:28:00 +04:00
morkt
e1c2d0f2ce
(AVC.DatOpener): try out several predefined schemes.
2015-04-14 10:26:55 +04:00
morkt
8b6e7d869c
implemented IFL archives and GRD images.
2015-04-12 23:02:29 +04:00
morkt
3d4b74e34a
additional check to avoid false positives.
2015-04-12 23:01:45 +04:00
morkt
0183e8be52
implemented archive version 2 reading.
2015-04-12 23:01:05 +04:00
morkt
c1614a20c7
renamed archive tag.
2015-04-12 23:00:08 +04:00
morkt
bd2aa6c757
PD/PB archives and auxiliary image formats.
2015-04-11 10:00:44 +04:00
morkt
9cabb73c00
implemented ALD archive and QNT image formats.
2015-04-10 06:35:06 +04:00
morkt
6e472559f1
fixed mistake.
2015-04-10 06:33:00 +04:00
morkt
642d82295d
Ainos image format implementation.
2015-04-06 17:11:32 +04:00
morkt
1bafacfa09
Ainos image format implementation.
2015-04-06 17:11:15 +04:00
morkt
31ec7d240d
added LZSS decompression support.
2015-04-06 17:09:14 +04:00
morkt
68038edf00
fixed entries skipping in AVC index parser.
2015-04-06 17:06:31 +04:00
morkt
3650164c2d
added another A98SYS engine archive version.
2015-04-06 17:05:41 +04:00
morkt
3e56c4dd8f
implemented "M no Violet" engine resources.
2015-04-04 05:32:01 +04:00
morkt
0ca1c7248f
use AutoEntry to determine type of entries.
2015-04-04 05:30:51 +04:00
morkt
487a134800
use common LzssReader class for decompression.
2015-04-04 05:29:23 +04:00
morkt
ead52fc075
(SaiminCrypt.Decrpyt): fixed byte decryption method logic.
2015-04-04 05:28:17 +04:00
morkt
8be92da42b
BGI/Ethornell engine image format.
2015-04-04 05:26:59 +04:00
morkt
bf9ea96717
(AutoEntry, LzssReader): new classes.
...
AutoEntry is an Entry that changes its name/type according to underlying
file contents.
LzssReader is a LZSS unpacker.
2015-04-04 05:26:14 +04:00
morkt
086649d7e7
new resource formats.
...
Studio e.go and Marble engine archives.
WADY - Marble engine audio format.
PRS - Marble engine image format.
2015-03-31 14:43:19 +04:00
morkt
336d5c7174
(TryOpen): fixed skipping of invalid entries.
2015-03-31 14:41:27 +04:00
morkt
dba869d134
(ReadMetaData): height is a 32-bit integer.
2015-03-31 14:40:49 +04:00
morkt
26905015c2
Marble engine resources implementation.
2015-03-31 14:34:49 +04:00
morkt
e95cec0f3c
added Ore no Saimin Fantasia encryption scheme.
2015-03-31 14:34:01 +04:00
morkt
7c01c8e5f9
Studio e.go! engine archive implementation.
2015-03-31 14:30:35 +04:00
morkt
5319000ad5
BMD image format implementation.
2015-03-26 06:57:33 +04:00
morkt
cc297869e5
(DatOpener): define signatures in constructor.
2015-03-26 06:54:12 +04:00
morkt
9ae74ce5bb
added PB archive format.
2015-03-26 06:53:33 +04:00
morkt
60dedf0328
NekoPack archives are actually hierarchical.
...
Instead of directory and file names, their hash sums are stored. Hash is
one-way function, so reconstructing names is impossible unless there's
some predefined set of widely-used names, like "script", "bgm" etc.
2015-03-26 06:52:45 +04:00
morkt
0442de677a
initialize Extensions property since Tag was changed.
2015-03-26 06:47:37 +04:00
morkt
b74a9f9265
implemented ISG image format.
2015-03-20 02:21:44 +04:00
morkt
87c6a210be
implemented ISA archives.
2015-03-18 05:44:21 +04:00
morkt
fb60862b58
(PacOpener.TryOpen): set IsPacked property.
2015-03-18 05:43:18 +04:00
morkt
e895f636ab
new archive formats, AVC and NeXAS.
2015-03-16 05:43:11 +04:00
morkt
9afd8e6cb3
added password for "Itazura Mahjong".
2015-03-16 05:36:25 +04:00
morkt
9ed7665e33
changed format tag to "PAC1".
2015-03-16 05:32:53 +04:00
morkt
2b973c0bd6
split indexed image reader into separate method.
2015-03-16 05:31:03 +04:00
morkt
8111f52541
(OpenEntry): limit returned stream to block length.
2015-03-13 15:32:51 +04:00
morkt
9b4dd096e7
NEKOPACK archives implementation.
2015-03-13 04:48:45 +04:00
morkt
6c3e1ed433
released v1.0.4
2015-03-11 21:27:02 +04:00
morkt
5b56d8df14
(PackOpener): store known schemes as Dictionary.
2015-03-11 18:51:52 +04:00
morkt
2c2dfec477
KCAP archives are hierarchic.
2015-03-11 16:45:21 +04:00
morkt
85c55b9aec
removed commented out code.
2015-03-11 16:42:55 +04:00
morkt
7580d36414
implemented Selene 'KCAP' archive format.
2015-03-11 16:37:51 +04:00
morkt
520e7215ba
limit alpha channel values to 0xff
2015-03-11 16:36:13 +04:00
morkt
bbc286b0fd
BIP: new image format.
2015-03-05 17:40:56 +04:00
morkt
f703789685
(PrefixStream.Read): changed underlying stream position reset logic.
2015-03-05 17:40:13 +04:00
morkt
bc3e1bc2d9
(DatOpener): new archive format.
2015-03-05 17:38:40 +04:00
morkt
b2ab176ef3
(FlyingShinePdOpener): changed signature.
2015-03-05 17:37:57 +04:00
morkt
722d907504
(ReadMetaData): check unpacked bitmap signature.
2015-03-05 17:37:22 +04:00
morkt
a5dc3c9943
GSP archives and BMZ bitmaps implementation.
2015-03-04 16:27:23 +04:00
morkt
3214e05609
Moved PrefixStream class implementation to separate file.
2015-02-26 22:07:49 +04:00
morkt
74f1f1ef7b
new formats.
2015-02-26 08:23:56 +04:00
morkt
eb3dded3e3
Nitro+ PAK archives implementation.
2015-02-26 08:22:54 +04:00
morkt
1431ac3124
Tactics resource archive implementation.
2015-02-26 08:21:49 +04:00
morkt
00def88163
Riddle Soft archive implementation.
2015-02-26 08:21:00 +04:00
morkt
85d5336c53
new image formats.
2015-02-26 08:20:29 +04:00
morkt
8118780b79
indexed images not implemented.
2015-02-26 08:20:15 +04:00
morkt
6f907c3204
year.
2015-02-26 08:18:26 +04:00
morkt
ccb903a673
FVP engine archive implementation.
2015-02-26 08:18:11 +04:00
morkt
4636ddf8c3
Opener description.
2015-02-26 08:17:29 +04:00
morkt
a2c5e2eb95
Adpack32 archive implementation.
2015-02-26 08:16:51 +04:00
morkt
250858262b
added another version of DRS archives.
2015-02-15 19:53:04 +04:00
morkt
9bb3701488
NVorbis updated.
2015-02-15 19:52:04 +04:00
morkt
7fcdf1e356
added another version of PD archive.
2015-02-15 19:51:42 +04:00
morkt
797931eef8
added GG2 image format.
2015-02-15 19:51:16 +04:00
morkt
7de11127a7
AFS and PACKDAT archives implementation.
2015-01-19 09:43:52 +04:00
morkt
2a7520939d
use Buffer.BlockCopy instead of Array.Copy.
2014-11-07 17:11:11 +04:00
morkt
3a2be63bf3
added Ogg/Vorbis audio format.
2014-11-07 02:51:32 +04:00
morkt
c08a8f4579
implemented MGPK archives.
2014-11-07 02:47:51 +04:00
morkt
0164ce838a
released v1.0.3
2014-11-01 13:26:08 +04:00
morkt
0b8eb1f9d4
implemented Will co. archives creation.
2014-11-01 02:14:51 +04:00
morkt
56d2a45d94
implemented Will co. engine resources.
2014-10-31 18:50:43 +04:00
morkt
6736819db1
cosmetic changes.
2014-10-31 18:47:37 +04:00
morkt
6aeb3ea27e
automatically update assembly build/revision number.
2014-10-31 18:47:02 +04:00
morkt
1faea63667
cosmetic changes.
2014-09-12 16:04:38 +04:00
morkt
f02cc382a1
BGI/Ethornell engine archive implementation.
2014-09-12 15:59:56 +04:00
morkt
12df1dcdfd
(GetScheme): fixed potential bug when looking up unknown encryption scheme.
2014-09-09 01:04:27 +04:00
morkt
58f8b4845d
incremented version number.
2014-09-08 11:54:39 +04:00
morkt
a0162b4bbc
Cx encryption bytecode generation fix.
2014-09-08 11:27:24 +04:00
morkt
12d8236d3d
fixed Imouto Style encryption constants.
2014-09-08 08:29:05 +04:00