Die "Gute-Nacht-Lektüre": Es war einmal ein einsamer Prozessor, der auf die göttliche Unterbrechung wartete...
<elevator music on>
Mit dem INT-Signal gibts ein variables Interrupt. Der 8085 liest nach INT über INTA (quasi ein IOR) ein Byte ein und springt dann an die damit definierte Stelle im ROM-Interrupt-Vektor. Dort steht dann ein JMP auf den RAM-Vector (damit wir damit spielen können) oder auf die MAT85 Interrupt-Routine.
Der gewünschte Interrupt wird im PCF abgelegt. Bei INTA spuckt er die codierte Adresse auf den Datenbus.
Code
; Interrupt-Vektor im ROM
INT C7 0000: JMP RESET ;RTS 0 : Kaltstart
INT CF 0008: JMP CMDUSER ;RST 1 : Anwender-Einsprung in Monitor
INT D7 0010: JMP RST2 ;RST 2 : Anwender Interrupt
INT DF 0018: JMP RST3 ;RST 3 : Anwender Interrupt
INT E7 0020: JMP BREAK ;RST 4 : Breakpoint
TRAP 0024: JMP TRAP ;RST 4.5: Nicht Maskierbarer Interrupt (Taster)
INT EF 0028: JMP RST5 ;RST 5 : Anwender Interrupt
RST 5.5 002C: JMP RST55 ;RST 5.5: Anwender Interrupt ()
INT F7 0030: JMP RST6 ;RST 6 : Anwender Interrupt
RST 6.5 0034: JMP RST65 ;RST 6.5: Anwender Interrupt COM:)
INT FF 0038: JMP ABORT ;RST 7 : Program Abort
RST 7.5 003C: JMP RST75 ;RST 7.5: Anwender Interrupt ()
; Interrupt-Vektor im RAM
RST2 EQU 0FC8C
RST3 EQU 0FC8F
RST5 EQU 0FC92
RST55 EQU 0FC95
RST6 EQU 0FC98
RST65 EQU 0FC9B
RST75 EQU 0FC9E
Alles anzeigen
<elevator music off>
- Also muss die Adresscodierung und der Treiber noch mit INTA funktionieren...
- Dann muss ich mal schauen, was da im Ram-Vektor bei mir so steht. (welche sind denn noch frei?)
- Welche RST Signale werden von den Originalkarten belegt? (z.B. RST6.5 für MAT85-Terminal)
- Kennt einer eine Karte die den INT verwendet?
- Ich glaube ich habe damals für die Berufsschule so eine INT-Vektorkarte gebastelt, ob ich die Unterlagen noch finde?
Soviel zum Thema mal ein kleines Projekt nebenbei...