// Header file for PSX standard controller interface // Coded by Scott Evans 30/3/97 // Last modified 8/4/97 #ifndef _MYPAD_H #define _MYPAD_H #include // Pad control bit settings #define PADselect 0x1 #define PADstart 0x8 #define PADup 0x10 #define PADright 0x20 #define PADdown 0x40 #define PADleft 0x80 #define PADl2 0x100 #define PADr2 0x200 #define PADl1 0x400 #define PADr1 0x800 #define PADtriangle 0x1000 #define PADcircle 0x2000 #define PADcross 0x4000 #define PADsquare 0x8000 // Controller types #define MOUSE 0x10 #define NEGCON 0x20 #define PSXPAD 0x40 #define ANJOY 0x50 // Pointers to controller buffers volatile unsigned char *pad1,*pad2; // Returns pad status, 16 bits unsigned short PadStatus(unsigned char *addr) { return _peekWord(addr+2); } // As above but as a macro #define _PadStatus(addr) (_peekWord(addr+2)) // Check if controller is present #define _ControllerCheck(addr,type) ((!(_peekByte(addr)) && (peekByte(addr+1)&type)) #endif