SuperCPU

Aus C64-Wiki
Zur Navigation springenZur Suche springen
SuperCPU
Bild SuperCPU
Typ Steckmodul
Hersteller Creative Micro Designs
Neupreis $199 (USA)[1], 375 DM (DE)[2]
Erscheinungsjahr 1996
Produktionsende 2001
Prozessor 65816 mit 20 MHz
Speicher 128 KBytes SRAM on board, aufrüstbar auf bis zu 16 MByte mit SuperRAM-Card
Sonstiges Anschluss an Expansionsport


Die SuperCPU ist eine Turbokarte für den C64. Sie wird am Expansionsport angeschlossen und enthält einen mit 20 MHz getakteten 16-Bit-Prozessor 65816, der einen 6502 Emulationsmodus besitzt und kompatibel zum 6510 ist. Man kann die SuperCPU jederzeit per Schalter auf 1 MHz herunter takten, falls ein Programm mit der höheren Taktfrequenz nicht zurecht kommt. Zusätzlich kann man sie auch vollständig ausschalten, damit Programme, die illegale Opcodes nutzen - die der 65816 nicht unterstützt - laufen können, ohne die SuperCPU auszustecken. Beim Betrieb einer SuperCPU am C64 benötigt man ein stärkeres Netzteil, da das Standardnetzteil von Commodore nicht so viel Strom liefern kann wie die SuperCPU benötigt.

Hersteller[Bearbeiten | Quelltext bearbeiten]

Die SuperCPU wurde von der Firma Creative Micro Designs (CMD) entwickelt, die vorher bereits bekannt geworden war durch hochqualitative Erweiterungen wie JiffyDOS, das FD-2000 u.v.m.

RAM-Ausstattung[Bearbeiten | Quelltext bearbeiten]

Die SuperCPU 64 hat 128 KBytes (SuperCPU 128: 256 KBytes) SRAM eingebaut, die dem 65816 als Ersatz des langsamen internen RAMs des C64 und zur Entkopplung von Schreibzugriffen auf das C64-RAM dienen, aus dem der VIC-II weiterhin seine Grafikdaten liest.

Weiterhin ist zum einen ein "durchgeschleifter" Expansionsport vorhanden, womit man eine Commodore REU an die SuperCPU anschließen kann. Zum anderen ist in der SuperCPU ein Slot vorhanden, auf den die optionale SuperRAM-Card gesteckt werden kann. Diese ermöglicht es, die damals im PC-Bereich recht gängigen SIMM-RAM-Bausteine einzusetzen (1 MByte, 4 MByte, 8 MByte, 16 MByte). Dieses RAM kann vom 65816-Prozessor direkt, linear adressiert werden, womit seine Nutzung sehr viel größere Möglichkeiten bietet als z.B. bei einer Commodore REU.

Schnelllader[Bearbeiten | Quelltext bearbeiten]

Zwar besitzt die SuperCPU einen "durchgeschleiften" Expansionsport, die Komplexität einer Turbokarte macht es jedoch technisch sehr schwer, gleichzeitig kompatibel mit Fastload-Cartridges zu sein. Die SuperCPU kommt deshalb inklusive eingebautem JiffyDOS. Allerdings muss das passende ROM auch im Diskettenlaufwerk vorhanden sein.

Die SuperCPU ist außerdem kompatibel mit der CMD RAMLink, was aufgrund der Fähigkeiten jener Erweiterung nicht ganz unkompliziert gewesen sein dürfte. Damit ließ sich dann auch die CMD HD parallel betreiben und enorme Ladegeschwindigkeiten erzielen. Primär dachte man bei CMD dabei wahrscheinlich an GEOS-Nutzer.

Versionen[Bearbeiten | Quelltext bearbeiten]

Etwa ein Jahr nach der ersten SuperCPU erschien die SuperCPU128 für den C128 sowie für den C64 die SuperCPU64 V2 mit einigen kleineren Verbesserungen.

Aufgrund der komplexeren Bus-Architektur des C128 (die MMU kann das High-Byte der Adresse durch einen anderen Wert ersetzen) und einer Änderung der VDC-Schreibleitung beim C128DCR schien es erst unmöglich, dass es eine SuperCPU für den C128-Modus geben könnte. CMD löste diese Probleme durch eine Zwischenplatine, die im MMU-Sockel des C128 installiert und mit anderen Systemkomponenten verbunden werden musste.

Metal Dust[Bearbeiten | Quelltext bearbeiten]

Nachdem sich die Flash 8 aufgrund diverser Hardwareprobleme nicht durchsetzen konnte, wurde die Entwicklung des exklusiven Flash8-Spiels Metal Dust seitens des Programmierers Stefan Gutsch (Protovision) gestoppt. Dank der SuperCPU konnte das Projekt in Kooperation mit dem Spieleprogrammierer Chester Kollschen neu gestartet werden. Metal Dust stellt das einzige Spiel dar, das ausschließlich für den C64 mit SuperCPU entwickelt wurde. Es läuft nicht auf einem Standard-C64.

SuperCPU Ramdisk-System[Bearbeiten | Quelltext bearbeiten]

Die Szene-Gruppe DMAgic erweiterte einige C64-Spiele mit einem Ramdisk-System für die SuperRAM-Card. Insbesondere Oil Imperium profitierte immens davon. Aber auch Last Ninja 3 spielte sich angenehmer, da nach einem Game-Over der erste Level ohne Ladeverzögerung wieder startete. Zusätzlich beschleunigt speziell bei diesem Spiel der 20-MHz-Modus den Bildaufbau enorm.

Akzeptanz[Bearbeiten | Quelltext bearbeiten]

Die SuperCPU erschien in einer Zeit (1996), als die Zahl der aktiven C64-Nutzer bereits rapide abgenommen hatte. Wer noch einen besaß, investierte daneben in moderne Hardware (Spielkonsole, PC) anstatt in Erweiterungen für den C64. Eine Nostalgie- oder Retro-Bewegung existierte noch nicht, und es schien zeitweise, als sei auf dem Standard-C64 bereits alles, was technisch möglich war, gemacht worden. Eine kleine Schar C64-Fans glaubte, mit einer Erweiterung wie der SuperCPU könnte auch auf dem C64 in neue Dimensionen vorgestoßen werden, sowohl bei Spielen, als auch bei Demos und Anwendungssoftware. Umschaltmöglichkeit zwischen 8 und 16 Bit, bis zu 16 MByte RAM, dazu Laufwerke wie das CMD FD-2000: das hatte schon seinen Reiz. Für andere war der C64 mit solchen Erweiterungen aber "nicht mehr der C64". Das in der Szene für klassische Automobile bekannte Phänomen des "es soll möglichst original sein" hielt auch auf dem C64 Einzug.

Zwar war die SuperCPU die bis dato ausgereifteste Beschleunigungslösung für den C64, doch selbst wer Interesse hatte, schreckte spätestens beim Preis zurück, zumal die SuperRAM-Card extra bezogen werden musste. Unklar war außerdem vielen, woher das benötigte stärkere Netzteil kommen sollte. Ferner war zu dieser Zeit ältere C64-Hardware gebraucht inzwischen fast geschenkt zu haben, weshalb die SuperCPU erst recht als teuer empfunden wurde. Ließ man die Entwicklungskosten beiseite, die CMD auf eine relativ geringe Stückzahl umlegen musste, sondern betrachtete den Preis lediglich aus der Sicht des Konsumenten, kamen viele zu dem Ergebnis, der Kauf einer SuperCPU würde sich nicht "lohnen".

Aufgrund relativ geringer Verbreitung hielt sich auch das Software-Angebot für die SuperCPU in Grenzen. Ohne attraktive Software waren aber nicht viele bereit, den Preis für die SuperCPU zu zahlen - ein Teufelskreis. In einem Versuch, diesen zu durchbrechen, brachte die Zeitschrift GO64! einen umfangreichen SuperCPU-Programmierkurs heraus.

Entwicklungswerkzeuge[Bearbeiten | Quelltext bearbeiten]

Während z.B. eine Commodore REU lediglich eine Handvoll zusätzlicher Register mitbrachte, die mit herkömmlichen Maschinensprache-Befehlen (LDA/STA) und sogar von BASIC aus programmiert werden konnten, bestand bei der SuperCPU (ebenso wie schon bei der Flash 8) eine große Herausforderung im 16-Bit-Prozessor 65816. Denn obwohl die Beschleunigung des Prozessors natürlich auch für Standard-6510-Programme funktioniert, so mussten doch, um das zusätzliche RAM, die neuen Maschinensprache-Befehle und die 16-Bit-Register zu nutzen, neue bzw. erweiterte Entwicklungswerkzeuge her.

Von CMD kam jedoch keinerlei Assembler, mit dem man die Features des 65816 hätte ansprechen können. Erst Protovision schloss diese Lücke: Programmierer Manuel Nickschas hatte, angelehnt an den beliebten Turbo Ass, den Virtual Assembler geschaffen, der nativ auf der SuperCPU lief. Dieser konnte nicht nur alle 65816-Opcodes, sondern nutzte auch die Geschwindigkeit der Turbokarte, um im Hires-Modus des C64 eine flüssige 80 Zeichen Darstellung zu realisieren.

Als Nachteil muss vermerkt werden, dass die zum Debuggen oft nützlichen Freezer-Cartridges nicht mit der Turbokarte verwendet werden konnten.

Nachbauten[Bearbeiten | Quelltext bearbeiten]

Benutzer toms01 aus dem Forum64 hat 2021/2022 eine 1:1-Replika der SuperCPU gebaut.[3] Im Zuge des Reverse Engineerings wurden die CPLDs und GALs per FIB ausgelesen[4] und die vierlagige Platine geröntgt.[5] Es konnten mehrere funktionsfähige "neue" SuperCPUs hergestellt werden[6]; einer größeren Serie steht allerdings unter anderem die schlechte Verfügbarkeit diverser Bauteile entgegen.[7]

Weblinks[Bearbeiten | Quelltext bearbeiten]

WP-W11.png Wikipedia: SuperCPU


Quellen