* feat: split runtime code in small files to be easy to develop
* feat: split stubs in inl files
* feat: function auto link function treat functions with underscore as same as without underscore
* feat: remove underscore prefix from stubs
* feat: thread and flags refactor
* feat: propagate request stop
feat: some elf validation on runtime
* feat: remove Z7 compiler options
feat: added a literal float case error on vu
* fix: fix critical recompiler error on marking pc calls
* feat: better system interrupt
refactor: small refactor on thread system
* feat: stubs implements for resident evil code veronica
* feat: merge fileio
* feat: stub by address
* feat: codegen now auto-routes J/JAL callssites with known relocation symbols to syscalls/stubs
* feat: split runtime code in small files to be easy to develop
* feat: split stubs in inl files
* feat: function auto link function treat functions with underscore as same as without underscore
* feat: remove underscore prefix from stubs
* feat: thread and flags refactor
* feat: propagate request stop
feat: some elf validation on runtime
* feat: remove Z7 compiler options
feat: added a literal float case error on vu
* fix: fix critical recompiler error on marking pc calls
* feat: better system interrupt
refactor: small refactor on thread system
* feat: stubs implements for resident evil code veronica
* feat: merge fileio
* fix: added missing header include for gcc
* fix: small thread fix on syscalls
fix: fix incorrect VU translations (they was using wrong register)
* feat: added authoritative system for function extraction, this will prevent functions overlap when we have debug symbols
* Add missing VU0 Special1 macro translations
* Fix VU0 macro decode and field ops
Align Special2 decoding with fhi_flo, implement VCLIPw/VABS, and fix field variants (VADDx/VSUBx/VMULx). Keep C++17 compatibility by replacing unordered_set::contains and remove dead ADDIU return. Update Special2 metadata for VWAITQ.
* vu0: complete macro mappings and add coverage test
* review: clean up vu macro handling
* fix: restore C++20 contains in code generator
* fix: correct VU0 Special2 instruction encoding in decoder test
---------
Co-authored-by: Antonio Guastella <antonioguastella@energine.it>
Co-authored-by: Ranieri <ran-junior@hotmail.com>
fix: patching NOP things that code gen already know how to handle
feat: added a bug on JAL/J/JAR code gen
feat: enhanced tom file
fix: fix memory layout for ps2 macros
feat: added a lot of not working garbabe to runtime (fix later)
feat: some code organization
feat: added new tests
feat: update readme
* feat: added thread naming functionality
feat: improve function name sanitization
* fix: fix decode jump target
feat: better word read
feat: prevent unexpect path on output tom
feat: analyzeEntryPoint now lookup for correct entry insted of rely on names
fix: fix CFG graph
feat: mangled name are not handle and sysfunctions anymore
feat: heavy loop flag count is not 5 from 3
* fix: skip/stubs now under [general]
fix: patch address now saves as true hex insted of decimal with 0x
fix: fix J/JAL reconstruction (PC+4)
feat: better C++ identifier sanitization
feat: decoder now dont stop the execution anymore just keep going
* refactor: update function name checks to use contains method
* refactor: update code generation to use static_cast
* refactor: made member methods const
* refactor: made range-based loop
* refactor: make one variable constructor explicit
* refactor: remove redundant else
* refactor: turn includes to forward declarations
* refactor: brace placements turned into allman style
* refactor: structed binding for readability and clarity, used emplace_back to prevent extra-copied object