Fixes/Improvements
- (Master System / Game Gear) Fixed a config reload bug introduced in 0.5.2 that caused audio to stop working correctly after changing config or loading state
- The bug was introduced as part of the change to have the SMS/GG emulator use the same audio resampling code as the other emulators; on config reload it was incorrectly calculating the SMS/GG audio chip frequency, which needs to be recalculated on config change because it varies slightly betweeen NTSC and PAL
- (SNES) Fixed a bug where the 65C816 CPU reset code was not forcing on the m and x flags (accumulator/memory size and index register size); this fixes Donkey Kong Country 2 freezing after a soft reset
- Unlike most other games which immediately disable 6502 emulation mode and explicitly set the m/x flags, DKC2 executes a number of LDA and STA instructions before it does this, and it would freeze if the reset occurred while the accumulator/memory size was set to 16 bits
- (SNES) Emulated VRAM blocking during active display, which I'm not sure any licensed games depend on but is accurate to actual hardware
- (All) Fixed a bug with the Open Recent menu not always properly preserving state after closing the emulator
- (All) The rendering code now uses Microsoft's DirectX shader compiler when using the DirectX 12 wgpu backend on Windows
- This is also why the Windows download is so much larger than the last release - the required DLL files (dxil.dll and dxcompiler.dll) need to be packaged with the application for this to work
- (All) DEBUG and TRACE logs are now disabled at compile time in release builds, which should very slightly improve performance even when DEBUG/TRACE logs are not enabled