8 #define SOUND_THREAD_SOUND_ON 1
9 #define SOUND_THREAD_SOUND_OFF 2
10 #define SOUND_THREAD_PAUSE 3
12 #define INP_BUTTON_UP (0)
13 #define INP_BUTTON_LEFT (2)
14 #define INP_BUTTON_DOWN (4)
15 #define INP_BUTTON_RIGHT (6)
16 #define INP_BUTTON_START (8)
17 #define INP_BUTTON_SELECT (9)
18 #define INP_BUTTON_L (10)
19 #define INP_BUTTON_R (11)
20 #define INP_BUTTON_A (12)
21 #define INP_BUTTON_B (13)
22 #define INP_BUTTON_X (14)
23 #define INP_BUTTON_Y (15)
24 #define INP_BUTTON_VOL_UP (23)
25 #define INP_BUTTON_VOL_DOWN (22)
26 #define INP_BUTTON_STICK_PUSH (27)
28 void gp_drawString (int x,int y,int len,char *buffer,unsigned short color,void *framebuffer);
29 void gp_clearFramebuffer16(unsigned short *framebuffer, unsigned short pal);
30 void gp_clearFramebuffer8(unsigned char *framebuffer, unsigned char pal);
31 void gp_clearFramebuffer(void *framebuffer, unsigned int pal);
32 void gp_setCpuspeed(unsigned int cpuspeed);
33 void gp_initGraphics(unsigned short bpp, int flip, int applyMmuHack);
34 void gp_setFramebuffer(int flip, int sync);
35 void gp2x_video_setpalette(void);
36 int gp_initSound(int rate, int bits, int stereo, int Hz, int frag);
37 void gp_stopSound(void);
39 void gp2x_enableIRQ(void);
40 void gp2x_disableIRQ(void);
41 void gp2x_sound_volume(int l, int r);
42 unsigned long gp2x_timer_read(void);
43 unsigned int gp_getButton(unsigned char enable_diagnals);
44 void gp2x_video_RGB_setscaling(int W, int H);
45 void gp2x_sound_play_bank(int bank);
46 void gp2x_sound_sync(void);
47 void set_gamma(int g100);
48 void set_RAM_Timings(int tRC, int tRAS, int tWR, int tMRD, int tRFC, int tRP, int tRCD);
50 extern volatile int SoundThreadFlag;
51 extern volatile int CurrentSoundBank;
52 extern int CurrentFrameBuffer;
53 extern volatile short *pOutput[];
54 extern unsigned short *framebuffer16[];
55 extern unsigned long gp2x_physvram[];
56 extern unsigned char *framebuffer8[];
57 extern volatile unsigned short gp2x_palette[512][2];
58 extern volatile unsigned short *gp2x_memregs;
59 extern volatile unsigned long *gp2x_memregl;
60 extern volatile unsigned long *gp2x_blitter;