WerWolv
60e1c23a6b
Fixed pattern format strings
2021-01-11 09:14:32 +01:00
WerWolv
b4ef19dac7
Fixed empty struct and union offset display
2021-01-10 19:43:21 +01:00
WerWolv
dc6c1fa622
Fixed issues with struct and union members when using conditionals
2021-01-10 19:40:44 +01:00
WerWolv
ad40c53eb2
Fixed enum parse/evaluate error and crash
2021-01-10 17:14:38 +01:00
WerWolv
cf1fe04431
Fixed invalid type name in bitfields
2021-01-10 13:50:34 +01:00
WerWolv
8f16a733b9
Fixed bitfields behaving like they have no size. Fixes #127
2021-01-10 13:40:07 +01:00
WerWolv
7a8e923b41
Added print & warnAssert functions and a colored console
2021-01-09 23:48:42 +01:00
WerWolv
e54dbcf574
Added assert function. Resolves #123
2021-01-09 21:47:52 +01:00
WerWolv
c5d023822d
Added functions with string literals as parameter
2021-01-09 21:47:52 +01:00
WerWolv
e28d6e7451
Added string literals and improved character parsing
2021-01-09 21:47:52 +01:00
WerWolv
17ecdbf8ec
Allow accessing of pointer values in mathematical expressions
2021-01-08 20:12:16 +01:00
WerWolv
c505b5b9cb
Fixed non-native endian on floats
2021-01-08 17:46:31 +01:00
WerWolv
69f4c6e5e9
Allow global variables to be accessed and used in expressions
2021-01-08 17:37:05 +01:00
WerWolv
f84b661af7
Fixed pointers to built-in types and endian handling
2021-01-08 15:03:53 +01:00
WerWolv
a41e91a731
Fixed floating point pattern displaying
2021-01-08 11:57:28 +01:00
WerWolv
e48c61cf27
Hopefully fixed macos compile finally
2021-01-07 21:52:03 +01:00
WerWolv
08c802f733
Added unbounded char arrays for null-terminated strings
2021-01-07 21:16:34 +01:00
WerWolv
f65c792191
Include unordered_map instead of map
2021-01-07 18:12:02 +01:00
WerWolv
5d1e53f469
Added boolean patterns
2021-01-07 17:34:50 +01:00
WerWolv
bef20f7808
Added function calling as well as a few builtin functions
2021-01-07 15:37:37 +01:00
WerWolv
3f1d9ed366
Added ternary condition operator
2021-01-07 01:19:54 +01:00
WerWolv
b30bb21646
Added unary operators +, -, ~ and !
2021-01-07 00:41:06 +01:00
WerWolv
acfd5aa02f
Added if, else and else if to pattern language
2021-01-07 00:02:51 +01:00
WerWolv
7fd0d87d56
Allow enum entries to be accessed via the scope resolution operator
2021-01-06 16:30:30 +01:00
WerWolv
ceee311efa
Added support for more literal types and scope resolution operator parsing
2021-01-05 14:42:08 +01:00
WerWolv
f5250d6bcf
Fixed rvalues not evaluating correctly in nested structs
2021-01-04 16:13:03 +01:00
WerWolv
206be8b110
Greatly improved hex editor byte highlighting performance
2021-01-03 02:37:37 +01:00
WerWolv
78ef07cf0f
Pattern Language rewrite ( #111 )
...
* Initial parser rewrite effort
Lexer and Token cleanup, Parser started over
* Greatly improved parser syntax
* Reimplemented using declarations and variable placement parsing
* Added back unions and structs
* Added enums as well as mathematical expressions (+, -, *, /, <<, >>, &, |, ^)
* Code style improvement
* Implemented arrays and fixed memory issues
* Fixed more memory issues in parser, reimplemented validator, evaluator and patterns
* Fixed builtin types, arrays and reimplemented strings
* Improved error messages
* Made character a distinct type, used for chars and strings
* Implemented padding, fixed arrays
* Added bitfields
* Added rvalue parsing, no evaluating yet
* Added .idea folder to gitignore
* Fixed build on MacOS
* Added custom implementation of integral concept if not available
* Rebased onto master
* Fixed array variable decl crash
* Added rvalues and dot syntax
* Lower case all pattern language error messages
* Fixed typo in variable name
* Fixed bug where preprocessor would not ignore commented out directives
* Reimplemented pointers
* Fixed rebase issues
2021-01-02 20:27:11 +01:00
WerWolv
144e30775f
Fixed duplicated utils.hpp
2020-12-27 15:54:12 +01:00
WerWolv
dbbc525174
Added Plugin support ( #102 )
...
* Build refactoring and initial plugin support
* Possibly fixed linux / mac build
* Added libdl to libglad build script
* Add glfw to imgui dependencies
* Refactored common functionality into "libimhex" for plugins
* Added plugin loading and example plugin
* Added proper API for creating a custom view and a custom tools entry with plugins
2020-12-22 18:10:01 +01:00
WerWolv
b06f5630c7
Fixed additional issues with padding and zero sized arrays
2020-12-06 23:15:51 +01:00
WerWolv
7a9d7b59e8
Added overriding of endianess for individual variables
2020-12-06 21:40:57 +01:00
WerWolv
c90ef343c1
Added math evaluator / calculator to tools window
2020-11-28 21:55:52 +01:00
WerWolv
3827919a32
Added error messages and error display to pattern language editor
2020-11-27 21:20:23 +01:00
WerWolv
0d0b2d6962
Indent variable name instead of color in pattern data view
2020-11-23 22:14:11 +01:00
WerWolv
b7438f6ab8
Massively improved look and feel of pattern data, string and disassembly tables
2020-11-23 15:22:26 +01:00
WerWolv
84f80b3e06
Select region when clicking on string, disassembly or pattern data item
2020-11-23 13:10:14 +01:00
WerWolv
c281372b8d
Improved table coloring
2020-11-23 13:08:24 +01:00
WerWolv
8297e22f10
Added global big and little endian support to the pattern parser
2020-11-22 16:22:02 +01:00
WerWolv
fbd4e593d2
Make array and pointer pattern data display more consistent with other types
2020-11-22 02:25:25 +01:00
WerWolv
0ce1b5d40b
Added simple pointer type inside structs
2020-11-21 23:00:09 +01:00
WerWolv
ed4ed6b433
Added array sizes based on other local variables
2020-11-21 20:19:33 +01:00
WerWolv
fb85f272a1
Added pragmas to pattern language
2020-11-21 14:39:01 +01:00
WerWolv
57dcf6cc93
Added padding type to pattern language
2020-11-20 21:59:27 +01:00
WerWolv
48296775ae
Implemented union support into the pattern language
2020-11-20 21:29:28 +01:00
WerWolv
e3cb078306
Implemented bitfield support into the pattern language
2020-11-20 20:26:19 +01:00
WerWolv
34b8f481e1
Improved table rendering
2020-11-20 11:56:37 +01:00
WerWolv
f36014194d
Bring strings view and pattern data view in line with each other
2020-11-20 00:16:50 +01:00
WerWolv
ed9922c8a9
Only print 4 characters for type size by default
2020-11-19 21:43:03 +01:00
WerWolv
3fe231cdb0
Only print as many hex characters as the type is long
2020-11-19 21:30:39 +01:00