Commodore 128
C128 ist die Kurzbezeichnung des Heimcomputers Commodore 128. Er ist der große Bruder des C64.
Neben dem nativen C128-Modus verfügt er über zwei zusätzliche Betriebsarten: Den C64-Modus, in dem er nahezu hundertprozentig kompatibel zum C64 ist, sowie den CP/M-Modus, in welchem der Prozessor 8502 I/O besorgt und für die CP/M-Kompatibilität ein Z80 von Zilog benutzt wird. In den C64-Modus gelangte man durch Eingabe des Basic-Befehls „GO64“ nach dem Booten des C128 oder das Gedrückthalten der Commodore-Taste beim Einschalten. In den CP/M-Modus gelangte man durch Einlegen einer CP/M-Diskette und einen Kalt- bzw. Warmstart oder den Basic-Befehl BOOT.
Technische Daten
Technisch entspricht der C128 weitgehend dem C64, verfügt allerdings noch über zusätzliche Elemente:
- den Grafikchip VDC, der eine höhere Auflösung (80 Zeichen in der Horizontalen) und viele andere Möglichkeiten bietet (blinkende, unterstrichene Zeichen, 2 Zeichensätze gleichzeitig, Grafikmodus, ...), die aber bisher nur teilweise ausgenutzt wurden. Darüber hinaus besitzt er einen eigenständigen Videospeicher von 16 (später sogar 64) KiB. Nachteilig ist, dass er den alten 40-Zeichen-VIC II-Videochip nicht ersetzen, sondern nur ergänzen kann. Zudem ist der Zugriff auf den eigenständigen Speicher nicht direkt über die CPU möglich, wodurch Lese- und Schreibzugriffe extrem langsam wurden und daher der Chip für die Spieleprogrammierung kaum geeignet ist. Er kann lediglich in Verbindung mit einem C128-Monitor oder einem IBM-CGA-Monitor genutzt werden, Nutzung mit einem C64-Monitor oder Fernseher ist nur mittels spezieller, von Commodore nicht angebotener Kabel und nur mit schwarz/weiß-Bild möglich. Ein farbiges Bild ist je nach Fernsehgerät entweder nur mit Tricks oder gar nicht darstellbar.
- eine MMU (Memory Management Unit), die theoretisch bis zu 1 MiB Speicher verwalten kann (die real existierenden Chips aber nur 128 KiB) und außerdem für das Umschalten zwischen den einzelnen Betriebsmodi zuständig ist;
- 128 KiB Speicher (Commodore wollte keine 256 KiB einbauen, um dem bereits existierenden Amiga keine Konkurrenz im eigenen Haus zu machen) aufgeteilt in zwei Bänken zu 64 KiB, wobei eine Bank für BASIC-Programme, die andere für Variablen genutzt wird.
- eine erweiterte Tastatur mit Ziffernblock und komfortableren Cursor-Tasten
Als CPU dient der 8502 – ein modifizierter 6510-Chip, der doppelt so schnell getaktet werden kann. Zu diesem Zweck wird jedoch dem 40-Zeichen-Videochip der Zugriff auf den Hauptspeicher verwehrt, so dass man nur bei nicht benötigter 40-Zeichen-Darstellung den 2-MHz-Modus aktivieren kann. Der VDC bleibt von dem 2-MHz-Modus unbeeinträchtigt, da er ohnehin nicht auf den Hauptspeicher zugreift; eine 80-Zeichen Darstellung ist also weiterhin problemlos möglich. Möchte man die höhere Geschwindigkeit auch in der 40-Zeichen-Darstellung verwenden, so kann man den 2-MHz-Modus lediglich in den Bildbereichen aktivieren, in denen der 40-Zeichen Videochip nicht auf den Hauptspeicher zugreifen muss. Auf diese Weise kann man den C128 immerhin von 1 MHz auf effektiv 1,3 MHz beschleunigen. Ein Beispiel hierfür wäre das C64 Spiel "Uridium", welches im C64-Modus des C128 etwas mehr Sprites darstellt als auf einem C64. Für GEOS 128 gab es ein Utility, der im 40-Zeichen-Modus ebenfalls diesen Trick ausnutzte, um GEOS um 30 % zu beschleunigen.
Betriebssysteme/BASIC
Als Betriebssystem und Programmierumgebung in einem dient das Commodore-BASIC Version 7.0, eine von Commodore stark erweiterte Version des Microsoft-BASIC 2.0, das bereits im VC-20 und C64 verwendet wurde. Das BASIC ist im ROM des C128 zu finden und somit direkt nach dem Einschalten verfügbar.
Das C128-BASIC verfügt über zusätzliche Befehle zur Programmsteuerung, Ton- und Musikerzeugung, weit weniger kryptische Befehle zur Steuerung des Diskettenlaufwerks sowie komfortable Grafik- und Zeichenfunktionen für den 40-Zeichen-Videochip – aber nicht für den VDC. In Verbindung mit den für den C128 gedachten Diskettenlaufwerken 1571 und 1581 geht auch das Laden und Speichern von Programmen schneller als auf einem C64.
Als zweites Betriebssystem wurde CP/M-Plus V3.0 zusammen mit dem C128 geliefert. Das C128-CP/M war so konzipiert, dass Programme für die Kaypro-Computer, die damals meistverbreiteten CP/M-Rechner, normalerweise direkt lauffähig waren. Das Commodore-CP/M war sehr langsam, da der Prozessor effektiv nur mit 2 MHz lief (statt der in anderen CP/M-Maschinen üblichen 4 bis 6 MHz) und da CP/M 3.0 auch selbst komplexer und langsamer war als das üblichere CP/M 2.2.
Neben den originalen Betriebssystemen wurde auch GEOS für den C128 angeboten (mittlerweile Freeware und zum freien Herunterladen angeboten). Mittlerweile existieren weiterhin auch ein Unix-Derivat namens LUnix für den C128 und eine angefangene Portierung von Contiki.
Weiterhin erlaubt der C64-Modus des C128 es, sämtliche Betriebssysteme zu verwenden, welche für den C64 erhältlich sind. So ist z. B. das BASIC V2 des C64 auch im C128 eingebaut, und es lassen sich z. B. die C64-Version von GEOS und anderen Betriebssystemen wie z. B. Contiki ohne Probleme auf dem C128 verwenden.
Markterfolg des C128
Der C128 hat sich weniger erfolgreich durchsetzen können als der C64. Der C128 sollte den C64 ablösen, bot jedoch für die Zielgruppe keine entscheidenden Neuerungen, die den deutlich höheren Preis rechtfertigten. Zudem war der Wechsel von CP/M zu IBM-kompatibler Hardware sowie zu 16-Bit-Prozessoren (x86, 68k) bereits weitgehend vollzogen. Da die Spiele die neuen Eigenschaften des C128 kaum ausnutzen konnten, bot er dem Normalanwender, der hauptsächlich Spiele benutzen wollte, nur geringe Vorteile gegenüber dem C64. So wurden nur ca. 4 Millionen Stück verkauft, verglichen mit den ca. 17 Millionen C64.
Die Folge davon war, dass ein entsprechendes Softwareangebot ausblieb und die meisten C128 im C64-Modus betrieben wurden. Zudem kam der C128 zu einem Zeitpunkt auf den Markt, als bereits die ersten Gerüchte über die „Wundermaschine“ Amiga durchsickerten.
Weitere Gründe für die mangelnde Benutzerakzeptanz des Rechners war die komplexe Systemarchitektur mit drei verschiedenen Betriebsmodi, zwei Prozessoren und zwei Graphikchips, Bankswitching, mehreren verschieden zu verwendenden RAM-Typen, einem weiteren Prozessor im Diskettenlaufwerk. Der Rechner war in vieler Hinsicht eine „Rennschnecke“: Einer prinzipiell veralteten Grundstruktur wurde durch großen Materialaufwand eine zwar überdurchschnittliche, aber eben nicht herausragende Leistung abgerungen.
Der C128 wurde, nach dem Weggang von Jack Tramiel und einem großen Teil des Commodore-Entwicklerteams zu Atari, eilig als Nachfolge- und Aufsteigermodell zum Commodore 64 entwickelt. Es existierte zwar mit dem CBM510 ein vergleichbares Gerät, das in mancherlei Hinsicht deutlich moderner (CPU mit integriertem Bankswitching und bis zu 1 MiB Adressbereich) aber trotz großer Ähnlichkeit (gleiche Video- und Soundhardware wie beim C64) weitgehend inkompatibel zum C64 war und nur in sehr geringen Stückzahlen jemals produziert wurde, in Europa wurde es erst gar nicht angeboten. Außerdem fehlte dem CBM510 die Fähigkeit, 80 Zeichen pro Zeile darzustellen. Daher entschloss man sich, ein neues System zu entwickeln, das einerseits weitestgehend binärkompatibel zum immer noch erfolgreichen C64 sein sollte, aber – über erweiterte Betriebsmodi aus – zusätzliche Fähigkeiten besaß.
Die verschiedenen C128-Modelle und Varianten
Commodore hat den C128 in mehreren Varianten produziert.
- C128: Tastatur im Computer integriert, kein Diskettenlaufwerk, SID 6581, VDC 8563, 16 KiB VDC RAM.
- C128D (Plastikgehäuse): Eingebautes Diskettenlaufwerk, SID 6581, VDC 8563, 16 KiB VDC RAM, abgesetzte Tastatur, eingebauter Lüfter, Tragegriff. Die Tastatur konnte am Gehäuseboden befestigt werden. Bei diesem C128D handelt es sich lediglich um einen normalen C128 mitsamt modifizierten Diskettenlaufwerk 1571 in einem anderen Gehäuse. So nur in Europa verkauft.
- C128D (Blechgehäuse): Eingebautes Diskettenlaufwerk, SID 8580, VDC 8568, 64 KiB VDC RAM, abgesetzte Tastatur, kein Lüfter eingebaut, aber vorgesehen, fehlerbereinigtes BASIC, verbesserter VDC, neuere DOS-Version. Üblicherweise wird diese Version als C128DCR bezeichnet, wobei das CR für „Cost Reduced“ steht. Anders als beim C128D im Plastikgehäuse sind nun C128 und Laufwerkselektronik auf einer Platine vereint, und es wurden auch einige Bauteile in der Laufwerkselektronik getilgt, so dass z. B. 1571-Parallelkabel hier nicht mehr verwendbar sind.
Neben der Standardversion produzierte Commodore auch in verschiedenen Ländern (u. a. Deutschland, Italien, Frankreich) angepasste Modelle, bei denen mittels der „Caps“- bzw. „Ascii/DIN“-Taste zwischen internationalem und lokalem Modus umgeschaltet werden kann. Im lokalen Modus steht ein Zeichensatz mit Umlauten und anderen Sonderzeichen der jeweiligen Sprache sowie eine angepasste Tastaturbelegung zur Verfügung. Dafür entfällt im Vergleich zm US-Modell der leicht verbesserte Zeichensatz für den C128-Modus, stattdessen wird dort in den internationalen Modellen – solange der lokale Modus nicht aktiviert ist – der unveränderte C64-Zeichensatz benutzt.