/* HEADER FOR READING CONTROL PADS AND ANALOG CONTROL PAD 18/06/98 reads buttons independently of each other returns true =1 if pressed returns false =0 if not pressed PETER BLACK peter.black@virgin.net */ //CONTROLLER PRESENT #define PadOnePresent ((*(bb0))==0) #define PadTwoPresent ((*(bb1))==0) //PAD TYPE // returns //65 standard controller //115 analog controller //83 analog controller digital mode //PSD ONE TYPE #define PadOneStandard ((*(bb0+1))==65) #define PadOneAnalog ((*(bb0+1))==115) #define PadOneDigital ((*(bb0+1))==83) //PAD ONE TYPE #define PadTwoStandard ((*(bb1+1))==65) #define PadTwoAnalog ((*(bb1+1))==115) #define PadTwoDigital ((*(bb1+1))==83) // CONTROLER ONE BYTE 2 #define PadOneDpadLeft (((127|(*(bb0+2)))^127)==0) #define PadOneDpadDown (((191|(*(bb0+2)))^191)==0) #define PadOneDpadRight (((223|(*(bb0+2)))^223)==0) #define PadOneDpadUp (((239|(*(bb0+2)))^239)==0) #define PadOneStart (((247|(*(bb0+2)))^247)==0) #define PadOneSelect (((254|(*(bb0+2)))^254)==0) // CONTROLER ONE BYTE 3 #define PadOneSquare (((127|(*(bb0+3)))^127)==0) #define PadOneCross (((191|(*(bb0+3)))^191)==0) #define PadOneCircle (((223|(*(bb0+3)))^223)==0) #define PadOneTriangle (((239|(*(bb0+3)))^239)==0) #define PadOneR1 (((247|(*(bb0+3)))^247)==0) #define PadOneL1 (((251|(*(bb0+3)))^251)==0) #define PadOneR2 (((253|(*(bb0+3)))^253)==0) #define PadOneL2 (((254|(*(bb0+3)))^254)==0) // CONTROLER TWO BYTE 2 #define PadTwoDpadLeft (((127|(*(bb1+2)))^127)==0) #define PadTwoDpadDown (((191|(*(bb1+2)))^191)==0) #define PadTwoDpadRight (((223|(*(bb1+2)))^223)==0) #define PadTwoDpadUp (((239|(*(bb1+2)))^239)==0) #define PadTwoStart (((247|(*(bb1+2)))^247)==0) #define PadTwoSelect (((254|(*(bb1+2)))^254)==0) // CONTROLER TWO BYTE 3 #define PadTwoSquare (((127|(*(bb1+3)))^127)==0) #define PadTwoCross (((191|(*(bb1+3)))^191)==0) #define PadTwoCircle (((223|(*(bb1+3)))^223)==0) #define PadTwoTriangle (((239|(*(bb1+3)))^239)==0) #define PadTwoR1 (((247|(*(bb1+3)))^247)==0) #define PadTwoL1 (((251|(*(bb1+3)))^251)==0) #define PadTwoR2 (((253|(*(bb1+3)))^253)==0) #define PadTwoL2 (((254|(*(bb1+3)))^254)==0) // ANALOG CONTROLLER TWIN STICKS // RETUNS 0 TO 255 FULL MOVEMENT CENTRE =128 // TO CALBRATE CENTER STICKS AND LET bbX 7 TO 4 =128 // PORT ONE #define LStickOneUD (*(bb0+7)) #define LStickOneLR (*(bb0+6)) #define RStickOneUD (*(bb0+5)) #define RStickOneLR (*(bb0+4)) // PORT TWO #define LStickTwoUD (*(bb1+7)) #define LStickTwoLR (*(bb1+6)) #define RStickTwoUD (*(bb1+5)) #define RStickTwoLR (*(bb1+4)) // END