MiSTer-devel / GBA_MiSTer

GBA for MiSTer
GNU General Public License v2.0
142 stars 44 forks source link

Feature Request: ARM core debugger #120

Closed ErezBinyamin closed 2 years ago

ErezBinyamin commented 2 years ago

The ARM7TDMI (ARM7 ISA) soft core implementation is defined in gba_cpu.vhd. New game development/debugging would be made easier if developers could connect to this core with gdb and do things like:

ErezBinyamin commented 2 years ago

If there is already a way to connect to the ARM core please let me know. I'd be happy to write up more formal documentation if needed.

If there is a JTAG interface defined we could use openocd

sorgelig commented 2 years ago

Software emulator is more suitable for debugging as it can access to every piece of emulated system unlike FPGA. And if talk about emulator on PC, then you get easier navigation between windows, import/export data. Convenience which is not reachable on FPGA.

ErezBinyamin commented 2 years ago

The ARM7TDMI (ARM7 + 16 bit Thumb + JTAG Debug + fast Multiplier + enhanced ICE) core should have JTAG support.

This feature request is just for a jtag.vhd (or equivalent) for on board debugging. Software debug is very useful, but the additional capability of hardware debug would certainly be a nice to have.

RobertPeip commented 2 years ago

The GBA cpu used here is not a full TDMI. It lacks the D and I part as that is not required for games and not accessible on a real GBA.

I have no way to test it, no specification(datasheet doesn't tell how it's implemented) and no plan to add it.

Debugging is anyway much easier with software emulator that has full access to all registers and memory, so there is no real use for it. There is no additional capability for hardware debug. Anything a JTAG interface could do, can be done much easier with a software emulator.