* bug & crash fixes
* relax fog hack slightly
* buff particles more
* borderless hack
* tone down sprite hack
* int consts in `deftype` + increase sparticle queue
* move a menu button around
* clang + test fixes
* less confusing image
* add test for new deftype feature
* decomp `fisher`, `robotboss`, `light-eco`, `green-eco-lurker`, `sage-finalboss`, `robotboss-weapon`, `robotboss-misc`
* fixes
* add files
* add `:states` list to `deftype` and fix files
* test state forward decl's on a few more types
* also the refs
* add light-eco
* whatever
* change type of `seconds`
* fixes to pc pad input (visual only)
* strip down openGL to the version we're actually using for now (4.3 no extensions)
* turn on this opengl message
* really minor inconsequential change
* cleanup `main`
* whitespace
* start `progress` decomp pt1
* fill in more stuff
* Update label_types.jsonc
* run cheats
* clang
* make most of `progress` decompile
* `progress` pt 2
* [decompiler] support dynamic format strings
* Make `progress-draw` decompile and almost all `progress`
* make clang shut up
* fix unhandled format string
* fix `progress-draw`
* Update DecompilerTypeSystem.cpp
* fix?
* fixes
* fix a few functions
* make `language-enum`
* warn on weird floats
* fix minor pad bug
* dump stuff in `progress`
* make `progress-screen` enum
* progress progress
* update refs and fix stupid bug
* trying to get it to work
* it works!?
* disable sound functions
* fixes
* final touches
* tests
* tests
* add process allocations
* use the right register for windows
* another try for windows, counting is hard
* one more try
* use process allocations
Co-authored-by: water <awaterford111445@gmail.com>
* add IR syntax highlighting
* set the filterFileRegex properly!
* stash
* decompiler: Add print if conditional fails
* decomp: Mostly finish `target-util`
* decomp: figured out a bit more with `target-util`, a bit stuck now
* decomp: *deep breath* `logic-target` mostly complete
* decompiler: More robust arg_count checking for `format` calls
* decomp: some more work in `target-util`
* fix sllv usage
* decomp: `logic-target` is compiling
* decomp: `target-util` very close - blocked by decomp issue!
* decomp: finish `target-util` except for one issue
#772
* demp: update goal_src
* linting
* add back the one remaining method
* address feedback, update source files
* clean up
* before int to float stuff
* before trying to eliminate the separate read and write maps
* partial fix for register issues
* add missing include
* set up types
* cleaned up type analysis and got things working through atomic ops
* expression working, need types
* improved types and names
* getting close
* finish up dma-disasm
* fix
* Allow enum names to serve as types (using the enum's type)
* Formatting
* add doc to `get_enum_type_name`
* Ban enum forward-declaring, and remove unneeded checks
* get gkernel and gkernel-h at least somewhat working in the offline tests
* strip comments from json
* switch hints to casts. online tests passing, offline passing up to gkernel
* variable retyping is added
* fix up casts in lets
* update
* fix parent issue
* fix compiler issue
* update
* add error messages
* fix error
* fix array access, temporary
* more clean
* fix
* rename arg variables better
* fix method name
* fix no return value in decompiler
* many small fixes
* cheat types so it works
* name map
* fix old test'
* wip decompiler ir
* add AtomicOp stuff
* fix windows build and warnings
* add instruction parser
* include
* make minilzo shared
* odr fix
* a
* fix merge conflicts
* move decompiler into namespace
* update the code coverage to include the decompiler
* add demo test
* add register use test to example test
* begin framework for expressions
* more
* clean up warnings
* small fixes
* update
* wip type prop improvements
* see if nasm works
* fix format strings
- Recognize new type definitions/parents/type flags in the decompiler
- Analyze autogenerated inspect methods and dump guesses at fields to a file
- Utility functions for accessing static data by label
- Better ordering in the decompiler to go through functions in the order they appeared in the source
- Added a decent number of types to `all-types.gc` based on the new field analyzer
- Correct a few `int`/`integer` mistakes in `gcommon.gc` (this should really be a warning)
- Correct a few type issues in `gcommon` and `gkernel-h`
- Option in the decompiler to be strict about `define-extern` redefining a type of a symbol
- Add a test to check consistency in types between `all-types.gc` (used by decompiler) and `goal_src` (used by the compiler)
* framework for basic op
* started IR framework
* check in type info file
* add some basic operations to the first pass ir conversion
* use a single condition system
* add more basic op decoding
* more ir