| 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); |
| 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 |