Titelbild Game Hero
Diese Seite verwendet eigene Cookies und Cookies von Dritten damit wir die bestmögliche Bedienbarkeit und Funktionalität bieten können. Wenn Sie auf diesen Seiten surfen, stimmen Sie der Verwendung von Cookies zu. Mehr erfahren OK
share

Datentransfer - C64-Kasetten an PC übertragen

Was wird benötigt?
  • C64
  • PC mit Diskettenlaufwerk
  • X(E)1541-Kabel
  • Datasette
  • Windows Boot-Diskette
  • mtap und tapeserv
  • CWSDPMI
  • 64HDD oder ein Flashkarten-Lesegerät für C64 (z.B. 1541U)
Close
LoadingBild wird geladen...
Picture

Die alten C64-Spiele auf Kassette funktionieren erstaunlicherweise auch nach all diesen Jahren, zumindest meistens. Es gibt aber zwei gute Gründe eine Sicherheitskopie dieser Spiele machen zu wollen. Einerseits weiß man nie wie lange die Informationen auf der Kassette noch lesbar sein werden und andererseits möchte man vielleicht die alten Spiele oder Programme auch auf dem PC nutzen. Deshalb beschreibe ich hier, wie man die Daten von der Kassette auf die Festplatte des PC's bekommt.

Es gibt zwei Möglichkeiten:
Man verbindet die Datasette direkt an den parallelen Port des PCs mittels Adapter, oder indirekt über den C64. Ich habe mich für die indirekte Methode entschieden, da diese nur ein X(E)1541 Kabel benötigt, das ich bereits besitze.

Das X(E)1541-Kabel: Wie schon oben erläutert, ist ein spezielles Kabel notwendig. Und zwar muss es ein XE1541 oder X1541 sein, neuere Kabel werden von 64HDD nicht unterstützt. Im folgenden Schritt wird beschrieben wie man sich selber ein XE1541 bastelt. Alternativ kann man sich fertiges Kabel, z.B. bei Ebay, bestellen.

Alles was wir brauchen:
1x 25-poligen männlichen SUB-D Stecker
1x 6-poligen DIN Stecker 4x Schottky Dioden, die BAT85 sollten passen
1x 5-adriges Kabel, maximale Länge 2m

XM1541
Klicke auf das Bild zum Vergrößern
Belegung

Sollte man im Besitz eines XM-Kabels sein, dann ist das kein großes Problem, es genügt die Kontakte 5 und 6 am 6-poligen DIN Stecker zu vertauschen und schon hat man ein XE-Kabel. Außerdem brauchen wir einen PC. Und hier könnte ein Problem auftauchen. In der Regel kann man sagen, je älter der PC umso besser. Bereits ein 486er sollte genügen. Meine ersten zwei Testkandidaten, ein Athlon 64 3200 und ein Celeron 1600 waren für diese Aufgabe nicht geeignet. Zwar werden die Daten an den PC gesendet, aber der Datenstrom wird offensichtlich bei "neueren" PC's gestört. Was genau die Ursache sein könnte, ist mir nicht bekannt. Also besorgte ich mir einen alten Celeron 366mHz Laptop, der sich als tauglich erwies.

Zur Software: Zum Übertragen der Daten wird eine Software zum Senden und Empfangen benötigt. Aus diesem Grund brauchen wir das DOS Programm mtap und tapserv.prg. Diese finden wir unter der Adresse http://markus.brenner.de.

Zusätzlich wird das DOS-Programm CWSDPMI benötigt, ohne das mtap nicht starten würde. Dieses finden wird unter anderem hier: http://clio.rice.edu/ Das Programm befindet sich in der Zip-Datei csdpmi5b.zip.

Die benötigten Programme haben wir jetzt, aber die "Sende-Software" muss noch auf den C64 übertragen werden. Dazu brauchen wir also noch ein Programm und zwar 64hdd, das beliebige Daten an den C64 schickt, bzw. ein 1541-Laufwerk emuliert. Dieses findet man unter: www.64hdd.com/64hdd.html. Es gäbe auch eine kostenpflichtige Pro-Version, die einen größeren Funktionsumfang und eine grafische Oberfläche bietet, zum Zeitpunkt dieser Anleitung kostete diese ganze 59$. Die kostenlose Version ist aber mehr als ausreichend. Nicht vergessen darf man, dass man sich zuerst registrieren muss um den Freischaltcode zu bekommen. Auch dies ist kostenlos und man bekommt sofort den Schlüssel. Die Registrierung erfolgt auf der selben Seite.

Wir sollten jetzt im Besitz folgender Software sein:
mtap und tapserv.prg (das sich in der zipdatei von mtap befindet)
cwsdpmi.exe
64hdd

Ich gehe mal davon aus, dass sich in unserem alten PC noch eine ❏ FAT-formatierte Festplatte befindet, auf ❏ NTFS können wir nämlich unter DOS nicht zugreifen. Unsere Programme kopieren wir jetzt samt Ordner und Unterordner ins Stammverzeichnis des Laufwerkes C: Die Programme könnten zwar auch auf einer Diskette bleiben, der Platz reicht schließlich aus. Allerdings würden später die übertragenen Daten auch auf die Diskette kopiert werden und dafür reicht der Platz nicht aus. Das Programm tapserv.prg (das sich im Ordner von mtap befindet) sollte aus den Ordner mtap direkt ins Stammverzeichnis auf das Laufwerk c: kopiert werden. Da wir eine reine DOS-Umgebung brauchen und ich kaum glaube, dass noch jemand DOS auf seinen Rechner installiert hat, brauchen wir eine bootfähige Startdiskette. Die Eingabeaufforderung in Windows ist nicht geeignet! Zu allererst erstellen wir die bootfähige DOS-Diskette. Dazu rechtsklicken wir im Arbeitsplatz unter Windows XP (oder „Computer“ unter Windows Vista) auf das Diskettenlaufwerk und klicken auf „Formatieren“. Jetzt wählen wir die Option „MS-DOS-Startdiskette erstellen“ und dann auf „Starten“.

Disk Format
Klicke auf das Bild zum Vergrößern

Wer kein Diskettenlaufwerk besitzt kann auch per Windows 95/98-Setup-CD booten und die zuvor genannten erforderlichen Programme auf eine zusätzliche CD brennen. Jetzt wird das X(E)-Kabel angeschlossen, aber ACHTUNG: Der Pc und der C64 müssen ausgeschaltet werden bevor das Kabel angeschlossen wird! Der PC bzw. C64 könnte sonst beschädigt werden. Bevor der Pc jetzt mit der Boot-Diskette gestartet wird, muss falls nicht schon so eingestellt, die Bootreihenfolge im Bios so geändert werden, sodass das Diskettenlaufwerk an erster Stelle liegt. Außerdem sollte der LPT-Modus im Bios auf SPP, Normal oder Standard gestellt werden. Andere LPT-Einstellungen wie ECP funktionieren laut meinen Erfahrungen nicht oder nur teilweise.

Bios Floppy Start
Klicke auf das Bild zum Vergrößern
LPT Port
Klicke auf das Bild zum Vergrößern

Nach erfolgten Bioseinstellungen kann der PC von Diskette gebootet werden. Hat alles geklappt dann können wir unter DOS mit der Eingabe c: auf die Festplatte wechseln und mit "DIR" dessen Inhalt auflisten. Als nächsten müssen wir die Datei tapserv.prg an den C64 schicken. Dazu starten wir das Programm 64hdd das sich in den gleichnamigen Ordner befinden sollte mit folgenden Befehl:

64hdd -(Registrierungscode) -xe -8 +sysdir c:64hdd

Der Parameter -xe gibt an, dass der C64 mit einem XE1541-Kabel verbunden ist. Bei einem X1541-Kabel muss dieser Parameter nicht angegeben werden. Zur Erinnerung: Der Registrierungscode entspricht dem Code den wir bei der Registrierung auf der Homepage von 64hdd bekommen haben. Achtung: Spätestens jetzt sollte eine Kassette in das Datasette eingelegt und zurückgespult werden. Denn, tapserv interpretiert auch das Zurückspulen als Datensendung. Manchmal bricht tapserv dadurch seinen Dienst ab.

Jetzt wechseln wir zum C64. Dort laden wir jetzt die Datei tapserv.prg die unser Pc bereitstellt. Wir geben den Befehl load"$",8 ein. Sollte jetzt eine Fehlermeldung am C64 auftauchen, muss der vorherige Schritt mit 64hdd wiederholt und die Eingabe auf Korrektheit überprüfen werden. Mit dem Befehl LIST sollten wir nun den Inhalt der Festplatte unseres PCs sehen. tapserv.prg laden wir schließlich mit der Eingabe load"tapserv.prg",8 und starten es folglich mit RUN. Das Programm tapserv startet jetzt und wartet im Sendemodus. Jetzt wieder zurück zum PC. Dort brechen wir 64hdd ab da wir dessen Dienst nicht mehr benötigen und zwar mit der Tastenkombination STRG-C. Bevor wir jetzt mtap starten, müssen wir das Programm cwsdpmi ausführen. Also ins entsprechende Verzeichnis wechseln und cwsdpmi -p eingeben. Ohne den Parameter -p würde sich das Programm nach einer Session von mtap beenden und müsste nochmals eingegeben werden. Ist dies erledigt wechseln wir ins Verzeichnis mtap und geben folgenden Befehl ein "mtap -xe dateiname.tap". Der Parameter -xe sagt aus, dass die Daten über ein XE1541-Kabel kommen. Wer ein X1541-Kabel verwendet, gibt hier den Parameter -x an. Der Dateiname dahinter entspricht dem Namen der Datei die erzeugt werden soll und kann frei erfunden werden. Die Endung .tap sollte allerdings immer angegeben werden. Nach der Eingabe dieses Befehls fordert uns mtap auf, die Play-Taste unserer Datasette zu drücken. mtap erkennt automatisch wenn das ganze Band der Kassette abgespielt wurde und beendet sich selbst. Die gewünschte .tap-Datei wurde erstellt und sollte jetzt mit einem C64-Emulator ausführbar sein.

Weitere Hinweise und Tips

Cache erhöhen:
mtap kopiert die eingehenden Daten in einem 4Mb großen Cache. Dies ist ausreichend für die meisten Spiele, allerdings könnte dieser Cache bei langen Kassetten bzw. bei Spiele-Kompilationen überlaufen. Aus diesem Grund sollte dieser Cache bei langen Kassetten vergrößert werden mit dem Parameter -b.

Beispiel:
mtap -b 10 -xe dateiname.tap. In diesem Beispiel wurde der Cache auf 10Mb erhöht.

C16, VC20, PAL und NTSC:
Nicht nur C64-Spiele können mit mtap übertragen werden, sondern auch C16 und VC20-Spiele im PAL oder NTSC-Format. Dazu braucht man die entsprechenden Parameter.
mtap -xe -vicpal dateiname.tap = PAL - VIC-20
mtap -xe -vicntsc dateiname.tap = NTSC - VIC20
mtap -xe -c16pal dateiname.tap = PAL - C16
mtap -xe -c16ntsc dateiname.tap = NTSC - C16

Start beschleunigen:
Man kann sich die umständliche Befehlseingabe unter DOS ersparen indem man den vollständigen Befehl in die Autoexec.bat der Diskette einträgt. Allerdings wird diese Datei unter Windows standardmäßig ausgeblendet da sie als Systemdatei eingestuft wird. Um sie sichtbar zu machen muss die Option „Geschützte Systemdateien ausblenden“ deaktiviert werden. Man findet die Option unter Windows XP sowie unter Vista hier: Rechtsklick auf „Start“ / Explorer / Extras / Ordneroptionen / Ansicht

Systemdateien anzeigen
Klicke auf das Bild zum Vergrößern

Wenn jetzt der Inhalt der Diskette aufgelistet wird, sehen wir die Datei „Autoexec.bat“, auf der wir mit der rechten Maustaste klicken und die Option „Bearbeiten“ wählen. Wie man sieht, befinden sich schon einige Einträge in der Datei. In der letzten Zeile geben wir z.B. „c:64hdd -(Registrierungscode) -xe -8 +sysdir c:64hdd“ ein und speichern die Datei ab. Zu beachten ist natürlich, dass statt "Registrierungscode" der richtige Freischaltcode eingegeben wird. Oder noch schneller: Man kopiert tapserv auf eine Diskette oder Kassette und gibt in der Datei „Autoexec.bat“ der Bootdiskette den gewünschten mtap-Befehl an.

Erzeugte tap.Dateien auf Diskette kopieren

Da man einen recht alten PC für diese Aufgabe nutzen sollte, könnte es sein dass kein USB- oder Ethernet-Anschluss zur Verfügung steht. Zwar gibt es die USB-Schnittstelle schon recht lange, aber unter Windows 95/98 gibt es keine Treiber für USB-Massenspeicher (mehr). Wie also die Daten von einen alten Rechner zu einem neueren transferieren? Als letzte Notlösung kann Winrar die Dateien komprimieren und falls diese dann immer noch nicht auf eine Diskette Platz findet, splittet Winrar diese in Häppchen zu je 1,44Mb. Natürlich muss auch der Zielrechner ein Diskettenlaufwerk besitzen. Die DOS-Version von Winrar gibt es unter www.rarlab.com. Die Syntax lautet: rar32.exe a -m5 -v1440 a:Zieldatei.rar c:Quelldatei.tap Die Pfade der Quell- und Ziel-Dateien müssen evtl. angepasst werden.

Mögliche Fehler

Fehler: Die erzeugte .tap-datei wurde erstellt, am C64-Emulator wird die Datei nicht geladen oder bricht mit einer Fehlermeldung ab.
Lösung:
a) Möglicherweise ist der Pc zu neu für den Datentranfer, je älter der Pc umso besser
b) Auch falsche LPT-Einstellungen können dazu führen. Am besten mehrere LPT-Modi ausprobieren.
c) Das Spiel auf der Kassette ist möglicherweise fehlerhaft, auf korrekter Funktion auf einen realen C64 testen.
d) Das Datasette ist falsch justiert, auf korrekter Funktion auf einen realen C64 testen.

Fehler: Das Programm tapserv kann nicht geladen werden.
Lösung:
a) Der 64hdd Parameter für das Kabel ist falsch. -xe für XE1541-Kabel und -x für X1541
b) Der sysdir-Parameter wurde falsch angegeben. Es muss der Pfad zum 64hdd-Ordner angegeben werden.
c) Im Pc sind zwei parallele Schnittstellen vorhanden, mit den Parameter +lpt x den gewünschten Port angeben.

Fehler: mtap startet nicht.
Lösung: cwsdpmi wurde nicht gestartet. Ohne den Parameter -p muss cwsdpmi nach beenden von mtap neu gestartet werden.

Zurück
Besucher total: 1819796 Heute: 170