X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=common%2Fcommon.h;h=fc657b355d7bbca824327498c4741be7e7a9320c;hb=fce20e73e7094060b29f1668b8f0032f75eb152e;hp=f2964bcbaaa45ea6d176ad50aba734cab620303b;hpb=fe01739339fe177363948c6fd518352243d5cf37;p=libpicofe.git diff --git a/common/common.h b/common/common.h index f2964bc..fc657b3 100644 --- a/common/common.h +++ b/common/common.h @@ -3,19 +3,23 @@ #ifdef __GP2X__ #include "../gp2x/gp2x.h" -#define BTN_UP GP2X_UP -#define BTN_DOWN GP2X_DOWN -#define BTN_LEFT GP2X_LEFT -#define BTN_RIGHT GP2X_RIGHT - -#define BTN_NORTH GP2X_Y -#define BTN_SOUTH GP2X_X -#define BTN_WEST GP2X_A -#define BTN_EAST GP2X_B -#define BTN_L GP2X_L -#define BTN_R GP2X_R - -unsigned long wait_for_input(unsigned long interesting); +#define PBTN_UP GP2X_UP +#define PBTN_DOWN GP2X_DOWN +#define PBTN_LEFT GP2X_LEFT +#define PBTN_RIGHT GP2X_RIGHT + +#define PBTN_NORTH GP2X_Y +#define PBTN_SOUTH GP2X_X +#define PBTN_WEST GP2X_A +#define PBTN_EAST GP2X_B +#define PBTN_L GP2X_L +#define PBTN_R GP2X_R + +/* menu nav */ +#define PBTN_MOK GP2X_B +#define PBTN_MBACK GP2X_X +#define PBTN_MENU GP2X_SELECT + void gp2x_pd_clone_buffer2(void); void menu_darken_bg(void *dst, int pixels, int darker); void menu_flip(void); @@ -24,10 +28,6 @@ void menu_flip(void); #define SCREEN_HEIGHT 240 #define SCREEN_BUFFER gp2x_screen -#define read_buttons(which) \ - wait_for_input(which) -#define read_buttons_async(which) \ - (gp2x_joystick_read(0) & (which)) #define menu_draw_begin() \ gp2x_pd_clone_buffer2() #define clear_screen() \ @@ -41,11 +41,29 @@ void menu_flip(void); #elif defined(__GIZ__) -// TODO -//#include "../gizmondo/giz.h" -#define SCREEN_WIDTH 321 -#define SCREEN_BUFFER menu_screen -extern unsigned char *menu_screen; +#include "../gizmondo/giz.h" + +#define PBTN_NORTH PBTN_STOP +#define PBTN_SOUTH PBTN_PLAY +#define PBTN_WEST PBTN_REW +#define PBTN_EAST PBTN_FWD + +void menu_draw_begin(int use_bgbuff); +void menu_darken_bg(void *dst, const void *src, int pixels, int darker); +void menu_draw_end(void); + +#define SCREEN_WIDTH 321 +#define SCREEN_HEIGHT 240 +#define SCREEN_BUFFER ((giz_screen != NULL) ? giz_screen : menu_screen) +extern void *menu_screen; +extern void *giz_screen; + +#define menu_draw_begin() \ + menu_draw_begin(1) +#define clear_screen() \ + memset(SCREEN_BUFFER, 0, SCREEN_WIDTH*SCREEN_HEIGHT*2) +#define darken_screen() \ + menu_darken_bg(menu_screen, menu_screen, SCREEN_WIDTH*SCREEN_HEIGHT, 0) // ------------------------------------ @@ -53,12 +71,11 @@ extern unsigned char *menu_screen; #include "../psp/psp.h" -#define BTN_NORTH BTN_TRIANGLE -#define BTN_SOUTH BTN_X -#define BTN_WEST BTN_SQUARE -#define BTN_EAST BTN_CIRCLE +#define PBTN_NORTH PBTN_TRIANGLE +#define PBTN_SOUTH PBTN_X +#define PBTN_WEST PBTN_SQUARE +#define PBTN_EAST PBTN_CIRCLE -unsigned long wait_for_input(unsigned int interesting, int is_key_config); void menu_draw_begin(void); void menu_darken_bg(void *dst, const void *src, int pixels, int darker); void menu_draw_end(void); @@ -67,10 +84,6 @@ void menu_draw_end(void); #define SCREEN_HEIGHT 272 #define SCREEN_BUFFER psp_screen -#define read_buttons(which) \ - wait_for_input(which, 0) -#define read_buttons_async(which) \ - (psp_pad_read(0) & (which)) #define clear_screen() \ memset(SCREEN_BUFFER, 0, SCREEN_WIDTH*SCREEN_HEIGHT*2) #define darken_screen() \ @@ -80,41 +93,39 @@ void menu_draw_end(void); #elif defined(PANDORA) -// TODO +#define PBTN_UP (1 << 0) +#define PBTN_DOWN (1 << 1) +#define PBTN_LEFT (1 << 2) +#define PBTN_RIGHT (1 << 3) -#include "../gp2x/gp2x.h" +#define PBTN_NORTH (1 << 4) +#define PBTN_SOUTH (1 << 5) +#define PBTN_WEST (1 << 6) +#define PBTN_EAST (1 << 7) +#define PBTN_L (1 << 8) +#define PBTN_R (1 << 9) -#define BTN_UP 0 -#define BTN_DOWN 0 -#define BTN_LEFT 0 -#define BTN_RIGHT 0 +/* menu nav */ +#define PBTN_MOK PBTN_EAST +#define PBTN_MBACK PBTN_SOUTH +#define PBTN_MENU (1 << 10) -#define BTN_NORTH 0 -#define BTN_SOUTH 0 -#define BTN_WEST 0 -#define BTN_EAST 0 -#define BTN_L 0 -#define BTN_R 0 - -unsigned long wait_for_input(unsigned long interesting); void gp2x_pd_clone_buffer2(void); void menu_darken_bg(void *dst, int pixels, int darker); void menu_flip(void); -#define SCREEN_WIDTH 320 -#define SCREEN_HEIGHT 240 +extern void *gp2x_screen; + +#define SCREEN_WIDTH 800 +#define SCREEN_HEIGHT 480 #define SCREEN_BUFFER gp2x_screen -#define read_buttons(which) \ - wait_for_input(which) -#define read_buttons_async(which) \ - (gp2x_joystick_read(0) & (which)) #define menu_draw_begin() \ gp2x_pd_clone_buffer2() #define clear_screen() \ - memset(gp2x_screen, 0, 320*240*2) + memset(gp2x_screen, 0, 800*480*2) #define darken_screen() \ - menu_darken_bg(gp2x_screen, 320*240, 0) + menu_darken_bg(gp2x_screen, 800*480, 0) #define menu_draw_end() \ menu_flip()