iTrooz
32d6ac2241
feat: move PerProvider data to new provider when saving memory provider into file provider ( #1264 )
2023-08-26 01:47:44 +02:00
WerWolv
758cdd91f3
impr: Make sure logs are always output immediately
2023-08-26 01:44:10 +02:00
WerWolv
6e81ce152e
impr: Get rid of some manual memory management
2023-08-25 23:54:39 +02:00
WerWolv
6fc62bac94
build: Remove unnecessary yara autoconf file configuring
2023-08-25 22:55:09 +02:00
iTrooz
175e66a60e
feat: Do not save memory providers as recent entries ( #1259 )
2023-08-25 15:35:15 +02:00
WerWolv
f598421705
patterns: Updated pattern language
2023-08-17 08:24:38 +02:00
WerWolv
fc93f8bd66
fix: CI being broken on Arch Linux
2023-08-16 23:07:16 +02:00
Lennard Fonteijn
d2e6d8e4d9
Added ImGui extension to create single- and multiline formatted selec… ( #1249 )
...
(Partial) implementation of #1245 with additional functionality to
supersede PR #1240 .
2023-08-13 17:08:17 +02:00
Justus Garbe
285b79f31e
fix: Crypto buffered hexadecimal encoding
2023-08-13 15:27:01 +02:00
Justus Garbe
d468893bb0
build: Updated libwolv
2023-08-13 14:30:52 +02:00
WerWolv
882849e73c
fix: Highlighting of found elements not being cleared correctly
2023-08-09 20:01:57 +02:00
WerWolv
49d3fe65a3
fix: Allow converting very long hex strings to bytes
2023-08-09 20:01:29 +02:00
Nik
e77f138514
feat: Added Achievements ( #1230 )
...
This PR adds Achievements to ImHex that serve as both a guide and a fun
way to learn more about ImHex and reverse engineering
2023-08-06 21:33:15 +02:00
WerWolv
64a0c3f6e2
build: Updated json and miniaudio libraries
2023-08-06 11:10:42 +02:00
WerWolv
fae8f0a8d5
build: Fixed cmake not using default settings on Windows
2023-08-06 01:52:23 +02:00
WerWolv
1a765ee5ab
build: Updated libromfs
2023-08-05 10:26:27 +02:00
WerWolv
e1ca84d89c
patterns: Updated pattern language
...
Fixes #1228
2023-08-05 09:59:53 +02:00
WerWolv
d28d6d1a1b
patterns: Updated pattern language
...
Fixes #958
2023-08-03 23:43:40 +02:00
WerWolv
e65497ec3b
fix: /imhex
being appended to Application Support folder paths on macOS
...
Fixes #1221
2023-08-03 21:49:41 +02:00
WerWolv
50dd6405e9
patterns: Updated pattern language
2023-08-02 20:41:56 +02:00
WerWolv
bf8924ae0c
feat: Added support for string in/out variables
2023-08-02 12:51:02 +02:00
WerWolv
30b202cf0c
patterns: Updated pattern language
2023-08-01 00:00:45 +02:00
WerWolv
84766d5f6e
patterns: Updated pattern language
2023-07-31 23:19:23 +02:00
iTrooz
4d6e6cf75a
fix: Magic compile dumping files into cwd ( #1212 )
...
This PR fix libmagic dumping files in the imhex cwd when compiling them
This code was actually written by you (notice the source branch), this
PR is just a reminder that the fix works and you can merge it ^^
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-30 21:36:48 +02:00
WerWolv
2e5a51bb05
patterns: Updated pattern language
2023-07-30 00:44:09 +02:00
WerWolv
4ae55f69e1
build: Updated libwolv
2023-07-29 11:26:18 +02:00
WerWolv
e829c407e3
fix: Writing behaving weirdly when using a custom base address
2023-07-27 02:05:35 +02:00
WerWolv
27c8e19c14
build: Remove all static variables from headers to hopefully fix plugins
2023-07-26 13:50:51 +02:00
WerWolv
866c87b2bf
patterns: Updated pattern language
2023-07-26 13:05:47 +02:00
WerWolv
aa4ce01c73
build: Forcefully disable LTO for libimhex
2023-07-26 12:57:38 +02:00
WerWolv
d0a5c144e6
patterns: Updated pattern language
2023-07-26 00:23:09 +02:00
WerWolv
5feb4dce51
build: Try and make libimhex export all symbols
2023-07-25 11:25:59 +02:00
WerWolv
bca73ef01e
fix: Loading of custom fonts not working anymore
2023-07-24 17:25:36 +02:00
WerWolv
8b3cd2d76d
impr: Properly print asserts
2023-07-23 23:39:00 +02:00
WerWolv
b8d5e1e9c5
feat: Added built-in logging console
2023-07-23 23:37:47 +02:00
WerWolv
fdd2e1fcde
patterns: Added [[hex::spec_name]]
2023-07-23 09:14:00 +02:00
WerWolv
4979c65566
fix: Missing <array> include in stacktrace helper
2023-07-22 22:47:35 +02:00
WerWolv
f5fda76414
impr: Cleanup main
2023-07-22 21:30:22 +02:00
WerWolv
4b0d980d54
impr: Don't use fmt::println if it's not supported
2023-07-22 20:22:25 +02:00
WerWolv
8aec382440
fix: Loading of plugins and localizations after restart
2023-07-22 18:38:14 +02:00
WerWolv
f6bbfd7283
impr: Properly print new line characters in cli
2023-07-21 15:17:21 +02:00
WerWolv
0033d9f4eb
patterns: Updated pattern language
2023-07-21 14:20:57 +02:00
WerWolv
e5a793e8de
fix: Subcommands not working at all on Linux
2023-07-21 14:12:08 +02:00
WerWolv
3149183450
patterns: Updated pattern language
2023-07-21 11:53:37 +02:00
WerWolv
7c321a79c3
impr: Print message if no stacktrace can be collected
2023-07-20 21:41:22 +02:00
WerWolv
7c203e0635
build: Updated libwolv
...
Fixes #1201
2023-07-20 21:38:37 +02:00
WerWolv
6d7f217e2a
patterns: Updated pattern language
2023-07-17 11:20:17 +02:00
WerWolv
a83ca3c228
feat: Added --pl and --magic command
2023-07-17 10:43:29 +02:00
WerWolv
a83f87fbfa
build: Updated nativefiledialogs-extended to latest version
2023-07-17 08:08:29 +02:00
WerWolv
e9450b490f
feat: Added --plugin, --calc, --hash, --encode and --decode subcommands
2023-07-16 23:46:41 +02:00
WerWolv
0a6815da8f
fix: Always use default CA Cert
2023-07-16 19:56:07 +02:00
Nik
5171bea0bf
feat: Added cross-platform .NET scripts support ( #1185 )
...
This PR intends to add support for .NET scripts that can extend ImHex's
functionality in a portable and cross-platform way.
---------
Co-authored-by: Justus Garbe <55301990+Nowilltolife@users.noreply.github.com>
2023-07-15 14:29:14 +02:00
WerWolv
0f54a3a1f3
build: Added option to disable strict warnings
2023-07-15 10:02:19 +02:00
Nik
aae3004f1f
build: Various build improvements ( #1193 )
2023-07-15 00:10:01 +02:00
WerWolv
04b56c3d4d
patterns: Updated pattern language
2023-07-14 21:39:49 +02:00
iTrooz
1ed658bcdc
feat: Added command line interface support ( #1172 )
...
System design has been discussed on discord
Should fix #948
---------
Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-13 14:08:23 +02:00
WerWolv
cdc4f2db89
patterns: Updated pattern language
2023-07-11 09:21:13 +02:00
WerWolv
10756c65a6
patterns: Updated pattern language
2023-07-11 00:04:54 +02:00
WerWolv
8524e93445
impr: Display encoding types in header of hex editor
...
Closes #1186
2023-07-11 00:04:26 +02:00
WerWolv
ce9ce42c1c
impr: Only reload localization when necessary
2023-07-09 20:24:56 +02:00
WerWolv
6343cb092b
build: Fixed include issues
2023-07-09 12:53:31 +02:00
WerWolv
7cb26b1499
patterns: Updated pattern language
2023-07-09 12:40:51 +02:00
WerWolv
5d047a335d
patterns: Updated pattern language
2023-07-09 12:30:48 +02:00
WerWolv
14bb98a519
build: Updated libwolv
2023-07-07 09:02:31 +02:00
WerWolv
33d3bea472
fix: Flickering cursor issues
2023-07-06 10:26:12 +02:00
WerWolv
c9c6f3aadb
fix: New visualizers behaving weirdly with large font sizes
2023-07-06 10:08:47 +02:00
WerWolv
c9dbcbb3d3
build: Updated dependencies
2023-07-06 08:26:36 +02:00
WerWolv
924c816dbd
fix: Chunk size setting in information view being reset the first time
2023-07-06 00:00:56 +02:00
WerWolv
695e11477e
feat: Added single stepping feature to pattern debugger
2023-07-05 21:32:11 +02:00
iTrooz
ac2a609d0a
impr: Use execvp() instead of system() on Linux ( #1170 )
...
This PR it just a hack to fix #1160 , it doesn't solve the underlying
problem.
It fixes the problem because by using execvp() directly, it avoids the
call to `sh` done with `system()`, which has a bug on Ubuntu 22.04 which
makes it i,compatibles with the glibc inside the AppImage.
It doesn't fix the underlying problem because the programs we call
themselves still link to the AppImage's libraries instead of the system
ones.
2023-07-05 20:50:46 +02:00
iTrooz
e3ae169833
impr: Separate the behaviour of being savable and being dumpable for provider ( #1183 )
...
### Problem description
Currently, the providers use the method `isSavable()` to determine both
if they can use "Save" or "Save as".
This behaviour is problematic because some providers may need to be
saveable but not saveable as: for example the view provider. The
original provider may not allow to be saved.
### Implementation description
I separate these two behaviour by creating another function:
`isDumpable()`, that return true by default but can be overridden by the
provider to return false, if the provider should not be dumped in any
way.
### Additional things
While I was at it, I also marked "export" operations as needing the
"dumpable" flag. That way, we can't accidentally export the whole
address space of a process as base64.
I also added documentation for these some functions in Provider
2023-07-05 20:49:57 +02:00
WerWolv
25d6380963
build: Upgraded capstone to full V5 release
2023-07-05 20:45:46 +02:00
WerWolv
86c4c8fa96
feat: Added new pattern inline visualizers
2023-07-04 22:18:06 +02:00
WerWolv
b265d8e54a
build: Restructure romfs assets
2023-07-04 08:42:33 +02:00
WerWolv
ceed8c7420
pattern: Properly display Start/End/Size column again for zero sized types
2023-07-03 21:24:15 +02:00
WerWolv
d297b2d1cc
impr: Hide sections with an empty name
2023-07-03 12:04:20 +02:00
WerWolv
a0c89858ed
patterns: Don't re-evaluate format functions during highlighting
2023-07-01 14:06:15 +02:00
iTrooz
c6c3ca4d26
fix: Reset terminate handler directly when being called + some other crashes to crash handling ( #1174 )
...
This PR fixes some things about crash handling:
- when the terminate handler is called, immediately set it back to the
original one, so can't make a recursion if the crash-handling code fails
- Only save projects if the crash occured after Imhex finished startup
- do not update the project location when saving the crash backup file:
this will remove problems when `EventAbnormalTermination` is called
before `crashCallback()`
I also added a bit more documentation
2023-07-01 12:32:28 +02:00
WerWolv
f9909dab98
fix: Properly clear all global registries
2023-06-30 13:40:16 +02:00
WerWolv
bc98556897
impr: Automatically scroll pattern console to the bottom when new lines are added
2023-06-30 00:11:48 +02:00
WerWolv
4f08ba3590
patterns: Fixed race condition when evaluating patterns
2023-06-30 00:11:26 +02:00
WerWolv
78cb0a2592
patterns: Updated pattern language
2023-06-28 18:15:29 +02:00
WerWolv
7510fa091e
patterns: Updated pattern language
2023-06-27 00:26:50 +02:00
WerWolv
d527675bda
build: Make sure changing commit hash doesn't trigger a full rebuild
...
Closes #1137
2023-06-26 14:01:45 +02:00
WerWolv
13b4201446
build: Clean up build logs
2023-06-26 08:45:33 +02:00
WerWolv
83bcbfebdd
patterns: Updated pattern language
2023-06-25 12:45:34 +02:00
WerWolv
1a31b4aaff
patterns: Updated pattern language
2023-06-25 00:29:21 +02:00
WerWolv
a449478e39
patterns: Make updating favorites and pattern tooltips not lag out ImHex
2023-06-24 16:40:34 +02:00
WerWolv
dd72c0cc46
patterns: Updated pattern language
2023-06-23 21:39:46 +02:00
WerWolv
ae06954771
fix: Stack trace printing on Windows not working right
2023-06-22 15:15:06 +02:00
WerWolv
cb3b71e2f3
fix: Typo in content registry comment
2023-06-21 23:59:40 +02:00
WerWolv
d65e669bbb
impr: Make loading of large table files significantly faster
2023-06-21 23:58:21 +02:00
iTrooz
b7d8e46288
feat: Display detailed error message when loading of project fails ( #1135 )
...
In order to do this I add to make some other additions :
- Add a warning popup (TODO, maybe add some icons to differentiate
error/warning popups in a future PR ?)
- create showError() and showWarning() functions, as helpers to show a
message both to the logs and as a popup
2023-06-21 20:07:36 +02:00
WerWolv
da11c47693
impr: Better sorting of hex cell visualizers
2023-06-21 17:48:51 +02:00
WerWolv
98395afe9d
patterns: Updated pattern language
2023-06-21 13:55:40 +02:00
WerWolv
6435d8d955
feat: Name runner threads for tasks
2023-06-21 09:29:57 +02:00
WerWolv
0da87cdb68
patterns: Updated pattern language
2023-06-21 09:29:40 +02:00
Nik
f703b15165
feat: Added statistics and crash log uploading ( #1149 )
...
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv
54061c56bf
fix: Logging race conditions
2023-06-18 22:32:55 +02:00
WerWolv
25154dd450
build: Force enable exceptions and rtti
2023-06-18 14:42:48 +02:00
WerWolv
e09b678426
patterns: Updated pattern language
2023-06-18 10:58:24 +02:00
WerWolv
03f377bf40
fix: Don't try to initialize plugins that failed to load
2023-06-18 10:18:41 +02:00
WerWolv
90a576c3c7
fix: Highlighting and updating of the new console not working well
2023-06-14 10:35:23 +02:00
WerWolv
dd832bfa7e
ui: Make pattern editor console use another text editor
2023-06-13 22:58:57 +02:00
WerWolv
5c31b5cf0d
patterns: Updated pattern language
2023-06-13 13:50:01 +02:00
WerWolv
7de367a944
impr: Properly allow multi-threaded logging without messing up output
2023-06-12 08:24:36 +02:00
WerWolv
03673b5846
feat: Added basic Pattern Language debugger
2023-06-11 21:41:11 +02:00
WerWolv
f0be585fd8
patterns: Updated pattern language
2023-06-11 12:14:24 +02:00
WerWolv
34732a1ee7
fix: Corrected some memory leaks
2023-06-11 10:47:17 +02:00
WerWolv
ef9cb31204
patterns: Updated pattern language
2023-06-11 00:08:34 +02:00
WerWolv
cde5940063
fix: Popups sometimes not appearing centered on the main window
2023-06-10 15:15:52 +02:00
WerWolv
73d4214fd3
fix: Window title being cleared after ImHex exits
2023-06-10 15:08:56 +02:00
WerWolv
0e8273eaa7
impr: Make sure icons are more centered
2023-06-09 00:30:12 +02:00
WerWolv
903d1fb555
impr: Analyze file content of newly loaded files only when they are selected
2023-06-08 17:02:16 +02:00
WerWolv
6e3204b443
patterns: Updated pattern language
2023-06-08 12:16:48 +02:00
WerWolv
81971eaf4a
patterns: Updated pattern language
2023-06-08 09:58:26 +02:00
WerWolv
46270ab213
patterns: Updated pattern language
2023-06-08 09:09:37 +02:00
WerWolv
57bf878312
patterns: Updated pattern language
2023-06-07 23:46:18 +02:00
WerWolv
110c3ac310
patterns: Updated pattern language
2023-06-07 11:08:17 +02:00
WerWolv
456895a6a6
fix: Various pattern drawer issues
2023-06-06 11:29:58 +02:00
WerWolv
a125408410
patterns: Updated pattern language
2023-06-05 17:09:31 +02:00
WerWolv
9712329924
feat: Added pattern export option to pattern data view
2023-06-05 11:57:26 +02:00
WerWolv
59aa52e744
patterns: Allow console log to be printed immediately and from format functions
2023-06-05 09:45:25 +02:00
WerWolv
ae48ae659b
impr: Move various settings from settings window to hex editor and pattern data view
2023-06-05 09:07:58 +02:00
WerWolv
244e34ab84
feat: Added pattern data filter field
2023-06-04 16:13:46 +02:00
WerWolv
100b9e3bca
fix: Cursor icons on Windows not working correctly after imgui update
2023-06-04 12:12:15 +02:00
WerWolv
07aabe8efa
impr: Improved types used in provider functions
2023-06-04 10:42:11 +02:00
iTrooz
25476d4e1e
build: Update ImGui and its dependencies ( #1122 )
...
This PR updates imgui and its dependencies from the last time, ~1 year
ago
(deabacbd50
)
Commits will be refactored before merging
Things you might ask :
- why did you remove `ImGui_ImplGlfw_SetBorderlessWindowMode()` ?
-> Where is it used ? The only usage of it I see is commented
(cb9a3b1f55/lib/external/imgui/source/imgui_impl_glfw.cpp (L757)
)
- why did you remove the implot anti aliasing flag ?
-> They.. seem to have removed it altogether ?
https://github.com/epezent/implot/issues/479
2023-06-04 00:09:45 +02:00
WerWolv
de76c37ffb
fix: Multiple file provider resize issues
2023-06-03 23:57:41 +02:00
WerWolv
1dff81f7cd
fix: Crash when deleting overlays
2023-06-03 22:50:37 +02:00
WerWolv
504c022f01
patterns: Added hex_viewer visualizer
2023-06-02 10:47:23 +02:00
iTrooz
117832e007
impr: Handle crashes that may happen before the main loop ( #1115 )
...
Draft because I absolutely do not trust myself writing good code at 2AM.
I will review it tomorrow
2023-06-01 18:35:41 +02:00
WerWolv
9dafdeb70a
patterns: Updated pattern language
2023-05-29 10:52:39 +02:00
WerWolv
5e0ca4ac50
patterns: Properly display exported variables
2023-05-28 15:44:01 +02:00
WerWolv
8d8a5a70f3
fix: Find view replace and hex editor paste logic being wrong
2023-05-28 14:30:33 +02:00
WerWolv
c8c3f5e753
feat: Added primitive replace feature to find view
2023-05-28 11:50:10 +02:00
iTrooz
0ba011dbe1
feat: Add a native error message when glfw window creation fails ( #1104 )
...
Draft because I want to test it again tomorrow with all OSes, first
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 17:45:41 +02:00
iTrooz
e578127f67
feat: Save opened projects as recent entries ( #1105 )
...
This PR does two things :
- save opened projects as recent entries
- refactor stuff about recent entries in a separate file. The reason is
that I felt like welcome_screen.cpp was really big ( 685 lines before
this, 500 now). What do you think ?
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 16:59:30 +02:00
WerWolv
acfd89aee0
patterns: Updated pattern language
2023-05-27 14:43:53 +02:00
WerWolv
ba33629e80
patterns: Updated pattern language
2023-05-25 12:03:11 +02:00
WerWolv
cb9a3b1f55
fix: Invalid key code error spam
2023-05-24 21:05:14 +02:00
WerWolv
0e3da22c76
feat: Added support for changing the page size
2023-05-23 11:34:30 +02:00
iTrooz
7ce0613977
impr: Added better crash backup and restore mechanism ( #1094 )
...
- Add a new file 'crash.json' to store metadata about the crash, like
the log file or project opened
- show the log file of the session that caused the crash to the user
- Correctly restore the project path
2023-05-22 13:24:48 +02:00
WerWolv
f81276f7e3
feat: Added support for transparent and blurry window styles
2023-05-22 12:00:35 +02:00
WerWolv
e7b51a56a5
feat: Added support for automatically loading patterns using binary pattern magic
2023-05-22 00:01:58 +02:00
WerWolv
df75218ecb
fix: Ranges found by find view not being highlighted
2023-05-22 00:00:50 +02:00
WerWolv
a2333fa22e
patterns: Updated pattern language
2023-05-21 18:02:39 +02:00
WerWolv
2179c3c014
fix: View shortcuts acting like global shortcuts
2023-05-21 18:02:29 +02:00
iTrooz
5666a5c5fb
feat: Added context menu with right-clicking on file provider ( #1084 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-21 13:21:53 +02:00
WerWolv
180a27fdc9
fix: Local keybindings not working correctly
2023-05-21 10:28:55 +02:00