Example for reading key presses from a Gamecube ASCII Keyboard Controller with devkitPPC and libogc
Go to file
2021-02-15 18:49:43 -05:00
src cleanup a bit, put keyboard init & reading things into a semi-nicer API 2021-02-15 18:48:00 -05:00
.gitignore initial commit 2021-02-15 18:24:59 -05:00
CMakeLists.txt cleanup a bit, put keyboard init & reading things into a semi-nicer API 2021-02-15 18:48:00 -05:00
Makefile initial commit 2021-02-15 18:24:59 -05:00
README.md README.md update 2021-02-15 18:49:43 -05:00

Gamecube ASCII Keyboard Controller Usage Example

This is a very bare-bones project that shows how to read the Gamecube ASCII Keyboard Controller using devkitPPC and libogc (from devkitPro, of course)

Currently, libogc contains no support for reading keyboard input from this keyboard controller, and only somewhat "wonky" support for detecting it. Though, to be fair to the libogc authors, my feeling of "wonky support" for detecting the presence of a keyboard controller could very well just be due to libogc's SI API being undocumented.

The only working example of any Gamecube code that could read this keyboard is located in the gc-linux sources but, since it is a driver implemented in the Linux kernel, it basically re-implements the SI functionality that libogc provides so it is of somewhat limited direct use, but still useful to read anyway.

The only other pieces of documentation for this keyboard controller can be found on the Yet Another Gamecube Documentation website. Specifically, section 9 and section 5.8 are both useful. However, the explanations can be fairly light for the un-initiated (a.k.a. me).

Anyway!

The code in this repository is the result of bashing my head against this. It has only been tested on real hardware. More specifically, on my launch-day Nintendo Wii and keyboard controller model ASC-1901PO. I have not done any testing on Dolphin whatsoever.