* 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>
* 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>
Cleanly shut down movie player threads on exit.
I'm not 100% fond of having to manually insert a call like this into the shutdown logic, but the other solution is shutting down all processes and that's likely to result in causing more crashes.
This uses the existing `Limiter` class (stolen from Metaforce) in `JFWDisplay::waitForTick`.
The limiter also now uses `SDL_DelayPrecise` internally on non-Windows platforms.
On Windows, the existing `NanoSleep` logic is untouched, as it appears to provide a
more stable framerate for the folks testing it on Windows than `SDL_DelayPrecise` does.
On Linux, however, `SDL_DelayPrecise` is plenty accurate.
* Disable waitForTick and waitBlanking
* Initial frame interpolation implementation
* Initial batch of speed fixes
* Fix Iron Boots
* Strip dead code once used for debugging
* Interpolate shadows
* Revert overzealous/redundant lookups
* Fix JUTFader
* Fix field map cursor
* Fix various particle effects
* Fix Midna when riding Wolf Link
* Fix title logo
* Title Logo 2: Electric Boogaloo
* Fixed grass and flowers
* "Unlock Framerate" config option (WIP)
* Wrap more things in TARGET_PC
* Finish wrapping things in TARGET_PC
* Missed one
* Disable dComIfGd_drawXluListInvisible when interpolating
---------
Co-authored-by: Luke Street <luke@street.dev>