Commit Graph

220 Commits

Author SHA1 Message Date
Nik
5ea7141cb7 patterns: Added Xbox executable (XBEH) pattern 2023-01-12 11:35:47 +01:00
Berylskid
9b13113682 encodings: Update shiftjis.tbl and create ms932.tbl (#73)
* Duplicate current shiftjis.tbl as ms932.tbl

* Correct some wrong characters in shiftjis.tbl

* Remove bunch of non-shift-jis characters from shiftjis.tbl

* Add a missing character (819F=◆)
2023-01-12 11:33:34 +01:00
Max1Truc
0748fa135e patterns/qoi: Fixed bitfields order being wrong (#72) 2023-01-10 09:15:08 +01:00
Max1Truc
a4a14309be patterns/qoi: Added QOI pattern (#71)
For more information on QOI: https://qoiformat.org/
2023-01-09 07:29:33 +01:00
Nik
7c179b3b41 git: Added note for application/octet-stream MIME type to PR template 2023-01-08 16:19:38 +01:00
Daniel Stinson-Diess
c204696209 patterns/dmg: Added DMG pattern (#70) 2023-01-08 16:11:57 +01:00
Nik
f53be98204 patterns/chm: Added Windows HtmlHelp file pattern ImHex-v1.26.2 ImHex-v1.26.1 ImHex-v1.26.0 2023-01-03 12:11:56 +01:00
Nik
ee95990225 patterns/macho: Added Mach-O pattern 2023-01-02 13:15:51 +01:00
Nik
ac28d9d029 patterns/coff: Added COFF pattern 2023-01-01 23:51:12 +01:00
123456abcdef
372a0e5bba tests/patterns: Added various pattern test files (#69)
Co-authored-by: Nik <werwolv98@gmail.com>
2022-12-31 22:45:46 +01:00
WerWolv
544cadbcca build: Fixed rest of unit tests 2022-12-31 22:38:40 +01:00
WerWolv
1471b02abd build: Fixed building unit tests 2022-12-31 10:13:29 +01:00
123456abcdef
73cde21254 patterns/zstd: Added ZSTD pattern (#68) 2022-12-30 22:05:21 +01:00
Minei3oat
f730d8b0cc patterns/gif: Added GIF pattern (#67)
patterns/gif: Added GIF pattern
2022-12-28 10:47:11 +01:00
123456abcdef
13183769f8 includes/std: Fix namespacing for std::limits::s*_max() (#66)
fix namespacing for std::limit::s*_max()
2022-12-27 11:04:47 +01:00
Nik
5eda5a15bf patterns: Added XCI and WAD pattern 2022-12-27 10:35:07 +01:00
Nik
8e6248aa2d patterns: Added PCX, GZip and PFS0 pattern 2022-12-27 00:56:24 +01:00
Nik
75fd40442b includes/type: Added BCD type 2022-12-24 15:10:23 +01:00
Nik
5a3036149c patterns/nbt: Added NBT pattern 2022-12-21 19:57:04 +01:00
Nik
b160e99b63 patterns/sit5: Added StuffItV5 archive pattern 2022-12-21 11:27:58 +01:00
Nik
f32db1745f tests/patterns: Added various pattern test files 2022-12-21 07:28:20 +01:00
Nik
7842c974df git: Fixed wrong pattern entry in readme table 2022-12-20 21:41:40 +01:00
Nik
e2c191b7c9 includes/std: Added std::mem::AlignTo type 2022-12-20 21:34:51 +01:00
Nik
71ee41fe2c patterns/fdt: Added flat device tree blob pattern 2022-12-20 17:14:23 +01:00
Nik
69feadfc09 patterns/cpio: Added new CPIO pattern 2022-12-20 16:08:10 +01:00
Nik
e79d512b2b includes/type: Fixed base types 2022-12-20 15:29:00 +01:00
gmestanley
e876270a08 encodings/shiftjis: Make control characters easier to read (#65)
* Update pe.hexpat

Implementing a number of things and fixing others

* Update pe.hexpat

Adding the readonlyData pattern

* Update pe.hexpat

Testing putting the number of tabs on Github to 4 instead of 8 (so that comments on the code for the Sections don't break)

* Update pe.hexpat

Reverting change that turned out to be needless

* Update pe.hexpat

Actually sending the `products[while($ != richHeaderEndPosition)]` to `products[while($ < richHeaderEndPosition)]` change

* Add files via upload

Adding NE test file

* Add files via upload

Adding NE pattern file

* Update ne.hexpat

Fixing the error with the entry table assignment

* Update README.md

Added the NE pattern file to the list of patterns

* Update shiftjis.tbl

Deleted the very first character and changed the other first ones' values
2022-12-19 16:21:06 +01:00
Nicolás Alvarez
8f39ecd879 patterns: Added pattern file for Apple PBZX compressed streams (#63)
This is used by Apple for Xcode .xip files (cpio in pbzx in xar), OTA
updates of iOS, and other files.
2022-12-18 00:36:41 +01:00
João Oliveira
ba36826e2d patterns: Added Tar Pattern (#64)
* patterns: add tar support

* readme: add tar entry

* patterns: update tar file

Co-authored-by: favaioos <120850826+favaioos@users.noreply.github.com>
2022-12-18 00:36:16 +01:00
Nik
ac0b77540d tests: Fixed more tests 2022-12-17 22:35:03 +01:00
Nik
683e78d9c3 tests: Fixed building of unit tests 2022-12-17 22:28:52 +01:00
Nik
110b498d7b includes/type: Added magic number assertion type 2022-11-29 14:43:27 +01:00
gmestanley
9887da7af5 patterns/ne: Adding pattern file for NE executables (#58)
* Update pe.hexpat

Implementing a number of things and fixing others

* Update pe.hexpat

Adding the readonlyData pattern

* Update pe.hexpat

Testing putting the number of tabs on Github to 4 instead of 8 (so that comments on the code for the Sections don't break)

* Update pe.hexpat

Reverting change that turned out to be needless

* Update pe.hexpat

Actually sending the `products[while($ != richHeaderEndPosition)]` to `products[while($ < richHeaderEndPosition)]` change

* Add files via upload

Adding NE test file

* Add files via upload

Adding NE pattern file

* Update ne.hexpat

Fixing the error with the entry table assignment

* Update README.md

Added the NE pattern file to the list of patterns
2022-11-19 19:25:02 +01:00
Nicolás Alvarez
01a1bd0d9f patterns/zip: Change how the end of central directory record is found (#60)
Previously, the zip pattern was searching for the end-of-central-directory
header signature (50 4B 05 06) by searching the entire file for it. This is
*very* slow for large files, and risks false positives since those bytes
could randomly appear in compressed data. I had this happen on the first
large (>2GB) zip file I tried.

I'm now checking for the EOCD signature at exactly 22 bytes from the end of
the file (in the common case there is no zip comment), and if that fails
I search for it in the last 64KB of the file (in case there *is* a comment
at the end of the EOCD, which can't be larger than 64KB). This is much
faster, and fixes loading my zip file where it was spuriously finding the
signature in the wrong place.

This still has a low risk of false positives (what if the comment has the
50 4B 05 06 bytes? what if there is a short comment but the signature
appears in the last 64KB of compressed data?), but I don't know what's the
"right" way to find the EOCD, or how proper zip-reading tools handle the
ambiguity...
2022-11-19 18:05:26 +01:00
finict
fbb6a84323 patterns: Fixed PNG pattern #61 (#62)
Closes #61
2022-11-19 18:04:51 +01:00
Nik
4cdf3c11cf includes/std: Fixed copy_section_to_section copy-paste error 2022-11-19 18:02:04 +01:00
Nicolás Alvarez
a9ada89bd0 patterns: Minor cleanup to zip pattern (#59)
* Use spaces instead of tabs in zip.hexpat

* patterns: minor cleanup to ZIP pattern

- Remove empty and unused CentralDirectoryEntry struct.
- Shorten the comment of CentralDirectoryFileHeader.fileOffset. It was so
  long that the tooltip overflowed my screen, and didn't really add much
  information.
- Small whitespace changes.
2022-11-14 22:46:28 +01:00
Merlyn Morgan-Graham
de0e089165 includes/std+type: Add DOS datetime types (#57)
Add type::dosdate16_t and type::dostime16_t in pattern library
ImHex-v1.25.0
2022-11-14 10:08:00 +01:00
Fredrick Brennan
e7ea6fd77f patterns: Added APNG support to PNG pattern (#53) 2022-11-10 10:36:46 +01:00
Fredrick Brennan
ff3c796de8 patterns: Added sRGB, zTXt, tEXt support to PNG pattern (#55)
* patterns: png.hexpat: APNG support

* patterns: png.hexpat: +sRGB, zTXt, tEXt
2022-11-10 10:23:42 +01:00
lieyanqzu
0c83764f24 patterns: Fix java class pattern and update to javase17 format (#56)
fix java class pattern and update to javase17 format
2022-11-10 10:23:06 +01:00
Fredrick Brennan
d87f95dbfa includes/type: Add RGB8 to color.pat (#54) 2022-11-10 10:22:17 +01:00
Nik
51dad63779 includes/std: Removed invalid returns 2022-11-09 21:56:06 +01:00
Nik
764b86acc9 includes/std: Added section functions 2022-11-09 21:53:31 +01:00
Nik
10fdf94899 includes/std: Fixed syntax error 2022-11-09 21:25:01 +01:00
Nik
9ba998e618 includes/std: Added new functions 2022-11-09 21:21:59 +01:00
WerWolv
aceeb2b7b3 git: Don't build plcli tool in tests 2022-11-06 18:40:39 +01:00
fr0ntlin3
3b1b7cc379 patterns: Fixed ELF pattern for 32-bit files (#51)
Co-authored-by: z <z>
2022-11-06 18:36:37 +01:00
gmestanley
49be43e0e1 patterns: Making pe.hexpat even better (#52)
* Update pe.hexpat

Implementing a number of things and fixing others

* Update pe.hexpat

Adding the readonlyData pattern

* Update pe.hexpat

Testing putting the number of tabs on Github to 4 instead of 8 (so that comments on the code for the Sections don't break)

* Update pe.hexpat

Reverting change that turned out to be needless

* Update pe.hexpat

Actually sending the `products[while($ != richHeaderEndPosition)]` to `products[while($ < richHeaderEndPosition)]` change
2022-10-30 12:07:54 +01:00
Nik
8e70a5524d includes/type: Added templates for number types with specific base ImHex-v1.24.3 2022-10-10 22:36:46 +02:00