#155 – el commodore – XIV – games

So langsam muss doch mal gut sein mit dem Thema C64, oder? Immerhin haben wir uns beim letzten Mal die „Final Cartridge“ angesehen – wenn das mal nicht nach „Ende“ klingt? 😀

Ich kann euch beruhigen, heute ist der letzte Teil der C64-Reihe! 🙂 Ich möchte die Zeit nutzen und abschließend noch einen kleinen, ungezwungenen Blick auf eine paar Spiele für den C64 werfen – denn sind wir mal ehrlich, für was Anderes wurde der Commodore sowieso eher selten verwendet! 😉

Fangen wir gleich populär an: „Pirates!“ gilt weitläufig als eines der esten (wenn nicht als das Beste) Spiele für den C64. Mit einem eigenen Schiff durch die Karibik segeln, plündern, saufen und Gouverneurstöchter flachlegen – welcher Teenager hat damals nicht davon geträumt? 😉

Fun Fact: Wenn man die beim Spiel mitgelieferte Karte der Karibik nicht mehr hat, lohnt sich ein Blick in den Atlas, denn alle Schauplätze wurden originalgetreu umgesetzt! 🙂

Pirates! erschien 1987 und wurde von Sid Meier, einem recht bekannten Entwickler diverser Strategie- und Simulationsspiele, programmiert. Eine reine Simulation ist Pirates! aber nicht, denn das Spiel verbindet zahlreiche unterschiedliche spielerische Elemente miteinander. So kann man z.B. mit seinem Schiff auf der Karte umhersegeln, Seeschlachten austragen, mit feindlichen Kapitänen fechten, etc. Dabei muss gleichzeitig der Wirtschaftsaspekt, also so Dinge wie Nahrungsversorgung oder Handel beachtet werden.

Und warum tut man das alles? Nun, Ziel des Spiels ist es, sich einen Namen als Pirat zu erarbeiten und last but not least das Herz der schönsten Gouverneurstochter zu erobern – eine bisher nie dagewesene Gameplay-Vielfalt! 🙂

Alles in allem ist Pirates! wirklich ein rundum gelungenes Spiel und bietet eine coole Kombination aus Handel und Action – sehr empfehlenswert! 😉

Fun Fact: Wer es (zumindest etwas) moderner mag, für den ist vielleicht das 3D-Remake aus dem Jahre 2004 etwas. Es behält das grundsätzliche Spielprinzip bei und bietet gleichzeitig einige Ergänzungen, wie z.B. eine ausgedehnte Gouverneurstochter-Heirats-Quest. Hm, das wäre ja fast mal was für einen zukünftigen Blogartikel… 😀

Für mich als Adventure-Fan ist es natürlich logisch, dass mit „Maniac Mansion“ und „Zak McKracken and the Alien Mindbenders“ auch zwei Point-and-Click-Adventures aus dem Hause LucasArts (Lucasfilm Games) vertreten sein müssen! 😉

Im 1987 erschienenen Maniac Mansion müssen wir es schaffen Sandy, die Freundin von Dave (einer der Protagonisten) aus den Händen des wahnsinnigen Professors Dr. Fred zu retten. Es ist ein genial verrücktes Point-and-Click-Adventure welches mit der SCUMM-Engine – ein eigens für das Spiel entwickeltes Werkzeug, welches anstatt eines Textparsers Verben zur Steuerung des Spiels (sowas wie „benutze XXX mit XXX“) zur Verfügung stellt – programmiert wurde. Als Besonderheit ist vielleicht zu erwähnen, dass abhängig von der Zusammenstellung des Teams sich verschiedene Lösungen der Rätsel im Spiel ergeben. Für die damalige Zeit waren Grafik, Humor und das dynamische Gameplay ein echtes Novum und zurecht gilt Maniac Mansion bis heute als ein echter Adventure-Klassiker! 🙂

Fun Fact: Um euch Maniac Mansion etwas schmackhafter zu machen, sage ich nur drei Worte, die eine essentielle Bedeutung im Spiel haben: Kettensäge, Hamster in der Mikrowelle, Atomreaktor im Pool. Na, neugierig? 😉

In Zak McKrackens Abenteuer geht es dagegen um den Journalisten Zak, welcher die Welt vor einer Invasion durch Außerirdische retten muss, welche die Menschheit mit einer Dummheits-Maschine verdummen wollen. Um das zu verhindern reist Zak mit drei weiteren Protagonisten um die Welt um Fragmente eines uralten Rätsels zu finden und die Dummheits-Maschine zu zerstören. Das Spiel erschien 1988 und heimste durch die Bank positive Kritiken ein, wenn auch es – meiner Meinung nach – nicht ganz an Manic Mansion herankommt. Gerade die interessante (verrückte) Story sowie der überragende Humor machen aus dem Adventure etwas ganz Besonderes.

Ein recht bekannter Vertreter aus dem Puzzle-Genre ist „Archon“ aus dem Jahre 1983. Archon ist eine Art Schachspiel mit Fantasyfiguren, welche sich beim Aufeinandertreffen in einer kleinen Action-Schlacht duellieren. Jede Figur hat dabei eigene Fähigkeiten und es gibt verschiedene Möglichkeiten ein Spiel zu gewinnen. Einziges Manko ist die relativ dumme KI, am meisten Spaß macht das Spiel mit einem Freund zusammen – also quasi so „lokaler Multiplayer“! 😉

Fun Fact: Optisch und akustisch erinnert mich das Spiel irgendwie stark an ein Atari 2600-Spiel. Ach ja, es war eine andere, einfachere Zeit, in der man sehr viel mehr „Vorstellungsvermögen“ benötigt hat als heutzutage! 😀

1987 erntete „The Great Giana Sisters“ teils scharfe Kritik, da es sich doch sehr stark an das auf dem NES erschienene „Super Mario Bros.“ anlehnt. Heutzutage würde so etwas als Plagiat gelten und vermutlich von einer Armee von Nintendo-Anwälten in den Boden gestampft werden. Die C64-Spielergemeinde störte das nicht und sie feierten – nicht zuletzt dank der genialen Musik von Chris Hülsbeck – das kurzweilige Jump & Run Spiel. Mir persönlich gefällt das Spiel auch gut, allerdings ist gerade die Steuerung im Vergleich zu Mario recht holprig. Trotzdem – eine echt gute Alternative für den Brotkasten! 🙂

Fun Fact: Im Introbildschirm wird das Spiel übrigens mit einem zweiten „N“ in Gianna betitelt! Das ist schon ein recht grober Schnitzer – stellt euch mal vor ein neuer „Assassin’s Creed“-Teil würde z.B. „Asassin’s Creed“ auf dem Cover stehen haben. Heutzutage unvorstellbar! 😀

Auch „Turrican“ sowie sein Nachfolger „Turrican II – The Final Fight“ schmücken sich mit den fetzigen Soundtracks von Chris Hülsbeck. Beide Titel wurden Anfang der Neunziger von Rainbow Arts entwickelt und sind somit relativ spät in der „C64-Ära“ erschienen. Offiziell werden die Spiele als Shoot ‘em ups bezeichnet, mich persönlich erinnert Turrican irgendwie immer an einen Mix aus Contra und Metroid. Gerade das Gameplay ist dank des grandiosen Leveldesigns einzigartig. Wer auf Run-and-Gun-Spiele steht ist mit Turrican mehr als gut bedient!

Nicht ganz so spannend geht es im 1985 erschienenen „Winter Games“ zu, einer Spielsammlung mehrerer Wintersport-Disziplinen. Ihr könnt euch in sieben Disziplinen wie z.B. Hot-Dog (Skiartistik), Biathlon, Eiskunstlauf, Skispringen oder Bobfahren messen und Medaillen (letztendlich Punkte) durch den Sieg in einer Disziplin einheimsen. Die meisten Sportarten machen echt Spaß und sorgen gerade in einem Duell gegen einen zweiten Spieler für Laune. Nur der Eiskunstlauf ist unter Highscore-Jägern vor allem aufgrund der wenig transparenten Steuerung verhasst – bei mir auch! 😀

Fun Fact: Auch wenn das Spiel laut Anleitung in Calgary anno 1988 spielt und Medaillen eingesammelt werden müssen, handelt es sich um keine wirklichen „olympischen“ Spiele. Vermutlich liegt das daran, dass der Entwickler Epyx einfach keine offizielle Lizenz des IOC zur Betitelung als olympische Winterspiele erhalten hat. Das hat einen übereifrigen Übersetzer in der deutschen Version des Handbuchs allerdings nicht davon abgehalten die „Winter Games“ dennoch als „Olympische Winterspiele“ zu bezeichnen – läuft! 😀

Wer auf Jump ‘n‘ Run-Spiele steht, könnte mit „Bubble Bobble“ glücklich werden. Das niedliche Geschicklichkeitsspiel erschien 1987 und ist Arcade-Freaks vielleicht noch aus diversen Spielehallen bekannt. Ihr steuert einen – im Zweispielermodus zwei – Brontosaurier, welche sich durch 100 Level schlagen müssen. In jedem Level muss eine definierte Anzahl von Gegnern besiegt werden. Das geht, indem die Dinosaurier Blasen verschießen, in welchen sie die Unholde einschließen und anschließend durch Berührung zerplatzen lassen können. Das Spielprinzip ist einfach, bietet aber hohes Suchtpotenzial und sollte in einer geselligen Runde Retrospieler nicht fehlen – zumal sich die C64-Version im Vergleich zum Original aus der Spielhalle nicht verstecken muss!

Ein ebenfalls sehr einfaches, aber sehr spaßiges Spiel ist „Arkanoid“ aus dem Jahre 1987. Letztendlich handelt es sich bei Arkanoid um einen Breakout-Klon, bei welchem der Spieler einen Ball mit einem Paddle gezielt abprallen lassen muss, um farbige Steine aus dem Weg zu räumen. Dabei können Power Ups eingesammelt werden, die den Schläger verbreitern, mehr Kugeln ins Spiel holen oder andere Effekte generieren. Dieses Spiel ist das perfekte Beispiel für eine simple, aber geniale Idee, die auch mit minimaler Grafikpracht eines C64 auskommt. Für eine kurze Pause zwischendurch absolut empfehlenswert.

Ein frühes Action-Adventure ist „The Last Ninja“, welches vor allem durch seine für den C64 ungewöhnlich hübsche Grafik aus isometrischer Perspektive sowie einem überragenden Soundtrack punktet. Unser Protagonist (natürlich ein Ninja) muss die Wege der Ninja ergründen, heilige Schriftrollen sammeln und einen bösen Shogun-Typen ausschalten, der schreckliche Dinge getan hat. Eines ist mal klar – kaum ein Spiel fängt den Ninja-Boom der späten 80er und frühen 90er besser ein als The Last Ninja. Leider muss der hübschen Präsentation das Gameplay etwas Tribut zollen, denn die Steuerung ist etwas hakelig und einige Gegner geradezu unfair. Alles in allem ist das Spiel ein extrem harter Brocken, der trotzdem einen Blick wert ist! 😉

Mit „Prince of Persia“ gibt es sogar einen Klassiker, welchen man noch aus Apple II- oder DOS-Zeiten vom PC kennt. Ihr steuert einen namenlosen Prinzen, welcher nur eine Stunde Zeit hat aus einem Gefängnis zu entkommen, den sinistren Statthalter Jaffar zu töten und die Prinzessin zu retten. Auf dem Weg durch die Palastanlage müssen Hindernisse und Abgründe durch Sprünge überwindet, Fallen ausgewichen sowie Wachen und Skelette bekämpft werden.

Besonders beeindruckend sind die flüssigen und real wirkenden Animationen. Kein Wunder, denn für die Bewegung der Spielfigur wurden damals mit Hilfe der Rotoskopie menschliche Bewegungen relativ realitätsnah aufgenommen.

Fun Fact: Das Spiel ist seinerzeit (1989) nie für den C64 erschienen und wurde erst 2011 von einem Fan für den C64 portiert.

Ein äußerst innovatives Spiel ist „Elite“ von der Firma Firebird aus dem Jahre 1985. Es ist teils Wirtschaft- teils Weltraum-Flug-Simulation und schickt den Spieler auf eine endlose Reise. Was damit gemeint ist? Nun, das Spiel hat kein vorgegebenes Ziel und somit auch kein definiertes Ende – ja richtig gelesen! 😀

Fun Fact: Elite war weit seiner Zeit weit voraus und gilt bis heute als einer der Urväter der Open-World Spiele. Klar, heutzutage ist das nichts Besonderes mehr, aber vor gut 35 Jahren waren solche Gamplay-Mechaniken ein absolutes Novum.

Ihr könnt frei entscheiden, ob ihr beispielsweise als friedlicher Händler durch das Universum reisen und auf legale Weise ein kleines Vermögen verdienen oder als aggressiver Space-Pirat harmlose Handelsschiffe plündern oder als Kopfgeldjäger euren Unterhalt verdienen wollt. Mit dem eigenen Raumschiff Planeten bereisen, Handel treiben und mit den erwirtschaften Beträgen das eigene Schiff aufmotzen um damit andere Raumfahrer auszuschalten. Und das alles aus einer mit Vektorgrafiken erzeugten 3D-Perspektive aus dem eigenen Cockpit – irre! Echt abgefahren und gleichzeitig mitunter leider auch nicht ganz einfach – gerade das manuelle Andocken an einer Orbitalstation gehört wohl zu einem der schwierigsten Manöver der C64-Raumfahrer! 😀

Als letztes möchte ich noch ein kurzes Wort über ein kniffliges Jump & Run mit Puzzle-Elementen namens „Impossible Mission“ verlieren. Das Spiel erschien 1984 und bot als eines der ersten C64-Spiele Sprachausgabe. Als Spezialagent 4125 muss der Spieler innerhalb von sechs Stunden (Echtzeit) in die Festung eines bösen Professors eindringen, 36 Codekarten sammeln und diese korrekt zusammensetzen. Klingt leichter als es ist, denn die Festung ist dabei zufallsgeneriert und wird bei jedem Spielstart komplett neu ausgewürfelt. Ebenso werden bei jedem In-Game-Tod zehn Minuten Spielzeit abgezogen – uff! 😀

Fun Fact: Tja, was soll ich sagen? Früher waren die Spiele einfach schwerer als heute. Keine Tutorials, keine Hilfestellungen, keine Extraleben. Nur der Spieler und das Spiel – und manchmal ein Block und ein Stift mit einer handgezeichneten Karte der Spielwelt! 🙂

So, ich denke es wird Zeit, dass wir endlich den guten alten Commodore Computer hinter uns lassen. Was gibt es abschließend noch zu sagen? Gerade in Deutschland genießt der C64 auch knapp 40 Jahre nach seiner Markteinführung absoluten Kultstatus. Tatsächlich hat der Heimcomputer selbst heute noch eine äußerst aktive Community, welche den betagten Rechner immer noch mit zahlreichen Fan-Software-Projekten oder durch die Entwicklung von Hardware-Erweiterungen unterstützt.

Schon verrückt – hätte mir jemand gesagt, dass das alles so ausufert hätte ich vermutlich die Finger davon gelassen! 😀 Erinnert ihr euch noch wie „harmlos“ das ganze C64-Thema angefangen hat? Falls nicht, hier ein Bild aus Artikel 144:

Zum Vergleich, so sieht der Wahnsinn mittlerweile aus! 😀

Egal – das war es wert! Frei nach dem Motto „Ganz oder gar nicht“. Immerhin stolpert man nicht jeden Tag über einen Commodore 64 – erst recht nicht im 21. Jahrhundert! 😉

In diesem Sinne wünsche ich euch ein entspannte Zeit – bis die Tage! 🙂

#154 – el commodore – XIII – Final Cartridge

Mann, eigentlich wollte ich euch beim letzten Mal etwas mehr über die Final Cartridge erzählen, aber leider ist die ganze Zeit mit den Tests der Ladezeiten draufgegangen – schlimm! 😀

Egal. Aufgeschoben ist nicht aufgehoben. Dann werfen wir eben heute einen kurzen Blick auf die Funktionen des Moduls. Mal überlegen, was wissen wir bereits? Ach ja, beim letzten Mal haben wir ja schon etwas auf dem Desktop herumgeklickt und die Schnelllader-Funktion verwendet! Zur Erinnerung – direkt nach dem Einschalten des C64 erscheint mit angestecktem Final Cartridge Modul der Desktop:

Dort lassen sich einige Informationen wie z.B. die Versionsstände vorhandener Softwarekomponenten einsehen. Ebenso kann man von hier aus über das Menü zurück in das normale C64-BASIC-Frontend springen:

Im Reiter „Project“ findet sich das Notepad, ein einfacher Texteditor wie wir ihn auch von Windows kennen. Damit lassen sich simple Textaufzeichnungen erstellen, auf Diskette speichern und wieder laden. Schon verrückt – es gab Zeiten, in denen war die Verfügbarkeit eines Texteditors tatsächlich etwas Besonderes! 😀

Fun Fact: Die Befehle „DLINK“ und „TLINK“ machen laut Handbuch in der aktuellen Version der Final Cartridge nichts und sind reserviert für eine zukünftige Erweiterung des Disketten- oder Kassettenbetriebs – was auch immer das heißen mag?! 😀

Ich habe mir den Spaß gemacht und die „NOTE.PRG“-Datei via XUM1541 auf einen Windows-PC zu schieben, umzubenennen und mit einem Texteditor zu öffnen. Das Ergebnis ist verblüffend – es sieht so aus als wäre die Groß- und Kleinschreibung vertauscht, aber die Sonderzeichen (zumindest das Ausrufezeichen) bleiben einwandfrei erhalten. Ebenso finden sich zu Beginn der Datei einige kryptische Steuerzeichen.

Der C64 besitzt zwei Zeichensätze, einen mit Großschrift plus Grafikzeichen (Zeichensatz 1, Standard) und einen mit Groß- und Kleinschrift (Zeichensatz 2). Für mich sieht es so aus als würde das Notepad Zeichensatz 2 (PETSCII „text mode“ shifted) verwenden. Im normalen Betrieb (BASIC-Prompt) wird Zeichensatz 1 (CBM-ASCII) ohne Kleinbuchstaben verwendet. Ein Blick in die Binärdaten (mit einem Hexeditor) bestätigt die Theorie:

Fun Fact: Es gibt sogar eine Webseite, auf der man sich die Zeichen samt Konvertierungen in ASCII und Unicode anzeigen lassen kann – irre! 😀

Ob der Weg anderes herum auch funktioniert? Ich habe testweise eine „pc.txt“ erstellt, diese umbenannt (pc.prg) und auf eine Diskette überspielt. Am C64 hat sich die Datei mit dem Notepad tatsächlich öffnen lassen! Das Ergebnis ist erwartungskonform – die Buchstaben wurden verdreht und einige Sonderzeichen werden falsch umgesetzt. Immerhin, besser als nichts! 😉

Bevor wir noch weiter in die Theorie abdriften, sollten wir lieber schnell nachsehen, was die Final Cartridge noch so draufhat. Über den Reiter „Utilities“ lassen sich diverse grafische und technische Einstellungen wie z.B. Schrift-, Rahmen- und Cursorfarben sowie Gerätetreiber für Joystick und Maus setzen. Auch findet sich hier eine kleine Taschenrechner-Anwendung! 🙂

Fun Fact: Richtig gelesen – es gab sogar eine Maus für den C64. Allerdings war diese mit nicht besonders viel Software kompatibel und kam überwiegend bei Malprogrammen oder dem alternativen Betriebssystem GEOS zum Einsatz.

Etwas unsinnig ist meiner Meinung nach der Menüpunkt „Clock“. Damit lässt sich oben rechts am Bildschirmrand eine Digitaluhr einblenden und einstellen. Die Zeit wird dabei nicht von einer Batterie im Computer gehalten, d.h. man muss sie jedes Mal neu einstellen, wenn man den PC wieder startet! 😀

Das interessanteste Menü ist definitiv der „Tools“-Reiter. Darin befinden sich zahlreiche praktische Anwendungsprogramme, mit denen sich Routinearbeiten wesentlich komfortabler erledigen lassen.

Von Diagnoseutilities wie dem bereits bekannten Cassette Azimuth für die Datassettenjustierung, 1541 ALPS Drive Checker für Diskettenlaufwerke oder Programmen zur allgemeinen Überprüfung von C64-Hardware (64 Doctor) ist mit Turbo 250 auch ein Schnelllader für die Datassette an Bord.

Ebenso finden sich einige praktische Tools zum Kopieren von Dateien zwischen Kassetten und Disketten (z.B. Copy 190 oder Copy-Q 2.0). Zur Erstellung von Grafiken (Logos und Sprites, also Grafikelementen) gibt es die Anwendungen Logo Editor und Super Spriter.

Mit Hilfe geeigneter PC-Software (Final Cartridge III+ Editor) und einem EEPROM-Brenner könnte man sich sogar ein eigenes ROM mit weiteren Programmen zusammenstellen, brennen und mit der Final Cartridge verwenden! Seht es mir bitte nach, dass ich das nicht tun werde. Nicht nur fehlt mir ein EEPROM-Brenner, sondern auch Zeit und Lust für weitere Experimente! 😀

Neben dem eigenen grafischen Interface in Form des Desktops bietet die Final Cartridge auch zahlreiche Verbesserungen für den normalen BASIC-Prompt des C64 (sog. BASIC-Erweiterungen). Um vom Desktop zum BASIC-Prompt zu kommen, wählt man einfach über das „System“-Menü den Punkt BASIC aus.

Tatsächlich geht es aber noch einfacher: Wenn man nicht möchte, dass die Final Cartridge im Desktop-Modus startet, hält man einfach beim Einschalten des C64 die „RUN/STOP“-Taste gedrückt. So landet man direkt im (verbesserten) BASIC. Diese Funktion ist wirklich Gold wert, denn das ewige Navigieren über das Desktop-Menü mit dem Joystick nervt, wenn man genau weiß, was man laden möchte!

Sofern man sich bereits im BASIC-Modus befindet, kann man auch zurück in den Desktop-Modus springen. Das geht, in dem man beim Neustart des PCs die Commodore-Taste gedrückt hält.

Fun Fact: Leider besitzt der C64 von Haus aus keinen Reset-Knopf, aber das Final Cartridge Modul hat rechts oben einen Reset-Schalter, mit welchem sich der Commodore innerhalb einer Sekunde zurücksetzen lässt. Das ist eine echt praktische Funktion, die ich bei der Erstellung der letzten paar Blogartikel schmerzhaft vermisst habe! 😀

Ok, und welche Verbesserungen gibt es jetzt für BASIC? Dank des Steckmoduls könnte man (sofern man einen Drucker besitzt) über die Tastenkombination CTRL + RETURN Bildschirmausdrucke (Hardcopys) erstellen. Ebenso kann mit der Final Cartridge innerhalb eines BASIC-Listings gescrollt werden und es stehen 30 zusätzliche BASIC-Befehle zur Verfügung. Diese können direkt über die Tastatur eingegeben oder in einem Menü mit dem Joystick (sofern man vorher den Befehl „BAR ON“ eingegeben hat) ausgewählt werden.

Fun Fact: Gerade die zusätzlichen BASIC-Befehle sind eine echte Erleichterung. Normalerweise müsste man z.B. zum Formatieren einer Diskette den Befehl „OPEN 1,8,15,“N:NAME,ID“:CLOSE 1“ eingeben. Dank der Erweiterung lässt sich der Formatierungsvorgang mit einem „DOS“N:NAME,ID““ durchführen – sehr praktisch! 🙂

Ein weiterer gravierender Punkt ist, dass das Steckmodul die Funktionstasten (F1-F8) mit neuen Funktionen belegt. Dadurch lässt sich z.B. der Ladevorgang von Software deutlich vereinfachen. Anstatt mühsam Befehle einzutippen, um sich das Directory einer Diskette anzeigen zu lassen („LOAD“$“,8“ + „LIST“) kann man das mit einem entspannten Druck auf die F7-Taste erledigen!

Fun Fact: Ein weiterer Vorteil dieser Methode ist, dass ein ggf. bereits im Speicher (BASIC-RAM) befindliches BASIC-Programm durch den Directory-LOAD nicht zerstört wird!

Anschließend navigiert man einfach mit den Cursor-Tasten auf den entsprechenden Eintrag, den man laden möchte und drückt die F5-Taste. Das Programm (in unserem Fall Tetris) wird in den Speicher geladen.

Mit einem abschließenden Druck auf F3 wird der RUN-Command ausgeführt und das geladene Programm gestartet. Mann, ist das geil – über diesen Weg muss man tatsächlich keinen einzigen Befehl mehr eintippen um ein Spiel zu starten – sehr cool! 🙂

Fun Fact: Natürlich greifen auch über den BASIC-Weg die Schnellladeroutinen der Final Cartridge und Tetris wurde innerhalb von acht Sekunden geladen!

Ebenso ist die Final Cartridge mit dem SD2IEC kompatibel. So kann aus BASIC heraus mit F7 das Directory angezeigt, und anschließend mit F5 und F3 der FILEBROWSER gestartet werden. Auch hier greifen die Schnellladeroutinen, d.h. wir können Tetris (nach Navigation ins entsprechende Verzeichnis) innerhalb von vier Sekunden laden!

Zu guter Letzt kommen wir zur beeindruckendsten Funktion des Moduls. Links oben auf der Platine befindet sich ein weiterer Schalter, mit welchem sich die „Freezer“-Funktion auslösen lässt. Mit Hilfe des Freezers können laufende Programm eingefroren und der aktuelle Speicherinhalt auf Diskette oder Datasette abgespeichert werden. Über diesen Weg lassen sich z.B. Sicherheitskopien von Spielen (auch mit Kopierschutz) erstellen – klingt fast zu gut um wahr zu sein!

Na das wollen wir doch gleich mal testen, ob das funktioniert! 🙂 In Artikel 151 haben wir ja bereits eine Sicherheitskopie von „Maniac Mansion“ angefertigt. Bisher gescheitert bin ich an „Cobra Force“ aus Artikel 146, welches ich lediglich auf einer originalen Diskette besitze. Zur Erinnerung: Originale Spiele konnten wir nicht mit dem XUM1541 sichern!

Fun Fact: Natürlich könnte man auch ein beliebiges Programm von Datassette oder MP32C64 in den Speicher laden, aber wir wollen es mal nicht übertreiben! 😉

Als erstes müssen wir eine Diskette vorbereiten, auf der wir die Sicherheitskopie später speichern möchten. Ich habe hierzu die Rückseite der retrololo-Diskette verwendet. Diese musste natürlich erst mal formatiert werden:

Anschließend kann „Cobra Force“ ganz normal von der Diskette geladen und gestartet werden:

Jetzt geht’s ans Eingemachte. Durch einen Druck auf den Freezer-Taster wird Cobra Force angehalten (der Bildschirm verpixelt) und es erscheint das Freezer-Menü. Hier können ein paar Spieloptionen wie z.B. ein paar proprietäre Schummelfunktionen um Sprite-Kollisionsabfragen auszuschalten („Unverwundbarkeits-Modi“) oder eine „Dauerfeuer“-Funktion eingestellt und zurück ins Spiel gesprungen werden. Für uns interessanter ist das Menü „Backup“, denn darin lässt sich mit der Auswahl „DISK“ eine Kopie des Spiels auf Diskette erstellen. Ist der Sicherungsvorgang (ca. 90 Sekunden) beendet, landet man wieder im Desktop-Ausgangsmenü.

Mal sehen… Tatsächlich wurden zwei Dateien („FC“ und „-FC“) auf Diskette geschrieben. Die erste Datei (FC) enthält den Schnelllader und Starter für die eigentliche Backup-Kopie (Datei -FC). Über einen „LOAD“FC“,8,1“ samt RUN-Befehl (oder alternativ über die Funktionstasten) lässt sich das Spiel ohne Probleme (auch ohne dass die originale Diskette eingelegt ist) starten – läuft!

Fun Fact: Der Freezer ist schon eine sehr coole Funktion, dennoch gibt es einige Einschränkungen. So darf das Spiel z.B. nicht aus mehreren Programmdateien bestehen oder im Laufe des Spiels Programmdateien nachladen. Trotzdem – damit lässt sich echt viel anstellen, gefällt mir! 🙂

Ok, ich denke viel mehr gibt es über die Final Cartridge nicht zu erzählen. Das Teil ist definitiv eine Bereicherung für den C64 und sollte in keiner Commodore-Sammlung fehlen! Jetzt fehlt eigentlich nur noch ein passendes Gehäuse für die Platine. Auch hierfür würde man ohne Probleme geeignete Druckdaten im Internet finden, aber ich hab mich diesmal für ein Acrylglasgehäuse entschieden. Der Zusammenbau war alles andere als einfach und an einer Stelle ist mir das Acrylglas leider etwas eingerissen. Shit happens, sieht trotzdem echt cool aus wie ich finde! 🙂

Fun Fact: Die Status-LED hatte ich beim letzten Mal absichtlich nicht verlötet, da ich noch nicht wusste ob (und wenn ja in welches) Gehäuse ich die Final Cartridge stecken werde.

So, und jetzt entschuldigt mich bitte, es wird Zeit ein paar Rettungsmissionen zu fliegen und dabei die feindlichen Geschütze in die Luft zu jagen! 😀

Bis die Tage!

#153 – el commodore – XII – load speed

Erinnert ihr euch? Beim letzten Mal haben wir uns etwas mit dem SD2IEC beschäftigt. Insgesamt gesehen ein echt nettes Teil, welches aber durch seine langen Ladezeiten negativ aufgefallen ist. Heute möchten auch für dieses Problem eine Lösung finden! 🙂

Generell würde ich gerne das Thema „Ladezeiten“ nochmal etwas behandeln. Bisher habe ich immer etwas von „wenigen Minuten“ oder „einige Sekunden“ gesagt – nicht gerade sehr konkret, Herr retrololo! 😀

Also gut, fangen wir von vorne an. Beim letzten Mal habe ich ja als letzte Amtshandlung „Tetris“ gestartet, um eine Runde zu spielen und etwas zu entspannen. Ich denke das Programm eignet sich mit seinen 96 Blöcken (entspricht 23,7kByte) perfekt als Testobjekt! 🙂

Natürlich habe ich mit der vermeintlich langsamsten Übertragungsart (Laden via Datassette) begonnen. Mit „WAV-PRG“ habe ich die „tetris.prg“ in ein Audiosignal konvertiert. Anhand der Länge der Audiodatei sieht man, wie lange es dauern würde das Spiel über eine Datassette (oder alternativ MP32C64) auf den C64 zu laden. Im normalen „Commodore“-Kassetten-Format hat die WAV-Datei knapp 8 Minuten. Mit einem vorgeschalteten Schnelllader (im Turbo Tape 64-Format) sind es nur noch 72 Sekunden – gar nicht mal so übel! 🙂

Ok, und wie sieht es aus, wenn wir Tetris von einer Diskette laden? Um das zu testen, habe ich die „tetris.prg“ mit Hilfe des XUM1541 auf die „retrololo“-Diskette aus Artikel 147 überspielt.

Anschließend habe ich den Ladevorgang mit Hilfe des Befehls „LOAD“TETRIS“,8,1“ gestartet. Insgesamt hat es 65 Sekunden gedauert das Spiel zu laden – nicht gerade beeindruckend! 😀

Fun Fact: Technisch gesehen liegt der langsame Ladevorgang daran, dass die seriellen Originalroutinen des C64 bzw. der 1541 nicht sonderlich effizient programmiert wurden. Es gibt zahlreiche Ecken, an denen nicht optimierte Algorithmen zum Einsatz kommen, so wird u.a. die Datenflusskontrolle per Software bearbeitet (ursprünglich sollte dafür das Hardware-Shiftregister der VIA 6522 in der 1541 genommen werden, wegen eines Hardwarefehlers wurde das jedoch kurzfristig geändert) und pro Schritt nur ein Bit übertragen.

Und wie sieht es aus, wenn wir das Spiel via SD2IEC laden? Das haben wir ja bereits beim letzten Mal getestet! Der reine Ladevorgang ist in 48 Sekunden abgeschlossen, allerdings muss man bedenken, dass man ja erst den Filebrowser laden und sich anschließend durch das Menü bis hin zur tetris.prg-Datei durchhangeln muss (das kostet selbst geübten Benutzern bestimmt 15-20 Sekunden). Trotzdem ist der reine Ladevorgang auch schon etwas schneller als über eine echte Diskette – immerhin!

Doch das ist natürlich noch nicht das Ende der Fahnenstange, denn analog den TurboTape-Programmen für Kassetten gibt es auch für Disketten sog. „Schnelllader“-Programme, mit welchen sich der Ladevorgang stark beschleunigen lässt! Eines dieser Programme nennt sich „Hypra-Load“. Woher ich das weiß? Nun, ich habe den Namen auf einer der alten Disketten aus Artikel 151 gefunden! 😀

Cool, vielleicht können wir die Software sogar direkt von der alten Diskette laden? Das Tool wird wie eine normale Programmdatei mit einem LOAD-Befehl (samt anschließendem RUN) gestartet. Sobald das Programm geladen wurde, muss ein weiterer LOAD-Befehl abgesetzt werden, mit welchem wir den Schnellladevorgang von Tetris anstoßen können.

Tatsächlich ist der reine Ladevorgang für Tetris jetzt nur noch 13 Sekunden – sehr beeindruckend! Allerdings muss man die sechs Sekunden, welche für den Ladevorgang von Hypra-Load selbst drauf gehen, auch mit einrechnen. Ein weiterer Nachteil ist, dass man (ähnlich wie beim SD2IEC) letztendlich zwei Programme laden und somit mehr Befehle eintippen muss. Dabei geht die gewonnene Zeit dann fast wieder verloren! 😀

Da sich Tetris auf einer anderen Diskette befindet, musste ich zwischen den Ladevorgängen auch noch die Diskette wechseln. Um genau das in Zukunft nicht mehr tun zu müssen, habe ich mir mit einem weiteren Tool namens „Filecopy“, welches ich auf einer anderen alten Diskette gefunden habe, Hypra-Load auf die retrololo-Diskette kopiert! 🙂

Fun Fact: Bei der Gelegenheit habe ich mir auch das Filecopy-Tool selbst mit auf die retrololo-Diskette kopiert. Zugegeben, das alles hätte man über „moderne Hilfsmittel“ wie z.B. das XUM1541 wesentlich schneller und komfortabler machen können, aber ich habe mir gedacht ich probiere es mal mit alten Tools direkt auf dem C64 – wenn schon retro, dann richtig! 🙂

An sich ist die fünffache Reduzierung der Ladezeit mit Hypra-Load schon eine feine Sache, aber das Eintippen mehrerer Befehle (2x LOAD und 2x RUN) geht mir echt auf den Zeiger. Nach einer Recherche im Internet habe ich herausgefunden, dass es eine neuere Version des Tools gibt, welche genau diesem Problem entgegenwirkt!

Leider liegt der Download nur als D64-Image vor und so musste ich mir mit Hilfe einer Software namens „D64 Editor“ erst die einzelne PRG-Datei extrahieren, bevor ich sie auf eine Diskette überspielen konnte. Oh Mann, immer diese ungeplanten Arbeitsschritte! 😀

Die neue Version hat es in sich! Mit dem Befehl „LOAD“↑*TETRIS“,8,1“ wird in einem Aufwasch Hypra-Load und anschließend das nach dem „*“ angegebene Programm (in unserem Fall Tetris) geladen sowie jeweils ein RUN-Command automatisch ausgeführt. Der kombinierte Ladevorgang dauert dementsprechend auch nur 17 Sekunden. Anstatt vier Befehlen wird jetzt nur noch einer benötigt und es lädt schnell – sehr geil! 🙂

Fun Fact: Die einzige Voraussetzung damit das klappt ist, dass die PRG-Datei von Hypra-Load mit einem „↑“ beginnt.

Schon sehr praktisch das alles. Leider bringt Hypra-Load nur etwas für „echte“ Disketten, denn es ist nicht mit einem Laufwerksemulator (wie z.B. dem SD2IEC) kompatibel – schade!

Doch nicht verzagen, denn es gibt tatsächlich eine noch bessere, bzw. schnellere Möglichkeit um Tetris zu laden! Bisher haben wir uns ja nur Software-Lösungen angesehen, allerdings gibt es aber auch Hardware-Schnellader. Diese werden entweder als Steckmodul an den Expansionsport des Computers gesteckt oder sogar in Form eigener Hardware (Platinen samt ROM-Chips) in den Computer und das Diskettenlaufwerk verbaut. Bekannte Vertreter sind z.B. JiffyDOS, SpeedDOS, EXOS oder Turbo Trans. Hier im Bild sehen wir einen SpeedDOS-Umbau:

Da ich kein Fan davon bin, die originale C64-Hardware (sei es nun der Computer oder das Laufwerk) großartig zu verändern, habe ich mich für eine Steckmodul-Lösung entschieden. Ein sehr bekannter Vertreter dieser Gattung ist die „Final Cartridge“. Neben Schnellladefunktionen bietet sie zahlreiche weitere Möglichkeiten das letzte bisschen Leistung aus dem C64 heraus zu kitzeln! 🙂

Das Modul wird leider schon lange nicht mehr produziert, trotzdem findet man manchmal Angebote auf eBay. Ebenso werden auch heute noch Bausätze von enthusiastischen Fans verkauft. Völlig klar, dass ich sofort zugeschlagen habe, als ein netter Verkäufer einen vollständigen Bausatz für 20€ auf eBay angeboten hat! 😉 Mit dabei war ein Bestückungsplan sowie der Link für die Anleitung als PDF zum Download.

Was den Zusammenbau des Moduls angeht, mussten die üblichen Bauteile verlötet werden. Erst Widerstände und Dioden…

…dann ein paar Kondensatoren, Taster und Jumper…

…und abschließend die IC-Sockel. Letztendlich war die Bestückung der Sockel mit den Chips fast das schwierigste, weil einer der Chips (der EEPROM mit der eigentlichen Software darauf) zwei doch arg verbogene Pins hatte, die ich erst mit einer Zange überreden musste wieder gerade zu werden! 😉

Fertig! 🙂

Fun Fact: Tatsächlich ist die Final Cartridge offiziell lediglich in Version 3 erschienen. Die hier gezeigte Version „III+“ ist ein von Fans erstelltes Update und enthält einige zusätzliche Programme! 🙂

Und wie funktioniert das Teil? Nun, als erstes muss die Final Cartridge in den Expansionsport des C64 eingesteckt werden.

Nach dem Einschalten des Commodore erscheint nicht mehr der BASIC-Prompt, sondern stattdessen der „Desktop“, eine Art grafische Oberfläche für den C64. Es gibt sogar einen Cursor, welcher sich mit der Tastatur, oder alternativ mit dem Joystick steuern lässt.

Über den Menüpunkt „Utilities => Disk“ lässt sich ein eigenes Menü zur Verwaltung des Disketteninhalts aufrufen:

Darin können wir sämtliche Befehle, welche sonst mühsam händisch eingetippt werden müssen, einfach grafisch per „Mausklick“ auswählen.

Über die Auswahl „DIR 1“ wird z.B. das Directory der Diskette gelesen. Klappt prima! 🙂

Um jetzt Tetris zu starten, müssen lediglich der Eintrag „TETRIS“ und die Aktion „RUN“ ausgewählt und mit einem abschließenden Klick auf „DO“ gestartet werden.

WOW – insgesamt hat der eigentliche Ladevorgang nur neun Sekunden benötigt! Das funktioniert, weil die Final Cartridge einen optimierten Lesealgorithmus implementiert. Schade ist nur, dass etwas Zeit für die Menünavigation (Diskmenü öffnen, Software auswählen und starten) draufgeht.

Ok, und wie sieht es mit der Kombination Final Cartrige + SD2IEC aus?

Im Prinzip funktioniert es genauso wie mit einem echten Diskettenlaufwerk, nur dass hier als Zwischenschritt noch der Filebrowser des SD2IEC geladen werden muss.

Zugegeben, das ist etwas aufwändig, aber sobald dieser mal läuft, profitiert er von allen Vorzügen der Final-Cartridge. Da wir nicht von einer echten Diskette sondern von SD-Karte laden, ist der reine Ladevorgang in vier Sekunden beendet – Wahnsinn! 🙂

Da das jetzt alles doch sehr verwirrend war hier nochmal eine kleine Tabelle als Übersicht. Die Ladezeit netto symbolisiert den eigentlichen Ladevorgang (nur für Tetris), mit der Ladezeit brutto habe ich versucht auch die Zeit für die Aktivitäten drum herum (z.B. Menünavigation, eintippen von Befehlen, etc.) mit zu betrachten – die Werte sind allerdings nur realistisch sofern man im Eintippen der Befehle geübt ist! 😀

Fun Fact: Natürlich habe ich der Vollständigkeit halber auch noch die Ladevorgänge über Datassette und MP32C64 ausprobiert. Von der Theorie her müssten sie exakt gleich lang sein. In der Praxis war es nicht so, ich vermute, dass der Motor meiner Datassette etwas langsamer eingestellt ist und dadurch etwas Zeit verliert. 🙂

So, genügend Infos für heute. Natürlich bietet die Final Cartridge noch zahlreiche weitere Funktionen, auf welche ich beim nächsten Mal noch etwas genauer eingehen möchte! 🙂

In diesem Sinne – bis die Tage! 🙂

#152 – el commodore – XI – SD2IEC

Während wir beim letzten Mal zum Übertragen von Dateien noch den Weg über das Diskettenlaufwerk 1541 gegangen sind, möchte ich euch heute noch eine weitere, noch einfachere Möglichkeit vorstellen, wie wir Programme auf dem C64 von einer externen Quelle zum Laufen bekommen! 🙂

Dafür brauchen wir ein weiteres Stück Hardware namens „SD2IEC“. Das SD2IEC ist ein Diskettenlaufwerksemulator und ermöglicht die Verwendung von SD-Karten als Speichermedium für den C64. Analog dem XUM1541 habe ich es als Bausatz aus dem „Faszination C64“-Shop erworben.

Während das XUM1541 noch recht einfach aufgebaut war, sind es diesmal deutlich mehr Teile, die es zu verlöten gilt. Aus dem Beutel purzeln Kondensatoren, Widerstände, Sockel, LEDs, Taster und einige weitere Bauteile. Puh, das sieht nach viel Arbeit aus! 😀

Ebenso ist bei dem Kit eine 16MB-SD-Speicherkarte mit Firmware, Beispielprogrammen (Spielen) und einem vorinstallierten Dateibrowser dabei – das ist sehr cool, weil man sich normalerweise die ganzen Dateien mühsam im Netz selbst zusammensuchen muss! 🙂

Na dann, es wird Zeit für eine weitere Löt-Session! Lötkolben aufwärmen: Check. Teile sortieren und bereitlegen: Check. Bier bereitstellen: Check. Ich denke es kann losgehen! 😉

Gerade zu Beginn habe ich mich stark an die Anleitung gehalten und dementsprechend als erstes den Quarz, sowie den IC-Sockel verlötet.

Anschließend waren die Widerstandsnetzwerke an der Reihe. Es war gar nicht so einfach die Teile halbwegs gerade zu befestigen, weil sie nicht richtig auf der Platine aufliegen. So ein blödes Bauteil! 😀

Natürlich dürfen auch Kondensatoren…

…ein DIP-Schalter…

…ein paar bunte LEDs in Ampelfarben…

…sowie ein paar Taster…

…und natürlich eine serielle Buchse zum Anschluss an den C64 nicht fehlen.

Abschließend muss eigentlich nur noch ein Festspannungsregler, ein Elektrolytkondensator…

…und natürlich der Kassettenport-Stecker zur Stromversorgung verlötet werden.

Jetzt noch schnell den Atmega 1284P Mikrocontroller einsetzen und fertig ist das gute Stück! 🙂

Fun Fact: Das Einsetzen des Chips hat fast am längsten gedauert, weil ich extrem vorsichtig war keine Beinchen abzubrechen. Bloß nicht kurz vor Schluss noch Mist bauen! 😉

Das SD2IEC wird (genauso wie ein Diskettenlaufwerk auch) über ein serielles Kabel (als Datenleitung) mit dem C64 verbunden. Zusätzlich wird es in den Kassettenport des C64 gesteckt und über diesen Weg mit Spannung (5 Volt) versorgt.

Von der Handhabung her lässt sich das SD2IEC fast genauso wie ein normales Diskettenlaufwerk bedienen. So kann man sich nach dem Start des C64 mit „LOAD“$“,8“ und einem anschließenden LIST-Befehl den Inhalt der SD-Karte anzeigen lassen. Soweit die Theorie – denn leider bekomme ich einen Fehler:

Ob ich wohl etwas beim Löten verbockt habe? Natürlich war ich irritiert und habe sämtliche Lötstellen überprüft. Auch die Software (Inhalt der SD-Karte) habe ich nochmal unter die Lupe genommen, ob sich nicht doch irgendwo ein Fehler eingeschlichen hat. Tja, was soll ich sagen, die Lösung wäre viel einfacher gewesen – ich habe schlicht und einfach vergessen das Teil über den DIP-Schalter 1 einzuschalten! 😀

Oh Mann – wie peinlich! Und ich habe mich schon gewundert, wieso keine LED geleuchtet hat 😀 Kaum macht man es richtig, funktioniert es auch und wir sehen den Disketteninhalt. Mit Hilfe des Befehls „LOAD“FILEBROWSER“,8“ sowie einem anschließenden „RUN“…

…lässt sich der Dateibrowser des SD2IEC starten. Mit den Pfeiltasten und RETURN kann man nun in den Ordner GAMES springen, in welchem sich bereits einige Beispielprogramme befinden! 🙂

Fun Fact: Wer hardcore drauf ist, verwendet keinen Dateibrowser sondern tippt die Floppy-Befehle händisch ein. Nein danke! 😀

Um nun ein einfaches Programm (PRG) zu laden, muss man es lediglich auswählen und über einen Druck auf die RETURN-Taste starten. Hier spiele ich z.B. gerade „Arkanoid“, ein echter Arcade-Klassiker, der vielleicht einigen Spielehallen-Freaks auch unter dem Titel „Breakout“ bekannt ist. Ziel des Spiels ist es, mit einem nur seitlich bewegbaren Schläger einen Ball durch die Gegend springen zu lassen um Mauersteine zu zerstören. Klingt einfacher als es ist!

Fun Fact: Zwar ist das SD2IEC beim Laden eines Programms etwas schneller als ein normales 1541-Diskettenlaufwerk, aber leider auch nicht wirklich viel. Je nach Dateigröße benötigt der Ladevorgang bis zu mehreren Minuten!

Neben normalen Programmen kann das SD2IEC auch Disk-Images (D64) öffnen. Diese befinden sich im Unterverzeichnis „Disks D64“ und beinhalten selbst eigentlich auch wieder nur startbare Programme. Hier habe ich beispielsweise gerade „California Games“ geladen, eine Art Spielesammlung mit sommerlichen Sportarten wie BMX, Surfing, Skating oder Frisbee-Werfen! 😀

Fun Fact:  Dateinamen mit mehr als 11 Zeichen werden auf das 8.3-Namensformat, welches ihr vielleicht noch aus DOS-Zeiten kennt, umgebrochen! 😉

Ich habe mich an der Disziplin „Half-Pipe“ versucht und bin dabei kläglich gescheitert, bzw. permanent auf die Fresse geflogen. Erst ein paar Versuche später habe ich es tatsächlich mal geschafft einen „Trick“ (wenn es auch nur eine einfache 180 Grad-Drehung war) zu landen. Eigentlich hatte ich den Eindruck, dass ich nicht besonders gut abgeschnitten habe, aber scheinbar sind die Highscores von Haus aus so niedrig gesetzt, dass es sogar für eine neue Bestpunktzahl samt einem netten Pokal gereicht hat! xD

Soviel zu normalen PRG-Dateien und D64-Images. Leider erstrecken sich viele für den C64 entwickelten Spiele über mehrere Disketten (bzw. über Vorder- und Rückseiten von Disketten). Eines dieser Spiele ist z.B. Turrican, welches wir ja bereits in den Artikeln 150 und 151 kennengelernt haben. Auch für solche „Problemfälle“ hat das SD2IEC eine Lösung parat! Mit Hilfe der beiden Diskswaptaster lässt sich eine Art „virtueller Diskettenwechsel“ durchführen.

Damit der virtuelle Wechsel klappt, muss für jedes Spiel einmalig eine Diskswap-Datei erstellt werden. Das passiert, indem man das Spiel ganz normal lädt, bis eine „Diskette wechseln“-Meldung erscheint. Dann muss man beide Taster kurz gleichzeitig drücken um eine entsprechende Swapdatei (genannt Swaplist) zu erstellen (die rot blinkende LED bestätigt den Schreibvorgang auf Diskette).

Diese Datei befindet sich dann im Spielordner und heißt „AUTOSWAP.GEN“. Ganz wichtig: Die Datei muss in „AUTOSWAP.LST“ umbenannt werden und die Namen der D64-Images selbst dürfen nicht länger als acht Zeichen sein. Glaubt mir, ich habe viele Stunden mit Troubleshooting verschwendet, weil ich das nicht gewusst habe! 😀

Möchte man das Spiel nun erneut spielen und muss zu einem bestimmten Zeitpunkt die Diskette wechseln, so lässt sich das einfach mit Hilfe der beiden Taster erledigen (linker Taster für die vorherige Diskette, rechter Taster für die nächste Diskette) – läuft! 🙂

Fun Fact: Theoretisch kann man auch mehrere Multidisk-Spiele in ein Verzeichnis packen, allerdings dürfen in der AUTOSWAP.LST nicht mehr als 255 Einträge sein. Spätestens jetzt wird mir klar, wieso die Verzeichnisstruktur so angelegt wurde und Spiele, welche mehrere Disketten benötigen, in einem eigenen Ordner liegen.

Ich denke das reicht erst mal für heute, wird Zeit für ein kurzes Fazit. An sich ist das SD2IEC fast perfekt, allerdings nervt es etwas, dass man nach jedem Neustart des C64 wieder den „LOAD“FILEBROWSER“,8“-Befehl eintippen muss. Es gibt Ansätze, sich zumindest den RUN-Command zu sparen, aber um das Eintippen des Befehls kommt man nicht herum. Ebenso fallen mir die sehr langen Ladezeiten auf. Man hat fast das Gefühl man sitzt vor einem echten Laufwerk. Nun, das muss man dem SD2IEC lassen – in dieser Hinsicht emuliert es das 1541 perfekt! 😀

Doch genug gespottet – trotz der kleinen Problemchen ist das SD2IEC ein cooles Gerät, mit dem sich geräteunabhängig zahlreiche Software auf den C64 laden lässt! Mir wird schwindelig, wenn ich an die zahlreichen Einsatzmöglichkeiten denke. Jetzt bräuchte man nur noch mehr Zeit um das alles auszuprobieren… 🙂

Last but not least – auch diesmal hat mir Max ein Gehäuse für das Teil gedruckt – vielen lieben Dank dafür! 🙂

So, jetzt entschuldigt mich bitte, ich denke ich habe mir jetzt eine Runde Tetris zur Entspannung redlich verdient! 🙂

Bis die Tage!

#151 – el commodore – X – XUM1541

Tja – beim letzten Mal habe ich doch glatt großspurig angekündigt, dass wir heute eine Möglichkeit finden werden direkt Dateien von einem PC auf C64-Disketten zu übertragen. Aber wie soll das gehen?

Tja, genau für dieses Problem wurde das „XUM1541“ entwickelt:

Das XUM1541 ist ein Adapterkabel zum Anschluss eines C64-Diskettenlaufwerks an einen modernen PC über USB zur Übertragung von Daten auf Diskette (oder natürlich auch umgekehrt). Es kann fertig oder als Bausatz erworben werden. Selbstverständlich habe ich mich für die Bausatz-Variante entschieden – wo bleibt sonst die Herausforderung? 😀

Fun Fact: Die Idee, ein C64-Laufwerk an einen PC anzuschließen ist schon recht alt. In seiner ursprünglichen Form wurde das X1541-Kabel an den Parallelport eines PCs angeschlossen, wenn auch die Daten nur seriell übertragen werden. Ich mag zwar so alten Schrott, aber in dem Fall habe ich mich hinreißen lassen, mal die „moderne“ USB-Variante auszuprobieren! 😉

Der Bausatz kostet ca. 25€ und stammt von einem C64-Enthusiasten aus München, welcher seine Produkte auf eBay unter dem Namen „Faszination C64“ anbietet. Das Kit kommt mit einer sehr ausführlichen, bebilderten Anleitung. Darin ist nicht nur der Zusammenbau, sondern auch etwas C64-Geschichte sowie hilfreiche Tipps für den Umgang mit elektronischen Bauteilen (inklusive Hinweise zum Löten) beschrieben. Ebenso mitgeliefert wird ein Lieferprogramm, in welchem weitere Produkte fertig oder als Bausatz angepriesen werden – echt Wahnsinn was es da alles gibt…!

Fun Fact: Ernsthaft Leute – selten habe ich so eine gute und verständliche Anleitung gesehen – Lego und IKEA können einpacken! 😀

Mal sehen was in dem Kit alles drin ist… Neben der Hauptplatine finden sich ein Widerstand, ein Wannenstecker, eine Stiftleiste, ein Teensy 2.0 USB-Mikrokontroller, ein Mini-USB-Kabel, eine LED und eine serielle Buchse.

Fun Fact: Wer Zeit und Lust hat, kann das ganze natürlich auch für ein paar Euro weniger komplett auf eigene Faust bauen, aber allein auf die Einzelteilbeschaffung habe ich keinen Nerv! 😀

Na dann, frisch ans Werk! Der Anleitung zufolge habe ich zuerst den Widerstand auf die Platine und anschließend den Teensy auf die Stiftleiste verlötet. Natürlich muss man die Stiftleiste zuvor in drei passend große Teile trennen.

Als letztes müssen dann nur noch die Stiftleiste sowie die serielle Buchse auf der Unterseite der Platine verlötet werden.

Fertig ist das gute Stück! 🙂

Fun Fact: Den Wannenstecker benötigt man nur, wenn man das XUM1541 auch zusätzlich noch parallel mit einem C64-Diskettenlaufwerk verbinden möchte. Damit ließe sich die Übertragungsgeschwindigkeit deutlich steigern, doch leider muss man hierfür das Diskettenlaufwerk öffnen und modifizieren. Darauf habe ich definitiv keine Lust und darum habe ich mir gleich das Verlöten des Wannensteckers gespart! 😉

Na, das sollten wir doch gleich mal testen, ob das Ding auch wirklich funktioniert. Über die serielle Schnittstelle wird die Platine mit dem C64-Diskettenlaufwerk verbunden. Der Teensy wird über einen USB-Anschluss mit dem PC verbunden.

Fun Fact: Da das Mini-USB-Kabel recht kurz ist, habe ich die Platine mit dem „NES USB Tool“ aus Artikel 4 (ja ja, lang ist’s her) verbunden – fancy! 😀

Zumindest wird das XUM1541 schon mal im Gerätemanager erkannt, wenn auch kein passender Treiber installiert werden konnte.

Die USB-Treiber sind in einem Software-Paket namens „OpenCBM“ enthalten. An sich eine gute Sache, doch da Windows 10 leider die Installation unsignierter Treiber nicht mehr zulässt müssen wir etwas tricksen! 😉 Mit Hilfe des Tools „Zadig“ lässt sich der „libusb-win32“-Treiber installieren und mit dem offiziellen WinUSB-Treiber von Microsoft austauschen.

So sieht das schon besser aus! 🙂

Um jetzt auch wirklich Dateien auszutauschen, wird natürlich noch etwas Software benötigt. Um „OpenCBM“ zu installieren, muss einfach die „install.bat“ als Administrator ausgeführt werden:

Nach einer kurzen Installation…

… muss noch das Verzeichnis der OpenCBM-Installation dem System-Path hinzugefügt werden, um später die entsprechenden Befehle von überall verwenden zu können:

Jetzt sind wir endlich soweit das Laufwerk einzuschalten und eine Diskette einzulegen. Natürlich verwende ich die retrololo-Diskette aus Artikel 147.

Mit dem Befehl „cbmctrl detect“ lässt sich anzeigen ob, und wenn ja welche Laufwerke am PC angeschlossen sind. Mit Hilfe des Commands „cbmctrl dir 8“ lässt sich dann das Dateiverzeichnis auslesen. GEIL – es klappt tatsächlich! 🙂

Zugegeben, die Handhabung in der Kommandozeile ist nicht gerade benutzerfreundlich. Abhilfe schafft da eine grafische Oberfläche namens „CBMXfer“.

Fun Fact: Ich konnte es nicht lassen euch die Bilder der Installationsroutine zu zeigen, denn so etwas sieht man nicht alle Tage – der Dialog sieht so aus als käme er direkt aus den Neunzigern! 😀

Die Software selbst ist auch nicht gerade besser, passt aber optisch perfekt zum C64! 😀

Immerhin scheint unsere Diskette nach einem Klick auf „Directory“ einwandfrei erkannt zu werden! 🙂

Die Bedienung gestaltet sich dafür überraschend einfach. Über die grünen Pfeile können einzelne Dateien zwischen PC und Diskette übertragen werden:

Über die Funktion „View“ kann man eine PRG-Datei genauer inspizieren und sich sogar den BASIC-Code ansehen – cool! Hier im Bild sehen wir das von mir erstellte Beispielprogramm aus Artikel 142, mittlerweile schon fast ein alter Bekannter! 😉

Fun Fact: Mittlerweile gibt es sogar Webseiten, auf denen man sich den BASIC-Code von PRG-Dateien anzeigen lassen kann – irre! 😀

Ist keine Datei markiert wird beim Kopiervorgang auf den PC ein vollständiges Diskettenimage (.D64) erstellt.

So habe ich z.B. ein Image des Spiels „Maniac Mansion“ erstellt:

Fun Fact: Beim Versuch originale Spiele zu sichern, stößt man aber leider – spätestens dann, wenn ein Kopierschutz verwendet wird – an seine Grenzen. Dafür müsste man das Laufwerk modifizieren und den Parallelport auf dem XUM1541 verwenden, um mit Hilfe von Software wie z.B. „NIBTools“ die entsprechenden Routinen zu umgehen und eine Sicherung zu ermöglichen.

Die einzelnen Programme und D64-Images kann man dann auf dem PC in einem Emulator abspielen. Hier verwende ich z.B. die Software „CCS64“:

Natürlich lassen sich auch Disketten mit einzelnen Programmen oder Images beschreiben. Wer sich erinnert – beim letzten Mal habe ich noch einen recht umständlichen Weg (Stichwort Multiload) gehen müssen, um „Turrican“ (kennen wir ja bereits aus Artikel 150) zu starten. Jetzt habe ich mir das Spiel einfach mit Hilfe des XUM1541 auf eine Diskette gepackt:

So lässt sich Turrican wesentlich zuverlässiger starten, allerdings habe ich das Gefühl, dass der Ladevorgang vom Diskettenlaufwerk fast noch langsamer ist, als der via MP32C64. Aber was soll’s, die eine Minute hin oder her machen das Kraut jetzt auch nicht fett. Wenn ich ehrlich bin, bin ich begeistert, dass das überhaupt so funktioniert! 🙂

Fun Fact: Die Daten des Spiels sind auf Vorder- und Rückseite aufgeteilt. So muss man während des Ladevorgangs an einer bestimmten Stelle die Diskette aus dem Laufwerk nehmen, umdrehen, wieder rein schieben und mit der Leertaste den Ladevorgang fortsetzen! 😀

Besonders cool finde ich, dass man mit dem XUM1541 letztendlich moderne und alte Technik vereint. Und Daten auf Diskette zu speichern gefällt mir grundsätzlich gut – viel mehr „retro“ geht nicht! 🙂

Das einzige was nicht ganz so schön ist, ist die lose Platine. Alles kein Problem, denn für schlappe vier Euro (inklusive Versand) kann man zusätzlich ein kleines Plastikgehäuse für das Teil bestellen. Natürlich könnte man auch selbst ein Gehäuse mit einem 3D-Drucker drucken, aber für unter 5 Euro lohnt sich das auf keinen Fall. Damit die Platine auch in das Gehäuse passt, muss die serielle Buchse noch etwas bearbeitet werden.

Ebenso müssen zwei Löcher für das USB-Kabel und die serielle Buchse gebohrt werden. Als kleines „Schmankerl“ kann man noch eine LED verlöten und ein weiteres Loch auf der Oberseite bohren…

… um den Status (Zugriff auf das Laufwerk) von außen erkennen zu können – sehr cool! 🙂

So, bitte entschuldigt mich jetzt, ich bin dann mal weg. Ich möchte noch ein paar weitere Disketten inspizieren und deren Programme ggf. sichern. Wenn ich mir so den riesigen Stapel an Disketten ansehe gibt es noch viel zu tun… 😀

Bis die Tage! 🙂

#150 – el commodore – IX – MP32C64

Beim letzten Mal haben wir ja die Datassette so modifiziert, dass wir direkt in Audiodateien (WAV) konvertierte Programme über ein Klinkenkabel auf den C64 laden können. Hier nochmal ein Bild zur Erinnerung:

Ich habe es natürlich nicht lassen können und noch etwas weiter damit herumgespielt! 😉 Tatsächlich ist die umgebaute Datassette relativ tolerant was das Eingangssignal angeht. Damit die Dateien nicht zu groß werden, habe ich sie von WAV auf das handlicherer MP3-Format konvertiert:

So, schon viel besser! 🙂

Den C64, bzw. die modifizierte Datassette stört das nicht und die Spiele werden weiterhin ohne Probleme geladen! 🙂

Besonders cool finde ich, dass der Übertragungsvorgang im Endeffekt mit jedem beliebigen Gerät funktioniert, welches sich über ein Stereokabel an die Datassette anschließen lässt. Wie wäre es z.B. mit einem iPod shuffle? Erinnert sich noch jemand an die Teile? 😀

Fun Fact: Die einzige Voraussetzung ist, dass die Quelle ein möglichst sauberes und lautes Signal ausgibt. Ich habe es zuerst mit einem Uralt-MP3-Player ausprobiert, welcher leider die benötigte Lautstärke nicht herbekommen hat…

Während ich mir beim iPod um die Soundqualität keine Sorgen mache, besteht die Schwierigkeit eher darin überhaupt noch Musikstücke auf das Ding zu bekommen. Ein einfaches „MP3s draufkopieren“ wie bei jedem anderen Player ist nicht drin. Stattdessen müssen die einzelnen Musikstücke über „iTunes“ auf den iPod geschoben werden, damit die Titel-Datenbank auf dem iPod die Musikstücke auch erkennt – ganz großes Kino!

Fun Fact: Ernsthaft Leute – Fuck iTunes! 😀 Wer das Ding für eine gute Software hält, der sollte sofort die Finger von allen technischen Geräten in einem Radius von 5 km lassen. Ich bin kein Apple-Fan, aber die iPods sind echt solide und intuitive Geräte. Wie kann man diese Philosophie nur mit so einer grottigen Verwaltungssoftware zerstören?! Naja, zumindest scheine ich mit dieser Meinung nicht alleine zu sein… 😉

Eins ist klar – iTunes kommt mir auf keinen Fall auf den Rechner. Ich will gar nicht an die vielen Stunden Zeit denken, die ich schon mit der Software verschwendet habe, sei es nun beim iPod oder iPhone. Gut, dass ich mich noch an eine alte Software aus Jugendtagen erinnert habe. Sie ist zwar auch schon knapp zehn Jahre alt, läuft aber selbst auf neuesten Betriebssystemen ohne Probleme. Darf ich vorstellen: „Floola“! 🙂

Damit habe ich die „donkey.mp3“ ohne Probleme auf den iPod übertragen können. Kaum an die Datassette gestöpselt…

…lässt sich tatsächlich Donkey Kong laden – geil! Ist das nicht beeindruckend? Wie laden mit einem 13 Jahre alten iPod shuffle ein fast 40 Jahre altes Videospiel auf einen 33 Jahre alten Heimcomputer – viel mehr „retro“ geht nicht! 😀

Auch die moderne Welt lässt sich mit dem C64 verheiraten! So können die MP3- oder WAV-Dateien z.B. auch über ein Smartphone auf den Commodore gestreamt werden – fancy shit! 😀

Fun Fact: Es gibt für Android-Smartphones wohl sogar eine App namens „tapDancer“ mit welcher TAP, T64 und PRG-Dateien direkt als Audiosignal ausgegeben werden können. So spart man sich den Konvertierungsvorgang im Vorfeld.

Zur Abwechslung habe ich diesmal Giana Sisters ausgewählt – funktioniert auch ohne Probleme! 🙂

Schon cool das alles, aber wenn man ehrlich ist drängt sich doch eine Frage auf: Wozu benötigt man denn jetzt noch die Datassette? Diese konvertiert ja eigentlich nur noch das Audiosignal für den C64. Und irgendwie ist es auch etwas albern, wenn das Laufwerk immer „leer“ (ohne Kassette) mitläuft. Noch besser wäre es, wenn man das Signal „direkt“, also ohne die Datassette dazwischen einspielen könnte. Tatsächlich gibt es auch hierfür eine Lösung – darf ich vorstellen, das „MP32C64“:

Das MP32C64 ist ein Datasettenemulator über welchen wir letztendlich genau das gleiche wie mit unserer modifizierten Datassette durchführen können – nur eben ohne das eigentliche Gerät! 🙂 Analog der Datassette wir das MP32C64 in den Kassettenport des C64 gesteckt…

… und über ein Klinkenkabel mit einer externen Audioquelle verbunden.

Fun Fact: Mit dem Jumper auf der Oberseite lässt sich steuern, ob das Eingangssignal normal oder invertiert ausgegeben werden soll. Im Idealfall muss man hier nichts ändern, aber einige (ältere) Abspielgeräte geben wohl das Audiosignal invertiert aus.

Im Vergleich zu der getunten Datassette muss man beim MP32C64 nicht auf „Play“ drücken (gibt ja auch gar keinen Knopf). Stattdessen beginnt bei einem „LOAD“-Befehl direkt der Ladevorgang und man kann den Abspielvorgang auf der externen Audioquelle starten – praktisch! 🙂

So kann ich auch Donkey Kong über diesen Weg zum Laufen bekommen. Stellt euch vor – dieses Mal habe ich es sogar tatsächlich bis in Level 3 geschafft! 😀

Hm, merkwürdig… Die von mir erstellten MP3-Dateien werden über das MP32C64 leider nicht korrekt geladen, aber mit den original konvertierten WAV-Dateien kann das Teil ohne Probleme umgehen kann. Woran liegt’s?

Tatsächlich ist das MP32C64 – zumindest was MP3-Dateien angeht – etwas zickiger als die modifizierte Datassette – wer hätte es gedacht? 🙂

Damit es auch beim MP32C64 mit den MP3-Dateien klappt, wird eine recht hohe Qualität der Audiodatei benötigt. Im Falle von Donkey Kong habe ich es z.B. nur mit einer Bitrate von 320kBit/s und einer Ausgabefrequenz von 48000 Hz (anstatt dem Standardwert 44100 Hz) hinbekommen. Dafür musste ich zuerst die Quell-WAV-Datei aus dem TAP-Image mit einer höheren Ausgabefrequenz konvertieren…

…bevor ich sie mit dem „fre:ac“ Audio Converter im Zusammenspiel mit dem „LAME MP3 Encoder“ in eine MP3-Datei konvertieren konnte.

Hier die beiden Dateien im Vergleich:

Jetzt funktioniert auch der Ladevorgang via MP3 – sehr schön! 🙂

Cool, dass das funktioniert, aber der ganze Dateiumwandlungsprozess ist doch schon sehr aufwändig. Wenn man sich den umständlichen Konvertierungsvorgang sparen möchte, kann man auf eine große Bibliothek an bereits fertig konvertierten Spielen zurückgreifen! Natürlich habe ich es mir nicht nehmen lassen das ein oder andere Spiel aus dem Archiv zu testen. Eins ist auf den ersten Blick ersichtlich – hier hat jemand einiges an Zeit investiert. In den Metadaten der MP3-Dateien sind sogar Vorschaubilder der eigenen Spiele als Albumcover eingepflegt – sehr cool! 🙂

Fun Fact: Das „C64-MP3-Archiv“ wurde von einem Spanier entwickelt, welcher das MP32C64 fertig oder als Bausatz für ca. 20€ verkauft. Ich habe meines bereits vor einigen Jahren als Bausatz gekauft und zusammengelötet. Leider habe ich keine Bilder mehr vom Zusammenbau… 😦

Ghost ‘n Goblins kenne ich noch vom NES. Ich hatte gehofft es wäre auf dem C64 etwas leichter, aber da habe ich mich wohl geschnitten… 😀

Wer noch fauler ist, für den gibt es sogar ein Online-Archiv auf einer italienischen Seite, auf welcher direkt die MP3-Dateien diverser Spiele abgespielt und so über ein Gerät mit Internetzugang auf den Commodore übertragen werden können!

Fun Fact: Ich habe noch eine weitere Seite mit C64-Programmen zum direkten Abspielen gefunden, allerdings scheint sie nicht vollständig zu sein.

Das ist schon verrückt… Retro-Games per „MP3-Streaming“ direkt aus dem Internet übers Smartphone auf den C64 – läuft! 😀

Fun Fact: Hier spiele ich gerade „Out Run“, einen Arcade-Racer aus dem Jahre 1988. Zu Beginn des Spiels lässt sich sogar ein gewünschtes Musikstück auswählen – gefällt mir richtig gut, was der C64 SID-Soundchip mir hier auf die Ohren zaubert! 🙂

Tja, was soll ich abschließend über das MP32C64, bzw. die modifizierte Datassette noch sagen? Insgesamt betrachtet bin ich überrascht wie gut das alles funktioniert hat. Klar gibt es den ein oder anderen Stolperstein, aber alleine die Tatsache, dass wir Computerprogramme auf Kassetten oder in Form einer MP3-Datei speichern und wieder laden können lässt mich immer noch staunen! 🙂

Trotzdem gibt es aber leider auch ein paar negative Punkte. Zum einen wird man komplexere (größere) Spiele, welche exklusiv auf Diskette erschienen sind, mit dem MP32C64 nicht zum Laufen bekommen. Lediglich Spiele, welche auf Kassette erschienen sind oder nur aus einer Programmdatei bestehen, lassen sich in eine Audiodatei konvertieren. Ein weiteres großes Problem ist das Thema „Nachladen“ bei sogenannten „Multiload-Spielen“. Der Run-and-Gun-Klassiker „Turrican“ von Rainbow Arts aus dem Jahre 1990 ist da so ein Fall. Hier musste ich nach gut eineinhalb Minuten die Wiedergabe stoppen, dann mit dem Joystick eine Auswahl im Hauptmenü treffen und anschließend die Wiedergabe zum Laden des ersten Levels erneut anstoßen – nicht gerade intuitiv und sehr fehleranfällig! 🙂

Generell sind Spiele, welche in irgendeiner Art und Weise die Datassette steuern (anhalten oder nach kurzer Zeit wiederanlaufen lassen) ein Problem. In vielen Fällen (wie z.B. bei Giana Sisters) muss man dann während des Ladevorgangs die Leertaste gedrückt halten um das Intro schnell zu überspringen, sodass der Ladevorgang nicht unterbrochen wird. Das ist unschön, aber daran lässt sich nichts ändern. Die Datassette (oder eben das MP32C64) haben keine Möglichkeit, die Wiedergabequelle zu steuern.

Fun Fact: Für ungeduldige Leute ist vermutlich auch die Ladezeit ein Thema. Selbst bei C64-TAP-Images, welche einen Schnelllader im Bauch haben, muss man etwas Geduld aufbringen, bis ein Spiel geladen ist (meistens so eine bis vier Minuten). Mir persönlich macht das nichts aus, das gehört zum Retro-Erlebnis ja schon fast dazu. 😉

Trotzdem lassen sich echt viele Programme damit zum Laufen zu bekommen und die Verknüpfung von Technologien diverser Jahrzehnte begeistert mich einfach! 🙂

Mehr gibt es eigentlich nicht zu sagen… Ach doch – bevor ich es vergesse: Damit die Platine nicht so lose durch die Gegend fliegt, hat mir mein Kumpel Max ein Gehäuse mit seinem 3D-Drucker ausgedruckt – sehr stylisch! 🙂

Puh, ich denke damit sollten wir das Thema „Datassette“ erst mal ruhen lassen. Durchatmen Leute, beim nächsten Mal werden wir uns ein weiteres Stück Hardware ansehen, mit welchem man Dateien von einem PC zum C64, bzw. auf dessen Disketten übertragen kann. Diesmal sogar ganz ohne Audiokonvertierungsorgien. Wie das wohl geht? Wir werden es herausfinden, aber nicht mehr heute…

Jetzt entschuldigt mich bitte, ich habe da in „Commando“ noch eine Rechnung mit ein paar feindlichen Soldaten offen…

In diesem Sinne – bis die Tage! 😉

#149 – el commodore – VIII – WAV LOAD

Schon cool, dass das beim letzten Mal mit dem Überspielen der Kassette geklappt hat! 🙂 Aber wenn man ehrlich ist, dann ist das schon eine sehr aufwändige Lösung um Programme von einem „normalen“ PC auf den C64 zu bringen. Da muss es doch was Besseres geben! 🙂

Richtig gut wäre es, wenn man überhaupt keine Kassette benötigen würde und stattdessen die Audiodateien einfach irgendwie am C64 einspielen könnte! Eins ist klar – ich würde nie eine so steile These aufstellen, wenn es nicht wirklich eine Lösung geben würde! 😛 Tatsächlich lässt sich die Datassette relativ einfach modifizieren um direkt externe Audiosignale verarbeiten zu können. Klingt cool, doch wie geht das?

Als erstes benötigen wir mal eine Datassette, die wir „zerstören“ können. Da ich jetzt schon einige Zeit mit meiner Datassette verbracht und sie endlich halbwegs vernünftig justiert habe, möchte ich eigentlich ungern an ihr herumschrauben. Kein Problem, extra für dieses Bastelprojekt habe ich mir eine weitere auf eBay ersteigert! 😀

Zugegeben, das gute Stück hat schon ziemlich gelitten – leider nicht nur optisch, sondern auch technisch. So konnte ich bei einem Test keine einzige Kassette damit zum Laufen bekommen. Auf einen ersten Blick sieht es so aus als wäre der Antriebsriemen ausgeleiert. Ebenso scheint die Positionierung des Tonkopfes nicht ganz zu stimmen. Zumindest die Verbindung zum C64 scheint grundsätzlich zu funktionieren, denn die Datassette nimmt Befehle vom Computer einwandfrei entgegen.

Fun Fact: Dafür hat mich das Teil auch nur 2€ plus Versand gekostet! 🙂

Um ehrlich zu sein, will ich mich mit den Problemen gar nicht weiter beschäftigen, denn zum einen habe ich ja bereits eine funktionierende Datassette und andererseits benötigen wir den Kassettenmechanismus ja nach der Modifikation nicht mehr! 😉

Also – wie geht’s los? Nun, in jedem Fall müssen die vier Schrauben auf der Rückseite der Datassette gelöst werden.

Im Vergleich zum relativ großen Gehäuse wirken die Innereinen der Datassette fast spartanisch. Ich bin beeindruckt, wie klein der Laufwerksmechanismus gehalten wurde, das erinnert mich fast an einen alten Walkman! 🙂

Oh Mann – ich liebe den extrem einfachen Mechanismus des Bandzählwerks! 😀 Ernsthaft! Letztendlich wird nur die Drehung des Motors (zum Bewegen des Bands) über einen Riemen auf ein kleines Zahnrad übertragen, welches das Bandzählwerk weiterdreht. So einfach, aber so genial! 🙂

Auf der Rückseite der Datassette befindet sich der Motor sowie ein weiterer Riemen, welcher für die Übertragung der Energie auf die Spulen benötigt wird. Wie ich vermutet habe, ist dieser extrem schlaff und rutscht durch. In diesem Zustand kann der Motor das Band einer eingelegten Kassette nicht mehr weiterdrehen. Es wäre kein Hexenwerk das zu beheben, aber wie gesagt – das ist keine Baustelle für heute! 😉

Unter der Abschirmung (welche aus einer seltsamen Mischung aus Folie und Karton besteht) befindet sich die Platine. Sie wird benötigt um die vom Band gelesenen Signale über den Kassettenport des C64 an den Computer zu schicken.

Auf der Oberseite der Platine kann man die einzelnen Teile sehen: Widerstände, Kondensatoren und integrierte Schaltkreise. Mann, ist das noch einfache Technologie – eine richtig schöne, einseitig bestückte Leiterplatte. Nicht so hochkomplexes SMD-Zeug. Hier kann man auch ohne Profiwerkzeug noch was reparieren! 🙂

Bevor ich schon wieder ins Schwärmen über Retro-Technologie komme schnell zurück zum Thema – wollten wir nicht die Datassette modifizieren? 😀 Tatsächlich müssen wir hierfür nur eine 3,5mm Klinkenbuchse mit einem Kondensator an eine bestimmte Stelle auf der Platine löten. Je nach Modell der Datassette wurden unterschiedliche Platinenrevisionen verbaut. Gut, dass es im Internet noch Leute mit noch mehr Zeit gibt, welche bereits herausgefunden haben, an welchen Lötpunkten man die Komponenten anbringen muss! 🙂

Doch woher bekommt man die Teile? Nun, zwei Stück Kabel sollten noch irgendwo zu finden sein. Da ich keine Klinkenbuchse mehr hatte, habe ich einfach die Kopfhörerbuchse aus einem alten (defekten) IDE-CD-Laufwerk ausgelötet! 🙂

Da die Datassette nur mit einem Mono-Signal (linker Kanal des Stereokabels) umgehen kann, habe ich die nicht benötigten Beinchen abgetrennt und anschließend zwei Kabel an die Buchse gelötet:

Jetzt müssen wir nur noch einen Kondensator finden, diesen an eines der Kabel anlöten und abschließend die beiden Kabel an der Platine an bestimmten Punkte verlöten. Zugegeben – das Ergebnis sieht etwas improvisiert aus, aber für einen Testaufbau sollte das reichen! 🙂

Fun Fact: Den 100nF Keramikkondensator hatte ich tatsächlich noch rumliegen. Wenn ich mich recht erinnere stammt er aus einem Weihnachtsgeschenk. Mein Kumpel Max hat mir mal vor Jahren zu Weihnachten einen „Retro-Adventskalender“ geschenkt, in welchem zahlreiche kleine Bauteile zum Basteln diverser Spielprojekte drin waren. Schon witzig, dass da ein genau passender dabei war! 😀

Na, ob das wirklich funktionieren wird? Ich bin skeptisch… 😀

Zum Testen habe ich meinen Laptop über ein Stereokabel mit der Datassette verbunden. Das Laufwerk selbst ist natürlich am C64 angeschlossen.

Jetzt müssen wir am C64 eigentlich nur noch „LOAD“ eingeben, „Play“ auf der Datassette drücken und eine Datei mit einem Audioplayer unserer Wahl am PC abspielen.

Fun Fact: Zum Testen habe ich die „donkey.wav“-Datei aus Artikel 148 hergenommen, um mir keine weiteren Fehler über ggf. falsch konvertierte neue Dateien einzuhandeln! 😉

Doch was ist das? Leider wird das Programm nicht gefunden und der Bildschirm bleibt blau…

Woran liegt’s? Mann, habe ich lang nach dem Fehler gesucht! Letztendlich war ich zu naiv und habe mal wieder nicht mit den „Gemeinheiten“ der Treiberhersteller gerechnet! 😀 Naja, ok – das ist etwas übertrieben, aber tatsächlich hat mir der „Realtek HD-Audiotreiber“ auf meinem Laptop in die Suppe gespuckt! Scheinbar gibt es im „Zusätzliche Geräteeigenschaften“-Menü mittlerweile eine Dolby-Funktion, die standardmäßig eingeschaltet ist. Im Zusammenspiel mit einem 7.1-Soundsystem mag das ja (dass so richtig Kinofeeling aufkommt) ganz toll sein, aber die gute alte Datassette kann mit dem Standard nichts anfangen…

Fun Fact: Schon irgendwie ironisch, dass „Dolby“ (genaugenommen Dolby-B) in seiner Urform mal für die Rauschunterdrückung gut war und jetzt (so viele Jahre später) ist sein Urenkel (in Form von „Dolby Digital Plus“) dafür verantwortlich, dass ich meine piepsigen/kratzigen (und rauschenden?) C64-Programme nicht laden kann… 😀

Was soll’s wieder was gelernt. Mit deaktivierter Dolby-Funktion wird auch tatsächlich „Donkey Kong“ vom Laufwerk gefunden – cool! Im Vergleich zum normalen Laden über Datassette ist es dabei wichtig, dass man den „Commodore-Knopf“ gedrückt hält, sodass das gefunden Programm sofort geladen wird. Das ist eigentlich logisch, denn der C64 kann zwar die Datassette anhalten aber nicht den Audioplayer auf dem Laptop von welchem wir das Audiosignal streamen! 😉

Fun Fact: Wichtig ist auch, dass man den richtigen Lautstärkepegel findet, damit die Datassette etwas mit der Audiospur anfangen kann. In meinem Fall waren es 50%.

Und siehe da – drei Minuten später wurde das Spiel einwandfrei geladen und wir können den Klempner der Herzen durch die Levels steuern. Die gute Nachricht: Diesmal habe ich es zumindest bis in den zweiten Level geschafft und darf mich sogar in die Highscore-Liste eintragen! 🙂

Prima – nachdem das so gut geklappt hat, müssen wir eigentlich nur noch die Klinkenbuchse irgendwie nach außen legen, schließlich sollten wir die Innereien der Datassette wieder ordentlich verpacken. Ich habe lange überlegt, ob ich ein eigenes Loch in das Gehäuse bohren sollte, aber letztendlich habe ich mich dazu entschieden das Loch, welches für die LED (welche beim Speichervorgang leuchtet) benötigt wird, herzunehmen! 🙂

Dazu musste ich es nur etwas vergrößern und anschließend den Port dahinter anbringen. Gut, dass ich keine größere Buchse verlötet habe, denn diese würde vermutlich nicht durch die Halterung der LED passen. Beim Zusammenschrauben sollte man drauf achten, die Kabel sauber zu verlegen um später die Knöpfe auch noch anständig bedienen zu können – also nicht so wie ich! 😀

Man muss schon echt genau hinsehen, um die Buchse auf der Oberseite des Gehäuses zu erkennen. Genau das gefällt mir an der Lösung sehr gut, es sieht nicht so „auffällig verbastelt“ aus! 😀

Mann – das ist mal ein Bild! Ein halbwegs moderner Laptop mit einem absoluten Retro-Kult-Computer vereint – fast wie ein Familientreffen der Generationen! 🙂

Mist, eigentlich hätte ich noch zahlreiche interessante Dinge zu erzählen, aber der Blogartikel wird schon wieder gefährlich lang. Also gut, dann eben beim nächsten Mal – stay tuned! 😉

Bis die Tage!

#148 – el commodore – VII – pc transfer

Tja, wir haben Daten geladen und auf unterschiedliche Medien gespeichert. Ernsthaft – was könnte man noch über den C64 erzählen? 😉

Heute wollen wir der Kernfrage auf den Grund gehen, wie wir Spiele von einem PC auf den C64 bekommen. Bisher haben wir uns nur mit den nativen Möglichkeiten auf dem C64 beschäftigt. Damit meine ich das Eintippen von BASIC-Code oder das Laden von Datassette sowie Diskette. Die spannende Frage ist doch – wie lässt sich Software „von außen“ (also z.B. von einem Windows-PC) auf das Gerät bringen?

Puh, gute Frage. Aus dem Bauch heraus fällt mir ein recht umständlicher Weg über ein Kassettendeck als „Brücke“ ein! Hm, wie ist das gemeint?

Im Endeffekt müssten wir ja „nur“ ein C64-Programm in ein Audiosignal konvertieren und anschließend auf eine Kassette überspielen. Diese Kassette müssten wir ja dann mit Hilfe der Datassette am C64 wieder laden können – so die Theorie! 😉

Und wie läuft das in der Praxis? Tatsächlich hängt viel davon ab in welcher Form das C64-Spiel auf dem PC vorliegt. Viele Enthusiasten haben im Laufe der Jahre versucht C64-Spiele digital zu sichern und auf diversen Emulatoren verfügbar zu machen. Dadurch ist ein Wildwuchs an Dateiendungen und Formaten entstanden, das sind die populärsten:

Leider lassen sich nicht alle dieser Dateitypen in ein Audioformat konvertieren, welches wir auf eine Kassette überspielen können. Mit Hilfe der Tools „WAV-PRG“ und „Audiotap“ lassen sich aber zumindest ein paar der Images in eine Audiodatei umwandeln:

Die Frage ist nur, mit welchem Spiel wir die Konvertierung ausprobieren wollen? Wer die letzten Artikel aufmerksam gelesen hat weiß es bereits: Wir haben ja noch mit dem nicht funktionierenden „Donkey Kong“ eine Rechnung offen… 😉

Da es sich bei dem Spiel um ein Datassetten-Image (.TAP) handelt, verwende ich „Audiotap“ zum Konvertieren des Spiels in eine WAV-Datei. In dem Tool gibt es zahlreiche Einstellungen wie „output frequency“ oder „waveform“ (square, triangle, sine), aber ich hoffe, dass ich es mit den Standardeinstellungen zum Fliegen bekomme! 🙂

Wenige Sekunden später haben wir eine knapp dreieinhalb Minuten lange WAV-Datei (8,6 MB groß) erzeugt.

Fun Fact:  Hört man sich die Datei in einem Mediaplayer an könnte man meinen man hat ein Modem am Start! So viel Rauschen mit Piepstönen hab ich schon lange nicht mehr gehört… 😉

In Audacity betrachtet sieht man, dass die Datei „mono“ generiert und relativ laut ist:

Jetzt muss die Datei eigentlich nur noch auf Kassette überspielt werden. Dafür benötigen wir natürlich ein Tapedeck. Ich habe hierfür extra das Technics RS-5 aus Artikel 85 nochmal herausgeholt und an den PC gestöpselt:

Ebenso brauchen wir natürlich eine Kassette, auf die wir das Audiosignal aufspielen können. Hm, mal überlegen. Auf der C15-Kassette aus Artikel 147 belegt das „Billiard“-Programm nur knapp drei Minuten, also sollten auf der siebeneinhalbminütigen A-Seite noch genügend Platz für Donkey Kong (knapp dreieinhalb Minuten) sein. Ich habe die Kassette eingelegt und an die entsprechende Stelle (Bandzählwerk 60) gespult.

Das Recording läuft… Wichtig ist, dass man den Pegel des Eingangssignals im Auge behält. Er sollte etwas höher liegen als bei einer normalen Aufnahme von Audiodateien.

So, jetzt wird es spannend… Ob die Kassette frisst und das Programm laden kann? Probieren geht über Studieren. Nachdem die Kassette in die Datassette eingelegt und an die entsprechende Stelle gespult wurde…

…wird der Ladevorgang wieder mit einem „LOAD“ angestoßen. Jetzt hilft nur noch beten…

Doch was ist das? Selbst der Titel des Spiels wird nicht korrekt erkannt und der C64 hängt sich auf. Ok, das hätte besser laufen können. 😀

Mal nachdenken, was könnte das Problem sein? Passt die Aufnahme nicht? Oder habe ich beim Konvertieren der Datei einen Fehler gemacht? Gott sei Dank bin ich recht schnell auf den Fehler gekommen. Ich habe nochmal das Justage-Programm geladen und mir die Daten auf dem Band angesehen:

Mann, das sieht ja gar nicht gut aus. Sieht so aus als müsste der Tonkopf der Datassette des C64 erneut justiert werden. Kein Problem – ein paar Umdrehungen mit dem Kreuzschlitzschraubenzieher später:

Fun Fact: Erst im Nachhinein ist mir klargeworden, dass das eigentlich völlig logisch ist. Jedes Kassettenlaufwerk und somit auch jeder Tonkopf sind anders! Absolut kein Wunder, dass man das Laufwerk bei einem Programm, welches über ein „normales“ Kassettendeck aufgenommen wurde anders einstellen muss, als bei einem Programm, welches selbst über die Datassette aufgenommen wurde. Während des Bastelns habe ich das natürlich nicht geschnallt… 😀

Ob wir jetzt mehr Glück haben? Zumindest wird schon mal der Titel richtig erkannt:

Und einen „Ladebildschirm“ in Form von Epilepsie-Geflacker haben wir auch! 🙂

Und tatsächlich – es läuft! Ich kann euch gar nicht sagen wie glücklich ich bin, diesen Bildschirm zu sehen! xD Ich hatte echt bedenken, dass wir noch Stunden auf Fehlersuche gehen müssen. Gerade beim Konvertierungsvorgang der Audiodatei sowie beim Recording kann so viel schiefgehen (falsches Format, falscher Pegel, schlechter Tonkopf, defekte Kassette, etc.). Hätte nicht gedacht, dass wir das so schnell ohne Probleme hinbekommen! 🙂

Sehr geil – jetzt kann ich doch noch „Donkey Kong“ spielen und dabei kläglich versagen. Waren alte Spiele immer so schwer? 😀

Fun Fact: Im Nachhinein betrachtet war es vermutlich keine Idee gute Idee Donkey Kong hinter das Billard-Spiel zu packen. So muss ich jetzt jedes Mal auf der gleichen Kassette rumjustieren, wenn ich das ein oder andere Spiel zocken möchte. Oh well, lesson learned! 😉

Nachdem das jetzt besser geklappt hat als erwartet, wollte ich es noch mit einem zweiten Spiel, welches einen anderen Dateityp (PRG) besitzt, probieren. Letztendlich habe ich mich für „Galaxy“ einem C64-Port eines meiner Lieblings-Spiele aus der Spielehalle namens „Galaga“ entschieden:

Zum Konvertieren verwenden wir dieses Mal „WAV-PRG“, weil Audiotap keine PRG-Dateien unterstützt:

Schon fertig! 🙂

Mit knapp 70 Sekunden ist die WAV-Datei nicht gerade lang und sie passt noch gerade so auf die Seite A der Kassette! 🙂

Eine kurze Recordingsession sowie ein zweiminütiger Ladevorgang später kann ich tatsächlich auch Galaxy spielen. Wirklich cool! 🙂

Fun Fact: Die C64-Umsetzung ist schon ganz gut, kommt aber leider bei weitem nicht an seinen Arcade-Bruder „Galaga“ ran.

Hm, auf der Rückseite (Seite B) der Kassette wäre ja eigentlich noch Platz… 😉

Nach einigem Hin und Her habe ich mich dazu entschieden noch die beiden C64-Klassiker „The Great Giana Sisters“ und „Hard ‘n Heavy“ auf die Kassette zu überspielen. Während Giana Sisters auch im TAP-Format war und ich es so via Audiotap konvertieren konnte, musste ich für Hard ‘n Heavy WAV-PRG verwenden, da es sich diesmal um ein T64-Datei handelte.

Aber was soll ich sagen? Selbst das hat ohne Probleme funktioniert und ich konnte beide Spiele ohne Probleme laden! Es fällt auf, dass einige Hersteller (oder spätestens die Cracker, welche kopierschutzfreie Versionen der Spiele erstellt haben) selbst einen eigenen Schnelllader vor das eigentliche Spiel geschalten haben. So kann es (wie im Falle von Giana Sisters) sein, dass beim Ladevorgang nur „Lader“ oder auch mal nichts angezeigt wird, und das Spiel wird trotzdem ohne Probleme geladen! 🙂

Fun Fact: Gerade die Musik des Intros hat sich fest in meinem Hirn eingebrannt. Der C64 (bzw. der SID-Soundchip) sowie Komponist Chris Hülsbeck leisten hier fantastische Arbeit! 🙂

Bei Dateien, welche über WAV-PRG konvertiert werden, kann man sogar angeben, ob man ein Programm als Audiospur im normalen (langsamen) Commodore-Format oder in einem schnelleren (dafür deutlich fehleranfälligerem) Turbo Tape Format speichern möchte. Auch die T64-Datei konnte ohne Probleme konvertiert werden und hier spiele ich eine Runde Hard ‘n Heavy! 🙂

Abschließend habe ich noch die Kassette mit den entsprechenden Bandpositionen gekennzeichnet, sodass ich die Spiele in Zukunft auch wiederfinde! 😉

In diesem Sinne – bis zum nächsten Mal, wo wir uns noch etwas weiter mit dem C64 beschäftigen wollen. Denn ob ihr es glaubt oder nicht – mit etwas Zusatzhardware lassen sich einige coole Dinge mit der alten Mühle anstellen! 😉

Cya!

#147 – el commodore – VI – save stuff

Nachdem wir uns bisher überwiegend mit dem Ladevorgang bestehender Programme beschäftigt haben, wird es Zeit auch mal selbst ein paar Daten zu schreiben! 🙂

Mal überlegen… Was brauchen wir dafür? In jedem Fall Speicherplatz. Den bekommen wir in Form einer neuen, noch unbenutzten Diskette! 🙂

Schnell ab damit ins Laufwerk! 🙂

Doch was ist das? Beim Versuch den Inhalt der Diskette zu laden, bekommen wir einen kryptischen Fehler (?FILE NOT FOUND) angezeigt:

Tja, der Unterschied zu den bisherigen Disketten ist, dass diese noch komplett neu – und somit nicht formatiert ist! Damit unser Laufwerk etwas mit der Disk anfangen kann, muss diese erst mal „formatiert“ werden. Hm, formatieren? Was soll das bedeuten? Und überhaupt – wie werden eigentlich die Daten auf so einer Diskette gespeichert? Ich befürchte dafür muss ich kurz ausholen, aber ich verspreche mich kurz zu halten! 😉

Zur Erinnerung: Die Diskette besteht intern aus einer runden Scheibe, welche mit einer magnetisierbaren Schicht überzogen ist. Diese Schicht ist in eine Vielzahl von Spuren aufgeteilt, welche dann jeweils mehrere Sektoren fassen. Der Datenträger selbst hat also bereits eine gewisse „Struktur“.

Soweit so gut, aber wie werden jetzt Daten in diesen Sektoren gespeichert? Damit tatsächlich Daten auf die Diskette geschrieben werden können, wird ein Dateisystem benötigt. Dieses organisiert den Datenträger, bzw. die einzelnen Sektoren in noch kleinere Bereiche, in denen letztendlich die Daten in binärer Form (1 und 0) vorliegen.

Im Falle des C64 kommt das CBM-Dateisystem zum Einsatz. In jedem Sektor (jeweils 256 Bytes) wird dabei ein Block gespeichert, welcher 254 Byte an Daten enthalten kann. Jedes einzelne Byte beinhaltet wiederum acht Bit, was letztendlich gut 2000 einzelnen „0-und-1-en“ pro Block entspricht.

Fun Fact: Die ersten beiden Bytes eines Sektors werden zur Dateiverwaltung benötigt und können nicht vom Benutzer verwendet werden.

Und wie können diese Informationen geschrieben, bzw. ausgelesen werden? Der Magnetkopf (auch Schreib-Lese-Kopf genannt) des Laufwerks wird auf einen entsprechenden Sektor positioniert und schleift dann direkt auf der magnetisierbaren Oberfläche, während die Scheibe von einem Motor gedreht wird.

Beim Schreibvorgang arbeitet der Kopf als Elektromagnet und magnetisiert die entsprechenden Stellen auf der Diskette im Rhythmus der Information (1 oder 0) um digitale Daten zu repräsentieren. Beim Lesevorgang bewirkt diese Magnetisierung, dass der Schreib-Lese-Kopf (durch Induktion einer kleinen Spannung in der Spule) erkennen kann, ob es sich um eine 1 oder eine 0 handelt.

Laaaangweilig – so viel Theorie! Erzähl doch lieber mal, was wir jetzt tun müssen, um die Diskette verwenden zu können? Ist ja gut! 😉 Jetzt kommt das Formatieren ins Spiel. Beim „Formatieren“ werden die einzelnen Spuren und Sektoren identifiziert und gekennzeichnet. Zusätzlich wird der Datenträger mit dem CBM-Dateisystem bestückt. Hierfür müssen wir lediglich den etwas kryptischen Befehl „OPEN 1,8,15,“N:RETROLOLO,42“: CLOSE1“ eingeben.

Fun Fact: Die Zahl 42 ist völlig willkürlich gewählt und steht für die Disk-ID. Letztendlich muss nur eine zweistellige Zeichenkombination angegeben werden.

Ist das geschafft, können wir uns den Inhalt der Diskette (LOAD“$“,8 + LIST) anzeigen lassen. Und siehe da, unsere RETROLOLO-Diskette wird erkannt und ist bereit bespielt zu werden. Jede Diskette kann bis zu 664 Blocks an Daten aufnehmen. Das entspricht ca. 166 KByte an Speicherplatz – abgefahren! Theoretisch könnten wir sogar noch die Rückseite formatieren und verwenden (dann hätten wir weitere 166 KByte zur Verfügung), aber ich denke fürs Erste reicht mir der Speicherplatz locker aus. 😀

Fun Fact: Im Beispiel habe ich den Befehl „LIST“ durch „L“ und einen umgefallenen Viertelkreis (lässt sich durch „SHIFT“+„I“ eingeben) abgekürzt. Funktioniert genauso und sieht mega lässig aus! 😉

So leer macht die Diskette aber noch nicht viel her, es wird Zeit, dass wir endlich ein paar Daten darauf bekommen! Tja, welche Daten können wir denn eigentlich darauf speichern? Und wie geht das überhaupt?

Fangen wir einfach an… Erinnert ihr euch noch an das kleine Beispielprogramm aus Artikel 142? 😉

Dieses (von mir soeben nochmal eingetippte Programm) können wir mit einem einfachen „SAVE“RETROLOLO“,8“-Befehl auf die Diskette speichern:

Ob der Sicherungsvorgang geklappt hat? Nach einem „LOAD“$“,8 + LIST“ wissen wir mehr:

Fun Fact: Die Auflistung des Disketteninhalts, welche man durch den LIST-Befehl bekommt, nennt sich „Directory“. Jede Diskette besitzt so ein Directory. Darin werden bestimmte Metainformationen zu Dateien wie Dateiname, Dateigröße oder Dateityp gespeichert. Es dient als Übersicht und Ausgangspunkt für den Zugriff auf Dateien.

Da sich nur ein Programm auf der Diskette befindet können wir es mit einem „LOAD“*“,8,1“-Befehl laden. Damit wird das erste gefundene Programm auf der Diskette geladen! 🙂

Funktioniert immer noch ohne Probleme! 🙂

Fun Fact: Das CBM-Dateisystem kann unterschiedliche Arten von Dateien verwalten. Neben Programmdateien (PRG) für BASIC- oder Maschinensprache-Programme können auch sequentielle Dateien (SEQ), relative Dateien (REL) und User-Dateien (USR) gespeichert werden. Keine Angst – ich werde nicht auf die einzelnen Typen eingehen, genug Theorie für heute! 😉

Nachdem das so gut geklappt hat, möchte ich noch versuchen, ein Spiel von der Turbo Tape Kassette zu sichern! 🙂

Fun Fact: Tatsächlich lassen sich „normale“ Spiele von Datassette ohne weitere Software gar nicht so einfach auf eine Diskette kopieren. Das klappt nur, wenn ein Spiel nur aus einer PRG-Datei besteht und nicht automatisch startet (AUTORUN). Die meisten Spiele bestehen aus mehreren Dateien oder besitzen gar einen Kopierschutz! 😦

Ich habe lange überlegt welches Spiel ich testweise auf die Diskette kopieren könnte. Eigentlich hätte ich mich ja gerne für Donkey Kong entschieden, aber das lässt sich ja leider nicht laden. Um den Sicherungsvorgang in vertretbarer Zeit zu testen, habe ich mich letztendlich für eine simple Billiard-Simulation entschieden! 🙂

Um das Spiel auf Diskette zu kopieren müssen wir es zuerst mal via Turbo Tape suchen und laden.

Sobald das Spiel im Speicher liegt, können wir mit einem „SAVE“BILLIARD“,8“-Befehl auf die RETROLOLO-Diskette speichern:

Um zu überprüfen, ob das Spiel auch auf der Diskette liegt, muss wieder „LOAD“$“,8 + LIST“ abgesetzt werden – den Befehl kennen wir ja mittlerweile schon fast auswendig! 😉

Und siehe da – das Programm wurde ohne Probleme mit auf der Diskette gespeichert. Wow – es sind sogar noch ganze 629 Blöcke frei! Wie soll ich nur jemals diesen gigantischen Speicherplatz voll bekommen? 😀

Fun Fact: Tatsächlich besitzt eine für den C64 formatierte Diskette theoretisch 683 Blöcke. Allerdings sind nur 664 Blöcke nutzbar, denn die restlichen 19 Blöcke (Spur 18) sind fest für organisatorische Strukturen vorgesehen(wie z.B. für das Verzeichnis mit den Dateinamen sowie die BAM (Block Availability Map zur Verwaltung freier Blöcke).

Natürlich habe ich auch getestet, ob sich das Programm noch via „LOAD“BILLIARD“,8,1“ laden und anschließend „RUN“ starten lässt. Klappt! 🙂

Um der Diskette etwas mehr Glanz zu verleihen, habe ich sie mit einem Aufkleber versehen und in einen weißen Umschlag gepackt – schon viel besser! 😉

Als abschließende Challenge für heute wollen wir auch noch versuchen, das Billard-Spiel auf einer Kassette zu speichern! 🙂

Ich höre schon die Rufe: „Aber retrololo – haben wir das Spiel nicht von einer Kassette geladen?“ Das ist korrekt, allerdings war es dort im Turbo Tape Format gespeichert und kann so nicht direkt gestartet werden. Jetzt wollen wir noch versuchen es im „normalen“ Commodore-Format auf einer neuen, leeren Kassette zu speichern!

Ich habe mich dazu entschlossen es mit einer leeren C15-Kassette (Seite A und B haben jeweils 7,5 Minuten zur Verfügung) zu probieren. Commodore empfiehlt herkömmliche Ferrit-Kassetten (Eisenoxid, Typ I/IEC I) mit der Datassette zu verwenden, da der Schreibkopf des Geräts nicht auf Chromdioxid- oder gar Metall-Bänder ausgelegt ist. Man merkt sofort, dass es sich um eine „Datenkassette“ handelt, weil es kein Vorlaufband gibt und das Band sofort mit einer magnetisierbaren Eisenoxidschicht beginnt.

Fun Fact: Unabhängig davon lässt sich theoretisch  jede stinknormale Audiokassette dafür verwenden. Seht es mir nach, wenn ich nicht sämtliche Medien durchprobieren möchte – #Lebenszeit und so! 😉

Und wie speichert man jetzt etwas auf die Kassette? Zuerst muss das Spiel via Turbo Tape in den Hauptspeicher geladen werden. Anschließend kann der Speichervorgang mit einem „SAVE“BILLIARD““-Befehl angestoßen werden:

Fun Fact: Die Befehle sowie die Funktionsweise einzelner Komponenten kann man im „C64 Users Guide“ nachschlagen.

Um unser originales Tape nicht zu überschreiben, tauschen wir die Turbo Tape Kassette gegen die neue C15-Kassette aus und drücken (wie vom C64 angefordert) RECORD und PLAY gleichzeitig. Wichtig: Bandzählwerk resetten!

Jetzt heißt es abwarten, bis die Daten auf die Kassette geschrieben wurden. Als Bestätigung, dass gerade aufgezeichnet wird, leuchtet die rote LED auf der Datassette:

Nach wenigen Minuten ist der Sicherungsvorgang beendet. Das Laufwerk hört auf zu rattern und wir sehen eine Erfolgsmeldung in Form eines simplen „READY“ auf dem Bildschirm.

Es macht Sinn sich die Position auf dem Bandzählwerk zu merken und auf der Kassette (oder einem Inlay) zu vermerken. So weiß man, welche Software an welcher Stelle auf dem Band zu finden ist:

Natürlich habe ich auch getestet, ob sich das Spiel auch wieder von der Kassette laden lässt. Klappt! 🙂

Fun Fact: Rückwirkend betrachtet ist das mit dem Turbo Tape schon eine coole Sache, allerdings nervt mich etwas, dass das Format der via TT64 gespeicherten Programme dann nicht mehr nativ vom C64 (sondern nur noch mit vorgeschalteter Turbo Tape Software) gelesen werden kann. Dafür sind die Ladezeiten im Vergleich gigantisch. Selbst das kleine Billard-Spiel hat ohne Turbo Tape knapp drei Minuten gebraucht, bis es von Kassette geladen werden konnte. Mit Turbo Tape konnte die Ladezeit auf ganz entspannte 22 Sekunden runtergedrückt werden. Sehr cool!

Tja, was bleibt abschließend über die Datassette und die Diskette zu sagen? Als Medium mit „wahlfreiem Zugriff“ ist die Diskette ein wahrer Quantensprung für C64-Besitzer. Eigentlich bietet das Diskettenlaufwerk im Vergleich zur Datassette nur Vorteile, aber ein klarer Minuspunkt war der Preis. So ein 1541er-Laufwerk konnte mal schnell zehnfach so viel kosten wie eine Datassette. Ich denke das ist auch der Hauptgrund, wieso gerade in Europa (und vor allem England) die Datassette trotzdem so beliebt war. Sie war für Kunden und Softwareentwickler eine sehr günstige Möglichkeit Programme digital zu speichern und zu verbreiten.

So, bitte entschuldigt mich – ich geh jetzt erst mal ne Runde Minigolf spielen… 😉

Bis die Tage!

#146 – el commodore – V – disk

„Mensch, ist das aufwändig mit so einer Datassette zu arbeiten. Gibt es da nichts Besseres?“

Diesen Gedanken hatten vermutlich viele C64-Besitzer in den 80ern. Die langen Ladezeiten sowie der beschränkte, sequentielle Zugriff waren wohl die größten Kritikpunkte an der Datassette. Wäre es nicht toll, wenn man ein Medium mit „wahlfreiem“ Zugriff hätte? Also quasi wie bei einer Festplatte oder SSD einen Datenträger, bei dem man einfach direkt jedes Programm was man möchte beliebig starten könnte, ohne erst eine gefühlte Ewigkeit Bänder durch die Gegend zu spulen?

Festhalten Leute – Rettung naht in Form des Commodore „1541“ Diskettenlaufwerks:

Mit diesem wunderschönen Stück Hardware lassen sich 5,25“ Disketten mit dem C64 verwenden. Das Gerät besitzt einen Schreib/Lesekopf, mit dem es die Daten von Disketten lesen oder darauf schreiben kann. Es hat einen Knebelverschluss auf der Vorderseite mit welchem die Disketten im Laufwerk gehalten werden.

Mein Laufwerk ist ein Modell „1541-II“ aus dem Jahre 1988. Die Laufwerke wurden in unterschiedlichen Modellvarianten zwischen 1983 und 1993 gebaut. Bei den frühen Modellen war das Netzteil noch intern im Laufwerk verbaut, bei den späteren (wie in meinem Fall) wurde es aus thermalen Gründen (Schutz vor Überhitzung) ausgelagert.

Fun Fact: Schade ist, dass beim Modell 1541 aus Kostengründen auf gesockelte Chips verzichtet wurde, das macht eine Reparatur schwieriger. Dafür gilt das Modell im Vergleich zu seinen Vorgängern als äußerst robust. Tja, man kann eben nicht alles haben… 🙂

Apropos Netzteil. Die Stromzufuhr des Laufwerks steht der des C64 – zumindest was die Größe angeht – in keinster Weise nach. Was für ein fetter Block! 😀

Auf der Rückseite des Geräts befinden sich die Anschlüsse, über welche das Laufwerk mit Strom (POWER) versorgt, sowie mit dem C64 (SERIAL) verbunden wird. Über den zweiten seriellen Anschluss (INTERFACE) könnte man weitere Geräte (wie z.B. ein weiteres Diskettenlaufwerk) seriell anbinden.

Fun Fact: In der Einbuchtung „Device“ befinden sich DIP-Schalter, über welche eine Gerätenummer (auch Geräteadresse genannt) konfiguriert werden kann. Diese Einstellung ist nur wichtig, wenn man mehrere Laufwerke an einem Computer betreiben möchte. Bei älteren Laufwerksmodellen müssten dazu intern Lötbrücken geöffnet/geschlossen werden – verrückt! 🙂

Natürlich wird auch noch ein serielles Kabel (mit sechspoligen DIN-Steckern) benötigt, um das Laufwerk mit dem C64 zu verbinden:

So langsam brauchen wir mehr Platz… 😀

„Theorie ist, wenn man alles weiß und nichts funktioniert – Praxis ist, wenn alles funktioniert und keiner weiß, warum“. Frei nach diesem Motto wollen wir mal schauen, ob das alte Laufwerk noch seinen Dienst verrichtet. Also, fix den C64 anschalten und anschließend den Schalter auf der Rückseite des Diskettenlaufwerks umlegen. BÄM – it’s alive!

Hm, zumindest ist nichts in die Luft geflogen, aber so richtig spannend war das jetzt auch noch nicht. Was fehlt noch? Na klar – Disketten! 🙂

Wie bereits gesagt handelt es sich um 5,25“ Disketten. Sie bestehen aus einer runden, biegsamen Kunststoffschicht, welche mit einer magnetisierbaren Schicht überzogen und in zwei Plastikhüllen eingepackt ist.

Fun Fact: Aus diesem Grund nennt man die Diskette auch oft „Floppy Disk“ bzw. „Floppies“ im Plural. Der Datenträger lässt sich leicht biegen und hängt (sofern man ihn nur an einer Seite festhält) recht „schlaff“ durch die Gegend. Spätere 3,5“-Disketten haben dank ihrem starren Plastikgehäuse eigentlich keine Berechtigung mehr so zu heißen, aber der Name hat sich einfach eingebürgert… 🙂

Disketten gibt es in unterschiedlichsten Farben. Meistens waren sie schwarz, aber manche Hersteller wollten wohl etwas Farbe in ihr Sortiment bringen. Technisch gesehen hat das null Relevanz! 😀

Meist findet man sie eingesteckt in einer Papiertasche, um den Ausschnitt in der Plastikhülle für den Lesekopf vor Staub und Kratzern zu schützen.

Bei einigen Disketten ist sogar ein Inhaltsverzeichnis dabei, welches dem Nutzer einen Überblick der auf der Diskette befindlichen Programme geben soll:

Diese Zettelchen konnten mit einem entsprechenden Drucker sehr einfach direkt vom C64 ausgedruckt werden.

Bei einigen anderen Disketten gibt es keinen „Beipackzettel“, dafür wurden die aufgespielten Programme einfach auf die Papiertasche gekritzelt:

Je nach Typ der Diskette kann es sein, dass sie sich auf einer (SS/1S) oder sogar auf beiden Seiten (DS/2S) beschreiben lässt. Dazu dreht man die Floppy einfach auf die Rückseite:

Fun Fact: In diesem Fall würde sich die Rückseite noch nicht beschreiben lassen, denn auf der rechten Seite befindet sich noch keine Schreibschutzkerbe. Mit Hilfe eines Diskettenlochers (oder einem anderen Werkzeug wie z.B. einer Schere) konnte eine zweite Schreibschutzkerbe erzeugt und damit die Rückseite beschreibbar gemacht werden. Manchmal funktioniert das sogar auch bei Disketten, die als SS deklariert sind. Schon geil, oder? Einfach ein Loch reinschneiden und man hatte die doppelte Speicherkapazität. Macht das mal mit einer SD-Karte oder einem USB-Stick! 😛

Welchem Typ eine Diskette angehört, kann man meist auf einem Aufkleber (oder Druck) auf der Diskette erkennen:

Puh, über diese schwarzen Dinger gäbe es so viel zu erzählen. Ich muss mich echt bremsen nicht schon wieder in die Theorie abzudriften. 😀 Als erstes sollten wir mal eine Diskette einschieben…

…und den Knebelverschluss nach unten drehen.

Und jetzt? Bisher haben wir nur ein Stück Plastik in ein größeres Stück Plastik eingesteckt! xD Damit der C64 den Inhalt der Diskette anzeigt, muss man – analog der Datassette – einen LOAD-Befehl absetzen. Mit „LOAD“$“,8“ wird das Inhaltsverzeichnis der Diskette geladen und mit einem anschließenden „LIST“-Befehl angezeigt.

Fun Fact: Die „8“ steht hierbei für Gerätenummer 8. Die unteren Nummern (1-7) sind anderen Geräten (Tastatur=0, Datassette=1, Monitor=3, Drucker=4, etc.) vorbehalten. Ab Nr. 8 werden Geräte wie z.B. Diskettenlaufwerke und Festplatten angesteuert.

Sieht so aus als würde man das Spiel mit Hilfe des Programms „GAME“ starten können. Um das zu tun gibt es mehrere Möglichkeiten. Zum einen kann man mit einen weiteren LOAD-Befehl („LOAD“GAME“,8“) den Startvorgang einleiten:

Alternativ kann man auch einfach mit den Pfeiltasten den Cursor zur entsprechenden Stelle im Listing bewegen und die Zeile (rund um die Programmbezeichnung) mit „LOAD“ und „,8,1“ überschreiben. Die Angabe „,1“ am Ende besagt ob man das Programm „absolut“ (also an die Stelle im Speicher, die der gespeicherten Ladeadresse entspricht) laden möchte. Lässt man die Angabe weg, wird das Programm „relativ“ (an den BASIC-Anfang im RAM) geladen. Sicherheitshalber sollte man immer „,8,1“ angeben, denn für Programme, die in Maschinensprache verfasst wurden, wird das benötigt.

Fun Fact: Das erinnert mich fast etwas an den guten alten Mainframe. Dort konnte (bzw. kann) man auch immer die Menüs und Anzeigen direkt überschreiben um Funktionen auszuführen. Ach ja, schön! 🙂

Um zu spielen muss das geladene Programm nur noch mit „RUN“ ausgeführt werden. Jetzt heißt es warten. Man hört, wie das Laufwerk auf die Diskette zugreift und die grüne LED beginnt zu leuchten:

Und siehe da – ein paar wenige Sekunden später können wir tatsächlich „Cobra Force“  spielen! 🙂

Mann, stell ich mich blöd an. Aber zu meiner Verteidigung – wann habt ihr das letzte Mal mit einem Joystick ein Videospiel gespielt?! 😛

Fun Fact: Für dieses Spiel muss der Joystick wieder in Port 2 stecken – völlig logisch, oder? 😀

Selbstverständlich habe ich auch versucht weitere Disketten zu laden. Leider sieht es so aus als könnte das Laufwerk nicht mehr alle Disketten lesen, bei einigen bleibt der Ladevorgang hängen…

…und die grüne Laufwerk-LED blinkt wie verrückt:

Bei einigen anderen konnte ich zwar noch den Index lesen, aber die Daten darauf sind wohl nicht mehr vollständig, bzw. fehlerhaft. In diesem Fall schaut selbst das Inhaltsverzeichnis schon zerstört aus:

Fun Fact: Um ehrlich zu sein wundert mich das nicht – die meisten der Disketten sind weit über 30 Jahre alt. Jeder weiß doch, dass es ab dem Alter einfach bergab geht… 😛

Ebenso ist mir aufgefallen, dass die Ladezeiten trotzdem teilweise echt ganz schön reinhauen. Es ist nicht so schlimm wie bei der Datassette, aber trotzdem muss man manchmal (bei größeren Programmen) die ein oder andere Minute einplanen. Manchmal wird das komplette Programm in den Speicher geladen und manchmal muss der C64 Daten nachladen – das führt zu kleineren Wartezeiten. Aber hey, was kostet die Welt? Ich verbuche das unter „digitaler Entschleunigung“! 😛

So, Schluss für heute… Tatsächlich ist das Thema C64 aber immer noch nicht durch, denn es gibt noch einige spannende Dinge zu erzählen… 😉

Cya! 😉