Hello all,
I am writing a ASM program to run under prodos 2.4.3
The program is working well with my Virtual II emulator but when I run it on a real IIe, I have some issues.
During the execution, I am having the * prompt
I want to trace my program step by step, the starting point is 0x2000
when I enter in monitor
*2000L
I can see my program listing but
when I do
*2000S
and then
TRACE or STEP nothing happen.
On a side note, does anyone has ever use bugbyter with a prodos disk and can help me step by step (including relocation) to debug my prodos soft
Thanks
Vincent
The original Apple II (non Plus) Monitor ROM has step and trace commands, but like all other monitor commands they are single letters: S and T.
These commands were removed from the Autostart ROM shipped with Apple II+'es. The Apple IIe also misses these commands. The larger ROM on the IIgs brings back the S and T commands in a different form.
An example session on the IIgs:
] call-151
*!
!2000: jmp 2000
!
*2000s
Step
00/2000: 4C 00 20 JMP 2000
From here each space key will print
A=0000 =0000 Y=0000 S=017F D=0000 P=00
B=00 K=00 M=0C Q=88 L=1 m=1 x=1 e=1
00/2000: 4C 00 20 JMP 2000
and you can get out with the escape key. The return key switches to trace mode and outputs continually until escape is pressed.
Might want to try the ProDev DDT from ReActiveMicro. It does all that on real hardware.
Well thank you, I now understand why I have no trace & step working,
I need to debug on my IIe, what is the best approach ?
put BRK in the code ?
Vincent
and if I use a Romcard with the old monitor rom would I be able to run Prodos and debug my stuff ?
Isn't there a way to grab and relocate tha section of the old monitor rom containing step and trace??, to use maybe with a call different from -151 ?
In 1985 i grabbed the rom image of the Aii not plus from a friend of mine (he had integer basic), to extract the "mini assembler".
I actually don't remember why, but I had a printed disassembly of mini assembler, so it was easy to find the only 3 absolute jumps/jsr codes and recalculate them.
(Bload it in ram and it worked!!).
Or maybe....are there any other easy sw tools?
Julian
BRK is useful; but sometimes I will put a jmp $FF69 to break into the monitor.
I find a way to debug using a step by step approach,
1- Create with cadius or cyderpress a prodos with :
- Basic.system
- BUGBYTER
- The program to debug
2/ BLOAD your program assuming it will be in 0x2000
3/ RUN & RELOCATE BUGBYTER with BRUN BUGBYTER,A$4000
4/ Follow the instruction on bugbyter
it works really well and enable dynamic breakpoint
I compile my 6502 prg on my mac with Merlin32 and a chain of Cadius & Cyderpress and I load using my stm32 Floppy emulator
Vincent