Der GameCube ist die erste Spielkonsole, für die ich seinerzeit eigenes Geld ausgegeben habe. Weil der mir aber vor Jahren gestohlen wurde, habe ich mir auf eBay einen neuen DOL-001 gekauft, den ich nun aufmotze. Dieser bekommt einen GCdual, um das Bild parallel analog (RGB – CSync) und digital (RGB – HDMI) auszugeben. Als Modchip verwende ich einen Raspberry Pi Pico Mikrocontroller mit der PicoBoot Software (OSS). So kann man ISO-Abbilder und Homebrew Software von SD-Karte starten. Und für die Controllerfrage greife ich wieder auf eine BlueRetro Lösung zurück, die sich an PS1 und PS2 bereits bewährt hat.
GameCube zerlegen und reinigen
Wenig verwunderlich für eine Konsole aus den 2000ern ist sie ziemlich dreckig und verstaubt. Die Stützbatterie ist leer (aber nicht ausgelaufen!) und das DVD-Laufwerk in einem bemitleidenswerten Wartungszustand. Aber der Reihe nach. Erst einmal muss die Konsole komplett zerlegt werden. Hier bietet sich dieser iFixit Guide als Anleitung an.
Um beim Zusammenbau des GameCube später nicht in Probleme zu laufen, indem ich Schrauben in die falschen Löcher schraube, habe ich jeden Schraubentyp einer Baugruppe auf einer magnetischen Unterlage sortiert und dokumentiert:
Die Laufwerkseinheit zerlege ich ebenfalls vollständig, um sie zu reinigen und zu schmieren.
Alle Plastik- und Metallteile wandern nun ins Ultraschallbad, bei 50°C und mit einem Schuss Spülmittel. Lediglich das Mainboard, die PSU und die Laufwerkseinheit mit der Mechanik sowie dem PCB lasse ich aus und reinige sie währenddessen händisch mit Isopropanol 99%.
Die gereinigten Teile lasse ich nun gut durchtrocknen – vorzugsweise über Nacht. Ansonsten ist händisches Trocknen / Ausblasen / Wasserverdrängen mit Alkohol angesagt.
DVD Laufwerkswartung
Die Laufwerksinnereien zerlege ich vollständig. Dem brushless Spindle-Motor verpasse ich einen Tropfen Silikonöl auf die Nabe. Und der Schlitten-Motor wird von beiden Seiten mit Silikonspray eingefettet. Das weiße Lithiumfett am Laufwerksschlitten hat sich schon vollständig in klebrige Seife verwandelt. Die muss folglich runter. Anschließend schmiere ich alle beweglichen Schlittenteile mit frischen Lithiumfett fett. Leider hab ich hiervon keine Fotos gemacht, aber das Vorgehen dürfte auch so verständlich sein
GCdual im GameCube installieren
Nach diesen Vorarbeiten kümmere ich mich nun um das GameCube Mainboard. Das Wellenlöten bei der Herstellung hat kaum Flussmittelreste hinterlassen. Bei den THT-Komponenten, wie den A/V Ports und Memory-Card Slots, sieht das aber anders aus. Deswegen schrubbe ich alles mit einer Zahnbürste und IPA99 sauber. Den Kühlkörper wärme ich mit der Heatgun auf und kann ich dann unter vorsichtigem Verdrehen und -schieben langsam aber sicher ablösen.
Analoge Signale vorbereiten
Der GCdual wird später auch das analoge Signal generieren, daher müssen die originalen Signale des GameCube getrennt werden. Für eine PAL DOL-001 sind dies 5 Komponenten, die entfernt werden sollen. Anstatt sie zu entfernen, drehe ich sie lediglich zur Seite, sodass der Mod einfach zurückbaubar ist. Welche dies genau sind, zeigt der GCdual Jumper Guide sowohl für PAL als auch NTSC Konsolen.
Nun muss ich mich entscheiden, welches (analoge) Signal ich gerne (neben dem Standard-Composite) hätte. Der o. g. Guide sagt, dass CSync on Csync eine populäre Wahl ist, weil die Verfügbarkeit von entsprechenden Kabeln gut ist in Retroshops. Diese haben dann ein paar zusätzliche passive Komponenten in die Kabel eingearbeitet. Dies muss ebenfalls auf dem GCdual Hookup Board als Lötbrücke konfiguriert werden (P-S Jumper – auch wenn das Hookup Board hier schon verlötet ist).
Hookup-Board
Bei der Installation arbeite ich mich am offiziellen Guide von Dan entlang. Damit das Hookup-Board plan auf der Rückseite der beiden Videoausgangsports aufliegen kann, muss an einigen Pins etwas Lötzinn entfernt werden. Die Stellen sind im Guide hier markiert. Wenn das PCB plan aufliegt und nicht wackelt, tagge ich es an 3 Stellen auf dem Board fest.
Sieht alles gut aus, löte ich das PCB nun ein. Dabei bitte beachten, dass in die Löcher bis runter zu den Pads relativ viel Lot rein passt. Auch muss sich die Hitze erst einmal bis dahin durch arbeiten. So erhitze ich jede Lötstelle ungefähr 15s lang und führe mehrfach Lot nach. Währenddessen beobachte ich die Lötstelle unter dem Mikroskop und achte auf das verdampfende Flussmittel. Bei den meisten Lötstellen sackte das Lot 2-3x ab, während sich das Loch gefüllt hat.
An diesem Punkt teste ich bereits mit dem Multimeter, ob benachbarte Pins/Pads eine Verbindung zueinander haben. Das sollte nicht der Fall sein, abgesehen von den beiden GND Pads in der Mitte des analogen Anschlusses. Außerdem teste ich, ob von jedem Pad eine Verbindung zum Pin im jeweiligen Port besteht.
GCdual Mainboard-Installation
Nun kann das GCdual Mainbard ausgerichtet und angeschlossen werden. Allerdings muss zuerst der Kühlkörper mit der am nächsten zum Digitalport gelegenen Schraube und der mitgelieferten M2,5 Mutter befestigt werden.
Achtung: Der Kühlkörper muss später noch einmal für die PicoBoot Installation auf der Oberseite entfernt werden. Alternativ kann man den blauen und gelben Draht jetzt schon an dem Chip anbringen.
Anderenfalls ist der Zugang deutlich erschwert, sobald der Modchip installiert ist. Er wird anhand dieses Schraublochs und der Kontaktleiste zum Hookup ausgerichtet und in Position getagged. Wenn alles passt, verlöte ich die 21 Kontakte zwischen Modchip und Hookup Board.
Jetzt noch den Pad-Draht mit dem entsprechenden Via verbinden, damit das On-Screen Display (OSD) später mit dem Controller aufgerufen werden kann. Außerdem wrid eine Unterstützungsverbindung vom Modchip zu einem darunter gelegenen Kondensator geschaffen.
Somit ist die Installation des GCdual abgeschlossen.
Gehäusemodifikation
Damit das GameCube Mainboard jetzt noch in die Gehäusebasis eingebaut werden kann, muss ich den unteren RF-Schild modifizieren. Und ich schaffe einen Gehäuseausschnitt an der Rückseite für den Mini-HDMI Port.
RF-Shield modifizieren
Wie auf den Bildern erkennbar ist, muss ein Haltepfosten für die eben schon behandelte Kühlkörperschraube mit dem Seitenschneider entfernt werden. I direkter Nähe säge ich mit der Laubsäge und einem Metallsägeblatt einen Ausschnitt in den Schild, um das HDMI-FPC heraus führen zu können. Beide Stellen entgrate ich noch ordentlich mit einer Feile und überprüfe, dass das FPC frei und ungehindert liegt.
Gehäuseausschnitt für den HDMI-Port
Der Mini-HDMI Port ist auf einem Breakout-Board, das genau in eine Lade der Rückwand passt. Ich lege es hinein und markiere die Außenmaße des Ports mit einem Skalpell. Dann bohre ich mit einem 2,5mm Bohrer innerhalb dieser Abmessungen so viel Material heraus, wie ich mich traue. Der Rest passiert in Handarbeit mit dem Skalpell und dem kleinen Feilenset.
Test
In diesem Zustand brauche ich nur noch die gereinigte Laufwerkseinheit oben einstecken und den Lüfter anschließen. Das Controller-Board vorne verbinde ich und schließe einen Controller an. An der Rückseite fädele ich das FPC wird nun mit einem bisschen Origami durch das Gehäuse und verbinde es mit dem Port. Und zwar so, dass die blaue Markierung vom Breakout-Board weg zeigt.
So kann ich den GameCube sicher einschalten und testen. Doch leider passiert nichts. Also eigentlich passiert schon was, der GameCube bootet, gibt ein Composite Signal aus, aber auf dem HDMI Monitor bleibt es dunkel. Der erkennt nicht einmal ein angeschlossenes Gerät. Auch öffnet der Controller Hotkey (L + R + X + Y) nicht das OSD.
Troubleshooting
Na gut, hilft nix. Also wieder zerlegen und mal gucken, was passiert, wenn ich das Mainboard einzeln mit Strom versorge. Dabei stecke ich die Lüftereinheit an und stecke die PSU auf das auf dem Kopf liegende Mainbard. Es sollte eine LED leuchten oder blinken. Das tut sie jedoch nicht. Also habe ich mal mit der Thermokamera drauf gehalten.
Das sieht nicht so aus, als würde der FPGA irgendetwas tun, auch der Spannungsregler unten links im Bild ist verdächtig kühl. Mein Gedanke war, ob evtl. keine Firmware drauf ist und hab mir die Programmieranleitung angesehen. Dabei ist mir aufgefallen, dass er zum Flashen die Lötbrücke JP1 schließt. Diese ist bei meinem Kit schon gesetzt.
Nach dem Programmieren entfernt er diese Verbindung wieder. Das hat mich auf die Idee gebracht, sie einfach mal zu entfernen und zu gucken, was passiert.
Und tatsächlich, die Thermokamera bescheinigt direkt markante Wärmeentwicklung in Spannungsregler und FPGA.
Also wieder alles zusammenbauen und mit angeschlossenem Monitor testen. Und siehe da. Er lebt!
PicoBoot Bootloader
Damit ist der Großteil des Mods geschafft, fehlt noch der Raspberry Pi Pico mit der PicoBoot Software. Dieser wird den GameCube dazu befähigen, die Swiss Software von SD-Karte zu booten, die am Serial Port 2 angesteckt wird.
Die Software wird aufgespielt, indem mach den Pico mit gedrücktem Taster an den Computer anschließt. So stellt er einen Massenspeicher zur Verfügung, auf den die picoboot.uf2 kopiert werden kann. Nun müssen nur noch die insgesamt 5 Käbelchen angeschlossen werden. Die Länge bemesse ich so lang, dass ich bequem den angepeilten Befestigungspunkt an dem Laufwerk erreichen kann.
Ich trimme die Kabel so, dass die exakte Länge zum jeweilen Pad des RPi haben. Jetzt eine SD-Karte mit dem SD2SP2 einstecken und in fliegender Verkabelung testen, ob es funktioniert.
Den Pico klebe ich mit doppelseitigem Klebeband am Laufwerk fest und kann nun endlich den GameCube vollständig zusammen bauen.
Zubehör
BlueRetro Controller-Adapter
Das Ding ist eine Plug’n’Play Lösung. Man schließt die 4 Controller Kabel an, und paar seinen beliebigen Bluetooth Controller und kann los spielen. Ich habe die Firmware noch schnell über die Webseite auf die Version 1.9.2 aktualisiert. Dabei wird sie aber lokal über Bluetooth übertragen, was einen Browser auf Chromium Basis erfordert.
MemCard Pro
Wie schon für die PS1 und die PS2 habe ich auch für den GameCube eine MemCardPro gekauft, die aber leider noch nicht versandt wurde. Aber ich rechne hier mit einem vergleichbaren Featureset.
Fazit
Zeit, auf dem BigScreen zu spielen und in Erinnerungen zu schwälgen! Zum Beispiel bei einer Runde „Zelda – the Wind Waker“.