All about Project Chameleon
Today, I’ll write some text about Project Chameleon.
Project Chameleon is NOT SO complex in my opinion, see the picture followed (PC part is not in this picture):
The GameCube DVD drive port is P9 on mainboard, the P9 connected to a xilinx Spartan3s400 FPGA board, we can see the board is on the top of GameCube.
A xilinx platform cable usb connected to FPGA board’s JTAG port.
At the right side is a SY2200A ez-usb DK. the chip is Cypress 68013A ez-usb, this board connected to FPGA borad too and a RS232 debug cable to pc.
These mess of hardwares work like this: GameCube send dvd read command (DI command) via P9, FPGA simulate the DVD drive, and a FIFO in FPGA keeps the DI command. PC read DI command vis usb, the ez-usb, read DI command FIFO in fact.
so PC now get the Di command, parse the command, and write data back to ez-usb then to FPGA and finally to P9.
above is the PC server. the main problem is Cypress doesn’t supply the win7 x64 signed driver, so I write a UMDF driver myself.
Here is Chameleon running Metroid Prime: