| 1 | #ifdef __cplusplus |
| 2 | extern "C" { |
| 3 | #endif |
| 4 | |
| 5 | /* stuff to be implemented by platform code */ |
| 6 | extern char cpu_clk_name[]; |
| 7 | /* TODO rename all these */ |
| 8 | extern const char * const keyNames[]; // TODO rm |
| 9 | void emu_prepareDefaultConfig(void); |
| 10 | void emu_platformDebugCat(char *str); |
| 11 | void emu_forcedFrame(int opts); |
| 12 | void emu_startSound(void); |
| 13 | void emu_endSound(void); |
| 14 | void emu_waitSound(void); |
| 15 | void emu_ResetGame(void); // TODO mv rm? |
| 16 | void emu_Init(void); |
| 17 | void emu_Deinit(void); |
| 18 | void emu_Loop(void); |
| 19 | |
| 20 | int emu_getMainDir(char *dst, int len); |
| 21 | void menu_romload_prepare(const char *rom_name); |
| 22 | void menu_romload_end(void); |
| 23 | |
| 24 | void plat_early_init(void); |
| 25 | void plat_init(void); |
| 26 | void plat_finish(void); |
| 27 | |
| 28 | /* to be used while emulation is starting or running */ |
| 29 | void plat_status_msg(const char *format, ...); |
| 30 | |
| 31 | /* used before things blocking for a while (these funcs redraw on return) */ |
| 32 | void plat_status_msg_busy_first(const char *msg); |
| 33 | void plat_status_msg_busy_next(const char *msg); |
| 34 | |
| 35 | /* menu: enter (switch bpp, etc), begin/end drawing */ |
| 36 | void plat_video_menu_enter(int is_rom_loaded); |
| 37 | void plat_video_menu_begin(void); |
| 38 | void plat_video_menu_end(void); |
| 39 | |
| 40 | void plat_video_toggle_renderer(void); |
| 41 | void plat_validate_config(void); |
| 42 | void plat_update_volume(int has_changed, int is_up); |
| 43 | |
| 44 | int plat_is_dir(const char *path); |
| 45 | int plat_wait_event(int *fds_hnds, int count, int timeout_ms); |
| 46 | void plat_sleep_ms(int ms); |
| 47 | |
| 48 | /* ms counter, to be used for time diff */ |
| 49 | unsigned int plat_get_ticks_ms(void); |
| 50 | |
| 51 | const char *plat_get_credits(void); |
| 52 | |
| 53 | #ifdef __cplusplus |
| 54 | } // extern "C" |
| 55 | #endif |
| 56 | |