Commit Graph

959 Commits

Author SHA1 Message Date
morkt
7ea8fe53bc implemented GRP archives. 2016-03-20 09:42:36 +04:00
morkt
c07a7da321 (TmrHiroAudio): use RawPcmInput. 2016-03-19 02:11:07 +04:00
morkt
4e2af01e36 (DifFormat): fixed string.Format call. 2016-03-18 18:34:47 +04:00
morkt
9af7f41ef5 guess keys of DXA archives. 2016-03-18 06:23:51 +04:00
morkt
5bbd10789e (ProxyStream): don't override ReadByte and WriteByte methods. 2016-03-17 02:57:31 +04:00
morkt
4b5059311c implemented EME archives. 2016-03-16 04:20:52 +04:00
morkt
1f1816bf2f (VafsOpener): treat filename extension as a version. 2016-03-15 18:53:56 +04:00
morkt
cc229c51cc (IndexReader): use Path.Combine to concatenate file names. 2016-03-15 18:52:12 +04:00
morkt
9084a4857f refactored DX archives. 2016-03-14 20:38:30 +04:00
morkt
51b0675cd0 moved ArcDX to DxLib folder. 2016-03-14 19:04:37 +04:00
morkt
f1a39a1eee (ImgdFormat): check base.ReadMetaData return value. 2016-03-14 05:58:24 +04:00
morkt
5965c62f9b implemented ODIO archives. 2016-03-14 05:57:32 +04:00
morkt
bed589992d implemented WAG 'IAF_' archives. 2016-03-14 04:24:21 +04:00
morkt
5704a61823 (ProxyStream): new base class for stream post-processing. 2016-03-14 04:21:55 +04:00
morkt
2abe3c706a (PkZipArchive): fixed Dispose() implementation. 2016-03-13 22:20:08 +04:00
morkt
834409f2a4 moved common stream classes to separate file. 2016-03-13 00:32:02 +04:00
morkt
b569c81c50 (DdsFormat.ReadPixelData): generalized. 2016-03-12 23:21:55 +04:00
morkt
56595fb4c2 (DdsFormat): interpret non-A8R8G8B8 textures. 2016-03-12 20:46:40 +04:00
morkt
8ff550c344 (AlbFormat): fallback to jpeg format. 2016-03-12 20:26:20 +04:00
morkt
d089e4895b implemented ALB images and VOI audio. 2016-03-12 13:06:54 +04:00
morkt
ff7669f745 (DdsFormat): thorw exceptions for non-supported formats. 2016-03-12 12:47:40 +04:00
morkt
0600805f06 (SeekableStream): use supplied buffer as intermediate. 2016-03-12 12:45:13 +04:00
morkt
236d33f4e7 refined AdxInput.Read. 2016-03-10 15:04:49 +04:00
morkt
eb12144780 implemented ADX audio format. 2016-03-09 19:11:18 +04:00
morkt
20c1137669 (BigEndianReader): refined implementation. 2016-03-09 11:11:17 +04:00
morkt
6878d1c21e renamed 'PS2' namespace to 'Cri'. 2016-03-09 11:04:04 +04:00
morkt
4b06c409b8 moved AFS and BIP formats to CRI folder. 2016-03-09 11:00:51 +04:00
morkt
08836a156d implemented SPC compressed textures. 2016-03-09 10:57:50 +04:00
morkt
7c10d0a874 (Xp3Opener): dispose of archive in case of encryption plugin initialization error. 2016-03-08 17:13:22 +04:00
morkt
977d4f215f always forget that linq First() accepts delegate. 2016-03-07 19:07:16 +04:00
morkt
9beff31fee added some XP3 encryption schemes. 2016-03-07 18:23:10 +04:00
morkt
f377b0088c implemented ARCC archives. 2016-03-07 18:09:09 +04:00
morkt
407947c978 (DifFormat): throw exceptions on base image failures. 2016-03-07 17:45:02 +04:00
morkt
0a2b1f1583 another variation of kaguya 'parts' images. 2016-03-07 17:43:45 +04:00
morkt
61def57667 implemented 'dif' incremental images. 2016-03-06 15:31:01 +04:00
morkt
ecce8f59ef (GraFormat): fixed stride calculation. 2016-03-06 15:13:06 +04:00
morkt
66dc447ddb added ZIP settings for archive creation.
also ignore directories in entries list.
2016-03-06 03:28:58 +04:00
morkt
55d72aa9bb implemented ZIP archive creation.
because why not.
2016-03-05 19:05:47 +04:00
morkt
14959d1d36 implemented ZIP archives.
just a wrapper around .Net library class.
2016-03-05 17:25:04 +04:00
morkt
1749b93d7a call Dispose on IEnumerator<T> where appropriate. 2016-03-05 17:22:14 +04:00
morkt
60fdc6e70f (IntOpener): redundant directory clear. 2016-03-05 17:21:06 +04:00
morkt
d7ef400a31 (Xp3Opener): additional sanity check when searching archives inside EXE files. 2016-03-05 17:18:28 +04:00
morkt
bb55fe7eed released v1.2.14 2016-03-04 07:09:24 +04:00
morkt
9020219476 more XP3 encryption schemes. 2016-03-04 07:02:53 +04:00
morkt
1ef4c2f58f fixed MIO header eof condition. 2016-03-04 06:21:46 +04:00
morkt
48b6747c4c decode HCA audio stream in background task.
parallel decoding disabled for now (see HcaReader.ConvertParallel).
2016-03-04 06:18:11 +04:00
morkt
dbb3384e02 (HcaReader): moved around initialization stuff.
aimed at implementing async decoder.
2016-03-03 11:03:35 +04:00
morkt
ed365530a6 implemented CPK archives, XTX images and HCA audio. 2016-03-03 08:55:23 +04:00
morkt
6a89368023 added broken implementation of ERI lossy images.
also reorganized Entis-related classes and enums. static math methods
moved to separate static class.
2016-02-29 12:35:48 +04:00
morkt
8d8dae710d NotTransform and XorTransform implementations moved to separate file. 2016-02-29 08:33:17 +04:00
morkt
1c96b01677 implemented "war2" audio archives. 2016-02-28 11:07:28 +04:00
morkt
eba51cf69e (GrdReader): use Bgr32 format for images with empty alpha-channel. 2016-02-28 02:54:07 +04:00
morkt
98ddd452fb (TmrHiroAudio): changed signature interpretation. 2016-02-27 05:24:37 +04:00
morkt
d5bab948d9 (LibUReader): entry offset is 64-bit. 2016-02-27 05:20:48 +04:00
morkt
73abbbb831 (DatOpener): check archive length first. 2016-02-26 22:22:00 +04:00
morkt
f26bc064c9 (PackOpener): correctly handle version 3 archives without encryption. 2016-02-26 22:14:30 +04:00
morkt
1d6a803982 implemented LIBU archives. 2016-02-26 22:12:04 +04:00
morkt
0c63353c08 (Camellia.Key): new public property. 2016-02-26 22:04:53 +04:00
morkt
86536cd29a variations of PGD image format. 2016-02-23 03:30:48 +04:00
morkt
04bc123b3b (LpkOpener.ParseGameInit): return success only if there's any entries obtained. 2016-02-22 17:42:49 +04:00
morkt
df4b5960f7 (AgfFormat): correctly read [non]compressed file sections. 2016-02-22 17:39:17 +04:00
morkt
46c4d4c2f0 fixed reference to deleted field. 2016-02-21 22:49:05 +04:00
morkt
c611ded16b removed unused fields. 2016-02-21 22:24:15 +04:00
morkt
8760d2404e (AmiFormat): renamed to AmFormat. 2016-02-21 22:12:24 +04:00
morkt
a9804f1ca0 renamed 'CMP' foramat to 'CM'. 2016-02-21 22:09:56 +04:00
morkt
f11dae97ab (CmFormat): implemented 8bpp images with alpha-channel. 2016-02-21 22:09:29 +04:00
morkt
a73471c0b5 (NpkSegment): IsCompressed is better off as a property. 2016-02-21 22:08:18 +04:00
morkt
4d90314f0a moved MAI-related formats to separate folder. 2016-02-20 19:12:59 +04:00
morkt
853376d169 (UnpackIndexed): minor fixes. 2016-02-20 18:24:31 +04:00
morkt
4ee3511075 implemented ADVEngine 'arc' archives and GPS images. 2016-02-20 18:23:02 +04:00
morkt
77f5693016 (LstOpener): use ArcView.ReadBytes method. 2016-02-20 18:19:59 +04:00
morkt
e65e034f31 implemented PNA containers (#17). 2016-02-20 18:17:44 +04:00
morkt
87c48517c8 implemented bitmaps compressed by Microsoft's compress.exe. 2016-02-19 02:37:50 +04:00
morkt
e4f2bcb1e2 (ZbmFormat): refined description. 2016-02-19 02:28:37 +04:00
morkt
3e313995d7 properly dispose of cryptography-related classes. 2016-02-18 02:36:03 +04:00
morkt
747f917b44 (NpkStream): implemented deflated entries (#16). 2016-02-17 14:44:28 +04:00
morkt
c912ddd5a7 implemented NPK2 archives (#16).
compressed entries not supported.
2016-02-17 12:01:40 +04:00
morkt
b42a425b80 (Xp3Stream): dispose of segments enumerator. 2016-02-17 11:49:48 +04:00
morkt
fc724ee4c7 (NoaOpener): recognize ancient RSA archives. 2016-02-17 11:49:05 +04:00
morkt
7809225e52 (Pak2Opener): read filenames from externally supplied "nekopack.lst". 2016-02-17 11:48:18 +04:00
morkt
10b4872b7d implemented CG archives. 2016-02-17 11:45:21 +04:00
morkt
8856639058 implemented version 6 of PCCS archives. 2016-02-14 23:20:51 +04:00
morkt
289cae9218 (CgFormat): changed interpretation of the signature byte. 2016-02-14 23:12:11 +04:00
morkt
23e5856825 implemented variations of PAC archives and PGD images. 2016-02-13 17:37:32 +04:00
morkt
71e01d1ee1 implemented older versions of Xuse archives. 2016-02-13 02:02:07 +04:00
morkt
dcb3e44104 (EriOpener.OpenEntry): fill transparency for 32bpp images without alpha-channel. 2016-02-11 16:52:02 +04:00
morkt
ab7de589ec (EriFormat): added signature string for "moving" images. 2016-02-11 16:48:29 +04:00
morkt
0e57e73ded (McgDecoder): added faulty brute-force key guessing.
disabled in relesase build.
2016-02-11 09:37:05 +04:00
morkt
45e7b81cc0 implemented APS3 images. 2016-02-11 09:34:57 +04:00
morkt
f589a9de58 implemented multi-frame ERI images. 2016-02-11 06:39:48 +04:00
morkt
64cdb4d944 (ArcOpener.OpenEntry): specify ArcStream offset/size explicitly. 2016-02-10 07:17:43 +04:00
morkt
18fa93c7c4 (DpngFormat.Read): skip empty tiles. 2016-02-10 07:15:57 +04:00
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