C128 NetLex

Commodore 128 Bedienungshandbuch
Commodore 128 System Guide



B. Die Speicherverwaltung mit der MMU

B.2.3 Das Modus-Konfigurations-Register

Der augenblicklich eingeschaltete Rechner-Modus wird durch das Modus-Konfigurations-Register (MCR) bestimmt. Es kontrolliert, welcher Prozessor (8502 oder Z80) das System steuert, welcher der Systemmodi (C128 oder C64) gerade eingeschaltet ist und steuert außerdem verschiedene andere Systembesonderheiten.

Das erste Bit (Bit 0) bestimmt, welcher Prozessor aktiviert ist. Es kann als invertierter Ausgang des Z80-Enable-Signals angesehen werden. Liegt dieses Bit auf 0, zeigt es an, daß der 8502 Prozessor aktiv ist, liegt es auf 1, ist der Z80-Prozessor aktiv. Dieses Bit wird nach dem Einschalten oder nach einem Systemreset auf 0 eingestellt.

Alle Zugriffe auf den Speicherbereich $0000-$0FFF werden in den Speicherbereich $D000-$DFFF übertragen, genau an die Stelle, wo das CP/M-ROM-BIOS physikalisch angelegt ist.

Um zu verhindern, daß der Prozessor mitten in einem Befehl umgeschaltet wird, ist Bit 0 zwischengespeichert, bis ein Taktzyklus abgelaufen ist.

Bei einem Z80-BIOS-Zugriff sind die beiden Memory-Status-Leitungen (MS0 und MS1) auf 0 und haben damit das System-ROM eingeschaltet. Für den Bereich von $001F - $0FFF sind die MS0- und MS1-Leitungen auf 1 . Die beiden RAM-Banks können über die Adresse A16 eingeschaltet werden. A16 schaltet die beiden CAS0- und CAS1-Leitungen.

Im C64-Modus wird die Z80-Enable-Leitung immer auf 0 gehalten, unabhängig vom Zustand des Bits 0.

Die Bits 1 und 2 sind ungenutzt, aber für spätere Porterweiterungen gedacht. In der augenblicklichen Version sind beide Bits auf 1, wenn sie gelesen werden. Sie können aber nicht beschrieben werden.

Bit 3 ist das FSDIR-Kontroll-Bit. Es wird als Ausgabebit für den schnellen seriellen Disketten-Daten-Bus-Puffer und als Eingabebit für das Disk-Enable-Signal benutzt. Der MMU-Anschluß FSDIR zeigt den Zustand dieses Bits an, das nach dem Einschalten oder nach einem Systemreset auf 0 gesetzt ist.

Bit 3 ist als bidirektionaler Port eingerichtet, ähnlich wie ein Bit im MOS 6529-Port. Der Wert, der diesem Bit zugeordnet wird, wird ausgegeben und wird auch wieder gelesen, wenn nicht von außen das Port auf 0 gezogen wird. In diesem Fall wird dieses Bit als 0 gelesen. Wird die externe Quelle entfernt, zeigt das Bit seinen vorherigen Zustand an.

Die Bits 4 und 5 sind das GAME- und EXROMIN-Eingabebit. Sie zeigen, ob die Steckmodulleitungen GAME oder EXROMIN, die im C64-Modus benutzt werden, belegt sind.

Bei C128-Steckmoduln werden diese Sense-Leitungen nicht benutzt, wodurch anhand des Zustands dieser Leitungen im C128-Modus erkannt werden kann, ob es sich um C64-Steckmodule handelt und der C64-Modus eingeschaltet werden muß. Diese Bits sind ebenfalls als bidirektionale Bits ausgelegt.

Das GAME-Bit kontrolliert die Umschaltung des Farbspeichers, wenn es als Ausgabebit geschaltet ist. Das Bit 5 (EXROMIN) wird im Augenblick nicht als Ausgabe genutzt.

Bit 6 schaltet zwischen den beiden Operationsmodi um. Dieses Bit ist nach dem Einschalten oder nach einem Systemreset auf 0 voreingestellt, d.h., der C128-Modus ist eingeschaltet, alle MMU-Register sind aktiviert und alle C128-Steuer-Leitungen sind vorbereitet. Wird dieses Bit auf 1 gesetzt, so wird die MMU ab- und der C64-Modus eingeschaltet.

Zu beachten ist, daß die MS3-Leitung den Zustand des Bits 6 invertiert darstellt.

Ist das Bit 7 als Eingabebit deklariert, zeigt es den Zustand der 40/80-Display-Taste an. Ist Bit 7 = 1, ist die Taste offen, ist es 0, ist die Taste gedrückt.

Der Anzeige-Modus wird entsprechend der Softwareinterpretation dieses Bits ein- oder ausgeschaltet. Als Ausgabebit wird dieses Bit gegenwärtig nicht genutzt.


Auszug aus dem Commodore C128 (D) Bedienungshandbuch: Seite B-13 bis B-14


[Seitenanfang] [Infos] [Links] [Lexikon] [Home]
Erstellt von WTE, am 01. März 2012; überarbeitet am 04. Februar 2013