Another extensive update was just added to the new SD2SNES/FXPak beta firmware that includes Super Game Boy 2 support: https://github.com/redacted173/sd2snes/releases/tag/sgb02
The full list of changes are as follows:
- Fixed stack overflows due to delayed interrupts by masking OAM STAT interrupt when sprites are disabled.
- Updated STAT interrupt code to make match/oam coincident.
- Added MBC1M support. The detection is a hack. It’s possible a MBC1 cart is incorrectly detected as MBC1M.
- Fixed popping noises and some other APU bugs by rewriting output and handling unsigned->signed conversion better. Hopefully this is better than before.
- Updated wave sample buffer to only update on timer expiration.
- Updated audio output volume scaling to a closer but still crude approximation of the original SGB2.
- Added square channel register write side effects involving duty position. Sometimes used to creating ringing in output.
- Changed square channel duty cycle relative phase and inversion but may not matter.
- Added some of the APU envelope register write volume corner cases.
- Fixed RETI setting of IME by adding bypass. Exposes bugs in some games.
- Changed PPU pipeline to remove DRN wait.
- Changed interrupts to clean up code a bit.
- Added serial link transfer interrupt.
- Changed MCU bus availability to add more clocks. Speeds up save states a little bit.
- Fixed save state audio glitches by forcing APU writes to disable channels during HLT. There is a tradeoff between forcing all silent channels vs enabling channels with incorrect state.
You can download a pre-configured sd2snes directory here, that just needs to be merged with the existing directory (overwrite all files); Just make sure to back up your existing directory, just to be safe!!! As a note, browsers often warn people of harmful files coming from tinyupload, but the file was created by a trusted source that wishes to remain anonymous: http://s000.tinyupload.com/index.php?file_id=85351934894190324559
Also, it looks like qwertymodo’s MSU-1 audio patch for the game is coming along nicely! I recorded a quick sample, via an FXPak Pro on a real SNES through an OSSC with optimal timings at 2x, then integer-scaled to 4K for this video: