#ifndef JOYSTICK_H #define JOYSTICK_H #include "../config.h" extern unsigned char waitForFire; void joy_init(); #ifdef AVR # include # ifdef NES_PAD_SUPPORT extern volatile unsigned char fakeport; # define JOYISUP (!! ((1<<4) & fakeport)) # define JOYISDOWN (!! ((1<<5) & fakeport)) # define JOYISLEFT (!! ((1<<6) & fakeport)) # define JOYISRIGHT (!! ((1<<7) & fakeport)) # define JOYISFIRE (!! ((1<<0) & fakeport)) # elif defined(RFM12_JOYSTICK_SUPPORT) extern volatile uint8_t rfm12_joystick_val; # define JOYISUP (!! ((1<<0) & rfm12_joystick_val)) # define JOYISDOWN (!! ((1<<1) & rfm12_joystick_val)) # define JOYISLEFT (!! ((1<<2) & rfm12_joystick_val)) # define JOYISRIGHT (!! ((1<<3) & rfm12_joystick_val)) # define JOYISFIRE (!! ((1<<4) & rfm12_joystick_val)) # elif defined(HC165_JOYSTICK_SUPPORT) extern volatile uint8_t hc165_joystick_val; # define JOYISUP (! ((1<<0) & hc165_joystick_val)) # define JOYISDOWN (! ((1<<1) & hc165_joystick_val)) # define JOYISLEFT (! ((1<<2) & hc165_joystick_val)) # define JOYISRIGHT (! ((1<<3) & hc165_joystick_val)) # define JOYISFIRE (! ((1<<4) & hc165_joystick_val)) # else # define JOYISUP (!(JOYSTICK_PIN_UP & (1<