CBM 700

Aus C64-Wiki
(Weitergeleitet von CBM700)
Zur Navigation springenZur Suche springen

Der CBM 700 oder auch Commodore 700 gehörte zur Anfang der 1980er-Jahre herausgegebene CBM-II-Serie, die die erfolgreiche PET-/CBM-Serie ablösen sollte. Im Gegensatz zur ähnlich gebauten CBM-600-Serie besitzt er einen integrierten phosphoreszierenden 12"-Grünmonitor und die Tastatur wird über ein 25-poliges Verbindungskabel an das Hauptgehäuse angeschlossen.

Aufbau[Bearbeiten | Quelltext bearbeiten]

Den CBM 700 gibt es in verschiedene Modellvarianten. Sie unterscheiden sich durch die Größe des internen Arbeitsspeichers (RAM) und Coprozessorausstattung. Es gab den CBM 710 (auch international als B128-80HP bzw. CBM 128-80 bekannt) mit 128 KByte RAM, sowie den CBM 720/730 (auch international als B256-80HP bzw. CBM 256-80 bekannt) mit 256 KByte RAM. Der CBM 730 (außerhalb Europas als CBMX 256-80 vermarktet) besitzt des weiteren einen Intel 8088 Prozessor[1]. Weiterhin gibt es Modelle mit zwei Diskettenlaufwerken des Typs CBM8050, sowie eine abgespeckte 84 KByte-RAM-Version namens CBM 705.
Für alle Varianten war eine Z80-Prozessor-Option vorgesehen, die wechselweise zu einem eventuell vorhandenen 8088-Prozessor nutzbar gewesen wäre, welche es aber nicht bis zum Prototypstadium geschafft hat. In all der Vielfalt der Modelle sind diese Rechner international (außerhalb Europa) ursprünglich als B Series bezeichnet worden.

  • Auf der Vorderseite:
    • Tastaturstecker (25-polig).
  • Auf der Rückseite (von oben nach unten und von links nach rechts):
Der Userport ist zwar vorhanden, aber nicht nach außen geführt.
  • Prozessor: MOS 6509A mit ca. 2 MHz Taktfrequenz, 6502-Derivat mit 2 Port-Register auf Adresse $00 und $01.
  • Coprozessor: Optional ja nach Modelltyp, sonst durch zusätzliche Ausstattung: Mit den Prozessoren Z80 (nicht produziert) oder Intel 8088 (4,77 MHz) wären alternativ die Betriebssysteme CP/M 2.2 oder CP/M-86 bzw. MS-DOS nutzbar.
  • RAM-Speicher: intern 64, 128 oder 256 KByte, zusätzlich extern maximal 704 KByte nachrüstbar, davon sind je nach RAM-Ausstattung und Bank-Zuordnung knapp 128 bis 256 KByte frei unter BASIC (verteilt auf Programm und Daten) nutzbar.
  • ROM-, I/O- und System-Speicher: 48 KByte ROM gesamt (24 KByte intern, max. 24 KByte extern über Steckmodul) verteilt in Bank 15 (System-Segment):
    • Puffer-RAM (2 KByte; 0-2047; $0000-$07FF) in Bank 15 mit Zeropage, Stack (Page 1) bis Page 7 für Systemdaten
    • Externer Puffer-RAM (2 KByte; 2048-4095; $0800-$0FFF)
    • Disk-ROM (4 KByte; 4096-8191; $1000-$1FFF)
    • Freier Bereich (8192-32767; $2000-$7FFF) bzw. sofern vorhanden:
      • Steckmodul 8 KByte (8192-16383; $2000-$3FFF)
      • Steckmodul 8 KByte (16384-24575; $4000-$5FFF)
      • Steckmodul 8 KByte (24575-32767; $6000-$7FFF)
    • Extended CBM BASIC V4.0 (16 KByte) (32768-49151 ; $8000-$BFFF)
    • sämtliche I/O-Controller für Video, Sound, Interfaces usw. (49152-57343; $C000-$DFFF)
    • Unbenutzter Bereich (4 KByte) (49152-53247 ; $C000-$CFFF)
    • KERNAL (Kernel) (8 KByte) (57344-65535 ; $E000-$FFFF)
      inkl. Monitorprogramm TIM (Aufruf via SYS 60950).
  • Video: Bildschirmcontroller CRTC MOS 6545A-1 oder pin-kompatiblen MC 68B45 (55296-55551, $D800-$D8FF)
    • 2 KByte Video-RAM (53248-55271, $D000-$D7FF)
    • Darstellungen im Textmodus (entweder Großschrift-/Grafikzeichen oder Groß-/Kleinschrift) 80 (Spalten) × 25 (Zeilen) Zeichen monochrom mit Zeichen in einer 9×14 Pixelmatrix.
  • Sound: Der SID MOS 6581 (55808-56063, $DA00-$DAFF) wird zur Tonerzeugung genutzt und kann 3 unabhängige Stimmen mit Tönen von über 8 Oktaven (ca. 123 Töne) oder Geräusche und zusätzliche Filterung wiedergeben.
  • Tastatur: 94 Tasten (QWERTY), die mehrfach belegt sind, inkl. Nummernblock (19 Tasten) und 10 Funktionstasten, 4 Cursortasten, 4 commodore-spezifische Sondertasten
  • Sonstige Chips:
    • Low Cost Diskport (55552-55807, $D900-$D9FF)
    • External Port (on Co-prozessor board, für Coprozessor-Kommunikation) (56064-56319, $DB00-$DBFF)
    • Complex Interface Adapter (CIA) MOS 6526 für die E/A-Steuerung IEEE-488 (User-Port) (Ein-/Ausgabe, 56320-56575, $DC00-$DCFF)
    • Asynchronous Communication Interface Adapter (ACIA) MOS 6551 für RS-232 (56756-56831, $DD00-$DDFF)
    • 2 Tri-Port Interface (TPI) Chips MOS 6525 für Interruptverwaltung, IEEE-488, Kassettenport (56832-57087, $DE00-$DEFF) und Tastatur (57088-57343, $DF00-DFFF)

Speicherverwaltung[Bearbeiten | Quelltext bearbeiten]

Die Speicherverwaltung[2] erfolgt jeweils in 64 KByte großen Segmenten (auch Banks genannt), in denen sich RAM- oder ROM-Bereiche befinden. Es können 16 Segmente (Nr. 0 bis 15, insgesamt 1 MByte Adressraum) verwaltet werden. Im System-Segment 15 ($0F) sind alle eingebauten Chips, deren I/O-Bereiche, sowie das Betriebssystem bestehend aus KERNAL und BASIC adressierbar. Segment (Bank) 0 wurde nicht verwendet.
Angesteuert werden die Segmente über zwei 4-Bit-Register der CPU 6509, welche in allen Segmenten eingeblendet sind:

  • Port $00 (4 Bit): Legt das Segment fest, in dem gerade die CPU die Instruktionen abarbeitet (Exec Segment Bank).
  • Port $01 (4 Bit): Bestimmt jenes Segment, auf das die CPU-Befehle für den Datenzugriff via LDA (),Y STA (),Y wirken (Indirect Segment Bank).

Segmentnutzung bei 128 KByte RAM:

  • Im Segment 1 wird das gerade aktive BASIC-Programm gehalten und ausgeführt.
  • Im Segment 2 werden berechnete Daten, also sämtliche Variablen-Typen abgelegt.

Bei der Nutzung von 256 KByte RAM, werden die Segmente 2-4 wie folgt genutzt:

  • Im Segment 2 werden Felder (Array-Variablen) abgelegt.
  • Im Segment 3 werden einfache (nichtindizierte) Variablen abgelegt (nur 32 KByte) und es ist hier auch Platz für Commodore-DOS reserviert.
  • Im Segment 4 werden Zeichenketten (Strings) abgelegt.

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Artikel c't 1984/2 S. 48-50, Eckart Steffens, Rubrik c't Prüfstand, "CBM 710 - das Ei des Kolumbus?"

Weblinks[Bearbeiten | Quelltext bearbeiten]

WP-W11.png Wikipedia: CBM-700-Serie

Quellen[Bearbeiten | Quelltext bearbeiten]