SIProbe

C Specification

#include <revolution/os/OSSerial.h>
#define SI_CHAN0                0
#define SI_CHAN1                1
#define SI_CHAN2                2
#define SI_CHAN3                3

#define SI_N64_CONTROLLER       (SI_TYPE_N64 | 0x05000000)
#define SI_N64_MIC              (SI_TYPE_N64 | 0x00010000)
#define SI_N64_KEYBOARD         (SI_TYPE_N64 | 0x00020000)
#define SI_N64_MOUSE            (SI_TYPE_N64 | 0x02000000)
#define SI_GBA                  (SI_TYPE_N64 | 0x00040000)
#define SI_GC_CONTROLLER        (SI_TYPE_GC | SI_GC_STANDARD)
#define SI_GC_RECEIVER          (SI_TYPE_GC | SI_GC_WIRELESS)
#define SI_GC_WAVEBIRD          (SI_TYPE_GC | SI_GC_WIRELESS | SI_GC_STANDARD | SI_WIRELESS_STATE | SI_WIRELESS_FIX_ID)
#define SI_GC_KEYBOARD          (SI_TYPE_GC | 0x00200000)
#define SI_GC_STEERING          (SI_TYPE_GC | 0x00000000)

#define SI_ERROR_NO_RESPONSE    0x0008    // nothing is attached
#define SI_ERROR_UNKNOWN        0x0040    // unknown device is attached
#define SI_ERROR_BUSY           0x0080    // still detecting

u32 SIProbe(s32 chan);

Arguments

chan One of the SI_CHANn channels.

Return Values

Returns one of the following: SI_N64_*, SI_GBA, SI_GC_*, SI_ERROR_UNKNOWN, SI_ERROR_BUSY, or SI_ERROR_NO_RESPONSE

Description

Determines the type of Controller attached to the specified GameCube Controller Port.

See Also

OS Functions, SIGetTypeString

Revision History

03/01/2006 Initial version.