dirkwhoffmann / vAmiga

vAmiga is a user-friendly Amiga 500, 1000, 2000 emulator for macOS
https://dirkwhoffmann.github.io/vAmiga
Other
293 stars 24 forks source link

Improve the RetroShell debugger #816

Open dirkwhoffmann opened 5 months ago

dirkwhoffmann commented 5 months ago

RetroShell has a simple debugger which looks like this at the moment:

Bildschirmfoto 2024-02-01 um 09 59 01

It provides elementary commands such as single stepping through the code.

I want to

@mithrendal recommended to look at

Seka provides these symbolic debug commands:

Bildschirmfoto 2024-02-01 um 10 00 46

TODO:

dirkwhoffmann commented 5 months ago

For reference: Current debug commands

Command Description
pause Pauses emulation
continue Continues emulation
step Steps into the next instruction
next Steps over the next instruction
goto Redirects the program counter
disassemble Runs the disassembler
break Manages CPU breakpoints
watch Manages CPU watchpoints
catch Manages CPU catchpoints
cbreak Manages Copper breakpoints
cwatch Manages Copper watchpoints
os AmigaOS debugger
dirkwhoffmann commented 5 months ago

Let's be bold and steal the following ideas from Seka:

  1. Allow prefixes .b, .w, .l if it makes sense for the specific command.
  2. Remember the last displayed address and use it as the default address for the next command:
Bildschirmfoto 2024-02-01 um 12 23 18
  1. Implement the ? operator which is pretty handy
Bildschirmfoto 2024-02-01 um 12 29 25