X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=frontend%2Fmain.h;h=7ce9e5d63fe5183bafe899745a025e0e8534589d;hp=139c2e7b78324a77091958d735aa1a0baf8d569f;hb=69e482e3def6669a4fa921d07f9ba04883d7de34;hpb=e16a7e51ca7c72b01c0e93c8593cdc705873dec5 diff --git a/frontend/main.h b/frontend/main.h index 139c2e7b..7ce9e5d6 100644 --- a/frontend/main.h +++ b/frontend/main.h @@ -16,8 +16,8 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307 USA */ -#ifndef __LINUX_H__ -#define __LINUX_H__ +#ifndef __FRONTEND_MAIN_H__ +#define __FRONTEND_MAIN_H__ #include "config.h" @@ -27,17 +27,72 @@ #define PLUGINS_DIR "/.pcsx/plugins/" #define PLUGINS_CFG_DIR "/.pcsx/plugins/cfg/" #define PCSX_DOT_DIR "/.pcsx/" -#define BIOS_DIR "/.pcsx/bios/" #define STATES_DIR "/.pcsx/sstates/" #define CHEATS_DIR "/.pcsx/cheats/" #define PATCHES_DIR "/.pcsx/patches/" +#define BIOS_DIR "/bios/" extern char cfgfile_basename[MAXPATHLEN]; +extern int state_slot; + +/* emu_core_preinit - must be the very first call + * emu_core_init - to be called after platform-specific setup */ +int emu_core_preinit(void); +int emu_core_init(void); + +void emu_core_ask_exit(void); + +void emu_set_default_config(void); +void emu_on_new_cd(int show_hud_msg); + int get_state_filename(char *buf, int size, int i); +int emu_check_state(int slot); +int emu_save_state(int slot); +int emu_load_state(int slot); + void set_cd_image(const char *fname); extern unsigned long gpuDisp; -extern int ready_to_go; +extern int ready_to_go, g_emu_want_quit, g_emu_resetting; + +extern char hud_msg[64]; +extern int hud_new_msg; + +enum sched_action { + SACTION_NONE, + SACTION_ENTER_MENU, + SACTION_LOAD_STATE, + SACTION_SAVE_STATE, + SACTION_NEXT_SSLOT, + SACTION_PREV_SSLOT, + SACTION_TOGGLE_FSKIP, + SACTION_SWITCH_DISPMODE, + SACTION_FAST_FORWARD, + SACTION_SCREENSHOT, + SACTION_VOLUME_UP, // 10 + SACTION_VOLUME_DOWN, + SACTION_MINIMIZE, + SACTION_TOGGLE_FPS, + SACTION_TOGGLE_FULLSCREEN, + SACTION_GUN_TRIGGER = 16, + SACTION_GUN_A, + SACTION_GUN_B, + SACTION_GUN_TRIGGER2, +}; + +#define SACTION_GUN_MASK (0x0f << SACTION_GUN_TRIGGER) + +static inline void emu_set_action(enum sched_action action_) +{ + extern enum sched_action emu_action, emu_action_old; + extern int stop; + + if (action_ == SACTION_NONE) + emu_action_old = 0; + else if (action_ != emu_action_old) + stop = 1; + emu_action = action_; +} -#endif /* __LINUX_H__ */ +#endif /* __FRONTEND_MAIN_H__ */