.segment ZP [start=$02] "Zero page" zp_var1: .byte 0 zp_var2: .byte 0 zp_var3: .byte 0 zp_word1: .word 0 zp_word2: .word 0 zp_word3: .word 0
d .zp_var1 .C:0002 .zp_var1: .C:0002 02 JAM .C:0003 .zp_var2: .C:0003 00 BRK .C:0004 .zp_var3: .C:0004 48 PHA .C:0005 .zp_word1: .C:0005 20 56 E8 JSR $E856 .C:0008 02 JAM .C:0009 .zp_word3: .C:0009 DD 00 28 CMP $2800,X
m .zp_var1 .zp_var1
.segment ZP [start=$02] "Zero page" .zp { zp_var1: .byte 0 zp_var2: .byte 0 zp_var3: .byte 0 zp_word1: .word 0 zp_word2: .word 0 zp_word3: .word 0 }
The monitor is as basic as it gets really. The symbol handling is very basic. It's still useful in it's current state for many tasks. So far no one has made a proper debugger interface for VICE. There is only graphical stuff that's not exactly useful for debugging complex code. It's nice to look at things in memory and has some interesting features, but for pure debugging it's very lacking.
When defining zero page constants, I can recommend using the zp-directive. This way, they will always get treated as zp values, also if you define them after they are used. So now you don't have to worry about definition-usages order and you can define the zp-values next to the code that 'owns' them, instead of in the top of the file if that is what you want.
Yeah, I would very much welcome a fast (commandline / keyboard driven) debugger. And the VICE monitor is very handy for quick things. There's just always these little features that you miss when you use it a lot.