github WerWolv/ImHex v1.11.0
MacOS support is back, Rust plugins and many many pattern language improvements

latest releases: v1.33.2, v1.33.1, v1.33.0...
2 years ago

Documentation

A new documentation for ImHex (mainly the pattern language right now) is in the works and can be found here: https://imhex.werwolv.net/docs. It is a lot more detailed than the one found on the Wiki here and contains information about all the new features as well. Check it out!

Changelog

Additions

  • Added back MacOS support! Huge thanks to @Kuruyia for taking the time to fix it!
  • Added basic support to create plugins using Rust instead of C++! Huge thanks to @jam1garner
  • Added border around byte selection to make it more visible with other things highlighted
  • Put maximum FPS limit to 200, added "Unlocked" option
  • Variable names are now displayed when matching yara rules
  • Added regex searching to string finder view. Thanks to @qdlmcfresh

Pattern Language

  • Added button to stop evaluation prematurely
  • Added main function support. If a function called main exists, it will automatically be called after all other things have been evaluated.
  • Added global variables
  • Allow functions to be called inside structs
  • Added for loops
  • Variables declared in global scope can now be accessed inside custom types.
  • Added padding expressions in bitfields
  • Limited maximum number of patterns that can be created. Can be overridden using the pattern_limit pragma.
  • Allow str types to be used inside function bodies
  • Allow pointer endianess to be changed

Standard Library

  • Added basic file io built-in functions

Improvements

  • Improved the command palette
  • Limited numbers of characters being displayed in parsed strings
  • [[name]] attribute no longer changes the variable name but only the name displayed in the pattern data view
  • The pattern code editor now automatically closes (, {, [, " and '

Bug fixes

  • Fixed titlebar and cursor being misaligned on some computers
  • Fixed nothing being printed to console in release mode, even when console is open
  • Fixed multi variable declarations sometimes causing crashes
  • Fixed endian pragma not working
  • Fixed issue where signed integers weren't correctly sign extended
  • Fixed null bytes being included in read strings
  • Fixed Project file load and save not working correctly
  • Fixed incorrect offsets being accessed when passing custom types to functions
  • Fixed color attribute taking a color value in BGR instead in RGB format
  • Fixed not all include paths being searched correctly
  • Fixed CRC and hash calculations not working properly in all cases. Thanks to @raron for fixing them and writing many unit tests to prevent issues like this in the future
  • Fixed bookmarks closing when changing their name
  • Fixed ImHex crashing after splash screen if no plugins have been loaded
  • Fixed syntax error in code generated "Copy as Rust array" option. Thanks to @paoda
  • Fixed string pattern causing crashes when they are empty

If you like my work, please consider supporting me on GitHub Sponsors, Patreon or PayPal. Thanks a lot!

GitHub donate button Patreon donate button PayPal donate button

Don't miss a new ImHex release

NewReleases is sending notifications on new releases.