WerWolv
33a1e7f055
sys: Added setting to override borderless window mode even on Intel
2022-02-15 23:07:48 +01:00
WerWolv
f72e9700ab
sys: Move Windows theme detection to Windows plugin
2022-02-15 22:50:04 +01:00
WerWolv
adfaa95149
lang: Added translation to long double inspector line
2022-02-15 21:53:39 +01:00
WerWolv
d6b887b7db
sys: Added basic editing support to data inspector
2022-02-15 21:50:27 +01:00
WerWolv
227040f82f
fix: Undo points not being created correctly
2022-02-15 21:50:02 +01:00
twevs
de86aee6a2
ui: Fixed columns in diffing view. ( #441 )
2022-02-14 21:35:55 +01:00
Polshakov Dmitry
8be39488ec
fix: Hex editor search buttons not working ( #439 )
...
* fix: reset focus only once after window opening
* refactor: extract search functions
* fix: restore focus after search/goto
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-13 20:13:59 +01:00
Bigfoot
2f61a91459
Prevent crash when opening a file w/o read access ( #437 )
2022-02-13 01:05:19 +01:00
Polshakov Dmitry
63455ce2be
fix: don't change list while iteration ( #434 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-12 15:39:47 +01:00
WerWolv
bd30411ba7
ui: Replaced all hex input textboxes with the new ones
2022-02-08 21:51:09 +01:00
WerWolv
42c0b6145b
ux: Disable bookmark toolbar button if nothing is selected
2022-02-08 18:39:15 +01:00
WerWolv
abd3fe6ed1
sys/ux: Improved selection requests
2022-02-08 18:38:54 +01:00
dianwoshishi
56277ae6da
build: fix errors when compiling example_cpp ( #426 )
2022-02-08 08:32:38 +01:00
Mark Nokalt
a52fee2248
nodes: Validate some buffer operations ( #425 )
...
* fix: NodeBufferSlice bounds validation
* fix: Make sure buffer is within u64 bounds in NodeCastBufferToInteger
* nodes: Use specific output methods in number constants
2022-02-08 08:32:10 +01:00
WerWolv
a8e49c5a85
nodes: Added Selected Region node
2022-02-07 22:46:22 +01:00
gnuhead-chieb
d17cd64fea
lang: Fixed Japanese mistranslation ( #419 )
2022-02-07 17:17:27 +01:00
gnuhead-chieb
949d036a81
lang: Add Japanese Translation ( #418 )
...
* Add Japanese Translation
* Add files via upload
* Update plugin_builtin.cpp
* Added Japanese translation to build script
Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-02-07 15:42:38 +01:00
WerWolv
2577a2f637
ux: Fixed docking to main window
2022-02-06 21:39:10 +01:00
WerWolv
b3728ae658
ui/ux: hexeditor -> hex_editor, Improved performance and flickering when highlighting bytes
2022-02-06 21:02:31 +01:00
WerWolv
c1b4c4e42a
nodes: Added layered distribution visualizer
2022-02-06 14:44:03 +01:00
WerWolv
a48a1ef272
nodes: Added byte distribution visualizer node
2022-02-06 13:55:19 +01:00
WerWolv
69c48edfdf
nodes: Added Image visualizer
...
Supports JPG, PNG, TGA, BMP, PSD, GIF, HDR and PIC via stb_image
2022-02-06 01:32:15 +01:00
WerWolv
eade95dff7
fix: Pattern source code being deleted when closing a provider
2022-02-05 22:26:00 +01:00
WerWolv
ca57f91bfa
nodes: Added Digram visualizer node
2022-02-05 22:19:32 +01:00
WerWolv
618eead341
sys: Drastically improve highlighting performance
2022-02-04 00:29:47 +01:00
WerWolv
ba68f463e5
ui: Added to matched yara rules
2022-02-02 21:08:46 +01:00
WerWolv
df1d302bcb
sys: Added time and source to logger output
2022-02-02 17:19:50 +01:00
WerWolv
4c51efc5e0
pattern: Improved parsing of integer literals, added support for hex floats
2022-02-02 16:03:18 +01:00
WerWolv
f19944f54d
lang: Added German translation for Windows plugin
2022-02-02 00:36:25 +01:00
WerWolv
876dbe8179
sys: Final cleanup to get rid of everything builtin in the main application
2022-02-02 00:36:09 +01:00
WerWolv
6977061227
ux: Fixed tips popup and properly apply default layout on first start
2022-02-01 23:33:42 +01:00
WerWolv
ce59226909
sys: Reformat all
2022-02-01 22:09:44 +01:00
WerWolv
1991afb87b
sys: Get rid of SharedData struct and cleanup code structure ( #411 )
...
* sys: Initial refactoring of the SharedData class
* sys/pattern: More refactoring, make every provider have its own patterns
* sys: Finished up refactoring. No more SharedData!
* sys: Fixed compile on Unix
* tests: Fixed unit tests
* sys: Moved view and lang files
* pattern: Added assignment operator support to for loops
* tests: Fixed compile issue
2022-02-01 18:09:40 +01:00
WerWolv
61fc479c79
pattern: Fixed many code inconsistencies and bugs
2022-01-31 14:37:12 +01:00
WerWolv
02fc175289
pattern: Make math functions not dangerous
2022-01-30 20:48:44 +01:00
WerWolv
6ae38aead8
pattern: Added extra math functions
2022-01-30 20:46:02 +01:00
WerWolv
52fa2b4479
pattern: Moved all built-in functions to the builtin namespace
2022-01-30 17:49:38 +01:00
WerWolv
af57b39d8f
pattern: Added #pragma once to prevent multi-includes of files
2022-01-30 17:49:18 +01:00
WerWolv
111c4b71aa
lang: Updated Italian translation. Thanks a lot to @CrustySean
2022-01-30 12:47:28 +01:00
WerWolv
dd572ba024
sys: Return std::nullopt instead of {} for empty optional values
2022-01-30 12:43:43 +01:00
WerWolv
66a13266e6
fix: Pasting bytes not working at all
2022-01-30 11:58:03 +01:00
WerWolv
3f5b258629
ux: Auto focus goto and find text box. Execute function on enter
2022-01-29 21:49:15 +01:00
xtexChooser
3987a5df6a
feat(i18n): update Chinese(Simplified) translation ( #406 )
...
* feat(i18n): update Chinese(Simplified) translation
* feat(i18n): update Chinese(Simplified) translation
* fix(i18n): cpp syntax error
2022-01-29 01:21:52 +01:00
WerWolv
6319449cbd
sys: Added RISC-V, M68K, M680X, Webassembly, MOS65XX and BPF architecture to disassembler
2022-01-24 23:56:02 +01:00
WerWolv
0e08b0226b
sys: Added clang-format file, formatted entire project
2022-01-24 20:53:17 +01:00
WerWolv
a66fec489c
ui: Added some hint text for in/out variable tab, improved centered hints
2022-01-24 00:46:19 +01:00
WerWolv
65212f22a6
pattern/ux: Added copying support to console, clip content, removed prefix
2022-01-24 00:45:46 +01:00
WerWolv
541c0d7547
build/plugin: Make plugins no longer depend on their file name
2022-01-23 23:28:56 +01:00
WerWolv
b3a8d02d19
lang: Don't hardcode fallback language anymore
2022-01-23 22:08:19 +01:00
WerWolv
49610f59ea
ux: Added interface to choose encoding files more easily
2022-01-23 21:52:43 +01:00
WerWolv
9cf7fc4a2e
store: Added encoding files to store, fixed crash when folder doesn't exist
2022-01-23 21:52:24 +01:00
WerWolv
053c897056
ui: Added ImHex logo to about page
2022-01-23 20:46:19 +01:00
WerWolv
8397af5c9b
api: Make main menus use the same priority API
2022-01-23 20:45:51 +01:00
WerWolv
2aed6ec13f
ux: Added option to save and load data processors
2022-01-23 11:54:25 +01:00
WerWolv
714d421334
api: Moved menu item adding to a new registry-type API
2022-01-23 11:54:21 +01:00
WerWolv
6c6fe8ad5c
ui: Added license to about page
2022-01-22 23:11:28 +01:00
WerWolv
48aacc0c2e
sys: (s8, s16, s32, s64, s128) -> (i8, i16, i32, i64, i128)
2022-01-22 22:37:52 +01:00
WerWolv
9ddd97a6eb
provider: Added insert bytes feature
2022-01-20 23:24:26 +01:00
WerWolv
ee8b665472
ui: Added API to add custom layouts, imhex application and api cleanup
2022-01-18 00:10:10 +01:00
WerWolv
40d7e4aa6e
build: More repo cleanup, move libimhex and external libs to /lib folder
2022-01-16 14:20:52 +01:00
WerWolv
a5a1ae6725
fix: Providers not compiling on Unix
2022-01-16 02:29:25 +01:00
WerWolv
a70ece7b9c
sys: Bunch of cleanup, use fs::path instead of std::string for paths
2022-01-16 01:51:31 +01:00
WerWolv
ed8ee35a86
ui: Fixed sizing of several popups
2022-01-16 00:48:35 +01:00
WerWolv
8a6b110d0b
ux: Improve loading of encoding files, make advanced encoding enabled by default
2022-01-15 23:44:15 +01:00
WerWolv
1f65fbf422
ui: Fixed hex editor selection frame
2022-01-15 20:56:06 +01:00
WerWolv
25e4902a1c
ui: Improved displaying of a bunch of values in the inspector
2022-01-15 15:15:25 +01:00
WerWolv
bcbda85a40
fix: Compiling of time functions on Unix
2022-01-15 15:03:15 +01:00
WerWolv
abac42826c
fix: Many security and format issues
2022-01-15 14:14:53 +01:00
WerWolv
012b82c395
fix: Crash on exit due to bug in libromfs
2022-01-15 02:46:24 +01:00
WerWolv
23190e1f87
build: Fixed cmake policy warnings for capstone
2022-01-15 01:20:59 +01:00
WerWolv
d8219ad971
build: Cleaned up cmake build structure ( #399 )
...
* build: Cleanup build process, move main application to /main folder
* build: Try fixing MacOS bundling
* build: Fixed swapped parameters
* build: One imhex -> main too much
* build: Move resources to a better location
* build: Try to fix macos bundle creation
* build: More bundle fixes
* build: Fixed syntax
* build: Another try
* build: Added macos debugging stuff
* build: Fix bundle path
* build: Removed duplicated adding of Frameworks folder to rpath
* build: Removed debugging
2022-01-15 00:14:12 +01:00
WerWolv
0864d582a2
build: Update curl
2022-01-13 21:30:42 +01:00
WerWolv
3f936b57f5
sys: Added a bunch of logging
2022-01-13 14:34:27 +01:00
WerWolv
54785b29dd
api: Moved file extension handling to plugin and added API
2022-01-13 14:34:19 +01:00
WerWolv
c88d428fb5
sys: std::filesystem -> fs
2022-01-13 14:33:30 +01:00
WerWolv
27c08c1edf
fix: SSL verification being broken due to a off-by-one error
2022-01-13 09:05:16 +01:00
WerWolv
1f8c9b9f71
api: Move copy-as data formatting code to builtin-plugin, add api for it
2022-01-13 00:27:31 +01:00
WerWolv
f6e4d56de6
patterns: Fixed [[static]] attribute and majorly reduced memory usage
...
Fixes #394
2022-01-12 22:02:47 +01:00
WerWolv
0d02af3cf0
patterns: Fixed arrays overriding the color of all its entries
2022-01-12 12:51:29 +01:00
WerWolv
a7a57e2bd0
patterns: Fixed local variable truncation
2022-01-12 11:59:08 +01:00
WerWolv
25df658653
fix: ImHex directories not being created correctly
2022-01-12 09:02:03 +01:00
WerWolv
6b20a9bdd5
patterns: Fix local variables holding larger values than allowed
2022-01-12 08:59:14 +01:00
WerWolv
d399a6427a
sys: Use custom literals for scaled values
2022-01-11 23:48:18 +01:00
WerWolv
2f1a707fd3
ui: Improve layout of hex editor footer
2022-01-11 23:05:02 +01:00
WerWolv
cbfe52c756
patterns/ui: Limit displaying of array entries to 50 with option to double click last entry for more
2022-01-11 22:38:50 +01:00
WerWolv
3c1f0057ae
patterns: Improve PatternData size as much as possible
2022-01-11 22:38:04 +01:00
WerWolv
b9034523b5
patterns: Allow [[format]] attribute to work with custom types
2022-01-11 19:35:28 +01:00
WerWolv
dc064008f3
build: Fix use of libromfs in plugin templates
2022-01-10 22:06:37 +01:00
WerWolv
652896bd3a
lang: Added missing translation
2022-01-10 21:44:42 +01:00
WerWolv
1fe6dc4c6e
fix: Occasional crash when disassembling files
2022-01-10 21:38:52 +01:00
WerWolv
e35ea13f60
sys: Improved view const-correctness
2022-01-10 21:05:37 +01:00
WerWolv
e1fb0a5d72
ui: Fixed settings window being huge
2022-01-10 21:05:18 +01:00
WerWolv
e204ef629f
patterns: Fixed passing structs to functions as argument
...
Fixes #385
2022-01-10 20:02:18 +01:00
WerWolv
d2704242f2
patterns: Fixed pointer_base
attribute
...
Hopefully takes care of #367
2022-01-10 00:40:34 +01:00
WerWolv
6ada7885b1
fix: Opening files as read-only if user doesn't have permissions
2022-01-09 21:57:43 +01:00
WerWolv
d38d261bbc
provider: Fixed applying of IPS patches. Handle applying asynchronously
2022-01-09 21:27:59 +01:00
WerWolv
4e636381fd
fix: Magic and EOF value for IPS and IPS32 patches not getting added properly
2022-01-09 20:16:05 +01:00
draftshade
fe04d05c28
sys: Add functionality to clear recent files ( #395 )
...
* sys: Add functionality to clear recent files
* sys: Remove clear recent files from welcome window
2022-01-08 23:17:47 +01:00
WerWolv
f45cc3fc73
patterns: Potentially fix issues with nested pointers with custom base addresses
...
Closes #367
2021-12-31 11:05:02 +01:00
WerWolv
490eaef5c1
patterns: Fixed color attribute not working correctly for arrays and structs
...
Fixes #388
2021-12-31 11:01:22 +01:00
WerWolv
077bc45b7d
fix: Many format string warnings on MacOS and some Linux distros
2021-12-31 01:10:06 +01:00
WerWolv
0884025b82
patterns: Added continue and break statements to arrays of structs
2021-12-30 18:31:24 +01:00
WerWolv
3ce0f8f4a8
patterns: Added break and continue statements for loops
2021-12-30 14:44:46 +01:00
WerWolv
c76bfceb3e
fix: Compile issue on MacOS because Apple's just using fucking outdated stuff
2021-12-23 16:09:29 +01:00
WerWolv
7c2e060a5f
fix: Provider reading from invalid addresses on later pages
...
This fixes #384
2021-12-23 15:57:22 +01:00
WerWolv
936d1d6072
sys: Moved to a better shortcut handling system
2021-12-23 15:11:38 +01:00
WerWolv
85f276c259
resources: Start using libromfs to embed resources
2021-12-22 15:06:16 +01:00
qxxxb
28e51309cc
Fix saving files ( #382 )
2021-12-22 13:36:26 +01:00
WerWolv
c1bb407b34
ui: Make diff hex view more consistent with the normal hex editor view
...
Fixes #381 . Thanks a lot to @qxxxb
2021-12-22 13:33:22 +01:00
qxxxb
b047fc0063
Store environment variables and use on restart ( #380 )
...
- Fixes WerWolv/ImHex#373
2021-12-22 13:16:51 +01:00
WerWolv
78f6ef464a
ui: Improved look and feel of some tool entries
2021-12-20 22:04:10 +01:00
WerWolv
b3906e770f
sys: Fixed Windows TTY COM Port view
2021-12-20 21:50:59 +01:00
WerWolv
e11a5d0d44
ui: Added link to discord server to welcome page
2021-12-20 21:38:52 +01:00
WerWolv
ad223a4e5c
sys: Refactor pattern language api functions a bit
2021-12-20 20:40:28 +01:00
WerWolv
376cb01a16
patterns: Disallow calling of dangerous functions by default
...
Closes #330
2021-12-19 12:32:15 +01:00
WerWolv
0efb226c2f
patterns: Make std::env return an empty string and throw a warning if env var doesn't exist
2021-12-18 23:38:16 +01:00
WerWolv
ea92e17ca0
patterns: Added basic support for in/out variables
2021-12-18 22:56:36 +01:00
WerWolv
c56408640f
build: Don't try to do anything with windows plugin on Unix
2021-12-17 09:56:46 +01:00
WerWolv
bc53109a1f
sys: Added timeout setting to curl code. Make splash screen not hang as long
2021-12-17 09:52:58 +01:00
WerWolv
b082a28cc4
build: Mark libraries as PIC properly
2021-12-17 09:52:11 +01:00
WerWolv
891cc42f08
ui: Added global running tasks progress bar
2021-12-16 23:48:52 +01:00
WerWolv
fe1ab12fec
build: Enable fPIC for libcapstone
2021-12-16 12:48:36 +01:00
WerWolv
b17808c6c7
build: Completely get rid of system capstone
2021-12-16 12:37:22 +01:00
WerWolv
6b22464771
fix: Loading a project crashes imhex
2021-12-16 10:07:31 +01:00
WerWolv
1770235648
build: Build and statically link capstone to work around Ubuntu issues
...
Sigh...
2021-12-15 23:28:47 +01:00
WerWolv
f325d50ab8
yara: Actually fixed reading data
2021-12-15 22:52:35 +01:00
WerWolv
7d0d8d5649
yara: Fix address offset after the first page of data
2021-12-15 21:13:45 +01:00
WerWolv
23085aee6d
fix: Heap(?) corruption when one of ImHex's resource paths points to a file instead of a directory
2021-12-15 00:21:34 +01:00
WerWolv
0ee4b1e336
build: Link mbedtls to libyara
2021-12-14 21:27:15 +01:00
WerWolv
78b3f5aef1
build: Link libraries to relevant projects
2021-12-14 20:16:59 +01:00
WerWolv
e25d98ef63
provider: Fixed opening zero sized files
2021-12-14 20:16:00 +01:00
WerWolv
51474b2eae
ui: Added icon to footer when ImHex has elevated permissions
2021-12-13 22:58:23 +01:00
WerWolv
9bf9788689
fix: Error when opening a file
2021-12-12 21:46:48 +01:00
WerWolv
b372d20ab0
fix: Missing includes on Linux and Mac
2021-12-12 13:42:01 +01:00
WerWolv
d1ce8a5f9b
ui: Fix size of settings window
2021-12-12 13:35:23 +01:00
WerWolv
41ce0f57ed
ui: Improved About page, removed super outdated cheat sheets
2021-12-12 13:35:07 +01:00
WerWolv
1a0b0e2385
provider: Automatically load available disks on windows
2021-12-12 11:56:26 +01:00
WerWolv
443dedd832
ui/lang: Improved localization and interface glitches of GDB provider ui
2021-12-12 11:55:38 +01:00
WerWolv
caf9ee0c58
ux: Added "Open Other" option to open other providers to File menu
2021-12-12 11:53:56 +01:00
WerWolv
b2a9965617
api: Improved Provider registering api, hide implementation functions better
2021-12-12 11:52:58 +01:00
WerWolv
883207bc6b
fix: Compile on MacOS
2021-12-12 01:06:24 +01:00
WerWolv
15e38e1012
ux: Added save pattern option to File menu
2021-12-12 00:52:54 +01:00
WerWolv
8a36897fd9
provider: Added raw disk provider
2021-12-12 00:42:12 +01:00
WerWolv
3e736b36b6
api: Refactored providers to allow for loading interfaces and config views
2021-12-12 00:41:44 +01:00
WerWolv
2e90abd2c5
patterns: Fix indexing of static arrays
2021-12-10 18:53:19 +01:00
WerWolv
fb99674217
lang: Added missing localization, changed pattern editor lang keys
2021-12-10 18:00:43 +01:00
WerWolv
e3106eaa2a
ux: Use native APIs to open websites to prevent terminal from appearing
2021-12-10 16:10:34 +01:00
WerWolv
8f2e382c8a
patterns: Added std::env and ability to pass parameters to patterns from the UI
2021-12-10 11:55:27 +01:00
WerWolv
6a0ad22774
fix: Inconsistent provider address reading
2021-12-09 21:10:24 +01:00
WerWolv
2ac6348fbf
ui: Welcome screen, GDB Provider and memory editor ui fixes
2021-12-08 22:18:59 +01:00
WerWolv
ea4f4c45cb
sys: std::jthread -> std::thread to support libc++
2021-12-07 23:36:28 +01:00
WerWolv
808b051a3e
sys: Fixed sockets compiling on MacOS
2021-12-07 23:21:07 +01:00
WerWolv
c55146a78c
sys: Fix sockets compiling on Unix
2021-12-07 23:09:30 +01:00
WerWolv
cc5a437573
provider: Added basic GDB Server provider
2021-12-07 22:47:57 +01:00
WerWolv
4a53717676
sys: Moved all views to builtin plugin
2021-12-07 22:47:41 +01:00
WerWolv
c2d1589e74
patterns: Fixed variable access inside pointer pattern yielding invalid results
2021-12-05 21:54:09 +01:00
WerWolv
e720b61df6
patterns: Fix casts unexpectedly increasing cursor position
2021-12-03 16:06:40 +01:00
WerWolv
19b80a1c2d
build: Who is that?
2021-12-03 09:24:41 +01:00
WerWolv
a000b1a2fe
common: Added missing include
2021-12-03 00:00:25 +01:00
qdlmcfresh
0da31b6bbb
ui: Add result count to string view ( #353 )
...
* Add result count to string view
* Localization
* formating and logic fix
2021-11-30 21:02:37 +01:00
WerWolv
9340c8aae3
patterns: Fixed placed signed integers not being sign extended correctly
2021-11-27 14:34:59 +01:00
WerWolv
9158d79126
patterns: Don't display strings with zero length. Fixes crash
2021-11-27 14:02:14 +01:00
WerWolv
ded452fdfc
patterns: Allow functions to be called inside structs
2021-11-27 12:57:59 +01:00
RADICS Áron
467e9d1463
Tests for the CRC and hash algorithms ( #335 )
...
* Update TEST_ASSERT to do nothing if condition is true
The TEST_ASSERT should not return if the condition is true, because:
- it prevents the usage of multiple TEST_ASSERT in a single test case,
- that behavior differs from how the assert in the standard library
works, and thus may give unexpected results.
Make the TEST_ASSERT to print an error message (with an formatted
optional user part) when it fails to make debugging easier.
* Fix some bugs in TestProvider, add unit tests
Use pointer-to-vector in TestProvider so writes can be tested, too.
* Add test EncodeDecode16, fix some encode16 bugs
The function mbedtls_mpi_write_string needs a bit longer buffer than the
resulting string actually will be.
Known bug: mbedtls_mpi_read_binary ingores initial null bytes
* Add test EncodeDecode64, fix some bugs
The functions mbedtls_base64_encode and mbedtls_base64_decode needs a
bit longer buffer than the resulting string actually will be.
* Remove check for empty data from TestProvider
It can be valid to get the hash of empty string.
* Add tests for CRC calculation
Two type of thests:
- compare the result of the CRC calculation to a known to be good
results,
- generate random data as message, calculate of it's CRC and append that
to the message, the CRC of this new data should be 0.
* Add test for hash algorithms
* Add includes in tests
* Remove the use of C++20 ranges
It seems that Apple Clang does not support range-based constrained
algorithms at this time.
* Replace encode16 implementation
To encode the zero bytes at the begining of the input vector, too.
2021-11-26 22:14:44 +01:00
qdlmcfresh
372908ba9d
add regex filter in string view ( #345 )
...
* Filter by regex in string view
* Dont recompile the regex for every string, display error message
* localization
* Use data->Buf for pattern creation / searching
The filter string seems to get updated after the callback finished.
Therefore the search string was always 1 character behind the actual
string in the textfield when calling find() / creating the regex.
2021-11-25 08:46:42 +01:00
WerWolv
aa527ba29b
patterns: Fixed double free crash
2021-11-21 00:48:07 +01:00
xtex
9e808f3ecd
Update zh_CN.cpp ( #343 )
2021-11-12 13:10:48 +01:00
qdlmcfresh
2e3c43ad9e
Fix buffer sizes of PatternDataString16 ( #339 )
2021-11-11 13:24:01 +01:00
WerWolv
594a6c1c0f
patterns: Remove null bytes before displaying/printing string patterns
2021-11-10 14:45:26 +01:00
WerWolv
434de44ef5
yara: Added support for displaying variable names
2021-11-04 20:41:56 +01:00
WerWolv
1c1396bf4b
patterns: Added ability to format patterns as strings.
...
This adds support for printing char16 strings
2021-11-04 20:41:56 +01:00
WerWolv
673d43b526
sys: Fixed copy-paste error
2021-10-31 16:36:45 +01:00
WerWolv
c88053a575
windows: Added context menu entry option
...
Closes #333
2021-10-31 16:28:10 +01:00
WerWolv
1f250e87a3
patterns: Added support for changing pointer endian
2021-10-31 15:20:19 +01:00
WerWolv
cd89b55f5b
patterns: ASTNode and LogConsole cleanup
2021-10-31 15:06:48 +01:00
RADICS Áron
a6b8597f5a
Fix CRC and hash calculations ( #321 )
...
* Fix CRC calculation, add more CRC parameters
Use the Boost CRC module to calculate the CRC values.
Add options for final xor value, reflectIn and reflectOut.
Fixes #320
* Cleanup Hash view combo box, add CRC8
* Use offset/size consistently
* Cleanup: unify processing data by chunks
* Change CRC algorithm back, drop boost dependency
This is mostly the original algorithm, with a few fixes and small
additions (support for reflect In / Out, final XOR value).
* Use size_t for file read size consistently
2021-10-26 17:21:48 +02:00
WerWolv
c95e12c136
ui: Increased maximum FPS limit to 200FPS, added unlocked FPS setting
...
Closes #329
2021-10-23 12:59:13 +02:00
WerWolv
d6f9ec3f8f
tests: Improved pattern unit tests
2021-10-20 11:06:24 +02:00
WerWolv
9ccfadfb54
sys: Fixed uninitialized variable
2021-10-20 10:35:26 +02:00
WerWolv
8b6de30e92
ui: Fixed invalid call to ImGui::EndChild causing crashes sometimes
2021-10-20 10:05:20 +02:00
WerWolv
6408741733
sys: Fixed changeEndianess function being completely broken for non-integers
2021-10-20 10:04:52 +02:00
WerWolv
7562e8b172
patterns: Fixed #include not properly searching all include folders
2021-10-19 21:42:04 +02:00
WerWolv
929437c159
patterns: Added global variables
2021-10-19 18:33:59 +02:00
WerWolv
1b66c84303
patterns: Fixed [[name]] attribute setting variable name instead of display name
2021-10-18 09:57:26 +02:00
WerWolv
9b1c09818c
patterns: Fixed accessing global scope items through the parent keyword
2021-10-17 21:49:33 +02:00
WerWolv
46ba46ce9d
build/plugins: Added initial support for Rust plugins ( #327 )
...
* build: Added initial support for Rust plugins
* github: Install correct rust version
* github: Fixed rustup command
* github: Fix swapped win/linux commands
* github: Install linux rust toolchain on Linux
* github: Add rustup parameters to correct command
* build: libimhex-rust -> hex
* rust-plugins: Disable optimization to export functions correctly
* build: Use cdylib instead of dylib
* build: Fixed rust building and artifact copying
* build: Fixed installing plugins
* build: Fix copying and installing on Windows
* github: Added windows debugging
* github: Use curl instead of wget
* github: Added debug on failure
* github: Update path variable with rust toolchain path
* build/github: Set rust location so cmake can find it
* build: Remove leftovers
* api: Added rust wrappers for the ImHexAPI
* rust: Fixed compile flags with older gcc/clang
* build: Enable concepts for cxx.rs
* build: Explicitly set compiler for cxx.rs
* rust: Added imgui-rs to libimhex-rust
* rust: Export functions with double underscore prefix on mac
* rust: Export functions adjusted for ABI
* Add Rust target folder to gitignore
* Add vendored imgui-rs copy
* Add Context::current() to vendored imgui-rs
* Fix libimhex not exporting cimgui symbols
* Simplify plugin export mangling
* build: Fixed cimgui linking
* build: Only specify --export-all-symbols on Windows
* Add context setting to Rust plugins
* rust: Cleanup
* deps: Update curl
Co-authored-by: jam1garner <8260240+jam1garner@users.noreply.github.com>
2021-10-16 11:37:29 +02:00
WerWolv
3e5d6cf88c
patterns: Added padding expressions in bitfields.
...
Closes #326
2021-10-14 20:28:21 +02:00
WerWolv
b12cd66679
patterns: Make global scope available for use in custom types
2021-10-11 22:01:15 +02:00
WerWolv
aac1a37a3f
patterns: Limit number of characters displayed in a string pattern
2021-10-11 20:59:14 +02:00
WerWolv
140234aef3
patterns: Fixed using declaration parsing
2021-10-10 15:38:58 +02:00
WerWolv
ec9715f326
patterns: Added for loops
2021-10-10 13:47:48 +02:00
WerWolv
69ca14bf46
patterns: Allow function variables to be assigned immediately
2021-10-10 13:05:32 +02:00
WerWolv
0226f3d047
patterns: Fixed color
attribute taking BGR instead of RGB
2021-10-09 23:38:00 +02:00
Kuruyia
72ec6baf79
sys: Fix macOS compilation (as of 2dc1886
) ( #317 )
...
* sys: Updated curl to latest version
* sys: Fix macOS compilation
* ui: Fix splash screen OpenGL init for macOS
* sys: Fix std::min compile errors
* git: Re-enabled macos workflow
* sys: Remove includes of the range library
* build: Find OpenGL using CMake
* sys/build: Fix bundled plugins on macOS
* build: Copy plugins to bundle when creating a bundle
* build: Fixup bundled plugins
* sys: Search for plugins in the bundle instead of in Application Support
* sys: Allow resources to be placed in multiple directories on macOS
* build: Output built plugins to the plugins/ directory when not creating a bundle on macOS
* sys: Fix Application Support paths on macOS
* sys: Define ftruncate64 on macOS
* sys: Fix absolute value computation for std::string::at on macOS
Co-authored-by: WerWolv <werwolv98@gmail.com>
2021-10-09 23:07:58 +02:00
WerWolv
2dc1886ee9
patterns: Fixed wrong offsets when passing custom types to functions
2021-10-08 21:39:30 +02:00
WerWolv
a29e3789d2
patterns: If a main function exists, automatically call it
2021-10-08 18:47:05 +02:00
xtex
17db605b17
i18n: Chinese(Simplified) ( #316 )
...
* i18n: Chinese(Simplified)
* i18n: Chinese(Simplified)
fix: half-width symbol
* i18n: Chinese(Simplified)
2021-10-08 13:26:14 +02:00
WerWolv
7498a72f70
patterns: Fixed null bytes being included in read strings
2021-10-07 21:47:39 +02:00
WerWolv
241bbd80bc
ui: Fixed pattern data view lang name overlap
2021-10-07 20:34:18 +02:00
WerWolv
2e05845410
ui: Improved command palette
2021-10-07 16:25:59 +02:00
WerWolv
a67263fa27
patterns: Added basic file i/o functions
2021-10-07 14:49:49 +02:00
WerWolv
6d8b7bef09
patterns: Added button to abort evaluation
2021-10-07 11:34:46 +02:00
WerWolv
3e30f75e7b
patterns: Fixed endian pragma not working
2021-10-06 15:19:32 +02:00
WerWolv
7eb4b40dc7
patterns: Fixed multi-variable decl crash
2021-10-05 22:08:05 +02:00
WerWolv
e3a6ac548b
pattern: Make current data offset in attributes point to start address of pattern
2021-10-05 21:55:30 +02:00
WerWolv
044e65eb20
sys: Fixed non-existing files being created in Read mode
2021-10-05 18:47:10 +02:00
WerWolv
545604da63
sys: Fixed reading empty file as string crashing
2021-10-05 18:46:57 +02:00
WerWolv
4b9aff5b29
patterns: Allow str to be used in function bodies
2021-10-04 20:26:34 +02:00
WerWolv
3543fa4caa
patterns: Fixed pattern limitting dangling pointer
2021-10-03 23:07:33 +02:00
WerWolv
51a98736e8
tests: Fixed compile errors
2021-10-03 12:32:58 +02:00
WerWolv
12a8cadcfe
patterns: Limit max number of patterns
...
Can be overriden with the pattern_limit pragma
Further improves situation with #313
2021-10-02 15:22:38 +02:00
WerWolv
aef959854f
patterns: Correctly reset data offset each evaluation
...
Fixes a bug mentioned in #313
2021-10-02 13:41:56 +02:00
WerWolv
d3e3de3fa2
ux: Improved dropped file loading; Added magic db loading
2021-09-30 12:29:03 +02:00
WerWolv
194bc3e5be
settings: Add option for auto-loading patterns
2021-09-30 12:00:11 +02:00
WerWolv
a9e3db0464
patterns: Fixed inlined variable drawing
2021-09-29 20:51:57 +02:00
WerWolv
7978964995
ui: Centered "No bookmarks" text
2021-09-27 23:19:41 +02:00
WerWolv
d5ca4c4f28
patterns: Fixed pointer name displaying
2021-09-27 20:16:23 +02:00
WerWolv
08c2e1cd4e
patterns: Added [[transform]] and [[pointer_base]] attributes
2021-09-27 18:32:48 +02:00
WerWolv
888976873a
patterns: Added [[inline]] attribute
2021-09-27 13:31:10 +02:00
WerWolv
5db608c3fc
ui: Fixed automatic pattern loading, added better pattern browse popup
2021-09-26 21:18:25 +02:00
WerWolv
7da8a5b1d8
patterns: Unified expression body parsing
2021-09-26 18:27:18 +02:00
WerWolv
ae9f4fa876
patterns: Increased highlighting performance
2021-09-26 02:23:27 +02:00
WerWolv
e3dd5900e2
patterns: Added parse_int and parse_float functions
2021-09-26 02:23:10 +02:00
WerWolv
aab865fe25
patterns: Fix member access inside if body
2021-09-26 02:22:50 +02:00
WerWolv
62656f4c51
tests: Added pointer test
2021-09-25 23:31:37 +02:00
WerWolv
b323d711cf
patterns: Respect endianess when accessing rvalues
2021-09-25 22:46:16 +02:00
WerWolv
9b4cf917d9
patterns: Fixed recursive types
2021-09-25 22:03:55 +02:00
WerWolv
ba97573f93
patterns: Fixed pointers not working correctly
2021-09-25 18:45:23 +02:00
WerWolv
9dc62e1469
patterns: Added std::http::get
2021-09-25 16:24:08 +02:00
WerWolv
55c0cb66e3
patterns: Ignore comments inside strings
2021-09-25 16:23:51 +02:00
WerWolv
a8526585cb
patterns: Fixed string access
2021-09-25 14:52:34 +02:00
WerWolv
3850349eae
patterns: Fixed enum entry scope resolution
2021-09-25 14:52:17 +02:00
WerWolv
f5bd0b7971
patterns: Moved std::str to std::string
2021-09-25 00:04:54 +02:00
WerWolv
42d9753bdb
patterns: Fixed std::str::substr
2021-09-25 00:04:40 +02:00
WerWolv
17d5a5309a
patterns: Fixed setting variables in functions
2021-09-25 00:03:32 +02:00
WerWolv
71be77c54b
patterns: Fix boolean operations and cast syntax
2021-09-24 12:15:50 +02:00
WerWolv
93c1fbd65e
patterns: Fixed function parameters being set in the wrong order
2021-09-24 11:34:06 +02:00
WerWolv
3c2c2b003f
patterns: Fixed unary expressions in parenthesis
2021-09-24 01:55:00 +02:00
WerWolv
2edd6cd6c4
patterns: Added inheritance for structs
2021-09-24 00:47:34 +02:00
WerWolv
6713f65040
patterns: Added auto
type
2021-09-23 23:43:16 +02:00
WerWolv
d9134f7fe1
store: Added support for downloading tar'd folders
2021-09-23 22:56:49 +02:00
KokaKiwi
ee26839292
build: Fix system libraries usage ( #308 )
...
Signed-off-by: KokaKiwi <kokakiwi+git@kokakiwi.net>
2021-09-23 22:01:38 +02:00
WerWolv
e57481b87c
tools: Added file shredder, splitter and combiner
2021-09-22 17:56:06 +02:00
WerWolv
755642862f
patterns: Added recursion and array size limit pragma
2021-09-22 00:45:04 +02:00
WerWolv
d1c05174b6
patterns: Allow casting integers to str
2021-09-21 23:45:45 +02:00
WerWolv
85b8698e35
patterns: Add std::mem::read_string
2021-09-21 23:29:30 +02:00
WerWolv
9dd555f111
build: Added minimum library versions to cmake
2021-09-21 22:21:43 +02:00
WerWolv
7df1ff07a7
lang: Added diffing view localization
2021-09-21 22:06:30 +02:00
xtex
eb779c5986
i18n: more zh_CN, fix: crashes when connecting with no COM port, feat: remove View
suffix for view menu ( #305 )
...
* fix: crashes when connecting with no COM port
* feat: remove `View` suffix for view menu
* i18n: add more to Chinese(Simplified)
* Revert "Merge branch 'master' of github.com:xtexChooser/ImHex"
This reverts commit 8afcfe8f9d
, reversing
changes made to 7651ad6661
.
2021-09-21 21:30:52 +02:00
WerWolv
c051f5d3e7
patterns: Rewrite evaluation engine ( #306 )
...
* patterns: Rewrite most of the evaluator to mainly use polymorphism instead of just RTTI
* patterns: Fixed a couple of AST memory leaks
* patterns: Parse string operations correctly
* patterns: Various fixes and cleanup
* patterns: Implement primitive function definitions
Function parameters now need to provide their type in the definition
* patterns: Added function variable definition and assignment
* patterns: Added remaining function statements
* patterns: Added unsized and while-sized arrays
* patterns: Added multi variable declarations to functions
* patterns: Added std::format built-in function
* patterns: Allow passing custom types to functions
* patterns: Added attributes and new "format" attribute
* patterns: Use libfmt for std::print instead of custom version
* patterns: Remove unnecessary string compare function
* pattern: Fix preprocessor directives
* patterns: Fix unit tests
* patterns: Added cast expression
* patterns: Handle endianess in function parameters
* patterns: Added casting to different endian
* patterns: Added 'str' type for functions
2021-09-21 21:29:18 +02:00