DDTZ Debugger

DDTZ [Download] ist ein Debugger, der sich anlehnt an den CP/M 2.2 Debugger DDT. Im Gegensatz zum DDT, der mit 8080-Opcodes arbeitet, arbeitet der DDTZ mit Z80-Opcodes. Das Dokument DDTZ.DOC () beschreibt seine Funktion.

Z8E Debugger

Z8E [Download] ist ein Debugger, der die Instruktionen animiert auf dem Bildschirm darstellt. Das Dokument Z8E.WS () beschreibt seine Funktion. (Dieser Debugger findet sich in der SIG/M1 Ausgabe 239).

Wagners Debugger

WADE [Download] ist ein Debugger, der ähnlich wie (Z)SID arbeitet jedoch mit komplexeren Eingabemöglichkeiten und als RSX angelegt ist. WADE.DOC () beschreibt seine Funktion.
Debugger arbeiten bekanntlich mit sogenannten Breakpoints (etwa Anhaltepunkte), die dazu dienen, ein Programm kontrolliert ablaufen zu lasssen. Dazu wird an der Adresse eines Breakpoints der ursprüngliche Opcode an einer anderen Stelle abgespeichert und ein neuer Opcode eingetragen, der dann die Kontrolle an den Debugger übergibt, wenn das zu untersuchende Programm auf diese Adresse trifft.
Die 8080 CPU verfügt über sogenannte RST-Befehle. Dies sind Opcodes mit einer Länge von einem Byte, die wie ein Unterprogrammaufruf (CALL) wirken. Es existieren 8 solcher Befehle, die Aufrufe ausführen auf die Adressen 0x0000, 0x0008 bis 0x0038. Natürlich existieren diese Befehle auch auf der Z80 CPU. Es hat sich durchgesetzt, für Breakpoints den RST 7-Befehl (Z80: RST 38H) zu verwenden. Wird allerdings bei der Z80 der Interrupt-Modus IM 1 verwendet, dann kollidieren Breakpoint und Interrupt-Adresse, weil in beiden Fällen dieselbe Adresse benutzt wird, nämlich 0x0038. Dies ist z.B. beim Joyce (PCW) der Fall. Hier bietet sich eine Änderung in den RST 6- bzw. RST 30H-Befehl an.
1. Die Gruppe SIG/M (Special Interest Group/Microcomputers), ein Teil des Amateur Computer Clubs aus New Jersey, hatte zur regulären Ausgabe von Public Domain Software diese auf Disketten zusammengestellt. Die SIG/M Disketten entstanden ab 1980 und die Ausgaben 000 bis 310 sind hier zu finden.