Das Schneider CPC Systembuch

Das Betriebssystem des Schneider CPC

Die Speicherkonfiguration im Schneider CPC

Die RAM-Konfiguration

Bei der gesamten Speicherkonfiguration muss man zwischen insgesamt drei Aspekten unterscheiden.

Der erste trifft nur für den CPC 6128 mit seiner zusätzlichen RAM-Bank zu. Normalerweise wird die aktuelle Speicherkonfiguration durch das Gate Datenspeicherung und Datenstrukturen: ArraysArray gesteuert. Da der Umschalt-Mechanismus für zusätzliche 64 kByte RAM im CPC 464 und 664 aber noch nicht vorgesehen war, wurde er auch noch nicht im Gate Datenspeicherung und Datenstrukturen: ArraysArray implementiert.

Bei der Entwicklung des CPC 6128 wollte man wohl so weit wie möglich auf's Eingemachte zurückgreifen, und entwickelte deshalb kein neues Gate Datenspeicherung und Datenstrukturen: ArraysArray, sondern übertrug den zusätzlichen Verwaltungs-Aufwand an ein zusätzliches IC, ein Speicher und Peripherie: Das PAL im CPC 6128PAL.

Diese Feinheiten sind aber für die laufende Software uninteressant, weil zum Programmieren des Speicher und Peripherie: Das PAL im CPC 6128PAL die selbe Speicher und Peripherie: Reservierte und frei verfügbare I/O-AdressenI/O-Adresse wie für Speicher und Peripherie: Die ULA
Die Bildausgabe: Die ULA
die ULA
benutzt wird. Hier konnte man eine Adressierungs-Lücke, also eine unbenutzte Adresse ausnutzen.

Die ICs im Überblick: Die ULA 40007, 40008 oder 40010
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40007 und 40008 (CPC 464 und 664)
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40010 (CPC 6128)
ULA
und Speicher und Peripherie: Das PAL im CPC 6128PAL werden durch ein I/O-Zugriff angesprochen, bei dem die Adress-Leitung A15 auf Null-Pegel liegt. Beide, Die ICs im Überblick: Die ULA 40007, 40008 oder 40010
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40007 und 40008 (CPC 464 und 664)
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40010 (CPC 6128)
ULA
und Speicher und Peripherie: Das PAL im CPC 6128PAL, können nur beschrieben, aber nicht gelesen werden. Daraus ergibt sich die Ansprech-Adresse:

OUT &7FFF, wert    oder binär:     OUT &X011111??.????????, wert.

Bei der binär angegebenen Adresse sind die Adress-Bits, die mit einem Fragezeichen versehen sind, beliebig. Diese Adress-Leitungen werden nicht ausgewertet.

Die zusätzliche Funktions-Auswahl zwischen Speicher und Peripherie: Das PAL im CPC 6128PAL und Die ICs im Überblick: Die ULA 40007, 40008 oder 40010
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40007 und 40008 (CPC 464 und 664)
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40010 (CPC 6128)
ULA
, und innerhalb den verschiedenen Registern der Die ICs im Überblick: Die ULA 40007, 40008 oder 40010
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40007 und 40008 (CPC 464 und 664)
Die Anschlussbelegungen der wichtigsten ICs im CPC: Die ULA 40010 (CPC 6128)
ULA
erfolgt über die beiden höchsten Datenbits D6 und D7. Um das Speicher und Peripherie: Das PAL im CPC 6128PAL zu programmieren, müssen beide auf '1' gesetzt sein:

OUT &7FFF,&X11??????

Um zwischen den acht BD5B: KL RAM SELECT: Mögliche RAM-Konfigurationen:möglichen RAM-Konfigurationen unterscheiden zu können, genügt es, dass das Speicher und Peripherie: Das PAL im CPC 6128PAL hierfür nur die Datenbits Der Zeichensatz des Schneider CPC: &D0 = 208D0, D1 und D2 auswertet. Die folgende Tabelle zeigt die acht verschiedenen BD5B: KL RAM SELECT: Mögliche RAM-Konfigurationen:RAM-Konfigurationen, die programmierbar sind:

Datenwort   eingeblendete       normalerweise           Bildwiederhol-
            RAM-Blocks          verwendet für:          Speicher in:
----------  -----------------   ---------------------   --------------
&X11000000  n0 - n1 - n2 - n3   Normalzustand            n3=Screen
&X11000001  n0 - n1 - n2 - z3   Einleitung: CP/MCP/M: BIOS, BDOS etc.    n1=Screen
&X11000010  z0 - z1 - z2 - z3   Einleitung: CP/MCP/M: TPA               (n1=Screen)
&X11000011  n0 - n3 - n2 - z3   Einleitung: CP/MCP/M: n3=Tabellen       (n1=Screen)
&X11000100  n0 - z0 - n2 - n3   Bankmanager              n3=Screen
&X11000101  n0 - z1 - n2 - n3   Bankmanager              n3=Screen
&X11000110  n0 - z2 - n2 - n3   Bankmanager              n3=Screen
&X11000111  n0 - z3 - n2 - n3   Bankmanager              n3=Screen

Die Bezeichnungen für die eingeblendeten RAM-Blocks sind dabei wie folgt zu verstehen:

  +---- Die Speicherkonfiguration im Schneider CPC: BlockBlock aus der 'n'ormalen RAM-Bank
  |
  n2
   |
   +--- Block-Nummer (0,1,2,3) innerhalb der Die Speicherkonfiguration im Schneider CPC: BankBank

Anhang: Die BildausgabeDie Bildausgabe kann dabei nur aus Die Speicherkonfiguration im Schneider CPC: BlockBlocks der normalen RAM-Bank erfolgen. Der Bildwiederholspeicher kann also vollkommen dem Zugriff der 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
entzogen werden, wenn man ihn durch Programmieren des Die ICs im Überblick: Der CRTC HD 6845
Die Anschlussbelegungen der wichtigsten ICs im CPC: Der CRTC HD 6845
Die Bildausgabe: Der CRTC HD 6845
CRTC
in eine normale RAM-Bank legt, die gerade ausgeblendet ist.

Für den normalen Gebrauch sind sicher die Kombinationen '100' bis '111' am interessantesten, mit denen sich alle vier Die Speicherkonfiguration im Schneider CPC: BlockBlocks des zusätzlichen RAMs in Die Speicherkonfiguration im Schneider CPC: BlockBlock 1 (&4000 bis &7FFF) des Adressbereiches der 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
einblenden lassen. Das wird vom Bankmanager benutzt.

Um die verschiedenen BD5B: KL RAM SELECT: Mögliche RAM-Konfigurationen:RAM-Konfigurationen komfortabel verwalten zu können, wurde im CPC 6128 noch ein Die Basic-Vektoren: Zusätzliche Vektoren im CPC 664 und 6128
Die Basic-Vektoren: Zusätzliche Vektoren beim CPC 6128
zusätzlicher Vektor
in die Haupt-Sprungleiste aufgenommen: &KERNEL: BD5B: KL RAM SELECTBD5B KL RAM SELECT. Dieser Vektor ist, wie alle anderen auch, im AnhangAnhang ausführlich beschrieben.

Valid HTML   Valid CSS