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

Der Bereich für die Anzeige der Register teilt sich oben in die Steuerregister und unten in die allgemeinen Register, die auch die beiden Register f&uumL;r die Ports 2 und 3 enthalten. Die Register 0 und 1 werden nicht angezeigt, da diese beiden Ports beim JU+TE-Computer für den Daten- und Adressbus verwendet werden und somit als Ein-/Ausgabetore nicht zur Verfügung stehen.

Haben Sie in den Einstellungen die Option Register %80 bis %EF emulieren aktiviert, erscheint im oberen Bereich des Debugger-Fensters eine Möglichkeit zur Umschaltung der Anzeige der Register bis %80 und ab %80. Diese ist aktiv, wenn die Programmausführung angehalten wurde (siehe weiter unten). Die Umschaltmöglichkeit schaltet konkret zwischen den Registerbereichen %10 bis %7F und %80 bis %EF um. Die Register 2 bis %0F und die Steuerregister sind immer sichtbar.

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 und die Registergruppe, auf die der Register Pointer RP (Register %FD) zeigt, farblich hervorgehoben.

Die Registerinhalte können Sie nun ändern. Geänderte Werte werden ebenfalls farblich hervorgehoben. Möchten Sie einen geänderten Wert wieder zurücksetzen, ist das über ein Kontextmenü (rechte Maustraste über dem Register) möglich.

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 auf... am rechten Fensterrand.

Es gibt drei Arten von Haltepunkten:

Bei den Haltepunkten müssen die Adressen bzw. Registernummern mit ihrem hexadezimalen Wert angegeben werden. Des Weiteren können sie auch inaktiv gesetzt werden, d.h., bei diesen wird dann nicht angehalten. Aktive Haltepunkte werden mit einem kleinen Stoppsymbol markiert.

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 geöffnet ist.

5. Taktzyklen

Die Taktzyklen werden mitgezählt und unten links angezeigt. Der Taktzyklenzähler kann mit einem Click auf Zurücksetzen beliebig oft wieder auf Null gesetzt werden. Damit kann lässt sich z.B. die Laufzeit von Programmcodeabschnitten ermitteln. Dazu setzt man je einen Haltepunkt auf den Anfang und das Ende des betreffenden Programmcodeabschnitts, setzt beim Erreichen des ersten Haltepunkt den Taktzyklenzähler zurück, startet die Programmausführung wieder und liest beim zweiten Haltepunkt die Anzahl der Taktzyklen ab.