cc68a136 |
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 */ |
626f7c37 |
12 | |
cc68a136 |
13 | extern void set_RAM_Timings(int tRC, int tRAS, int tWR, int tMRD, int tRFC, int tRP, int tRCD); |
82bc9cdd |
14 | extern void set_gamma(int g100, int A_SNs_curve); |
cc68a136 |
15 | |
626f7c37 |
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 | |
cc68a136 |
29 | #endif |