aboutsummaryrefslogtreecommitdiff
path: root/overrides/mednafen_wswan.h
blob: 6f27e30f0f6b596addff3556b6a32ca2a7a4ba30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include "overrides.h"

static const struct core_override_option mednafen_wswan_core_option_overrides[] = {
	{
		.key = "wswan_rotate_display",
		.info = "Choose the orientation of the console screen. 'Manual' enables rotation via the controller.",
	},
	{
		.key = "wswan_rotate_keymap",
		.desc = "Rotate Buttons",
	},
	{
		.key = "wswan_gfx_colors",
		.desc = "Color Depth",
		.info = "24-bit is slower and not available on all platforms. Restart required.",
	},
	{
		.key = "wswan_frameskip",
		.info = "Skip frames to avoid audio crackling. Improves performance at the expense of visual smoothness.",
	},
	{
		.key = "wswan_frameskip_threshold",
		.desc = "FS Threshold (%%)",
		.info = "When 'Frameskip' is set to 'Threshold', sets how low the audio buffer can get before frames will be skipped.",
	},
	{
		.key = "wswan_60hz_mode",
		.info = "Update the display at 60Hz instead of the native 75Hz WonderSwan refresh rate by dropping every fifth frame. Reduces video smoothness, but avoids screen tearing on 60Hz screens.",
	},
	{
		.key = "wswan_sound_sample_rate",
		.desc = "Sample Rate",
	},
	{ NULL }
};

me_bind_action mednafen_wswan_ctrl_actions[] =
{
	{ "X UP     ",  1 << RETRO_DEVICE_ID_JOYPAD_UP},
	{ "X DOWN   ",  1 << RETRO_DEVICE_ID_JOYPAD_DOWN },
	{ "X LEFT   ",  1 << RETRO_DEVICE_ID_JOYPAD_LEFT },
	{ "X RIGHT  ",  1 << RETRO_DEVICE_ID_JOYPAD_RIGHT },
	{ "Y UP     ",  1 << RETRO_DEVICE_ID_JOYPAD_R2 },
	{ "Y DOWN   ",  1 << RETRO_DEVICE_ID_JOYPAD_L2 },
	{ "Y LEFT   ",  1 << RETRO_DEVICE_ID_JOYPAD_L },
	{ "Y RIGHT  ",  1 << RETRO_DEVICE_ID_JOYPAD_R },
	{ "A        ",  1 << RETRO_DEVICE_ID_JOYPAD_A },
	{ "B        ",  1 << RETRO_DEVICE_ID_JOYPAD_B },
	{ "START    ",  1 << RETRO_DEVICE_ID_JOYPAD_START },
	{ "ROTATE   ",  1 << RETRO_DEVICE_ID_JOYPAD_SELECT },
	{ NULL,       0 }
};

const struct core_override_fast_forward mednafen_wswan_fast_forward = {
	.type_key = "wswan_frameskip",
	.type_value = "auto",
};

#define mednafen_wswan_overrides {                              \
	.core_name = "mednafen_wswan",                                \
	.fast_forward = &mednafen_wswan_fast_forward,                 \
	.actions = mednafen_wswan_ctrl_actions,                       \
	.action_size = array_size(mednafen_wswan_ctrl_actions),       \
	.options = mednafen_wswan_core_option_overrides               \
}