Load with your favorite PSO exploit.
Change adapter speed:
Press A to set BBA to 100 Mbps, full duplex
Press B to set BBA to 100 Mbps, half duplex
Press X to set BBA to 10 Mbps, full duplex
Press Y to set BBA to 10 Mbps, half duplex
Press Start to reload DOL. This only works with PSOLoad 2.0+. Additionally,
PSOLoad works very poorly in 100 Mbps mode, usually resulting in a corrupted
load and subsequent crash on execution.
There is a short delay before you can set the speed again. This is to reduce
the chance of the adapter going completely offline. However, if the speed is
changed several times it may still go offline. This has something to do with
the initialization routines, but I don't know what the exact problem is.
Also note that many DOLs have their own network initialization routines. Thus,
any settings you change here may be invalidated as soon as another DOL is
Press Z to toggle between select and edit mode.
Press L to scroll up and R to scroll down.
In select mode, use the digital control pad to select a register to change.
In edit mode, use the digital control pad to choose a new value for a
register. Up adds 1, Down subtracts 1, Right adds 0x10, and Left subtracts
The debugger displays the values returned from each BBA register. I don't
know which addresses are valid, but 256 values are available for debugging.
The register value is saved upon exit of edit mode. Note that many registers
cannot be saved to. Furthermore, many may not save the exact value you save.
Some register changes have effects on other registers. Finally, some
registers change when they are read. Thus, it is not possible to display
the exact value of the register at any given time since the read changes the
value. Values that have changed since the last save are highlighted in yellow.
The primary goal of the debugger is to aid in determining the differences in
initialization routines and help get 100 Mbps loading working.
All BBA routines were taken from ipl_replacement.
DOL reloader support for use with PSOLoad 2.0.
Code was compiled with libOGC and makes extensive use of libOGC display calls.
You may need to change the path to mygcn.h when compiling for yourself. To
generate a DOL file from this source, run "make dol"
Please credit me if you use my code or find anything useful using my utility.
I'd also like to see a copy of anything developed with my code or utility.
Do not use this utility or code for purposes of piracy.
Otherwise, distribute at will.
Feel free to e-mail me with problems or information.
Note: this is my first GCN programming project.
Disclaimer: I'm not responsible for any harm you might cause in using this
program. Use at your own risk.
This utility would not have been possible without:
tmbinc: Author of the original BBA routines
dark-link: Original source modification for 100 Mbps connections
Thorsten Titze: Author of libOGC package and docs
Peter: Author of OpenGC library
Costis: Author of PSOLoad
Sega/Sonic Team: Developers of Phantasy Star Online
Nintendo: Makers of the Gamecube