add gitignore, gitsubmodules
[picodrive.git] / platform / common / plat.h
CommitLineData
1fb0dd88 1#ifdef __cplusplus
2extern "C" {
3#endif
4
713c9224 5/* stuff to be implemented by platform code */
fcdefcf6 6extern const char *renderer_names[];
7extern const char *renderer_names32x[];
f2cf8472 8
9void pemu_prep_defconfig(void);
697746df 10void pemu_validate_config(void);
b24e0f6c 11void pemu_loop_prep(void);
12void pemu_loop_end(void);
45285368 13void pemu_forced_frame(int no_scale, int do_emu); // ..to g_menubg_src_ptr
d08e7326 14void pemu_finalize_frame(const char *fps, const char *notice_msg);
b24e0f6c 15
f2cf8472 16void pemu_sound_start(void);
17void pemu_sound_stop(void);
18void pemu_sound_wait(void);
19
ee2a3bdf 20void plat_early_init(void);
42171343 21void plat_init(void);
22void plat_finish(void);
23
f2cf8472 24/* return the dir/ where configs, saves, bios, etc. are found */
25int plat_get_root_dir(char *dst, int len);
26
d34a42f9 27/* used before things blocking for a while (these funcs redraw on return) */
28void plat_status_msg_busy_first(const char *msg);
29void plat_status_msg_busy_next(const char *msg);
b24e0f6c 30void plat_status_msg_clear(void);
d34a42f9 31
1fb0dd88 32/* menu: enter (switch bpp, etc), begin/end drawing */
33void plat_video_menu_enter(int is_rom_loaded);
34void plat_video_menu_begin(void);
35void plat_video_menu_end(void);
5d1672cb 36void plat_video_menu_leave(void);
1fb0dd88 37
d08e7326 38void plat_video_flip(void);
b24e0f6c 39void plat_video_wait_vsync(void);
5a681086 40void plat_video_toggle_renderer(int change, int menu_call);
d08e7326 41
d34a42f9 42void plat_update_volume(int has_changed, int is_up);
ee2a3bdf 43
713c9224 44int plat_is_dir(const char *path);
0403eead 45int plat_wait_event(int *fds_hnds, int count, int timeout_ms);
46void plat_sleep_ms(int ms);
713c9224 47
06e68f1b 48void *plat_mmap(unsigned long addr, size_t size, int need_exec, int is_fixed);
49void *plat_mremap(void *ptr, size_t oldsize, size_t newsize);
50void plat_munmap(void *ptr, size_t size);
51
823b9004 52/* timers, to be used for time diff and must refer to the same clock */
b24e0f6c 53unsigned int plat_get_ticks_ms(void);
54unsigned int plat_get_ticks_us(void);
55void plat_wait_till_us(unsigned int us);
0403eead 56
f2cf8472 57void plat_debug_cat(char *str);
713c9224 58
1fb0dd88 59#ifdef __cplusplus
60} // extern "C"
61#endif
62