Das Schneider CPC Systembuch

Das Innenleben der CPC-Rechner

Die CPU Z80

Die verschiedenen Interrupt-Modi der Z80

Anhang: Die Z80Die Z80 kann in drei verschiedenen Die CPU Z80: Die verschiedenen Interrupt-Modi der Z80Interrupt-Modi betrieben werden. Leider hat sich hierbei eine gewisse Unsauberkeit in die Literatur eingeschlichen: Manche Autoren nummerieren die verschiedenen Modi von 0 bis 2 und andere von 1 bis 3 durch. In diesem Buch verwende ich die üblichere Nummerierung von 0 bis 2.

Die verschiedenen Modi beziehen sich ausschließlich auf den Besonderheiten der Z80 im Schneider CPC: normaler Interruptnormalen Interrupt, der Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: NMI - non maskable interrupt
Besonderheiten der Z80 im Schneider CPC: Non Maskable Interrupt
NMI
führt immer nur einen Sprung zur Adresse &66 aus. Die Besonderheiten der Z80 im Schneider CPC: normaler Interruptnormalen Interrupts lassen sich immer, unabhängig vom gewählten Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 0
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 1
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 2
Modus
, mittels der Assembler-Befehle 'EI' und 'DI' verbieten und wieder zulassen.

Sobald ein Peripherie-Baustein einen Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: INT - InterruptInterrupt auslöst, arbeitet die Die ICs im Überblick: Die CPU Z80
Das Innenleben der CPC-Rechner: Die CPU Z80
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die CPU Z80
CPU
den Befehl, an dem sie gerade ist, zuende und beginnt dann mit einem speziellen Interrupt-Acknowledge-Zyklus. Das ist ein Buszugriff, der sich von den normalen Speicher- und I/O-Zugriffen leicht unterscheiden lässt: Zu einem bestimmten Zeitpunkt werden nämlich die Ausgänge Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: M1 - Machine Cycle OneM1 und Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: IORQ - Input/Output requestIORQ zusammen aktiv. In diesem Moment kann das IC, das den Alle noch folgenden Anschlüsse fallen unter die Rubrik STEUER- oder auch CONTROLBUS:: INT - InterruptInterrupt ausgelöst hat, ein Datenbyte auf dem Erklärung zu den Anschlüssen: D0 bis D7Datenbus ausgeben, das die Die ICs im Überblick: Die CPU Z80
Das Innenleben der CPC-Rechner: Die CPU Z80
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die CPU Z80
CPU
in ihr Eingangsregister latcht. Je nach eingestelltem Die CPU Z80: Die verschiedenen Interrupt-Modi der Z80
Die verschiedenen Interrupt-Modi der Z80: IM0 - Interrupt-Modus 0
Die verschiedenen Interrupt-Modi der Z80: IM1 - Interrupt-Modus 1
Die verschiedenen Interrupt-Modi der Z80: IM2 - Interrupt-Modus 2
Interrupt-Modus
wird dieses Datenbyte unterschiedlich interpretiert:

IM0 - Interrupt-Modus 0

Das Datenbyte wird als 1-Byte-Befehl behandelt und ausgeführt. Sinnvoll ist hier nur der Einsatz eines Restart-Befehls, wodurch bis zu acht verschiedene Interrupt-Behandlungsroutinen unterschieden werden können.

IM1 - Interrupt-Modus 1

Dieser Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 0
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 1
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 2
Modus
wird im Schneider CPC angewandt. Bei diesem Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 0
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 1
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 2
Modus
ignoriert die Die ICs im Überblick: Die CPU Z80
Das Innenleben der CPC-Rechner: Die CPU Z80
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die CPU Z80
CPU
einfach das Datenbyte und führt selbständig einen ROM-Konfiguration: RestartsRestart zur Adresse 56 aus.

IM2 - Interrupt-Modus 2

Dieser Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 0
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 1
Die 3 verschiedenen Betriebsarten der PIO 8255: Modus 2
Modus
ist der maechtigste von allen dreien. Hierbei können bis zu 128 Routinen unterschieden werden. Anhang: Die Z80Die Z80 nimmt hierbei das Datenbyte vom Peripherie-Gerät als niederwertiges Datentypen: Bytes
Datenbreite: Bytes
Byte
und das I-Register als höherwertiges Datentypen: Bytes
Datenbreite: Bytes
Byte
und bildet daraus eine Adresse. An dieser Stelle holt sie aus dem Speicher zwei Datentypen: Bytes
Datenbreite: Bytes
Bytes
, die sie nun als Adresse der Interrupt-Behandlungsroutine interpretiert und aufruft. Mit dem I-Register legt man also die Basis einer Tabelle mit Routinenadressen fest, das Peripherie-Gerät sucht sich dann einen Eintrag aus der Tabelle aus.

Da Anhang: Die Z80die Z80 im Schneider CPC im Die CPU Z80: Die verschiedenen Interrupt-Modi der Z80
Die verschiedenen Interrupt-Modi der Z80: IM0 - Interrupt-Modus 0
Die verschiedenen Interrupt-Modi der Z80: IM1 - Interrupt-Modus 1
Die verschiedenen Interrupt-Modi der Z80: IM2 - Interrupt-Modus 2
Interrupt-Modus
1 betrieben wird, hat das I-Register hier keine Aufgabe zu erfüllen. Es wird auch vom Betriebssystem nicht für irgendwelche anderen Zwecke misbraucht. Wer also einen galanten Zwischenspeicher für ein Datentypen: Bytes
Datenbreite: Bytes
Byte
in einem Maschinencode-Programm sucht, findet hier noch ein sicheres Plätzchen.

Valid HTML   Valid CSS