* optimize sprite texture flush + update shaders
* fix bugs
* change logic a bit
* crunch PNGs
* hud size fix
* clang
* remove shaders from list
* use really small alpha cut-off point for sprites
* ad `flat` to vertex shaders too
* increase cut-off very slightly
* take *2 into account
* ok for real this should be good enough
* improve performance on intel graphics
* more tweaks, add a glfinish button
* remove divide in fragment shader
* temp
* add cpu sky blend
* use vao
* change format
* use floats in direct renderer
* format
* format again
* tfrag ice
* temp
* temp
* wip
* more progress on the instance asm
* first half of tie extraction, up to dma lists
* more tie extraction
* first part figured out maybe
* bp1 loop seems to work, bp2 loop does not
* bp1 and bp2 appear working. sadly ip is needed
* ip1 outline, not working ip2
* just kidding, ip2 seems to work
* extraction seems to work
* basic rendering working
* tie fixes
* performance optimization of tie renderer
* hook up tie to engine
* fix more bugs
* cleanup and perf improvements
* fix tests
* ref tests
* mm256i for gcc
* CLANG
* windows
* more compile fixes
* fix fast time of day
* small fixes
* fix after merge
* clang
* fix gamepad race condition, only allow gamepad for pad 0, fix `defstatehandler`, allow mapping any pad w/ keyboard
* dont render debug stuff with manylevel hack
* begin work
* work
* working objs
* exporting
* it works
* before some time of day fixes
* add time of day interp and also fix zbuffer
* some small blending fixes
* improve randomess
* clean up extraction and missing blend mode
* culling, time of day, more level fixes
* more cleanup
* cleanup memory usage
* windows fix
* 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
* temp
* some decomp
* tfrag dma setup
* fix negative label bug
* tfrag dma setup
* tfrag, with pipeline tricks
* kinda works
* cleanup before trying some color stuff
* time of day works
* clean up
* temp before render changes
* a few more fixes
* fix up tests
* clean up
* fix
* fix alignment
* one more cleanup
* time of day
* goal code seems to work
* stars at wrong spot
* stars and sun work
* debugging clouds
* fix texture correction
* sky works
* cleanup, add profiler
* clean up
* final clean up
* offline tests
* missing include
* 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
* wip, taking a break to work on asm stuff first
* the goal code for sparticle
* mips2c the first sparticle asm function
* temp
* particle processing no longer crashing
* temp
* working texture cache for vi1 and hud textures
* sprites
* cleanup 1
* temp
* temp
* add zstd library
* temp
* working
* tests
* include fix
* uncomment
* better decomp of sparticle stuff, part 1
* update references
* 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>
* Begin spdlog integration for decompiler
* Replace old prints with spdlog equivalents
* clang-format
* Add Arch Linux documentation
* Remove spdlog (again)...
* improve label system
* clean up menu
* debug menu working, still need to fix tests
* cleanup-gfx
literally just renaming the window and a few debug prints
* fix readme typo
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
* revamp gfx and display systems a bit
* Use some fancy c++ pointers instead of just raw pointers
* Tidy some things up.
* clang
* clang 2
* fixes
* fixesss
* error detection when making display
* use `std::function` for this because that's what you're meant to do
* [memdump] Analyze fields of type `(array basic)`
* fix test
* Massively simplify things.
* 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
* Implement runtime display (test)
* Update runtime.cpp
* [game display] add "-nodisplay" argument
* style fixes
* Update gfx.cpp
* [deci2server] fix deadlock when killing a Deci2Server
* add libxrandr to linux github test
* correct package name to libxrandr-dev
* set g_main_thread_id in exec_runtime
* add libxinerama to linux test packages
* correct the name
* add libxcursor1 package
* Update linux-workflow.yaml
* add libxi-dev
* fix constructor for g_main_thread_id
* fix submodules + use -nodisplay during tests
* move the gfx loop to its own function and use a lambda for exit conditions
* fix include
* fix include
* fix includes (for real this time)