* cpad1 keybinds and gamepad hooks in working state
* move pad info into arrays indexable by pad
* nice up the code some (mostly de-boilerplate) and improve pad detection
* last modification to remove unnecessarily duplicated code
* Fix formatting
* literally why did i add a newline after running clang-format
* srpc: Implement part of VBlank_Handler
And call it on RPC message for lack of better ways
* ssound: Fix distance calculation
avoids negative array index
* srpc: fix sound id assignment
* srpc: bail out on missing sound id
* ssound: Fixes for angle and volume calculation
* srpc: Fix VAG filename stuff
* ssound: Fix CalculateAngle
* ssound: UpdateAutoVol fixes
* srpc: Fix up SET_PARAM command
* ci: fix windows releases (hopefully)
* scripts: fix Taskfile file references for linux
* asserts: add `ASSERT_MSG` macro and ensure `stdout` is flushed before `abort`ing
* asserts: refactor all `assert(false);` with a preceeding message instances
* lint: format
* temp...
* fix compiler errors
* assert: allow for string literals in `ASSERT_MSG`
* lint: formatting
* revert temp change for testing
* fix typo
* more typo
* shorten discord rpc text
* allow expanding enums after the fact (untested)
* make `game_text` work similar to subtitles
* update progress decomp
* update some types + `do-not-decompile` in bitfield
* fixes and fall back to original progress code
* update `progress` decomp with new enums
* update config files
* fix enums and debug menu
* always allocate (but not use) a lot of particles
* small rework to display mode options
* revert resolution/aspect-ratio symbol mess
* begin the override stuff
* make `progress-draw` more readable
* more fixes
* codacy good boy points
* first step overriding code
* finish progress overrides, game options menu fully functional!
* minor fixes
* Update game.gp
* Update sparticle-launcher.gc
* clang
* change camera controls text
* oops
* some cleanup
* derp
* nice job
* implement menu scrolling lol
* make scrollable menus less cramped, fix arrows
* make some carousell things i guess
* add msaa carousell to test
* oops
* Update progress-pc.gc
* make `pc-get-screen-size` (untested)
* resolution menu
* input fixes
* return when selecting resolution
* scroll fixes
* Update progress-pc.gc
* add "fit to screen" button
* bug
* complete resolutions menu
* aspect ratio menu
* subtitles language
* subtitle speaker
* final adjustments
* ref test
* fix tests
* fix ref!
* reduce redundancy a bit
* fix mem leaks?
* save settings on progress exit
* fix init reorder
* remove unused code
* rename goal project-like files to the project extension
* sha display toggle
* aspect ratio settings fixes
* dont store text db's in compiler
* properly save+load native aspect stuff
* [goalc] macro expansion in integer constants
* working
* didn't break it yet
* support conditional compilation
* fix up some more small bugs
* fix duplicate evaluation of bitfield definitions
* paranoid
* first attempt
* fix
* zip to tar
* windows
* try again, std::filesystem sucks
* std::filesystem is still garbage
* std::filesystem is terrible
* std::filesystem continues to waste my time
* again
* neadsflaldksal;df
* decompile 90% of shrubbery
* some more progress
* some more
* big function decompiled
* went through `draw-prototype-inline-array-shrub` and made more notes
* shrub: start implementing extract_shrub
* read through current notes and add the info to current decomp
* decomp: allow skipping inline-asm from output
* add code to BspHeader to get GOAL types for shrubs
* add doc
* wip
* fix bad merge
Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
Co-authored-by: Tyler Wilding <xTVaser@users.noreply.github.com>
* Invert right-hand joystick X axis to match PS2 controller to Xbox input
* Add keyboard mapping for analog axes. Change keyboard mapping to make gameplay with a QWERTY keyboard feel more natural.
* Also map IJKL for camera movement
* Tidy up
* Clang formatting fixes
* Remove right X-axis inversion - not needed
* Clang formatting fix
* Accept player RPC commands in overlord
* Remove the .projectile file
I use emacs for everything so I don't want it to only look at the goal code.
* Fill out most of the unique player structs
* Decompile most of ssound.c
* Silence some spam
* Comment out WaitSema instance
* Add a file with definitions for snd_ functions
Makes it compile without commenting them out.
Maybe it'd be nice to maintain the original API usage in overlord for
similarity and shim them to whatever API the player uses.
* Make SoundBank statically sized again.
Didn't realise this was used in an array. MSVC should be happy again.
Not sure what the actual size of these should be.
* Fix logic issue
* Finish RPC Loader
* More RPC_Player
* Play RPC command
* All the RPC commands added
* Call Music/Bank loaders
* audio: add almost all `.MUS` and `.SBK` files to build process
* Include TWEAKVAL in build output
* Load banks and music tweaks
* Comment out spam
* Sound struct unk -> is music
* Also test if empty1.sbk was found
For the sake of tests.
* Get rid of PC_DEBUG_SOUND_ENABLE
Co-authored-by: Tyler Wilding <xtvaser@gmail.com>
* cmake: reduce warning spam especially from libs
* runtime: add FS helper functions
* game: save/restore pc-settings | add original aspect option
* game: overwrite unloadable settings with defaults
* temp: unable to set the games aspect-ratio in the boot else crash?
* runtime: save memcard files to user directory as well
* runtime: fix `pckernel` load order which resolves setting the orig aspect ratio
* lint: format
* cmake: revert warning suppression, it's just causing problems it seems
* fix the order of the rest of `pckernel` and creation of obj file paths
* lint: formatting
* game: don't save settings on startup even if they are corrupted
* add ocean-vu0 mips2c and decomp ocean-texture
* vu1 texture setup
* temp
* unoptimized version working
* optimized version by default
* update ref test
* temp
* name the obvious ones
* un-pipelined the fast case in generic vu1
* generic2 dma
* pass2
* first pass at opengl
* many fixes
* fix hud, strip
* windows fix
* final tweaks
* memcard folder
* add missing include
* rewrite memcard and game-save code
* fix memcard status and bank check
* more robustness
* fix bank pick on card update
* fix load file bugs
* bug fixes and final touches
* add timers and turn off prints
* optimization?
* update pics
* make money starburst slightly easier to see
* fix first time save bug
* reduce filesystem load a bit
* too bright
* Optimize `file_is_present`
* 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