github shanytc/snes9x 1.63.16

4 hours ago

1.63.15

SGB / Game Boy Compatibility:

  • General SGB accuracy: Restored instruction-level GB↔SNES interleaving. After each SNES opcode the GB core
    syncs to the current SNES cycle, so ICD2 reads ($6000/$6002/$7800) see GB state that varies naturally with
    execution. This removes the BIOS band-counter phase-lock that was producing striped/yellow artifacts on
    SGB-enhanced carts, and lets us drop the BG3/OAM/tilemap workaround memsets entirely. Gated to
    BIOS+post-release so plain GB carts keep the cheap sync.
  • Killer Instinct '95: Fixed the intro/title screen raster effect — the per-scanline SCX effect that animates
    the logo and title text now advances correctly. Previously stalled at ~1 IRQ per frame because PpuWriteReg
    never re-evaluated the STAT IRQ line on writes to $FF45 (LYC), $FF41 (STAT), $FF44 (LY reset), or $FF40 bit 7.
  • Olympic Summer Games: No longer hangs on the yellow BIOS screen. The SGB2 BIOS band-DMA wait at $00:BA6A is
    now unblocked when the IRQ-disable flag is set after the JUMP packet handoff. Tiles, custom border, and audio
    now appear.
  • Pro Mahjong Kiwame, Toy Story, and similar titles: Fixed BG3 tilemap being clobbered by the post-handoff
    wipe. The 30-frame wipe was zeroing both BG3 char AND BG3 tilemap ($E000-$FFFF), but the BIOS IRQ DMA only
    refills char data — tilemap stayed zero forever. Wipe range now matches the BIOS DMA range exactly (0x1680
    bytes).
  • GB games with custom borders: Fixed regression that broke titles uploading their own CHR_TRN + PCT_TRN
    borders. The BG3 wipe now also skips when a cart-supplied border is detected.
  • 2-player MLT handoff: Dropped the forced 2-player MLT at handoff that was causing input quirks.

SPC Audio:

  • Eliminated the audible "chang" / release-click that played on every SGB game when the BIOS handed off to the
    GB. The pre-release SPC residual sample is now muted through the transition window until the GB boot ROM
    completes ($FF50 write); the SGB BIOS chime still plays normally.

GTK & QT Support

  • Added support for SGB in QT and GTK.
  • Added Bios/ folder selection in Settings => Files

Save State Conversion Support

  • Created a tool (in a new repository) that enables users to convert save states between snes9x and Messen2.
  • Upgrade legacy (v6) snes9x save states to modern (v12)
  • Download it here

Titles Fixed:

  • Legend of Zelda, The - Link's Awakening DX (USA, Europe) (SGB Enhanced)
  • Conker's Pocket Tales (USA, Europe) (En,Fr,De) (SGB Enhanced)
  • Pro Mahjong Kiwame GB (Japan) (SGB Enhanced)
  • Toy Story (Europe) (SGB Enhanced)
  • Olympic Summer Games (USA, Europe) (SGB Enhanced)

Don't miss a new snes9x release

NewReleases is sending notifications on new releases.