* Array size UB fixes
* Fix ShieldD
* Remove (almost) all unsafe strcpy calls
Bunch of macros. C arrays are easy enough and just need a different call. For various cases where a char* is passed around bare, I've made a TEXT_SPAN macro that can store a length too for bounds checking.
* Move crash handling in safe string operations to separate TU
* strcat safe version
* sprintf made safe too
* Fix compile
* custom action framework and first person custom action
* add bind for midna call
* custom binding for opening dusklight menu
* turbo speed button action
* text descriptions
* fix not stopping default GC controller menu combo
* more explanation text
* block bind actions when in the dusklight menu
* Initial Draft
- Add draft crash report window on startup
If you want to disable them before/during startup, there is a command line option to force it
* Fixes
- Update language to be more precise, consistent with settings menu
- Actually shut down reporting properly if you disable it
- Fix my silly syntax errors
* Update text & use Sentry consent
---------
Co-authored-by: Luke Street <luke@street.dev>
* Start game execution as soon as a disk image is available
* Do not update dDemo_c if prelaunch document is visible
* Prevent intro music until prelaunch has popped
* Replace "Start Game" references with "Play"
* Make prelaunch layout respect mirror mode
* Add drop shadow to prelaunch disk-status and version-info
* Remove ImGui prelaunch
* Add "Change Disk Image" button to prelaunch options
* Actually validate discs and make prelaunch very betterer :)
* Check your build before pushing dumbass, and go to sleep
* "Disc" consistency, adjust restart notice logic
* Better LanguageSelect logic
* Add restart notice to SaveTypeSelect
* Added wind sounds to the pre-launch menu
* Add Modal document, use it for disc verification
* Consolidate Modal and PresetWindow
* Squash various bugs, rearrange document flow
* Allow Window inheritors to opt-out of being toggleable
* Tweak focus behavior/syntax
* Implement "Restart Now" option
* Tweaks
* Remove a bunch of dynamic_cast
* Update README.md
---------
Co-authored-by: Luke Street <luke@street.dev>
* rmlui audio
* fix menu select sound
* Fixes#662
* fix reset logic and fix popup getting stuck closed
* fix X button on menu popup
* rmlui achievements, and fix open/close bug
* presets, achievements css, and menu sounds toggle
* forgor
* fix b button causing audio when menu not visible
This makes a new implementation in the dusk src folder, and makes the existing file containing these functions not compiled anymore.
A ton of dead code is now gone.
* Basic PAL ISO & language support
Probably still needs much more work
* Add language selector to pre-launch
* Store DVDDiskID in a global
Can use this later for things
* More version system API improvements
* d_name mostly region switching fully
JPN doesn't work yet cuz it'll be a nightmare, probably.
* More version switching support
* Mark GCN PAL as supported ROM
* Fix remaining REL assets to have PAL offsets
* d_a_mg_fish PAL
* d_a_mg_fshop PAL
* isRegionUsa helper
* d_menu_fishing PAL
* d_msg_class PAL
* m_Do_MemCardRWmng PAL
* Update CARDInit call & remove DUSK_TP_VERSION
* Fix Ganon cape
Missed this one.
* Remove tp_version from Sentry
---------
Co-authored-by: Luke Street <luke@street.dev>
* Link separate JSystem libraries due to control.cpp
This allows the Xcode generator to work, otherwise
it breaks on the duplicate control.o files within
the game_debug library.
* Fix __memcpy define on GCC
* Try LINK_GROUP:RESCAN for GNU ld
* Combine dusk/game_base/game_debug targets
* Fix compile defs syntax