Main Page | Modules | Class Hierarchy | Data Structures | File List | Data Fields | Globals | Related Pages

controler.h

Go to the documentation of this file.
00001 
00012 #ifndef _CONTROLER_H_
00013 #define _CONTROLER_H_
00014 
00015 #include "extern_def.h"
00016 
00017 DCPLAYA_EXTERN_C_START
00018 
00030 #include <dc/controller.h>
00031 
00033 typedef struct
00034 {
00035   uint32 elapsed_frames;  
00036   uint16 buttons_change;  
00037   uint16 buttons;         
00038   uint8 rtrig;            
00039   uint8 ltrig;            
00040   int8 joyx;              
00041   int8 joyy;              
00042   int8 joy2x;             
00043   int8 joy2y;             
00044 } controler_state_t;
00045 
00047 int controler_init(void);
00049 void controler_shutdown(void);
00050 
00055 int controler_read(controler_state_t * state, unsigned int idx);
00056 
00062 int controler_pressed(const controler_state_t * state, uint32 mask);
00063 
00069 int controler_released(const controler_state_t * state, uint32 mask);
00070 
00095 int controler_binding(int clear, int modify);
00096 
00110 int controler_getchar(void);
00112 int controler_peekchar(void);
00113 
00116 /* void controler_print(void); */
00117 
00125 #define KBD_CONT1_C             (0x80)
00126 #define KBD_CONT1_B             (0x81)
00127 #define KBD_CONT1_A             (0x82)
00128 #define KBD_CONT1_START         (0x83)
00129 #define KBD_CONT1_DPAD_UP       (0x84)
00130 #define KBD_CONT1_DPAD_DOWN     (0x85)
00131 #define KBD_CONT1_DPAD_LEFT     (0x86)
00132 #define KBD_CONT1_DPAD_RIGHT    (0x87)
00133 #define KBD_CONT1_Z             (0x88)
00134 #define KBD_CONT1_Y             (0x89)
00135 #define KBD_CONT1_X             (0x8a)
00136 #define KBD_CONT1_D             (0x8b)
00137 #define KBD_CONT1_DPAD2_UP      (0x8c)
00138 #define KBD_CONT1_DPAD2_DOWN    (0x8d)
00139 #define KBD_CONT1_DPAD2_LEFT    (0x8e)
00140 #define KBD_CONT1_DPAD2_RIGHT   (0x8f)
00141 
00143 #define KBD_CONT2_C             (0x90)
00144 #define KBD_CONT2_B             (0x91)
00145 #define KBD_CONT2_A             (0x92)
00146 #define KBD_CONT2_START         (0x93)
00147 #define KBD_CONT2_DPAD_UP       (0x94)
00148 #define KBD_CONT2_DPAD_DOWN     (0x95)
00149 #define KBD_CONT2_DPAD_LEFT     (0x96)
00150 #define KBD_CONT2_DPAD_RIGHT    (0x97)
00151 #define KBD_CONT2_Z             (0x98)
00152 #define KBD_CONT2_Y             (0x99)
00153 #define KBD_CONT2_X             (0x9a)
00154 #define KBD_CONT2_D             (0x9b)
00155 #define KBD_CONT2_DPAD2_UP      (0x9c)
00156 #define KBD_CONT2_DPAD2_DOWN    (0x9d)
00157 #define KBD_CONT2_DPAD2_LEFT    (0x9e)
00158 #define KBD_CONT2_DPAD2_RIGHT   (0x9f)
00159 
00161 #define KBD_CONT3_C             (0xa0)
00162 #define KBD_CONT3_B             (0xa1)
00163 #define KBD_CONT3_A             (0xa2)
00164 #define KBD_CONT3_START         (0xa3)
00165 #define KBD_CONT3_DPAD_UP       (0xa4)
00166 #define KBD_CONT3_DPAD_DOWN     (0xa5)
00167 #define KBD_CONT3_DPAD_LEFT     (0xa6)
00168 #define KBD_CONT3_DPAD_RIGHT    (0xa7)
00169 #define KBD_CONT3_Z             (0xa8)
00170 #define KBD_CONT3_Y             (0xa9)
00171 #define KBD_CONT3_X             (0xaa)
00172 #define KBD_CONT3_D             (0xab)
00173 #define KBD_CONT3_DPAD2_UP      (0xac)
00174 #define KBD_CONT3_DPAD2_DOWN    (0xad)
00175 #define KBD_CONT3_DPAD2_LEFT    (0xae)
00176 #define KBD_CONT3_DPAD2_RIGHT   (0xaf)
00177 
00179 #define KBD_CONT4_C             (0xb0)
00180 #define KBD_CONT4_B             (0xb1)
00181 #define KBD_CONT4_A             (0xb2)
00182 #define KBD_CONT4_START         (0xb3)
00183 #define KBD_CONT4_DPAD_UP       (0xb4)
00184 #define KBD_CONT4_DPAD_DOWN     (0xb5)
00185 #define KBD_CONT4_DPAD_LEFT     (0xb6)
00186 #define KBD_CONT4_DPAD_RIGHT    (0xb7)
00187 #define KBD_CONT4_Z             (0xb8)
00188 #define KBD_CONT4_Y             (0xb9)
00189 #define KBD_CONT4_X             (0xba)
00190 #define KBD_CONT4_D             (0xbb)
00191 #define KBD_CONT4_DPAD2_UP      (0xbc)
00192 #define KBD_CONT4_DPAD2_DOWN    (0xbd)
00193 #define KBD_CONT4_DPAD2_LEFT    (0xbe)
00194 #define KBD_CONT4_DPAD2_RIGHT   (0xbf)
00195 
00197 #define KBD_CON_C(N)            (0x80+((N)<<4))
00198 #define KBD_CON_B(N)            (0x81+((N)<<4))
00199 #define KBD_CON_A(N)            (0x82+((N)<<4))
00200 #define KBD_CON_START(N)        (0x83+((N)<<4))
00201 #define KBD_CON_DPAD_UP(N)      (0x84+((N)<<4))
00202 #define KBD_CON_DPAD_DOWN(N)    (0x85+((N)<<4))
00203 #define KBD_CON_DPAD_LEFT(N)    (0x86+((N)<<4))
00204 #define KBD_CON_DPAD_RIGHT(N)   (0x87+((N)<<4))
00205 #define KBD_CON_Z(N)            (0x88+((N)<<4))
00206 #define KBD_CON_Y(N)            (0x89+((N)<<4))
00207 #define KBD_CON_X(N)            (0x8a+((N)<<4))
00208 #define KBD_CON_D(N)            (0x8b+((N)<<4))
00209 #define KBD_CON_DPAD2_UP(N)     (0x8c+((N)<<4))
00210 #define KBD_CON_DPAD2_DOWN(N)   (0x8d+((N)<<4))
00211 #define KBD_CON_DPAD2_LEFT(N)   (0x8e+((N)<<4))
00212 #define KBD_CON_DPAD2_RIGHT(N)  (0x8f+((N)<<4))
00213 
00218 DCPLAYA_EXTERN_C_END
00219 
00220 #endif /* #ifndef _CONTROLER_H_ */
00221 

dcplaya documentation version 1.2 Generated on January 2004 by doxygen 1.3.5