Changelog

  • UI: implement "Sharp" video filter for better nearest interpolation at non-integer scales (thanks GranMinigun)
  • UI: implemented PPU viewers for palettes, tiles, backgrounds and sprites
  • UI: add an option to set the audio volume
  • UI: do not unpause emulator after loading a new ROM
  • Input: fix input dropping regression introduced in NBA 1.7.1
  • Input: move from SDL game controller to SDL joystick API (fixes broken mapping on some controllers)
  • APU: MP2K HLE: interpolate envelopes and use floating-point math
  • APU: MP2K HLE: implement a better reverb algorithm
  • APU: MP2K HLE: add an option to force-enable reverb
  • APU: remove "Zombie" mode emulation (does not appear to exist on GBA)
  • APU: fix mid-note envelope frequency changes
  • APU: FIFO writes should happen in place
  • APU: reset FIFOs on overflow
  • APU: add master-enable checks for 16-bit/32-bit IO writes
  • PPU: fix sprite pixels from previous scanline displayed in the last scanline
  • PPU: more accurate update of attribute buffer for OBJWIN sprites (fixes #275)
  • PPU: more accurate emulation of horizontal and vertical sprite mosaic (fixes #322)
  • PPU: more accurate handling of mid-frame vertical mosaic reconfiguration
  • PPU: fix out-of-bounds bitmap fetches in Mode 3 to 5
  • DMA: fix incorrect mapping of DMA channel to APU FIFO
  • Timer: somewhat handle timer overflow during one cycle enable delay (thanks alyosha)
  • Game Pak: simulate ~6 ms EEPROM device busy period after write (not yet accurate to cartridges that e.g. have been in the freezer for 30 minutes)
  • Game Pak: emulate the Mask ROM internal address register
  • Audio: fix clicking artifacts when using Sinc resampling
  • Audio: fix incorrect liner interpolation in Cosine resampling
  • PlatformCore: fixed hang when fast-forwarding while the emulator is paused
  • Misc: implemented support for unicode paths


https://github.com/nba-emu/NanoBoyAdvance