debugger

ZXNet echo conference «zxnet.soft»

From George Valnin To All 23 August 2000

Hello All! Two years ago I started writing a debugger for ZX. It was intended as a debugger for debugging your programs. I made a disassembler (without assembly, i.e. mnemonics in the code because changes when debugging a program are usually made in source code and it is reassembled), debugging, interface. I wrote it somewhere 4-5 weeks, then gave up. I haven’t been able to access the Spectrum for over a year due to lack of time... :( Now I have time and I thought that maybe it’s worth it after all make a debugger? Features and capabilities of my debugger: 1) When scrolling up page by page, my debugger scrolls exactly one screen (22 lines), and always line by line for one command. STS flips by 22 bytes, and line by line it's kind of buggy... 2) Unlike STS, it correctly executes all commands (including LDIR, LDDR...) 3) During debugging: clock counting, various checks - on DI with HALT, several unconditional breakpoints, stopping when entering a memory area, conditional stop, instantaneous (non-debugging) execution areas, CALL instant execution, etc. In general, you can screw up a lot here... 4) Fast tracing - 35 times faster than STS's. Although it can be done faster (at first it was written 60 times faster, but it took about 2 times more memory). But this is only with the most necessary checks. As shownpractice, such speed (which is 35 or more times faster) is not at all necessary, therefore, it might be better to do less of any checks and bells and whistles to the detriment of speed? 5) Interface 64 characters. On the screen: On the left - registers and pairs PC, SP, IX, IY, IR, BC, DE, HL, AF, BC