|
- ; Full VICE debug session for c64os.prg
- ; Launch with examples/vice-debug-c64os.bat, then in the monitor run:
- ; playback "examples/vice-monitor-c64os-debug.txt"
-
- radix H
- device c:
- sidefx off
-
- ; Give useful labels to the known startup locations.
- add_label $0801 .basic_stub
- add_label $0810 .start
-
- ; Break when BASIC transfers control to the machine code entry.
- break exec .start
-
- ; Watch memory banking changes and dump the CPU port state when they happen.
- watch store $0001
- command 2 "m $0000 $0002"
-
- ; Watch IRQ vector changes in case startup or later code patches them.
- watch store $0314 $0315
-
- ; Show the BASIC stub, startup code, and current CPU port state.
- d .basic_stub $0840
- m $0000 $0002
- r
-
- ; Helpful follow-up commands once the first breakpoint triggers:
- ; step ; step into the next instruction
- ; next ; step over KERNAL calls
- ; return ; run until the current subroutine exits
- ; bt ; show JSR call chain
- ; io $d000 ; inspect VIC-II registers
- ; io $dc00 ; inspect CIA #1 registers
- ; keybuf "help\x0d" ; inject a HELP command into the shell
-
- stop
|