The idea is a micro sitting on the communication bus between the cpu and the dvd driver board injecting code to patch the dvd controller to make it able to read unsigned code.
The original sofware is been released as opensource here:
http://www.gc-forever.com/forums/viewtopic.php?t=439
This version run on an ATmega8L, not a lot of ports are been made, mostly because you don't really need them, the Atmega8L is cheap and still in production. Someone made a Raspberry Pi port of it.
I have ported the XenoBoot code from vingt-2 to the Atmega328 and it is a nice tool that makes it possible to inject code while the Gamecube is reading original games. It scans the Memory Card in Slot A or B for a xeno.dol file. You can load any .dol file, but to use the tiniest amount of blocks its best to get dolaunch by suloku.
You need to rename the file to xeno.dol and copy it to your Memory Card. i've tested it with the brosexec-compressed.dol (renamed to xeno.dol) and it takes only 12 blocks! https://github.com/suloku/dolaunch
Additionally by using dolaunch, you need a autoexec.dol on your sd2sp2 or GeckoSD adapter. It makes most sense to load Swiss at this point. Simply download the swiss.dol and rename it to autoexec.dol and place it on your SD card. https://github.com/emukidid/swiss-gc
My suggestion is to install the Modchip, read out the current resistance from the laser with a multimeter (keep that value in mind) and tweak it then to something where the Cube reads backups. Simply burn a disc to load Swiss and copy the mentioned file to your Memory Card by using the File Explorer that is delivered by Swiss.
To properly test that it is working just insert a original game and start the Cube - Press the START Button when the Gamecube Logo disappears and wait for the Code to get loaded. If it works properly you can backup your Laser resistance to the original value.
- the Code is confirmed working on a Arduino Pro Mini and a Arduino Nano 5V@16MHZ
- it should work on every Atmega328.
- Chip needs to be flashed via ISP!
You only need one Color wiring up to the Mainboard. The other Points are alternativ solder Points
- Thanks to emukidid, megalomaniac, meneerbeer and everyone who worked on the offical XenoGC Fork
- Thanks to AndreaCampanella for the initial Port to XenoGC328
- Thanks to rama for finishing the Port and make it work on the Atmega328. On this project he acts as a mentor for me.
- Thanks to vingt-2 for the awesome work on the XenoBoot formerly known as XenoShell