psp gfx scaling/etc stuff
[libpicofe.git] / psp / psp.h
1 #include <pspctrl.h>
2
3 void psp_init(void);
4 void psp_finish(void);
5
6 void psp_msleep(int ms);
7
8 // vram usage map:
9 // 000000-044000 fb0
10 // 044000-088000 fb1
11 // 088000-0cc000 depth (?)
12 // 0cc000-126000 emu draw buffers: 512*240 + 512*240*2
13
14 #define VRAMOFFS_FB0    0x00000000
15 #define VRAMOFFS_FB1    0x00044000
16 #define VRAMOFFS_DEPTH  0x00088000
17 #define VRAMOFFS_STUFF  0x000cc000
18
19 #define VRAM_FB0        ((void *) (0x44000000+VRAMOFFS_FB0))
20 #define VRAM_FB1        ((void *) (0x44000000+VRAMOFFS_FB1))
21 #define VRAM_STUFF      ((void *) (0x44000000+VRAMOFFS_STUFF))
22
23 #define VRAM_CACHED_STUFF   ((void *) (0x04000000+VRAMOFFS_STUFF))
24
25 #define GU_CMDLIST_SIZE (16*1024)
26
27 extern unsigned int guCmdList[GU_CMDLIST_SIZE];
28
29 void *psp_video_get_active_fb(void);
30 void  psp_video_switch_to_single(void);
31 void  psp_video_flip(int wait_vsync);
32 extern void *psp_screen;
33
34 unsigned int psp_pad_read(int blocking);
35
36 int psp_get_cpu_clock(void);
37 int psp_set_cpu_clock(int clock);
38
39 /* shorter btn names */
40 #define BTN_UP       PSP_CTRL_UP
41 #define BTN_LEFT     PSP_CTRL_LEFT
42 #define BTN_RIGHT    PSP_CTRL_RIGHT
43 #define BTN_DOWN     PSP_CTRL_DOWN
44 #define BTN_L        PSP_CTRL_LTRIGGER
45 #define BTN_R        PSP_CTRL_RTRIGGER
46 #define BTN_TRIANGLE PSP_CTRL_TRIANGLE
47 #define BTN_CIRCLE   PSP_CTRL_CIRCLE
48 #define BTN_X        PSP_CTRL_CROSS
49 #define BTN_SQUARE   PSP_CTRL_SQUARE
50 #define BTN_SELECT   PSP_CTRL_SELECT
51 #define BTN_START    PSP_CTRL_START
52 #define BTN_NOTE     PSP_CTRL_NOTE // doesn't seem to work?
53