
GameCube gc-linux MAME/SDL "Proof of Concept" (PoC)
___________________________________________________


CONTENTS

zImage-268-rc1.mame.dol     linux kernel
mame.rootfs                 root filesystem
nbd-server                  linux statically linked nbd-server
mame-nbd-server             script to launch the nbd-server
readme.txt                  this file


TEST ENVIRONMENT

This PoC works on the following test environment:

Subnet: 192.168.0.0 255.255.255.0
  ----------+----------------------+--------
            |                      |
            |                      |
     +------+-------+       +------+-------+
     | nbd Server   |       | GameCube     |
     | 192.168.0.49 |       | 192.168.0.47 |
     +--------------+       +--------------+

     Note: nbd stands for Network Block Device


SETUP

You'll need a PC to run the a server.
On the PC where you will run the nbd server (assuming linux):

- Put the PoC tarball on a directory where you have permissions.

        mame-PoC.tar.bz2

- Unpack the PoC tarball.

        tar xjvf mame-PoC.tar.bz2

- Change the working directory to the mame PoC directory.

        cd mame-poc

- Launch the nbd server.

        ./mame-nbd-server

  NOTE: this assumes you are on the same directory as nbd-server and 
        mame.rootfs

On the GameCube:

- Make sure your GameCube controller is plugged on port 1.

- Make sure you're able to correctly upload code to the GameCube.


LAUNCHING THE POC

Once completed the setup, you'll need to launch zImage-268-rc1.mame.dol using 
psoload or your usual method to run code on the GameCube.

If you managed to setup a test environment like the one described in the 
TEST ENVIRONMENT section, then you'll see AdvanceMAME launching the freely 
available game Robby Roto (C) 1981 Bally Midway (C) 1999 Jay Fenton.
You can see on http://www.mame.net/romsrobby.html the authorization from
Jay Fenton to redistribute this rom.


PLAYING

Once you see the legal disclaimer of the Robby Roto ROM, move the left stick 
of your GameCube controller clockwise on a circular way to accept it.
You may need to accept two disclaimers, in fact.

After that, Robby Roto will start.

The GameCube controller is configured like this:
- Z button      -> insert coin
- Start button  -> start game
- A button      -> primary button
- B button      -> secondary button


QUITTING

Use the reset button on your GameCube ;)


CREDITS

Kudos to all gc-linux supporters, specially to (alphabetical order):
- apgo for keeping the gc-linux kernel in sync, and for his yet to be 
  released exi framework
- groepaz for the inspiration
- kirin for his work on the gc-linux audio driver
- nago for his prickly support
- Steve_- for the gc-linux GameCube controller driver and mame.rootfs concept

Also thanks to:
- mist, ionic, gimli, tmbinc and hampti for their previous work
- Costis for psoload


Have fun!
Albert "isobel" Herranz


