ZXDB single-step

Discussion about ZX80 / ZX81 Software
User avatar
mrtinb
Posts: 1979
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: ZXDB single-step

Post by mrtinb »

On 2nd thought maybe I could add CALL $2000 (CD 00 20) in the code where I want a breakpoint. Then modify the registers acordingly to what the 3 instuctions would have done.

Then when I run the program, CALL $2000 will start ASDIS.
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
User avatar
mrtinb
Posts: 1979
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: ZXDB single-step

Post by mrtinb »

On 3rd thought. Running ASDIS will of cause mess up all registers. DOH :oops:

Unless ASDIS has a "clean" entry point that can be called.
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
User avatar
mrtinb
Posts: 1979
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: ZXDB single-step

Post by mrtinb »

Hi Siggi :)

Thanks for your help.

From: http://forum.tlienhard.com/phpBB3/viewt ... =483#p4114
siggi wrote:Sieht also so aus, als wären auch Einsprünge bei 8195, 8198 und 8201 vorgesehen.
Did you ever find out what the other 3 entry points were used for?
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
User avatar
siggi
Posts: 1028
Joined: Thu May 08, 2008 9:30 am
Location: Wetterau, Germany
Contact:

Re: ZXDB single-step

Post by siggi »

mrtinb wrote: Mon Feb 20, 2017 1:17 pm On 3rd thought. Running ASDIS will of cause mess up all registers. DOH :oops:

Unless ASDIS has a "clean" entry point that can be called.
Hi Martin
the first problem, you wrote about, is to debug/single-step in ROM. Then you wrote about Forth: "The forth implementation I'm debugging" :?:

ASDIS is a ZX81 program! So it expects to run together with a ZX81 rom (e.g. stores assembler source and configuration in a BASIC variable named A$).
Do you want to debug a Forth rom?
I always used ASDIS in a ZX81 context without problems. I don't know what happens, if ASDIS is running together with a Forth ROM!

Regards
Siggi

PS: No, I still do not know, what the 3 entry points are used for ...
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
User avatar
mrtinb
Posts: 1979
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: ZXDB single-step

Post by mrtinb »

I'm extending ToddyForth, and this is not in ROM.

Now I found that Hot-Z has both single-step debugger and breakpoints. I'll try that as well.
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
User avatar
siggi
Posts: 1028
Joined: Thu May 08, 2008 9:30 am
Location: Wetterau, Germany
Contact:

Re: ZXDB single-step

Post by siggi »

I think, that ANY debugger designed for ZX81 will only run in a standard memory layout like used by the ZX81 ROM and BASIC. But Forth uses its own layout (eg. expects text programs at 32768, but HOT-Z is running there). So I think you cannot use any of them.

But you could use EightyOne: run Forth there. And open the EO "debug" window, where you can set breakpoints and debug the program.

Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
User avatar
mrtinb
Posts: 1979
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: ZXDB single-step

Post by mrtinb »

siggi wrote: Fri Feb 24, 2017 12:18 pmBut Forth uses its own layout (eg. expects text programs at 32768, but HOT-Z is running there).
I'm actually trying to modify ToddyForth, so it will run more like regular programs, and be easier to integrate with BASIC and ML.

Thanks for your help. Now I have 3 debuggers with single step functionality.
  • ZXDB
  • ASDIS
  • Hot-Z
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
Post Reply