Commit Graph

101 Commits

Author SHA1 Message Date
WerWolv
15548b92e2 includes/std: Added core library functions 2022-08-19 00:00:30 +02:00
WerWolv
87efc6cf54 includes/std: Fixed std::string::contains function not checking last character ImHex-v1.21.2 2022-08-16 09:48:42 +02:00
WerWolv
5e48adcb9d scripts: Properly open legacy hexproj files as UTF-8 2022-08-16 09:27:05 +02:00
Lucy
f548643933 encodings: Add English Pokémon generation 1 character encoding (#42)
* encodings: Add English Pokémon generation 1 character encoding

Source: https://bulbapedia.bulbagarden.net/wiki/Character_encoding_(Generation_I)#English

* readme: Add `pokegen1_en.tbl`
ImHex-v1.21.1
2022-08-14 17:46:40 +02:00
WerWolv
575e4d5381 scripts: Added helper scripts to extract old project files ImHex-v1.21.0 2022-08-14 14:47:28 +02:00
WerWolv
6b0fad199e git: Remove LR line ending requirements 2022-08-10 19:22:35 +02:00
gmestanley
ece86f1124 patterns: Added enhancements for PE pattern (#41)
The current pattern file for the PE format doesn't have a lot of the format's quirks, so I decided to code them in after I noticed that it doesn't cover the structure known as Rich Header. (Forgive the garbage code for its ProductType enum, it was the only way I found to make the values appear.)
Here are my sources for the improvements included here:

How the MZ header works and some of its variables' names: [How to determine the size of an PE executable file from headers and or footers](https://stackoverflow.com/questions/34684660/how-to-determine-the-size-of-an-pe-executable-file-from-headers-and-or-footers)
The function of some of the MZ header variables: [https://github.com/corkami/pics/blob/master/binary/pe102.png](PE102 by Corkami)
The existence of sections: [https://github.com/corkami/pics/blob/master/binary/pe101/pe101.png](PE101 by Corkami)
The Machine values for LoongArch processors, the architecture enum and how it's used in the Optional Header, Subsystem types, DLL & Section characteristics, how sections, their line numbers and relocations work: [PE Format](https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#the-rsrc-section)
The Machine values for DECAlphaAXP and i860: [Peering Inside the PE: A Tour of the Win32 Portable Executable File Format](https://docs.microsoft.com/en-us/previous-versions/ms809762(v=msdn.10)#the-pe-header)
How the Rich Header works: [https://www.virusbulletin.com/virusbulletin/2020/01/vb2019-paper-rich-headers-leveraging-mysterious-artifact-pe-format/](VB2019 paper: Rich Headers: leveraging this mysterious artifact of the PE format)
Values of products in the Rich Header: [https://securelist.com/the-devils-in-the-rich-header/84348/](The devil’s in the Rich header)
Every other value not found in the above source: Ghidra
2022-08-10 15:06:10 +02:00
WerWolv
ce2b4d60ca patterns: Added very basic MBR and FAT32 filesystem pattern 2022-08-10 14:36:06 +02:00
WerWolv
7c88439681 git: Output errors when ctest fails 2022-08-09 16:10:27 +02:00
WerWolv
8d3c94be8f tests: Make tests compile with latest PatternLanguage update 2022-08-07 22:55:00 +02:00
WerWolv
0b15299980 patterns: Remove [[static]] attribute from non-static struct in elf pattern 2022-08-07 21:40:54 +02:00
WerWolv
eda13b2518 includes/type: Added [[sealed]] attribute to LEB128 type 2022-08-05 13:49:26 +02:00
Oded Shapira
aa6c90fa5b includes/type: Added LEB128 type (#40)
* Implement VarInt type

* VarInts are little endian, make result u128

* Rename VarInt to LEB128

* It didn't remove the varint file
2022-08-05 13:45:34 +02:00
Oded Shapira
65f2b7821b patterns: Fix typo in pe.hexpat (#39)
Fixed a typo where it said numberOfRelactions to numberOfRelocations.
ImHex-v1.20.0
2022-08-04 23:49:26 +02:00
WerWolv
de752cdbc3 tests: Added tests for magic files 2022-08-03 16:18:18 +02:00
WerWolv
e574f8048e git: Updated ubuntu runner to latest release 2022-08-03 15:51:37 +02:00
WerWolv
874855dc1c git: Updated test workflow script 2022-08-03 15:49:32 +02:00
WerWolv
6f161f7c52 yara: Updated official rules 2022-08-03 15:45:14 +02:00
WerWolv
a6e5efbb7f includes: Added missing #pragma once to all files 2022-08-03 15:44:30 +02:00
WerWolv
72c92ce671 tests: Added tests for include libraries 2022-08-03 15:44:10 +02:00
WerWolv
5cf0daca4b includes/type: Replaced std/types.pat with the types library 2022-08-01 13:12:23 +02:00
WerWolv
c41f7479aa includes/std: Added std::time library 2022-08-01 13:11:41 +02:00
WerWolv
660da67e3b patterns: Removed [[static]] attribute from ARFile struct 2022-07-31 14:53:03 +02:00
Berylskid
9b564fe403 encodings: Change 00=() to space bar (#38)
Currently, the decode column is too wide horizontally, making it unusable. This PR is intended to solve that.
2022-07-30 21:27:39 +02:00
WerWolv
be0632fac2 encodings: Fixed readme copy-paste errors 2022-07-27 16:26:08 +02:00
WerWolv
3a4b3873d1 scripts: Added script to transform 010 editor CSV encoding files to table files 2022-07-27 15:58:03 +02:00
WerWolv
63468e543a encodings: Added various new encoding files 2022-07-27 15:57:45 +02:00
WerWolv
9e4a1d1d96 git: Fixed line endings of all files ImHex-v1.19.3 2022-07-26 08:48:01 +02:00
WerWolv
1a5d89c133 git: Store all files with LF line endings 2022-07-25 16:53:45 +02:00
WerWolv
4a44f79d88 encodings: Added corrected files for Shift-JIS. (#37)
Co-authored-by: Berylskid <91955473+Berylskid@users.noreply.github.com>
2022-07-25 16:46:49 +02:00
WerWolv
ce85f3e7ad encodings: Change file encoding to UTF-8 2022-07-23 15:16:28 +02:00
WerWolv
f40943c8cd patterns: Added UF2 pattern 2022-07-08 12:31:54 +02:00
WerWolv
48dd8f68ca patterns: Removed text/plain MIME type from intel hex pattern 2022-06-27 20:40:23 +02:00
WerWolv
bfc471f4e5 tests: Added tests for constants and tips checking 2022-06-23 17:57:45 +02:00
WerWolv
f84e192774 git: Make sure we're always pulling the latest libpl 2022-06-23 12:57:47 +02:00
WerWolv
b93081d21f tests: Run tests in correct folder 2022-06-23 12:45:46 +02:00
WerWolv
5d223efe93 tests: Added PE pattern test file 2022-06-23 12:01:19 +02:00
WerWolv
7d122d9d74 tests: Added automatic pattern tests 2022-06-23 12:01:10 +02:00
WerWolv
68edebbe4f includes/std: Fixed min/max/clamp functions 2022-05-28 14:11:45 +02:00
WerWolv
4ec37dea37 includes/std: Added missing include 2022-03-28 22:55:52 +02:00
WerWolv
f708d192fb patterns: Added Ethernet II Frame pattern 2022-03-17 22:45:18 +01:00
WerWolv
21d1b1198d git: Added back readme entries that went missing 2022-03-17 00:13:19 +01:00
WerWolv
08ace38914 patterns: Added vdf pattern 2022-03-17 00:11:54 +01:00
WerWolv
448a81a06d includes/std: Added custom formatted types library 2022-03-03 14:27:54 +01:00
Lukas Cone
49c4023ce7 patterns: fix bitfields (#33) 2022-03-01 17:02:32 +01:00
Lukas Cone
87453a54fa patterns: add std::mem::find_sequence_in_range (#32) 2022-02-26 16:26:00 +01:00
WerWolv
2b4140d123 includes/std: Include io.pat in string.pat 2022-02-19 17:58:27 +01:00
Lukas Cone
9c476383ed patterns: improve WAV pattern (#31) 2022-02-19 17:57:13 +01:00
Lukas Cone
5ddf0d6705 patterns: Added ISO pattern (#30) 2022-02-19 17:57:01 +01:00
Lukas Cone
4e8aec1935 patterns: Add TGA pattern (#29) 2022-02-13 01:05:44 +01:00