//* pad.h - header for pad.c //* pad.c global function prototypes void PadInit (void); u_long ReadPadStat (void); //* Definitions for reading status of joypad controllers #define PAD1_UP (1<<12) #define PAD1_DOWN (1<<14) #define PAD1_LEFT (1<<15) #define PAD1_RIGHT (1<<13) #define PAD1_TRIANGLE (1<<4) #define PAD1_CROSS (1<<6) #define PAD1_SQUARE (1<<7) #define PAD1_CIRCLE (1<<5) #define PAD1_L1 (1<<2) #define PAD1_L2 (1<<0) #define PAD1_R1 (1<<3) #define PAD1_R2 (1<<1) #define PAD1_START (1<<11) #define PAD1_SELECT (1<<8) #define PAD2_UP (1<<28) #define PAD2_DOWN (1<<30) #define PAD2_LEFT (1<<31) #define PAD2_RIGHT (1<<29) #define PAD2_TRIANGLE (1<<20) #define PAD2_CROSS (1<<22) #define PAD2_SQUARE (1<<23) #define PAD2_CIRCLE (1<<21) #define PAD2_L1 (1<<18) #define PAD2_L2 (1<<16) #define PAD2_R1 (1<<19) #define PAD2_R2 (1<<17) #define PAD2_START (1<<27) #define PAD2_SELECT (1<<24) //* Supported controller types #define CONTROLLER_MOUSE (0x01) #define CONTROLLER_NEGCON (0x02) #define CONTROLLER_DIGITAL (0x04) #define CONTROLLER_JOYSTICK (0x05) #define CONTROLLER_ANALOG (0x07) //* Analog values that trigger directions #define ANALOG_LOW_TRIGGER (60) //* Maximum value to trigger UP and LEFT #define ANALOG_HIGH_TRIGGER (195) //* Minimum value to trigger DOWN and RIGHT