A list of open problems in how the SNES works:

  1. What exactly happens in the DMA crash bug on the v1 CPU?

  1. What is the exact timing for the garbage that appears on the screen when switching modes mid-frame?

  1. How is the sprite data cached for each scanline and is there a way to abuse the timing to inject data into OAM midframe?

  1. Are there any unexpected interactions with ExtBG that haven't been tested? For example I am not sure if anybody tried Direct color mode with ExtBG yet (probably won't work, but who knows)

  1. What are the exact decay rates for the MDR?

  1. Emulating Coprocessor bus conflicts

  1. What about unused pins on the PPU, CPU, and APU -- Even though a game can't use them they are worth exploring IMO

TODO: should probably describe which pins are unused on the pinout pages


  1. can we predict the APU crosstalk 16 bit bug?

https://forums.nesdev.org/viewtopic.php?p=279491&hilit=APU+crosstalk#p279491


  1. What happens to the very first pixel on the scanline in Hi-res Math?

  1. Various PPU registers still need to know when writing to them is effective.

TODO: put list of PPU registers here


Most of these problems require access to a logic analyzer.

Discorded but not wiki'd by p4plus2