* update progress code and fix our frame "scissoring"
* aspect ratio hacks
* expand progress tint for widescreen
* give up and comment things properly
* properly undo hacks
* decomp: finish `sidekick`
* decomp: got a lot of `target` done
* decompiler: Add support for non power of 2 offsets for inline arr access
* decomp: finish `target` mostly
* decomp: finish `water`
* decomp: finished `robotboss-weapon`
* decomp: finish `robotboss-misc`
* decomp: finish the majority of `robotboss`
* blocked: `racer` has an issue around entering a state
* blocked: `target-racer` done mostly, but NYI case in one function
* blocked: `racer-states` mostly finished, but bitfield issue
* blocked: `billy` on state decomping
* blocked: `bully` on state decomping
* waiting: `rolling-lightning-mole` waiting on navigate for 2 funcs
* blocked: `rolling-robber` finished but `s6-1` issue
* blocked: `ogreboss` uint64's for types cant label load em!
* blocked: `mother-spider` state decompilation
* half-done `target-flut`
* blocked: `target-flut` some sort of new bitfield state
* some improvements in `racer-states` with my new-found knowledge
* progress: started on `target-death`
* blocked: `target-death` handle casts
* decomp: finish `collide-reaction-racer`
* blocked: `target-handler` handler forced to return `none`
* decomp: 99% of `target2` finished
* decomp: finish `target2`
* gsrc: update
* update post merge
* address feedback
* scripts: add script to detect decomp issues
* fix wide-spread `collide-shape` method missing arg
* some small things i changed from master
* address feedback
* fix typeconsistency issue
* cmake: disable edit&continue flags
* goos: make the build system work for alternate file paths nicely
* vs: update vs config
* vscode: extend terminal buffer!
* vs: fix presets
* debugger: fix exception handler
* game: add logo to application
* decomp: get `cam-master` to "work" -- manually changed return type
* debugger: fix printing issue
* game: get the camera actually working
* game: neutralize the analog sticks
* game: support analog sticks
* tests: update ref tests
* temp commit - inprogress stuff
* fix `send-macro`
* turn camera stuff back on, seems to work. Still kernel-dispatch problem though
* address feedback
* formatting
* fix `citb-drop-plat` a bit and PAL `fisher`
* Clean up `pc-pad-utils`. Looks so clean!
* Increase process stacks by ~2x
* Convert `game_text` custom encoding to and from a readable one (UTF-8)
* clang
* add missing characters
* support all diacritic variants
* fix a character
* remaining cases
* fix tests
* fix memory leak?
* clang
* add custom characters w/ diacritics
* Update all-types.gc
* robustness
* minor bug
* move custom font decoding function to `FontUtils.cpp`
* Move valid source chars patching to Reader constructor
* `flying-lurker`
* why'd this get left behind?
* also `ambient` and add a `banned_objects` config and fix offline tests
* clang
* fix `ambient-type-sound`
* 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 support for non virtual states
* typecheck go
* start on virtual states
* more support for virtual states
* offline passes
* fix tests
* use behavior shortcut instead of lambda
* final cleanup of virtual go
* unused var warnings and fix inconsistent enum decompile order on win vs linux
* fix thread safety bug with goal symbol table and vif1 interrupt handler
* fix type mistake
* 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
* temp
* working, but type pass got really slow
* clean up
* changelog and flip order
* clean up and add tests
* fix zero size array
* handle lambdas correctly
* another windows fix
* [decompiler] make certain floats decompile to constants
* update various types in `mood-h`, `time-of-day-h` and `art-h`
* fix `time-of-day-context`
* add some offline tests
* make `new-dynamic-structure` decompile at least
* formatting
* Update all-types.gc
* Update all-types.gc
* 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
* 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 warnings in repl lib and add macros to autocomplete
* fix crash on ctrl-c, build runtime as static lib and make goos prompt look fancier
* some tweaks for linux build
* swap to replxx from linenoise
* repl: Implement form auto-tab-completion
* repl: color coordinate the prompts
* repl: Add some basic syntax highlighting, bracket pairs and forms (all one color)
* repl: A more consistent starting screen for the repl
* repl: bug fix for auto-complete
* debug linux
* linting
* 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'
* new method of inline-array-class
* up to new array
* wip side effect stuff
* prepare for pop barrier stuff
* add pop barrier
* add local vars hack to compiler
* fix bug, make sort work
* add test for array
* bug fixes
* another bug fix
* refactoring env variable print for casts
* more tweaks
* updates
* final cleanup
* codacy fixes
* add some more cfg ir stuff
* add cond with else
* add type of recognition
* add cond to compare conversion
* finally all conds are passing
* started sc recognize, but ash min and max should be recognized first
* fix ash showing up as sc
* add abs
* fix merge issues
* try building goos with optimizations on
* sc mostly working, still need to fix right aligned nesting
* ands and ors are converting correctly now
* clean up
* add pretty printing to goos form
* temp
* fix format
* fix format
* fix windows build
* again
* windows
* Revert "windows"
This reverts commit b7d448e733.
* windows again
* give up and just add a getter function
* Commit new spdlog implementation
Hopefully resolves Linux build dependency errors
* clang formatting
* Fix Linux-only definition
Found the culprit!
* More Linux fixes
Linus Torvalds have mercy on my soul
* Replace printf logging with spdlog equivalent
Preserve previous printfs in comments for now. Spdlog needs to be configured to be thread-safe. Few additional printfs to convert later. No changes have been made to GOAL's internal printing system
* clang-format stuff
* ugh more clang-format
why
* Another shot
* CMakeLists.txt update
Fix issues related to spdlog version targeting
* Remove old prints + fix log types
Up next is the transition to a git submodule, should be simple enough
* spdlog is now a git submodule
* adapted for project
* Linux fix
* More fixes
Yikes
* Update for linux
I should really fix my WSL environment
* Update workflow.yaml
Hopefully will resolve issues with GitHub Actions on Linux