#222 – cart reader V4 – test

#222 – cart reader V4 – test

Beim letzten Mal haben wir ja die neue „Sparversion“ des Cart Readers samt ein paar Aufsteck-Adaptern fertiggestellt.

Bild_1

Heute wollen wir das Ding mal in Ruhe testen und ggf. noch ein paar Optimierungen vornehmen. Ich habe da schon ein paar Ideen! 😉

Bevor wir aber wieder basteln, sollten wir erst mal probieren, ob das Gerät auch wirklich tut was es soll. Dafür habe ich mir schnell ein paar Spielmodule herausgekramt:

Bild_2

Fangen wir gleich mal mit einem Supernintendo-Spiel an. Das Modul wird einfach auf den SNES-Adapter gesteckt. Selbiger wird wiederrum (samt Modul) auf die Hauptplatine aufgesteckt und der Cart Reader über das Micro USB Kabel mit dem PC verbunden.

Fun Fact: Vielleicht kennt der ein oder andere „The Chaos Engine“ noch aus Artikel 83? Damals haben wir den „Run and Gun“-Klassiker auf der Wii mit Hilfe eines SNES-Emulators zum Laufen gebracht! 😉

Bild_3

Im Arduino Serial Monitor können wir uns nun (durch Eingabe von Buchstaben auf der Tastatur in die Kommandozeile am oberen Bildschirmrand) durch das Menü des Cart Readers navigieren und die Option zum Lesen eines SNES-Spiels (ROM) wählen.

Fun Fact: Es ist wichtig darauf zu achten, im seriellen Monitor eine Übertragungsgeschwindigkeit von 9600 Baud sowie die Option „Kein Zeilenende“ auszuwählen. Tut man das nicht, spielt der Cart Reader verrückt, ignoriert sämtliche Eingaben oder springt wie wild durch die Menüs. Ich hatte es zuerst vergessen und nichts hat funktioniert. Ich glaube so etwas nennt man „Lerneffekt“! xD

Bild_4

Tatsächlich wird das Modul problemlos gelesen und wir finden die ROM-Datei auf der in den Reader eingelegten MicroSD-Karte:

Bild_5

Um auszuprobieren, ob das ausgelesene Spiel auch wirklich funktioniert, habe ich die ROM-Datei in einen Emulator (ZSNES) geladen. Was soll ich sagen? Es funzt! 🙂

Bild_6

Sehr schön – und wie sieht es mit einem Game Boy Spiel aus? Das wollen wir mit dem Game Boy Adapter und dem Game Boy Color Spiel „Freestyle Scooter“ gleich mal ausprobieren:

Bild_7

Läuft – auch das Spiel wird problemlos gelesen…

Bild_8

…und lässt sich in einem Emulator (VisualBoyAdvance) abspielen:

Bild_9

Da der Game Boy Adapter bereits eingesteckt ist, wechseln wir nur schnell das Modul aus. Mit „Tony Hawk’s Underground 2“ wollen wir es nun mal mit einem Spiel für den Game Boy Advance probieren. Ganz wichtig – nicht vergessen: Für GBA-Spiele muss der Schalter auf dem Game Boy Adapter von 5 auf 3 Volt umgeschaltet werden!

Bild_10

Doch was ist das? Der Cart Reader wird plötzlich nicht mehr vom PC erkannt und es sieht so aus als würde der Arduino gar nicht anlaufen. Was ist los?

Bild_11

Tja, nach einiger Recherche hat sich herausgestellt, dass ich Depp vergessen habe, dem Gerät auch wirklich 3 Volt Spannung zuzuführen! 😀

Peinlich! Gut, dass sich das schnell beheben lässt, denn die 3 Volt können wir am MicroSD-Kartenmodul prima abgreifen und der Hauptplatine zuführen:

Bild_12

So – jetzt aber schnell zurück zum eigentlichen Test – wollten wir nicht ein GBA-Spiel auslesen? Kaum läuft die Hardware korrekt, lässt sich auch das GBA-Spiel auslesen.

Bild_13

Die Tony Hawks Spiele kenne ich eigentlich nur vom PC (oder von den „großen“ Konsolen). Auf so einem kleinen Handheld wie dem GBA sieht das Spiel zugegeben etwas spartanisch aus! xD

Bild_14

Als letztes können wir noch versuchen, ein N64-Spiel auszulesen.

Bild_15

Was mir erst gerade so – während wir auf den Lesevorgang des N64-Moduls warten – klar wird: Ein entscheidender Vorteil des portablen Aufbaus des neuen Cart Readers ist, dass wir die diversen Schalterstellungen (siehe Artikel 186) des Vorgängermodells vernachlässigen können und einfach je nach gewünschter Konsole den entsprechenden Adapter aufstecken. Der Adapter entscheidet dabei mit welcher Spannung der Cart Reader läuft (3 oder 5 Volt) – clever!

Fun Fact: Eine Ausnahme bildet nur der Game Boy Adapter, da dieser Game Boy (Color) und Game Boy Advance Spiele abdeckt und diese Konsolen ja mit unterschiedlichen Spannungen laufen!

Bild_16

Auch „F1 World Grand Prix“ lässt sich im Emulator (Project64) abspielen. Unser selbstgebastelter Cart Reader scheint zu funktionieren! 🙂

Bild_17

Soviel zu den Tests – aber wollten wir das Ding nicht noch etwas optimieren? Gute Idee! 😉

Eine Ecke, die mich an dem Teil etwas stört, ist, dass die Platine hinten recht weit „übersteht“. Damit meine ich, dass an der Stelle, an welcher man in der „Vollversion“ eine Batterie einbauen würde, viel ungenutzter Platz ist. Ob man den Teil von der Platine nicht einfach entfernen kann? So ließe sich das Gerät noch deutlich verkleinern! 🙂

Bild_18

Hierfür müssen wir das Kabel auf der Oberseite nur ablöten und die 5 Volt stattdessen „unterirdisch“ (also auf der Rückseite) vom Arduino zum Modulport führen:

Bild_19

Anschließend können wir knapp ein Drittel der Platine einfach absägen. Und schon haben wir den Cart Reader um ein gutes Stück verkleinert!

Fun Fact: Ich habe die Kanten noch etwas angeschliffen, sodass der Abschluss der Platine analog der gegenüberliegenden Seite aussieht! 🙂

Bild_20

Während des Sägens (vermutlich, weil das eine eher stupide Arbeit ist) ist mir dann aufgefallen, dass wir das Auslesen eines N64-Controller Paks noch nicht getestet haben. Ich denke das sollten wir noch machen, zumal ich ja ein neues Kabel (mit leicht veränderter Belegung gebaut habe, von dem ich nicht weiß, ob es funktioniert! 😀

Bild_21

Tatsächlich klappt der Vorgang auch problemlos und wir können uns mit Hilfe des Online-Tools MPKEdit den Inhalt des Memory Paks ansehen. Nice! 🙂

Bild_22

Jetzt aber schnell wieder zurück zur Hardware. Mal überlegen – was könnten wir noch machen? Etwas unschön ist auch der „herumbaumelnde“ MicroSD-Kartenleser, findet ihr nicht? 😀

Bild_23

Um das optisch etwas schöner zu gestalten, habe ich die Kabel gekürzt, neu verlötet und anschließend unter dem Arduino versteckt. Dadurch lässt sich der MicroSD-Port seitlich anordnen und findet so gerade noch seinen Platz auf der Platine. Zur Stabilisierung habe ich das MicroSD-Modul mit einem Stück Holz auf der Platinenoberseite verklebt.

Not so fun Fact: Beim Auslöten der Stecker habe ich versehentlich ein Lötpad auf der Platine zerstört. Zu allem Überfluss ist das ist natürlich erst beim anschließenden Test aufgefallen. Eins sag ich euch – bei der anschließenden Fehlersuche wäre ich fast verzweifelt! 😀 Immerhin hat die Platine auf beiden Seiten Lötpunkte, so konnte ich das Problem leicht beheben. Oh well, shit happens! 😀

Bild_24

Fertig, oder? Eigentlich schon, aber ich möchte noch was ausprobieren. An und für sich ist der Mini-Cart Reader eine feine Sache, allerdings stört mich etwas, dass man als „Bildschirm“ immer den seriellen Monitor in der Arduino IDE extra aufrufen muss. Besser wäre es eine eigenständige Anwendung zu besitzen, die mit dem Cart Reader kommunizieren kann. Kein Problem, denn es gibt ja glücklicherweise für so ziemlich alles eine Lösung. Darf ich vorstellen – hier kommt „PuTTY“!

Fun Fact: Treue retrololo-Leser kennen die Software natürlich bereits aus Artikel 13! 😛

Bild_25

Die Software PuTTY gibt es bereits seit 1998, aber sie wird auch noch heute sehr gerne u.a. zur Administration von Systemen über das SSH-Protokoll verwendet. Glücklicherweise werden auch andere Protokolle wie Telnet oder eben eine serielle Schnittstelle unterstützt – gut für uns! Damit wir die Software als seriellen Monitor verwenden können, müssen einige Einstellungen wie COM-Port (siehe Gerätemanager), Geschwindigkeit (9600 Baud) und Flusskontrolle (Nein) gesetzt werden:

Bild_26

Und siehe da – schon erkennt PuTTY unseren Leser ohne Probleme! Wenn man es genau nimmt, läuft die Kommunikation über PuTTY sogar etwas besser, bzw. schneller, weil wir nicht in irgendeiner Befehlszeile eingegebene Nummern mit Enter bestätigen müssen, sondern uns einfach innerhalb der Session durch das Eingeben von Nummern durch das Menü navigieren können. Echt cool 🙂

Bild_27

Hm, ja, das ist schon besser, allerdings finde ich es immer noch recht umständlich, dass man überhaupt einen Laptop oder PC benötigt. Gibt es dafür nicht auch eine etwas kleinere, portable Lösung? Die gibt es tatsächlich – wie wäre es z.B. mit dem Galaxy S7 aus Artikel 220? 😉

Bild_28

Und das soll funktionieren? Na logo! Dafür benötigen wir lediglich einen OTG-Adapter…

Bild_29

…und die App „Serial USB Terminal“! Natürlich müssen auch hier die entsprechenden Einstellungen getätigt werden, aber anschließend erkennt das Smartphone tatsächlich das Gerät ohne Probleme…

Bild_30

…und wir können das eingesteckte Game Boy Spiel auf die MicroSD-Karte auslesen – abgefahren! 😀

Bild_31

Ende gut, alles gut. Ich bin froh, dass der Cart Reader so gut funktioniert. Das ist bei meinen amateurhaften Lötkenntnissen definitiv keine Selbstverständlichkeit! xD

Fun Fact: Tatsächlich gäbe es noch eine ganze Reihe an weiteren Adaptern, mit welchen man auch Module von Konsolen wie Sega Master System, Nintendo Entertainment System, WonderSwan oder TurboGrafx-16 auslesen könnte. Da ich die entsprechenden Platinen (sowie auch die meisten der exotischeren Konsolen) nicht habe, sparen wir uns das! 🙂

Bild_32

In diesem Sinne – bis die tage, ciao!

Kommentar verfassen