Debugger

Der Debugger dient zur Verfolgung der Programmausführung im Emulator. Dazu können Sie Haltepunkte setzen, die Programmausführung anhalten, die Registerinhalte sehen und ggf. auch ändern sowie einzelne Prozessorbefehle oder Unterprogramme ausführen bzw. die Programmausführung fortsetzen.

1. Register

Den größten Teil des Debugger-Fensters nimmmt die Anzeige der Register ein. Deshalb werden nur so viele Register angezeigt, wie auch emuliert werden. Ändern Sie jedoch in den Einstellungen die Option Register %80 bis %EF emulieren, während das Debugger-Fenster offen ist, wird die Anzahl der angezeigten Register nicht geändert. Um das zu erreichen, müssen Sie das Debugger-Fenster schließen und wieder öffnen.

Die Register 0 und 1 werden nicht angezeigt, da die Ports 0 und 1 beim JU+TE-Computer für den Daten- und Adressbus verwendet werden und somit als Ein-/Ausgabetore nicht zur Verfügung stehen.

2. Programmausführung anhalten

Die Programmausführung wird mit dem Menüpunkt Programmausführung anhalten im Menü Debuggen oder bei Erreichen eines aktiven Haltepunktes angehalten. Beim Anhalten werden die aktuellen Werte der Prozessorregister angezeigt. Diese können Sie auch ändern, d.h., vor der Ausführung des nächsten Befehls werden die geänderten Werte in die Register geschrieben.

Um Missverständnisse zu vermeiden, können die Register 2, 3, SIO, T1, PRE1, T0 und PRE0 nicht geändert werden. Diese Register haben nämlich beim Lesen und Schreiben eine unterschiedliche Bedeutung.

3. Haltepunkte

Die Funktionen zum Verwalten der Haltepunkte finden Sie im Menü Debuggen und im Kontextmenü über den Bereich Haltepunkte am rechten Fensterrand.

Haltepunkte müssen mit ihrem hexadezimalen Adresswert angegeben werden. Des weiteren können sie auch inaktiv gesetzt werden. In dem Fall wird der Haltepunkt in Klammern angezeigt, was soviel bedeutet, dass die Programmausführung an dieser Adresse nicht anhält.

4. Befehle ausführen

Mit den weiteren Funktionen im Menü Debuggen können Sie einzelne Befehle oder Befehlsgruppe ausführen oder die Programmausführung generell fortsetzen. An aktiven Haltepunkten wird jedoch angehalten, solange der Debugger göffnet ist.