bsnes is a Super Nintendo (SNES) emulator focused on performance, features, and ease of use.
Go to file
Tim Allen 423a6c6bf8 Update to v094r05 release.
byuu says:

Commands can be prefixed with: (cpu|smp|ppu|dsp|apu|vram|oam|cgram)/ to
set their source. Eg "vram/hex 0800" or "smp/breakpoints.append execute
ffc0"; default is cpu.

These overlap a little bit in odd ways, but that's just the way the SNES
works: it's not a very orthogonal system. CPU is both a processor and
the main bus (ROM, RAM, WRAM, etc), APU is the shared memory by the
SMP+DSP (eg use it to catch writes from either chip); PPU probably won't
ever be used since it's broken down into three separate buses (VRAM,
OAM, CGRAM), but DSP could be useful for tracking bugs like we found in
Koushien 2 with the DSP echo buffer corrupting SMP opcodes. Technically
the PPU memory pools are only ever tripped by the CPU poking at them, as
the PPU doesn't ever write.

I now have run.for, run.to, step.for, step.to. The difference is that
run only prints the next instruction after running, whereas step prints
all of the instructions along the way as well. run.to acts the same as
"step over" here. Although it's not quite as nice, since you have to
specify the address of the next instruction.

Logging the Field/Vcounter/Hcounter on instruction listings now, good
for timing information.

Added in the tracer mask, as well as memory export, as well as
VRAM/OAM/CGRAM/SMP read/write/execute breakpoints, as well as an APU
usage map (it tracks DSP reads/writes separately, although I don't
currently have debugger callbacks on DSP accesses just yet.)

Have not hooked up actual SMP debugging just yet, but I plan to soon.
Still thinking about how I want to allow / block interleaving of
instructions (terminal output and tracing.)

So ... remaining tasks at this point:
- full SMP debugging
- CPU+SMP interleave support
- aliases
- hotkeys
- save states (will be kind of tricky ... will have to suppress
  breakpoints during synchronization, or abort a save in a break event.)
- keep track of window geometry between runs
2014-02-09 17:05:58 +11:00
ananke Update to v094 release. 2014-01-20 19:55:17 +11:00
data Update to v094 release. 2014-01-20 19:55:17 +11:00
emulator Update to v094r05 release. 2014-02-09 17:05:58 +11:00
fc Update to v093r13 release. 2014-01-13 20:35:46 +11:00
gb Update to v094r01 release. 2014-01-28 21:04:58 +11:00
gba Update to v093r12 release. 2013-12-23 22:43:51 +11:00
libco Update to v093 release. 2013-08-18 13:21:14 +10:00
nall Update to v094r05 release. 2014-02-09 17:05:58 +11:00
obj Update to v093 release. 2013-08-18 13:21:14 +10:00
out Ignore loki binary too. 2014-02-09 17:05:57 +11:00
phoenix Update to v094r04 release. 2014-02-09 17:05:58 +11:00
processor Update to v094r04 release. 2014-02-09 17:05:58 +11:00
profile Update to v093 release. 2013-08-18 13:21:14 +10:00
ruby Update to v094r01 release. 2014-01-28 21:04:58 +11:00
sfc Update to v094r05 release. 2014-02-09 17:05:58 +11:00
shaders Update to v094 release. 2014-01-20 19:55:17 +11:00
target-higan Update to v094r04 release. 2014-02-09 17:05:58 +11:00
target-loki Update to v094r05 release. 2014-02-09 17:05:58 +11:00
.gitignore Update to v093 release. 2013-08-18 13:21:14 +10:00
Makefile Update to v094r04 release. 2014-02-09 17:05:58 +11:00