Commit Graph

465 Commits

Author SHA1 Message Date
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