Die Amstrad/Schneider Modelle

Schneider CPC Modelle von oben nach unten: CPC 464, CPC 664, CPC 6128

  • 1984: CPC 464, Zilog Z80 4 MHz, 64 KiB RAM, integriertes Kassettenlaufwerk
  • 1985: CPC 664, Zilog Z80 4 MHz, 64 KiB RAM, integriertes 3″ Diskettenlaufwerk
  • 1985: CPC 6128, Zilog Z80 4 MHz, 128 KiB RAM, integriertes 3″ Diskettenlaufwerk
  • 1990: CPC 464+, Zilog Z80 4 MHz, 64 KiB RAM, integriertes Kassettenlaufwerk
  • 1990: CPC 6128+, Zilog Z80 4 MHz, 64 KiB RAM, integriertes 3″ Diskettenlaufwerk

Der erste Amstrad CPC 464 war 1984 durchaus erfolgreich und wurde von den Schneider Rundfunkwerken in Lizenz gefertigt und vertrieben. Der 464 wurde von der Fachpresse als direkter Konkurrent des Commodore64 eingeordnet. Aber trotz technischer Überlegenheit reichte er nie an die Verkaufszahlen des Commodore 64 heran. Was hatten die CPC’s, was die Commodore 64 nicht hatten? Ganz grob wären u.a. folgende Features zu nennen:

  • die leistungsfähigere CPU (CPC: Z80 mit 4 Mhz, C64: 6510 mit 1 Mhz)
  • die Möglichkeit, optional mit CP/M zu arbeiten
  • Locomotive Basic als integrierte Programmiersprache mit Grafik- und Soundunterstützung
  • den für Büroanwendungen wichtigen 80 Zeichen-Modus
  • Parallelschnittstelle nach Centronics-Norm für Drucker
  • die bei den Modellen 664/6128 eingebauten 3″ Diskettenlaufwerke, die Daten gefühlt fünfmal so schnell laden wie ein C64 mit VC-1541
  • das Betriebssystem AMSDOS, das einen ordentlichen Befehlssatz zum Umgang mit Disketten bereitstellt

Das alles änderte nichts an der Marktführerschaft des C64. Der Commodore war eben ein paar (wichtige) Jahre früher da (1982) und besaß schon einen soliden Benutzerstamm, als der CPC erschien (1984). Zudem waren viele Hardware- und Softwarehersteller auf das Verbesserungspotential des C64 gestoßen, ein riesiger Zubehörmarkt hatte sich etabliert. Diesbezüglich waren die bereits recht kompletten CPC 464 bzw. der nachfolgende CPC 6128 fast langweilige Geräte. Eigentlich brachte Commodore erst mit dem Commodore 128D/DCR im Jahr 1985 ein Modell, das mit der CPC-Reihe technisch und ausstattungsmäßig auf dem gleichen Stand war.

Das Problem mit dem Datentransfer

Sich einen alten Homecomputer wie einen Commodore 64/128, einen Amstrad CPC, einen Amiga, einen Sinclair oder Atari ST über ein Auktionshaus zu besorgen ist meist das kleinere Problem. Aber wie es mit alten Computer halt so ist, man braucht geeignete Software, um mit diesem Hobby glücklich zu werden. Es ist schon ein Segen, das im Netz viele alte Programme für fast alle Computermodelle gesammelt und archiviert werden. Wobei – das muß angemerkt werden – die rechtliche Situation bei ehemals kommerziell vertriebenen Produkten nicht immer ganz klar ist. Die Lizenzbestimmungen in den verschiedenen Ländern weltweit sind einfach zu unterschiedlich. Wenn man solche Software aus dem Netzt lädt und ausschließlich im privaten Bereich verwendet, sollte eigentlich nicht viel passieren. Aber ein Restrisiko bleibt, das muß jedem klar sein. Wie auch immer, im VCLab verwenden wir nur Programme, von denen wir auch eine originale Ausgabe haben.

In der IBM-Welt, egal ob CP/M, DOS oder Windows benutzt wird, ist der Datentransfer aufgrund der kompatiblen Floppyformate meist kein Problem. Man braucht nur einen alten PC, der die entsprechenden Laufwerke eingebaut hat, um die Images wieder herzustellen. Zudem gibt es massig Software, die über Standard-Schnittstellen (Interlnk/Intersvr, Norton Commander, Laplink…) oder Netzwerk (mTCP) einen Datentransfer ermöglichen. Beim Atari ST und dem Amiga verarbeiten die 3.5″ Diskettenlaufwerke optional auch FAT12 und somit das Diskettenformat des PC, zumindest bis DoubleDensity. Kleinere Datenmengen lassen sich so übertragen. Beim Amiga ist es so, das einige Modelle eine PCMCIA Schnittstelle besitzen, die die Verwendung von CF-Karten ermöglicht und FAT32 kompatibel gemacht werden kann. Auf diese Weise können hier Diskettenimages transferiert werden. Für alle weiteren Commodore mit dem GCR-Format (CBM-Serie, C64/C128) gibt es viele Möglichkeiten mit Steckmodulen (Cartridges), die Speicherkarten verwenden und Diskettenlaufwerke emulieren. Zudem gibt es Anschlussmöglichkeiten für Commodore-Diskettenlaufwerke direkt an den PC (X1541). Wir benutzen hier OpenCBM/ZoomFloppy zusammen mit einer 1571. Bei den Apple II Modellen gibt es die Möglichkeit mit dem Programm ADTPro über die serielle Schnittstelle Dateien vom PC zu übertragen. Und bei all dem habe ich die vielen Emulatoren noch gar nicht erwähnt, die unter DOS/Windows/Linux verfügbar sind und die oft die Möglichkeit haben, reale Disketten mit spezifischen Formaten zu lesen und zu schreiben.

Einen CPC für den Datentransfer präparieren

Ich stehe vor dem aktuellen und zukünftigen Problem, reale 3″ Disketten aus Diskettenimages erzeugen zu müssen. Für andere CPC 464, 664 und 128 (und Joyce), zur Ausstattung mit Software in unserer Ausstellung. Da soll zwar möglichst originale Hardware stehen, aber natürlich Kopien und keine wertvolle originale Software verwendet werden. Wie oben bereits erwähnt brauchen wir daher eine Möglichkeit des Datentransfers auch für die Amstrad/Schneider CPC-Modelle. Grundlage des Ganzen soll ein CPC 6128 sein.

Imagedateien für den CPC im dsk Format sind im Netz zahlreich zu finden, aber wie schreibt man die auf eine 3″ Diskette zurück? Meine Recherchen ergaben verschiedene Möglichkeiten, z.B. ein entsprechend modifiziertes 3″ CPC-Laufwerk an den PC anzuschließen oder ein 3,5″ Standard-Laufwerk in den CPC einzubauen und/oder das Tool CPCDiskXP zu verwenden. Ich habe mich dafür entschieden, den CPC mit einem  Gotek HxC-Laufwerk mit USB-Schnittstelle (und OLED-Display) auszustatten. Die dsk-Images können unter Windows mit dem HxC-Floppy-Emulator ins hfe-Format transferiert und dann auf den USB-Stick des Gotek kopiert werden. Die so gespeicherten Images behandelt das HxC wie reale Disketten. Am 6128 (und auch beim 664) ist das externe FD-1 Laufwerk direkt anschließbar, das DDI-1-Interface wird nur beim CPC 464  benötigt. Auf ein solches externes Laufwerk läßt sich ein auf dem HxC gespeichertes Image auf eine 3″ Diskette kopieren, die dann in einem Standard-Modell verwendbar ist. Eigentlich einfach, oder?

Das Gotek-Laufwerk habe ich gekauft mit einem speziellen und perfekt passenden Einbaurahmen für den CPC 664/6128.

Wie soll der Rechner ausgestattet sein:

  • Gotek HxC statt des 3″ Laufwerks
  • Parados 1.2 und AMSDOS (dazu weiter unten mehr)
  • Resettaster
  • Externes Laufwerk FD-1

Der für die Bastelei vorgesehene sollte CPC 6128 sollte defekt sein. Warum? Weil für einen solchen Umbau kein originales und funktionsfähiges Gerät in Betracht kommt. Defekte Rechner in unserem Inventar haben einen roten Punkt aufgeklebt. Gleich beim ersten CPC 6128 war der Fehler aber schnell gefunden. Ein defekter RAM Chip, der aufgrund eines Kurzschlusses ziemlich heiß wurde. Da der Rechner bei uns in der Ausstellung zukünftig als Arbeitsrechner eingesetzt werden soll, habe ich gleich alle RAM IC’s gesockelt. Das erleichtert zukünftige Reparaturen. Ein Austausch der Kondensatoren ist bei diesen Rechnermodellen i.d.R. nicht nötig. Aber bei den Monitoren – die ja die Netzspannung für die CPC’s zur Verfügung stellen – sollte man schon ein Auge auf sie haben.

Parados 1.2

Wofür Parados? Es gibt zahlreiche Utilities und alternative OS, auch als ROM Cartridges (siehe CPCWiki). Ich bin kein CPC Spezialist, daher habe ich mir einige davon angesehen. Parados empfinde ich persönlich als das kompletteste alternative OS und für meine Zwecke als das Geeigneste. Es unterstützt 22 Diskettenformate, auch ein 3.5″ Standard-Diskettenlaufwerk mit 720KiB könnte verwendet werden. Auch damit wäre ein leichter Datenaustausch mit dem PC möglich. Aber all das ist in meinem Fall nicht so wichtig. Es wird nur das einseitige Standard-CPC Format (180KiB) benötigt. Bei Parados geht es mir besonders um die integrierten Utilities in Form von Diskettenfunktionen. Diskcopy, Filecopy, Löschen und Umbenennen von Dateien und vieles weitere ist in Parados integriert (siehe Manual). Und weil diese Funktionen im ROM gespeichert sind stehen sie jederzeit mit dem Befehl |DRIVE zur Verfügung.


Standard-Tools wie discit3 müßten immer erst geladen werden. Einziger Wermutstropfen ist, daß das OS nicht 100%ig kompatibel zu einigen Anwendungen und vielen Spielen ist. Daher brauchen wir zum Testen der erzeugten Disketten auch AMSDOS. Idealerweise sollten also zwei OS verfügbar sein, das originale AMSDOS und Parados.

Das Eprom und der spezielle Sockel

Ein 27C256 Eprom hat eine Kapazität von 32KiB und kann so beide 16KiB großen Betriebssysteme aufnehmen. Dazu muß natürlich zuerst der IC (40015) ausgelötet und ein 28-poliger Sockel für das Eprom eingelötet werden. Eine kleine Schaltung im Sockel ermöglicht das Umschalten der Speicherbank über A14 und das Booten des einen oder des anderen OS. Pin 27 muß direkt unter dem Sockelrahmen abgeschnitten werden, er darf keinen Kontakt mehr zum Mainboard haben. Ein 10K-Widerstand zwischen Pin 27 und Pin 1 stellt er sicher, dass A14 des Eprom’s auf 5 V gehalten wird.

Zwei Leitungen müssen an Pin 14 und Pin 27 angelötet und zu einem einfachen Ein/Aus-Schalter (Taster) geführt werden. Ist der Schalter geöffnet wird A14 auf GND gesetzt und der Bereich von $0000-$3FFF wird aktiviert, bei geschlossenem Schalter der Bereich von $4000-$7FFF.

Achtet darauf, die Lötstellen so nah wie möglich am Sockelrahmen zu platzieren. Im Übrigen habe ich zwei Sockel verwendet. Einer unbearbeiteter kommt direkt auf das Mainboard, der modifizierte wird dann wiederum in diesen Sockel gesetzt. Der Platz für das Mehr an Höhe durch den zweiten Sockel ist beim CPC 6128 vorhanden, auch mit Abdeckblech. Und wenn was schiefgeht, muß man nicht wieder am Mainboard rumlöten.

Das Ganze schaut dann ungefähr so aus:

Wir brauchen jetzt also Platz für einen Schalter und einen Taster. Ich versuche immer zu vermeiden, in ein originales Gehäuse ein Loch zu bohren. Was bietet sich also mehr an, als die Frontblende des Goteks zu benutzen.

Als Eprom verwende ich ein 27C256. Wo man die Images für AMSDOS und Parados herbekommt? Hier ein paar Links:

AMSDOS original ROM

Parados 1.2

An welche Adresse im Eprom die beiden 16KiB Images gebrannt werden, habe ich oben bereits beschrieben.

Reset einbauen

Das Auslösen eines Resets/Warmstarts erfolgt beim CPC 6128 über den Baustein IC110 (74LS132) auf der Platine. An die Pins 2 und 7 wird jeweils eine Litzen angelötet, die mit einem Taster verbunden werden. Alternativ gibt es auch noch die Möglichkeit, einen Reset am Expansion-Port auszulösen. Mehr dazu findet ihr im CPCWiki.

Nach dem Einbau des Mainboard’s in das Gehäuse schaut das Ganze jedenfalls so aus, noch ohne Abschirmblech.

Ich bin zufrieden, der Rechner läuft und es kann durch den Eprom-Schalter und anschließendem Reset zwischen AMSDOS und Parados hin- und hergeschaltet werden. Das Gotek HxC funktioniert reibungslos, der HxC Floppy Emulator Manager 3.5 ist auf dem Stick installiert. Mit diesem Tool kann man durch Verzeichnisse des USB-Sticks manövrieren und bis zu 15 Images sogenannten Slots zuweisen, die dann mit den Steuerungstasten des Gotek direkt anwählbar sind.

 

Ergänzung vom 17.11.2022: das Display des Gotek ist schwer abzulesen. Man versucht immer, den Rechner hochzuheben, um die Anzeige besser zu sehen. Nachdem ich eine OSD-Anzeige (On Screen Display) der Ausgaben des Gotek nicht hingekriegt habe, mußte eine andere Lösung her. Gefunden habe ich einen Einbaurahmen eines italienischen Herstellers, bei dem die Displayhalterung der Frontblende nach oben geneigt ist. Das lässt sich so tatsächlich sehr viel besser ablesen. Allerdings ist der 3D-Druck nicht sehr exakt, die Frontfläche könnte planer sein und bei den Halterungen wurde auch gespart. Der Preis ist mit unter 10€ aber auch sehr niedrig. Mit ein bißchen Bastelei kriegt man das Teil schon fest: Form follows function