/********************************************************/ /* Header file to describe PAD buttons */ /* Copyright (1996) Sony Computer Entertainment Inc. */ /* + addition by MAGNIER Nicolas */ /********************************************************/ // definition des fonctions de lecture du paddle void PadInit(); u_long PadRead(); // definition des entrees // ---PAD 1--- #define PADselect (1<< 8) // select #define PADstart (1<<11) // start #define PADup (1<<12) // haut #define PADdown (1<<14) // bas #define PADleft (1<<15) // gauche #define PADright (1<<13) // droite #define PADtriangle (1<< 4) // triangle vert #define PADcross (1<< 6) // croix bleu #define PADsquare (1<< 7) // carre rose #define PADcircle (1<< 5) // rond organge #define PADL1 (1<< 2) // L1 #define PADR1 (1<< 3) // R1 #define PADL2 (1<< 0) // L2 #define PADR2 (1<< 1) // R2 // ---PAD 2--- #define PAD2select (1<<24) // select #define PAD2start (1<<27) // start #define PAD2up (1<<28) // haut #define PAD2down (1<<30) // bas #define PAD2left (1<<31) // gauche #define PAD2right (1<<29) // droite #define PAD2triangle (1<<20) // triangle vert #define PAD2cross (1<<22) // croix bleu #define PAD2square (1<<23) // carre rose #define PAD2circle (1<<21) // rond orange #define PAD2L1 (1<<18) // L1 #define PAD2R1 (1<<19) // R1 #define PAD2L2 (1<<16) // L2 #define PAD2R2 (1<<17) // R2 // fonctions de lecture du paddle #include volatile u_char *bb0 , *bb1 ; void PadInit() { GetPadBuf(&bb0,&bb1); }; u_long PadRead() { return(~(*(bb0+3) | *(bb0+2) << 8 | *(bb1+3) << 16 | *(bb1+2) << 24)); }; /***************/ /* Utilisation */ /***************/ // u_long PAD; // PAD = PadRead(); // // if (PAD & PADtriangle) //si triangle est presse // { // //action liee au boutton triangle // } //