psp late-night fixes
[libpicofe.git] / gp2x / cpuctrl.h
1 #ifndef __CPUCTRL_H__
2 #define __CPUCTRL_H__
3
4 extern void cpuctrl_init(void); /* call this at first */
5 extern void save_system_regs(void); /* save some registers */
6 extern void cpuctrl_deinit(void);
7 extern void set_display_clock_div(unsigned div);
8 extern void set_FCLK(unsigned MHZ); /* adjust the clock frequency (in Mhz units) */
9 extern void set_920_Div(unsigned short div); /* 0 to 7 divider (freq=FCLK/(1+div)) */
10 extern void set_DCLK_Div(unsigned short div); /* 0 to 7 divider (freq=FCLK/(1+div)) */
11 //extern void Disable_940(void); /* 940t down */
12
13 extern void set_RAM_Timings(int tRC, int tRAS, int tWR, int tMRD, int tRFC, int tRP, int tRCD);
14 extern void set_gamma(int g100, int A_SNs_curve);
15
16 typedef enum
17 {
18         LCDR_60 = 0,    /* ~59.998Hz, has interlacing problems, kills USB host */
19         LCDR_50,        /* 50Hz, has interlacing problems, kills USB host */
20         LCDR_120_20,    /* ~60.10*2Hz, used by FCE Ultra */
21         LCDR_100_02,    /* ~50.01*2Hz, used by FCE Ultra */
22         LCDR_120,       /* 120Hz */
23         LCDR_100,       /* 100Hz */
24 } lcd_rate_t;
25
26 extern void set_LCD_custom_rate(lcd_rate_t rate);
27 extern void unset_LCD_custom_rate(void);
28
29 #endif