mirror of
https://github.com/FunKey-Project/picodrive-irixxxx.git
synced 2026-01-21 23:24:43 +01:00
171 lines
4.1 KiB
C
171 lines
4.1 KiB
C
#ifndef __MENU_PICO_H__
|
|
#define __MENU_PICO_H__
|
|
|
|
#include <SDL/SDL.h>
|
|
#include "../libpicofe/menu.h"
|
|
|
|
typedef enum{
|
|
MENU_TYPE_VOLUME,
|
|
MENU_TYPE_BRIGHTNESS,
|
|
MENU_TYPE_SAVE,
|
|
MENU_TYPE_LOAD,
|
|
MENU_TYPE_ASPECT_RATIO,
|
|
MENU_TYPE_EXIT,
|
|
MENU_TYPE_POWERDOWN,
|
|
NB_MENU_TYPES,
|
|
} ENUM_MENU_TYPE;
|
|
|
|
///------ Definition of the different resume options
|
|
#define RESUME_OPTIONS \
|
|
X(RESUME_YES, "RESUME GAME") \
|
|
X(RESUME_NO, "NEW GAME") \
|
|
X(NB_RESUME_OPTIONS, "")
|
|
|
|
////------ Enumeration of the different resume options ------
|
|
#undef X
|
|
#define X(a, b) a,
|
|
typedef enum {RESUME_OPTIONS} ENUM_RESUME_OPTIONS;
|
|
|
|
////------ Defines to be shared -------
|
|
#define STEP_CHANGE_VOLUME 10
|
|
#define STEP_CHANGE_BRIGHTNESS 10
|
|
#define NOTIF_SECONDS_DISP 2
|
|
|
|
////------ Menu commands -------
|
|
#define SHELL_CMD_VOLUME_GET "volume get"
|
|
#define SHELL_CMD_VOLUME_SET "volume set"
|
|
#define SHELL_CMD_BRIGHTNESS_GET "brightness get"
|
|
#define SHELL_CMD_BRIGHTNESS_SET "brightness set"
|
|
#define SHELL_CMD_NOTIF_SET "notif set"
|
|
#define SHELL_CMD_NOTIF_CLEAR "notif clear"
|
|
#define SHELL_CMD_AUDIO_AMP_ON "audio_amp on"
|
|
#define SHELL_CMD_AUDIO_AMP_OFF "audio_amp off"
|
|
#define SHELL_CMD_POWERDOWN "powerdown"
|
|
#define SHELL_CMD_POWERDOWN_HANDLE "powerdown handle"
|
|
#define SHELL_CMD_INSTANT_PLAY "instant_play"
|
|
#define SHELL_CMD_KEYMAP_DEFAULT "keymap default"
|
|
#define SHELL_CMD_KEYMAP_RESUME "keymap resume"
|
|
|
|
#define MAXPATHLEN 512
|
|
|
|
extern void SDL_Rotate_270(SDL_Surface * hw_surface, SDL_Surface * virtual_hw_surface);
|
|
|
|
void init_menu_SDL();
|
|
void deinit_menu_SDL();
|
|
void init_menu_zones();
|
|
void init_menu_system_values();
|
|
void menu_loop_funkey(void);
|
|
void run_menu_loop();
|
|
int launch_resume_menu_loop();
|
|
|
|
extern int volume_percentage;
|
|
extern int brightness_percentage;
|
|
|
|
extern int stop_menu_loop;
|
|
extern char *mRomName;
|
|
extern char *mRomPath;
|
|
extern char *quick_save_file;
|
|
|
|
typedef enum
|
|
{
|
|
MA_NONE = 1,
|
|
MA_MAIN_RESUME_GAME,
|
|
MA_MAIN_SAVE_STATE,
|
|
MA_MAIN_LOAD_STATE,
|
|
MA_MAIN_RESET_GAME,
|
|
MA_MAIN_LOAD_ROM,
|
|
MA_MAIN_CHANGE_CD,
|
|
MA_MAIN_CONTROLS,
|
|
MA_MAIN_CREDITS,
|
|
MA_MAIN_PATCHES,
|
|
MA_MAIN_EXIT,
|
|
MA_OPT_RENDERER,
|
|
MA_OPT_SCALING,
|
|
MA_OPT_VSCALING,
|
|
MA_OPT_ACC_SPRITES,
|
|
MA_OPT_SHOW_FPS,
|
|
MA_OPT_FRAMESKIP,
|
|
MA_OPT_ENABLE_SOUND,
|
|
MA_OPT_SOUND_QUALITY,
|
|
MA_OPT_ARM940_SOUND,
|
|
MA_OPT_INPUT_DEV0,
|
|
MA_OPT_INPUT_DEV1,
|
|
MA_OPT_REGION,
|
|
MA_OPT_CONFIRM_STATES,
|
|
MA_OPT_SAVE_SLOT,
|
|
MA_OPT_CPU_CLOCKS,
|
|
MA_OPT_SCD_OPTS,
|
|
MA_OPT_ADV_OPTS,
|
|
MA_OPT_DISP_OPTS, /* psp */
|
|
MA_OPT_SAVECFG,
|
|
MA_OPT_SAVECFG_GAME,
|
|
MA_OPT_LOADCFG,
|
|
MA_OPT_INTERLACED, /* giz */
|
|
MA_OPT_TEARING_FIX, /* wiz */
|
|
MA_OPT_VOUT_MODE,
|
|
MA_OPT_AUTOLOAD_SAVE,
|
|
MA_OPT_SOUND_FILTER,
|
|
MA_OPT_SOUND_ALPHA,
|
|
MA_OPT2_GAMMA,
|
|
MA_OPT2_A_SN_GAMMA,
|
|
MA_OPT2_DBLBUFF, /* giz */
|
|
MA_OPT2_VSYNC,
|
|
MA_OPT2_ENABLE_Z80,
|
|
MA_OPT2_ENABLE_YM2612,
|
|
MA_OPT2_DISABLE_YM_SSG,
|
|
MA_OPT2_ENABLE_SN76496,
|
|
MA_OPT2_ENABLE_YM2413,
|
|
MA_OPT2_ENABLE_GGLCD,
|
|
MA_OPT2_NO_LAST_ROM,
|
|
MA_OPT2_RAMTIMINGS, /* gp2x */
|
|
MA_OPT2_NO_FRAME_LIMIT, /* psp */
|
|
MA_OPT2_DYNARECS,
|
|
MA_OPT2_NO_SPRITE_LIM,
|
|
MA_OPT2_NO_IDLE_LOOPS,
|
|
MA_OPT2_OVERCLOCK_M68K,
|
|
MA_OPT2_MAX_FRAMESKIP,
|
|
MA_OPT2_PWM_IRQ_OPT,
|
|
MA_OPT2_DONE,
|
|
MA_OPT3_GAMMAA, /* psp (all OPT3) */
|
|
MA_OPT3_FILTERING,
|
|
MA_OPT3_VSYNC,
|
|
MA_OPT3_BLACKLVL,
|
|
MA_OPT3_LAYER_X,
|
|
MA_OPT3_LAYER_Y,
|
|
MA_OPT3_LAYER_W,
|
|
MA_OPT3_LAYER_H,
|
|
MA_OPT3_DONE,
|
|
MA_CDOPT_TESTBIOS_USA,
|
|
MA_CDOPT_TESTBIOS_EUR,
|
|
MA_CDOPT_TESTBIOS_JAP,
|
|
MA_CDOPT_LEDS,
|
|
MA_CDOPT_CDDA,
|
|
MA_CDOPT_PCM,
|
|
MA_CDOPT_READAHEAD,
|
|
MA_CDOPT_SAVERAM,
|
|
MA_CDOPT_SCALEROT_CHIP,
|
|
MA_CDOPT_DONE,
|
|
MA_32XOPT_ENABLE_32X,
|
|
MA_32XOPT_RENDERER,
|
|
MA_32XOPT_PWM,
|
|
MA_32XOPT_MSH2_CYCLES,
|
|
MA_32XOPT_SSH2_CYCLES,
|
|
MA_SMSOPT_HARDWARE,
|
|
MA_CTRL_PLAYER1,
|
|
MA_CTRL_PLAYER2,
|
|
MA_CTRL_EMU,
|
|
MA_CTRL_TURBO_RATE,
|
|
MA_CTRL_DEADZONE,
|
|
MA_CTRL_DEV_FIRST,
|
|
MA_CTRL_DEV_NEXT,
|
|
MA_CTRL_DONE,
|
|
} menu_id;
|
|
|
|
void menu_init(void);
|
|
void menu_loop(void);
|
|
int menu_loop_tray(void);
|
|
void menu_romload_prepare(const char *rom_name);
|
|
void menu_romload_end(void);
|
|
|
|
#endif // __MENU_PICO_H__
|