Für die Datenübertragung zwischen PC und C64 ist der SD2IEC wahrscheinlich die einfachste Lösung. Es gibt jedoch einige Alternativen, die jeweils ihre Vor- und Nachteile haben. Eine davon ist 64HDD. Dabei handelt es sich um ein etwas älteres Projekt, mit dem sich die Festplatte eines PC als Massenspeicher für den C64 einbinden lässt.
Bevor es losgeht, noch ein paar Hinweise (Wichtig!):
- Stecke das Verbindungskabel zwischen C64 und PC niemals ein oder aus, während eines der Geräte eingeschaltet ist.
- Achte darauf, beim Erstellen des Kabels keine Kurzschlüsse zu verursachen, da dies den PC oder den C64 beschädigen kann.
- Erstelle ein Backup der Daten auf den PC, bevor du mit diesem Projekt beginnst.
- Ich übernehme keine Verantwortung für Schäden, die direkt oder indirekt durch diese Anleitung entstehen.
64HDD Varianten
Es gibt eine kostenlose Version und eine kostenpflichtige Professional-Version mit erweiterten Funktionen. Für unser Vorhaben reicht die kostenlose Version vollkommen aus. Ein wesentlicher Nachteil der kostenlosen Version ist jedoch, dass die Daten des 64HDD-Laufwerkes nicht auf eine physische Diskette kopiert werden können.
Der PC
Die Leistung des Rechners ist für dieses Projekt spielt keine Rolle. Tatsächlich ist ein älterer 386/486er-Rechner aufgrund seiner konstanten Taktfrequenz besser geeignet als ein neuerer. Neuere Rechner passen die Prozessorfrequenz dynamisch an, was zu Kompatibilitätsproblemen führen kann. Voraussetzung ist jedoch eine parallele Schnittstelle, die in den meisten älteren Rechnern vorhanden ist. In dieser Anleitung verwende ich einen Toshiba Satellite 4600 Pro Laptop mit einem Pentium III 1 GHz Prozessor und 512 MB RAM, der für diese Aufgabe eigentlich überdimensioniert ist.
Das X(E)1541-Kabel
Zur Verbindung eines C64 mit einem PC wird ein X1541- oder XE1541-Kabel benötigt. Dieses kann mit etwas Lötarbeit selbst hergestellt werden. Die Verdrahtung des Kabels erfolgt von der Lötseite der Stecker aus.
Folgende Komponenten werden benötigt:
- Schottky Diode x 4
- Schrumpfschlauch 3,2mm (für die Isolation der Dioden)
- D-SUB-Stecker, 25-polig mit Lötkelch
- D-SUB-Kappe
- DIN-Stecker, 6-polig
- Kabel, mindestens 5polig
Je kürzer das Kabel, desto weniger störungsanfällig ist es. Eine Länge von 1 bis 2 Metern sollte problemlos funktionieren. Wer das Kabel nicht selbst zusammenlöten möchte, kann ein fertiges kaufen, zum Beispiel hier: retro-kabel.de. Besitzer eines XM1541-Kabels können dieses mit minimalem Aufwand in ein XE-Kabel umwandeln. Dafür müssen lediglich die Kontakte 5 und 6 am 6-poligen DIN-Stecker vertauscht werden.
Die Software
Das Programm 64HDD (Download) ist kostenlos, jedoch ist eine Registrierung erforderlich, um es nutzen zu können. Das Registrierungsformular finden wir hier: 64hdd.com.
64HDD benötigt eine DOS-Umgebung und muss auf einem FAT formatierten Datenträger gespeichert sein. Falls möglich, sollte DOS auf dem Rechner installiert werden. Alternativ kann 64HDD auf einer FAT formatierten Festplatte abgelegt und von einer Windows Boot-Diskette gestartet werden. So müssen wir kein eventuell vorhandenes Betriebssystem löschen. Ein Diskettenlaufwerk ist dafür natürlich erforderlich. Neben 64HDD kopieren wir einige C64 Disketten-Images auf die Festplatte. Diese können in einem beliebigen Ordner abgelegt werden. In diesem Beispiel habe ich den Ordner „ROMS“ verwendet.
Das Bios
Die auf dem Mainboard integrierte parallele Schnittstelle ist in der Regel im BIOS konfigurierbar. Um potenzielle Probleme zu vermeiden, sollten wir jedoch sicherstellen, dass die LPT-Schnittstelle aktiviert und korrekt konfiguriert ist. Die BIOS-Einstellungen werden beim Start des Computers unmittelbar nach dem Einschalten mit einer bestimmten Taste aufgerufen. Diese Taste variiert je nach Mainboard und BIOS. Häufig handelt es sich um die Entfernen-Taste, in anderen Fällen um eine Funktionstaste. Weitere Informationen zum Aufrufen des BIOS finden wir unter praxistipps.chip.de.
Haben wir das BIOS gefunden, suchen wir die Parallel-Port-Einstellungen. Die Bezeichnung kann je nach BIOS-Hersteller variieren. Der Port muss aktiviert und auf SPP, Normal, Standard oder Bi-Direktional eingestellt sein. Meine Tests haben gezeigt, dass ECP nicht funktioniert.
Die erste Verbindung
Um die korrekte Funktion von Software und Hardware zu überprüfen, müssen wir zunächst eine Verbindung zwischen den beiden Computern herstellen. Dafür schalten wir beide Rechner aus und verbinden sie mit dem X(E)1541-Kabel. Anschließend schalten wir beide Rechner wieder ein. Die Konfiguration von 64HDD erfolgt über Parameter.
Am PC: Unter DOS wechseln wir in das 64HDD-Verzeichnis und geben dort den folgenden Befehl ein.
64hdd -[Registrierungscode] -8 -xe -ls
Den Registrierungscode, den wir bei der Registrierung erhalten haben, müssen wir hier (ohne eckige Klammern) eingeben. Der Parameter „-xe“ ist nur bei Verwendung eines XE1541-Kabels nötig. 64HDD sollte nun starten und die zugewiesene Laufwerksnummer sowie das Verzeichnis anzeigen.
Am C64: Wir laden nun das Verzeichnis auf dem C64, als wäre es eine gewöhnliche Diskette.
LOAD"$",8
Geben wir nun den Befehl LIST ein, um den Inhalt anzuzeigen. Wir sollten den Inhalt des Laufwerks „C:“ des DOS-Rechners sehen.
Wenn die Auflistung des Verzeichnisses erfolgreich verlaufen ist, können wir uns nun den 64HDD-Parametern und C64-Befehlen widmen.
Die Parameter
64HDD bietet eine Vielzahl von Parametern. Diese Anleitung konzentriert sich auf die wichtigsten, von denen einige nicht nur für die Ausführung von 64HDD erforderlich sind, sondern auch Probleme beheben, die bei schnellen Rechnern auftreten können.
Parameter: -8 bis -15
Diese Funktion stellt dem C64 ein Laufwerk mit der angegebenen Geräte-Nummer bereit, typischerweise „-8“. Dadurch wird das Stammverzeichnis des Laufwerkes C: als Speicherplatz für den C64 eingebunden.
Parameter: +8 bis +15 (Verzeichnis)
Funktion: Stellt den C64 ein Laufwerk mit der entsprechenden Geräte-Nummer bereit. Üblicherweise "+8". Das angegebene Verzeichnis wird als Speicherplatz für den C64 eingebunden. Dabei sollte es sich um das Verzeichnis handeln, welches die C64-Programme enthält..
Beispiel: +8 C:\roms
Parameter: -faster
Funktion: Dieser Parameter beschleunigt die Datenübertragung, sollte aber nur mit 386/486 CPUs verwendet werden, die mit mehr als 40 MHz getaktet sind. Bei anderen CPUs wird er nicht empfohlen.
Parameter: -fastest
Funktion: Dasselbe wie -faster, ist aber für 386/486 CPUs geeignet mit einem Takt unterhalb von 40MHz.
Parameter: -nocredits
Funktion: Überspringt die Darstellung der Credits und sorgt somit für einen geringfügig schnelleren Start von 64HDD.
Parameter: -noreset
Funktion: Dieser Parameter verhindert, dass 64HDD beim Ausschalten oder Neustart des C64 beendet wird.
Parameter: +lpt (Nummer)
Funktion: Bei mehreren parallelen Schnittstellen im Rechner muss die zu verwendende Schnittstelle angegeben werden. Die Standardeinstellung ist 1.
Parameter -xe
Funktion: Dieser Parameter muss angegeben werden, falls ein XE1541-Kabel verwendet wird. Bei der Verwendung eines X1541-Kabels wird kein Parameter benötigt.
Parameter: -ls
Funktion: Dieser Parameter ermöglicht es, den Inhalt des Ordners am C64 nach Eingabe von LOAD“$…“,8 oder LIST sofort anzuzeigen. Ohne diesen Parameter wird das Inhaltsverzeichnis erst bei wiederholter Eingabe des Befehls angezeigt.
Parameter: +p (1-9999)
Funktion: Bei Problemen mit Rechnern mit variabler Taktfrequenz kann dieser Parameter hilfreich sein. Hier sollte die verwendete Taktfrequenz angegeben oder alternativ die Verwendung anderer Frequenzen getestet werden.
Disketten einbinden und Programme laden
Mit 64HDD können wir auf das Dateisystem des DOS-Systems zugreifen und Disketten-Images einbinden oder Programme auf dem C64 laden. Die wichtigsten Befehle dafür sind hier aufgelistet.
Befehl: LOAD"$",8
Funktion: Lädt das Inhaltsverzeichnis des Ordners, in dem man sich gerade befindet. Mit LIST wird das Inhaltsverzeichnis angezeigt.
Befehl: LOAD"$[Disketten-Image/Verzeichnis]",8
Funktion: Wechselt in das DOS-Verzeichnis oder bindet ein Disketten-Image (z.B. D64) ein.
Beispiel: LOAD"$games.d64",8
Befehl: LOAD"[Programmname.prg]",8,1
Funktion: Lädt das angegebene Programm
Beispiel: LOAD"game.prg",8,1
Befehl: LOAD"$..",8
Funktion: Steigt eine DOS-Ebene nach oben
Befehl: LOAD"$[LW Buchstabe]:/",8
Funktion: Wechselt auf ein anderes PC-Laufwerk.
Beispiel: LOAD"$d:/",8
Mit JiffyDOS auf dem C64 wird die Bedienung deutlich vereinfacht. Die Funktionstasten sind mit praktischen Befehlen belegt, wodurch weniger getippt werden muss. Ein Verzeichniswechsel beispielsweise erfolgt mit dem Befehl @CD:[Verzeichnis]. Es gibt zahlreiche weitere Befehle, die für für DOS und C64 entwickelt wurden. Eine umfassende englische Dokumentation mit allen Befehlen finden wir hier: www.64hdd.com.
Es folgt ein Beispiel, in dem wir den Inhalt des Datenträgers auflisten und anschließend ein Disketten-Image inbinden und das darauf enthaltene Spiel starten.
64HDD -Registrieungscode] -8 -xe -ls -noreset
Am C64: Wir laden das Verzeichnis mit diesen Befehlen.
LOAD"$",8
LIST
Der Inhalt des Laufwerkes C: sollte zu sehen sein.
Wir wechseln nun in das Verzeichnis „ROMS“, das wir zu Beginn dieser Anleitung erstellt haben (oder in einen beliebigen anderen Ordner, der die Diskettenimages enthält).
LOAD"$ROMS",8
LIST
Wir binden eine beliebige Diskette ein, in meinem Fall RTYPE.D64, und führen die erste Datei darauf aus.
LOAD"$RTYPE.D64",8
LOAD"*",8,1
RUN
64HDD automatisch starten
Egal ob der 64HDD von DOS oder der Bootdiskette gestartet wird, der Befehl 64HDD muss jedes Mal mit den entsprechenden Parametern angegeben werden. Alternativ können wir ihn auch in die Autoexec.bat eintragen, die bei jedem Bootvorgang automatisch ausgeführt wird. Diese Datei befindet sich im Stammverzeichnis von DOS (oder der Bootdiskette). Um den Befehl 64HDD einzutragen, geben wir „EDIT AUTOEXEC.BAT“ im Stammverzeichnis ein und fügen den Befehl 64HDD samt Pfad und Parametern in der letzten Zeile hinzu. In meinem Fall sieht das so aus:
C:\64HDD\64HDD -[Registrierungscode] +8 C:\ROMS -xe -ls -noreset -nocredits
Speicher nun die Änderungen. Beim nächsten Systemstart sollte 64HDD automatisch gestartet werden.














