SIProbe

Syntax

#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

One of SI_N64_*, SI_GBA, SI_GC_*, SI_ERROR_UNKNOWN, SI_ERROR_BUSY, and SI_ERROR_NO_RESPONSE.

Description

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

See Also

OS Functions, SIGetTypeString

Revision History

2006/03/01 Initial version.


CONFIDENTIAL