Unterbrechung durch RST 7.5 / DVT03

Hallo!

Im Anhang sende ich die entsprechende Aufgabe, die durch den Eingang RST 7.5 unterbrochen werden kann.
Das Unterbrechungs-Programm beginnt in der Zeile 2816H. Es ist ständig SID=0, RST 5.5=0, RST 6.5=0. Nach dem Start des Hauptprogramms wird 79H an Port B eingegeben. Im Stapelzeiger steht dann 2F88H.
Befehlszeilen die nicht durchlaufen werden, sollen leer bleiben, Sprünge durch Pfeile markiert werden.

Nun habe ich mich schon bis zur Verzweiflung an dieser Aufgabe versucht, aber ich komme nicht weiter, wie das was im Anhang ausgefüllt ist.
Bin ich überhaupt auf dem richtigen Weg??
Kann mir denn jemand einen Tipp geben, wann und durch was ein weiterer Durchlauf ausgelöst wird, bzw. wie man den letzten Durchlauf bestimmen kann?
Die Funktion des Programms ist mir generell noch nicht so ganz klar.
Es würde mich wirklich freuen, wenn mir jemand hilfreiche Tipps geben könnte.

Hierfür schon mal im Voraus vielen Dank!

Grüße,
Orcams
 

Anhänge

AW: Unterbrechung durch RST 7.5 / DVT03

Hi Orcams,

-das Programm ist in 2Teile aufgeteilt

1. Hauptprogramm
-initialisiert alle Variabeln und fragt
in einer Endless-Loop Port-B ab
(wird im Akku gespeichert)

2. Interrupt-Routine (die extern getriggert wird)
-bearbeitet den Akku und gibt dessen Inhalt
an Port-A aus
-die Routine wird 8mal durchlaufen
(Inhalt von Register-B wird bis 0 gezählt)

-nach den 8mal springt der RET wieder in
die Endlessloop

-----------------------------------

-du hast einen Fehler bei dem LXI Befehl

und in der Interrupt-Routine ändert sich der
Akku inhalt nach jeder Schleife durch das Linksschieben (RLC)

Gruss Uwe
 
AW: Unterbrechung durch RST 7.5 / DVT03

Hallo Uwe!

Prima, vielen Dank für die Tipps und Hinweise.
Ich werde mir das dann noch einmal in einer ruhigen Minute "zu Gemüte" führen.

Besten Dank noch mal!

Grüße,
Orcams
 
AW: Unterbrechung durch RST 7.5 / DVT03

Hallo ihr,

ich weiß der Thread ist etwas alt aber gibt es hierzu neue Erkenntnisse ich stecke nämlich bei dieser Aufgabe schon eine ganze weile fest.

Im Anhang habe ich mal meinen Lösungsansatz.

Es gibt eine Frage die ich nicht beantworten kann und zwar

Was steht in den Adressen 003CH - 003EH ?

Wo werden den diese Adressen im Programm beschrieben?

Gruß und hoffentlich kann mir jemand helfen

Hooglz
 

Anhänge

Top