Skip to content

sgb02

Pre-release
Pre-release
Compare
Choose a tag to compare
@redacted173 redacted173 released this 03 Jul 22:37
· 52 commits to sgb since this release
  • 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.