CBM 600

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

Der CBM 600 oder auch Commodore 600 gehört zur Anfang der 1980er-Jahre herausgegebenen CBM-II-Serie, die die erfolgreiche PET-/CBM-Serie ablösen sollte. Er besteht ebenfalls aus einer Einheit und ist wie der CBM500 ein Tastaturcomputer. Im Gegensatz zum CBM 500 besitzt er keinen Joystickport, sowie durch die monochrome 80-Zeichenkarte keine Möglichkeit an ein Fernsehgerät angeschlossen zu werden. Die CBM-600-Reihe wurde als "Advanced Business Computer" vermarktet.

Aufbau[Bearbeiten | Quelltext bearbeiten]

Unbestücktes Coprozessor-Board

Den CBM 600 gibt es in verschiedene Modellvarianten. Sie unterscheiden sich durch den internen Arbeitsspeicher (RAM) und Coprozessorausstattung. Es gab die Modelle CBM 610 (auch international als B128-80 bekannt) mit 128 KByte und CBM 620 (auch international als B256-80 bekannt) mit 256 KByte RAM. Es soll auch eine Version mit einem Intel 8088 Prozessor unter der Bezeichnung CBM 630 (bzw. international BX256-80) gegeben haben[1]. Eine Modellreihe (siehe CBM 700) mit eingebautem Bildschirm wurde international als CBM nnn-80 bzw. CBMX nnn-80 mit 8088 Prozessor vermarktet.
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.

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 und es ist hier auch Platz für Commodore-DOS reserviert.
  • Im Segment 4 werden Zeichenketten (Strings) abgelegt.

Weblinks[Bearbeiten | Quelltext bearbeiten]

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

Quellen[Bearbeiten | Quelltext bearbeiten]