autosave

Automatic load/save state on game load/save.
Automatically save and load save states when a game is closed or loaded, respectively.
MDFNST_BOOL
0


0
cd.image_memcache

Cache entire CD images in memory.
Reads the entire CD image(s) into memory at startup(which will cause a small delay).  Can help obviate emulation hiccups due to emulated CD access.  May cause more harm than good on low memory systems, systems with swap enabled, and/or when the disc images in question are on a fast SSD.
MDFNST_BOOL
0


0
cdplay.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
cdplay.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
cdplay.input.builtin.controller.next_track
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Next Track

MDFNST_STRING
keyboard 275


0
cdplay.input.builtin.controller.next_track_10
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Next Track 10

MDFNST_STRING
keyboard 273


0
cdplay.input.builtin.controller.play_pause
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Play/Pause

MDFNST_STRING
keyboard 32


0
cdplay.input.builtin.controller.previous_track
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Previous Track

MDFNST_STRING
keyboard 276


0
cdplay.input.builtin.controller.previous_track_10
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Previous Track 10

MDFNST_STRING
keyboard 274


0
cdplay.input.builtin.controller.scan_forward
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Scan Forward

MDFNST_STRING
keyboard 280


0
cdplay.input.builtin.controller.scan_reverse
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Scan Reverse

MDFNST_STRING
keyboard 281


0
cdplay.input.builtin.controller.stop
(nil) MDFNSF_SUPPRESS_DOC 
cdplay, Built-In, Controller: Stop

MDFNST_STRING
keyboard 13


0
cdplay.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

cdplay.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
cdplay.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

cdplay.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
cdplay.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
cdplay.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
cdplay.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
cdplay.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
cdplay.visualization

Enable simple waveform visualization.

MDFNST_BOOL
1


0
cdplay.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
cdplay.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
cdplay.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
cdplay.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
cdplay.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
cdplay.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
cheats

Enable cheats.

MDFNST_BOOL
1


0
command.0
(nil) MDFNSF_SUPPRESS_DOC 
Save state 0 select

MDFNST_STRING
keyboard 48


0
command.1
(nil) MDFNSF_SUPPRESS_DOC 
Save state 1 select

MDFNST_STRING
keyboard 49


0
command.2
(nil) MDFNSF_SUPPRESS_DOC 
Save state 2 select

MDFNST_STRING
keyboard 50


0
command.3
(nil) MDFNSF_SUPPRESS_DOC 
Save state 3 select

MDFNST_STRING
keyboard 51


0
command.4
(nil) MDFNSF_SUPPRESS_DOC 
Save state 4 select

MDFNST_STRING
keyboard 52


0
command.5
(nil) MDFNSF_SUPPRESS_DOC 
Save state 5 select

MDFNST_STRING
keyboard 53


0
command.6
(nil) MDFNSF_SUPPRESS_DOC 
Save state 6 select

MDFNST_STRING
keyboard 54


0
command.7
(nil) MDFNSF_SUPPRESS_DOC 
Save state 7 select

MDFNST_STRING
keyboard 55


0
command.8
(nil) MDFNSF_SUPPRESS_DOC 
Save state 8 select

MDFNST_STRING
keyboard 56


0
command.9
(nil) MDFNSF_SUPPRESS_DOC 
Save state 9 select

MDFNST_STRING
keyboard 57


0
command.activate_barcode
(nil) MDFNSF_SUPPRESS_DOC 
Activate barcode(for Famicom)

MDFNST_STRING
keyboard 289


0
command.advance_frame
(nil) MDFNSF_SUPPRESS_DOC 
Advance frame

MDFNST_STRING
keyboard 97+alt


0
command.device_select1
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 1

MDFNST_STRING
keyboard 49+ctrl+shift


0
command.device_select2
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 2

MDFNST_STRING
keyboard 50+ctrl+shift


0
command.device_select3
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 3

MDFNST_STRING
keyboard 51+ctrl+shift


0
command.device_select4
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 4

MDFNST_STRING
keyboard 52+ctrl+shift


0
command.device_select5
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 5

MDFNST_STRING
keyboard 53+ctrl+shift


0
command.device_select6
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 6

MDFNST_STRING
keyboard 54+ctrl+shift


0
command.device_select7
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 7

MDFNST_STRING
keyboard 55+ctrl+shift


0
command.device_select8
(nil) MDFNSF_SUPPRESS_DOC 
Select virtual device on virtual input port 8

MDFNST_STRING
keyboard 56+ctrl+shift


0
command.exit
(nil) MDFNSF_SUPPRESS_DOC 
Exit

MDFNST_STRING
keyboard 293~keyboard 27


0
command.fast_forward
(nil) MDFNSF_SUPPRESS_DOC 
Fast-forward

MDFNST_STRING
keyboard 96


0
command.input_config1
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 1

MDFNST_STRING
keyboard 49+alt+shift


0
command.input_config2
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 2

MDFNST_STRING
keyboard 50+alt+shift


0
command.input_config3
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 3

MDFNST_STRING
keyboard 51+alt+shift


0
command.input_config4
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 4

MDFNST_STRING
keyboard 52+alt+shift


0
command.input_config5
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 5

MDFNST_STRING
keyboard 53+alt+shift


0
command.input_config6
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 6

MDFNST_STRING
keyboard 54+alt+shift


0
command.input_config7
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 7

MDFNST_STRING
keyboard 55+alt+shift


0
command.input_config8
(nil) MDFNSF_SUPPRESS_DOC 
Configure buttons on virtual port 8

MDFNST_STRING
keyboard 56+alt+shift


0
command.input_config_abd
(nil) MDFNSF_SUPPRESS_DOC 
Detect analog buttons on physical joysticks/gamepads(for use with the input configuration process).

MDFNST_STRING
keyboard 284


0
command.input_configc
(nil) MDFNSF_SUPPRESS_DOC 
Configure command key

MDFNST_STRING
keyboard 283


0
command.input_configc_am
(nil) MDFNSF_SUPPRESS_DOC 
Configure command key, for all-pressed-to-trigger mode

MDFNST_STRING
keyboard 283+shift


0
command.insert_coin
(nil) MDFNSF_SUPPRESS_DOC 
Insert coin

MDFNST_STRING
keyboard 289


0
command.insert_eject_disk
(nil) MDFNSF_SUPPRESS_DOC 
Insert/Eject disk/disc

MDFNST_STRING
keyboard 289


0
command.load_movie
(nil) MDFNSF_SUPPRESS_DOC 
Load movie

MDFNST_STRING
keyboard 288+shift


0
command.load_state
(nil) MDFNSF_SUPPRESS_DOC 
Load state

MDFNST_STRING
keyboard 288


0
command.m0
(nil) MDFNSF_SUPPRESS_DOC 
Movie 0 select

MDFNST_STRING
keyboard 48+shift


0
command.m1
(nil) MDFNSF_SUPPRESS_DOC 
Movie 1 select

MDFNST_STRING
keyboard 49+shift


0
command.m2
(nil) MDFNSF_SUPPRESS_DOC 
Movie 2 select

MDFNST_STRING
keyboard 50+shift


0
command.m3
(nil) MDFNSF_SUPPRESS_DOC 
Movie 3 select

MDFNST_STRING
keyboard 51+shift


0
command.m4
(nil) MDFNSF_SUPPRESS_DOC 
Movie 4 select

MDFNST_STRING
keyboard 52+shift


0
command.m5
(nil) MDFNSF_SUPPRESS_DOC 
Movie 5 select

MDFNST_STRING
keyboard 53+shift


0
command.m6
(nil) MDFNSF_SUPPRESS_DOC 
Movie 6 select

MDFNST_STRING
keyboard 54+shift


0
command.m7
(nil) MDFNSF_SUPPRESS_DOC 
Movie 7 select

MDFNST_STRING
keyboard 55+shift


0
command.m8
(nil) MDFNSF_SUPPRESS_DOC 
Movie 8 select

MDFNST_STRING
keyboard 56+shift


0
command.m9
(nil) MDFNSF_SUPPRESS_DOC 
Movie 9 select

MDFNST_STRING
keyboard 57+shift


0
command.power
(nil) MDFNSF_SUPPRESS_DOC 
Power toggle

MDFNST_STRING
keyboard 292


0
command.reset
(nil) MDFNSF_SUPPRESS_DOC 
Reset

MDFNST_STRING
keyboard 291


0
command.rotate_screen
(nil) MDFNSF_SUPPRESS_DOC 
Rotate screen

MDFNST_STRING
keyboard 111+alt


0
command.run_normal
(nil) MDFNSF_SUPPRESS_DOC 
Return to normal mode after advancing frames

MDFNST_STRING
keyboard 114+alt


0
command.save_movie
(nil) MDFNSF_SUPPRESS_DOC 
Save movie

MDFNST_STRING
keyboard 286+shift


0
command.save_state
(nil) MDFNSF_SUPPRESS_DOC 
Save state

MDFNST_STRING
keyboard 286


0
command.select_disk
(nil) MDFNSF_SUPPRESS_DOC 
Select disk/disc

MDFNST_STRING
keyboard 287


0
command.slow_forward
(nil) MDFNSF_SUPPRESS_DOC 
Slow-forward

MDFNST_STRING
keyboard 92


0
command.state_rewind
(nil) MDFNSF_SUPPRESS_DOC 
Rewind

MDFNST_STRING
keyboard 8


0
command.state_slot_dec
(nil) MDFNSF_SUPPRESS_DOC 
Decrease selected save state slot by 1

MDFNST_STRING
keyboard 45


0
command.state_slot_inc
(nil) MDFNSF_SUPPRESS_DOC 
Increase selected save state slot by 1

MDFNST_STRING
keyboard 61


0
command.take_scaled_snapshot
(nil) MDFNSF_SUPPRESS_DOC 
Take scaled(and filtered) screen snapshot

MDFNST_STRING
keyboard 290+shift


0
command.take_snapshot
(nil) MDFNSF_SUPPRESS_DOC 
Take screen snapshot

MDFNST_STRING
keyboard 290


0
command.tl1
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 1

MDFNST_STRING
keyboard 49+ctrl


0
command.tl2
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 2

MDFNST_STRING
keyboard 50+ctrl


0
command.tl3
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 3

MDFNST_STRING
keyboard 51+ctrl


0
command.tl4
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 4

MDFNST_STRING
keyboard 52+ctrl


0
command.tl5
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 5

MDFNST_STRING
keyboard 53+ctrl


0
command.tl6
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 6

MDFNST_STRING
keyboard 54+ctrl


0
command.tl7
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 7

MDFNST_STRING
keyboard 55+ctrl


0
command.tl8
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 8

MDFNST_STRING
keyboard 56+ctrl


0
command.tl9
(nil) MDFNSF_SUPPRESS_DOC 
Toggle graphics layer 9

MDFNST_STRING
keyboard 57+ctrl


0
command.toggle_cidisable
(nil) MDFNSF_SUPPRESS_DOC 
Grab input and disable commands

MDFNST_STRING
keyboard 302+shift


0
command.toggle_debugger
(nil) MDFNSF_SUPPRESS_DOC 
Toggle debugger

MDFNST_STRING
keyboard 100+alt


0
command.toggle_dipview
(nil) MDFNSF_SUPPRESS_DOC 
Toggle DIP switch view

MDFNST_STRING
keyboard 287


0
command.toggle_fps_view
(nil) MDFNSF_SUPPRESS_DOC 
Toggle frames-per-second display

MDFNST_STRING
keyboard 282+shift


0
command.toggle_fs
(nil) MDFNSF_SUPPRESS_DOC 
Toggle fullscreen mode

MDFNST_STRING
keyboard 13+alt


0
command.toggle_grab_input
(nil) MDFNSF_SUPPRESS_DOC 
Grab input

MDFNST_STRING
keyboard 302


0
command.toggle_help
(nil) MDFNSF_SUPPRESS_DOC 
Toggle help screen

MDFNST_STRING
keyboard 282


0
command.toggle_state_rewind
(nil) MDFNSF_SUPPRESS_DOC 
Toggle state rewind functionality

MDFNST_STRING
keyboard 115+alt


0
command.togglecheatactive
(nil) MDFNSF_SUPPRESS_DOC 
Enable/Disable cheats

MDFNST_STRING
keyboard 116+alt


0
command.togglecheatview
(nil) MDFNSF_SUPPRESS_DOC 
Toggle cheat console

MDFNST_STRING
keyboard 99+alt


0
command.togglenetview
(nil) MDFNSF_SUPPRESS_DOC 
Toggle netplay console

MDFNST_STRING
keyboard 116


0
debugger.autostepmode

Automatically go into the debugger\'s step mode after a game is loaded.

MDFNST_BOOL
0


0
demo.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
demo.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
demo.input.builtin.controller.rcstrong
(nil) MDFNSF_SUPPRESS_DOC 
demo, Built-In, Controller: Rumble Control Strong

MDFNST_STRING



0
demo.input.builtin.controller.rcweak
(nil) MDFNSF_SUPPRESS_DOC 
demo, Built-In, Controller: Rumble Control Weak

MDFNST_STRING



0
demo.input.builtin.controller.stm
(nil) MDFNSF_SUPPRESS_DOC 
demo, Built-In, Controller: Select Test Mode

MDFNST_STRING



0
demo.input.builtin.controller.toggle_ilace
(nil) MDFNSF_SUPPRESS_DOC 
demo, Built-In, Controller: Toggle Interlace Mode

MDFNST_STRING



0
demo.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

demo.resamp_quality

Sound quality.
Higher values correspond to better SNR and better preservation of higher frequencies(\"brightness\"), at the cost of increased computational complexity and a negligible increase in latency.\n\nHigher values will also slightly increase the probability of sample clipping(relevant if Mednafen\'s volume control settings are set too high), due to increased (time-domain) ringing.
MDFNST_INT
3
0
5
0
demo.resamp_rate_error

Sound output rate tolerance.
Lower values correspond to better matching of the output rate of the resampler to the actual desired output rate, at the expense of increased RAM usage and poorer CPU cache utilization.
MDFNST_FLOAT
0.0000009
0.0000001
0.0000350
0
demo.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
demo.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

demo.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
demo.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
demo.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
demo.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
demo.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
demo.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
demo.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
demo.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
demo.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
demo.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
demo.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
ffnosound

Silence sound output when fast-forwarding.

MDFNST_BOOL
0


0
ffspeed

Fast-forwarding speed multiplier.

MDFNST_FLOAT
4
1
15
0
fftoggle

Treat the fast-forward button as a toggle.

MDFNST_BOOL
0


0
filesys.disablesavegz

Disable gzip compression when saving save states and backup memory.

MDFNST_BOOL
0


0
filesys.fname_movie

Format string for movie filename.
See fname_format.txt for more information.  Edit at your own risk.
MDFNST_STRING
%f.%M%p.%x


0
filesys.fname_sav

Format string for save games filename.
WARNING: %x should always be included, otherwise you run the risk of overwriting save data for games that create multiple save data files.\n\nSee fname_format.txt for more information.  Edit at your own risk.
MDFNST_STRING
%F.%M%x


0
filesys.fname_snap

Format string for screen snapshot filenames.
WARNING: %x or %p should always be included, otherwise there will be a conflict between the numeric counter text file and the image data file.\n\nSee fname_format.txt for more information.  Edit at your own risk.
MDFNST_STRING
%f-%p.%x


0
filesys.fname_state

Format string for state filename.
See fname_format.txt for more information.  Edit at your own risk.
MDFNST_STRING
%f.%M%X


0
filesys.path_cheat

Path to directory for cheats.

MDFNST_STRING
cheats


0
filesys.path_firmware

Path to directory for firmware.

MDFNST_STRING
firmware


0
filesys.path_movie

Path to directory for movies.

MDFNST_STRING
mcm


0
filesys.path_palette

Path to directory for custom palettes.

MDFNST_STRING
palettes


0
filesys.path_sav

Path to directory for save games and nonvolatile memory.
WARNING: Do not set this path to a directory that contains Famicom Disk System disk images, or you will corrupt them when you load an FDS game and exit Mednafen.
MDFNST_STRING
sav


0
filesys.path_snap

Path to directory for screen snapshots.

MDFNST_STRING
snaps


0
filesys.path_state

Path to directory for save states.

MDFNST_STRING
mcs


0
filesys.untrusted_fip_check

Enable untrusted file-inclusion path security check.
When this setting is set to \"1\", the default, paths to files referenced from files like CUE sheets and PSF rips are checked for certain characters that can be used in directory traversal, and if found, loading is aborted.  Set it to \"0\" if you want to allow constructs like absolute paths in CUE sheets, but only if you understand the security implications of doing so(see \"Security Issues\" section in the documentation).
MDFNST_BOOL
1


0
gb.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
gb.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
gb.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: A

MDFNST_STRING
keyboard 259


0
gb.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: B

MDFNST_STRING
keyboard 258


0
gb.input.builtin.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
gb.input.builtin.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
gb.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: Rapid A

MDFNST_STRING



0
gb.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: Rapid B

MDFNST_STRING



0
gb.input.builtin.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
gb.input.builtin.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
gb.input.builtin.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: START

MDFNST_STRING
keyboard 13


0
gb.input.builtin.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
gb, Built-In, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
gb.input.tilt.tilt.down
(nil) MDFNSF_SUPPRESS_DOC 
gb, Tilt, Tilt: DOWN ↓

MDFNST_STRING



0
gb.input.tilt.tilt.left
(nil) MDFNSF_SUPPRESS_DOC 
gb, Tilt, Tilt: LEFT ←

MDFNST_STRING



0
gb.input.tilt.tilt.right
(nil) MDFNSF_SUPPRESS_DOC 
gb, Tilt, Tilt: RIGHT →

MDFNST_STRING



0
gb.input.tilt.tilt.up
(nil) MDFNSF_SUPPRESS_DOC 
gb, Tilt, Tilt: UP ↑

MDFNST_STRING



0
gb.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

gb.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
gb.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

gb.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
gb.system_type
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulated GB type.

MDFNST_ENUM
auto


4
auto
Auto
Automatic detection based on headers.
dmg
DMG
Original GameBoy Monochrome.
cgb
CGB
GameBoy Color.\n\nThis option is not fully implemented in regards to handling of DMG games.
agb
AGB
GameBoy Advance.\n\nThis option is not fully implemented in regards to handling of DMG games.
gb.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
gb.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
gb.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
gb.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
gb.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
gb.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
gb.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
gb.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
gb.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
gb.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
gba.bios
MDFNSF_EMU_STATE 
Path to optional GBA BIOS ROM image.

MDFNST_STRING



0
gba.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
gba.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
gba.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: A

MDFNST_STRING
keyboard 259


0
gba.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: B

MDFNST_STRING
keyboard 258


0
gba.input.builtin.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
gba.input.builtin.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
gba.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: Rapid A

MDFNST_STRING



0
gba.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: Rapid B

MDFNST_STRING



0
gba.input.builtin.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
gba.input.builtin.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
gba.input.builtin.gamepad.shoulder_l
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: SHOULDER L

MDFNST_STRING
keyboard 261


0
gba.input.builtin.gamepad.shoulder_r
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: SHOULDER R

MDFNST_STRING
keyboard 262


0
gba.input.builtin.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: START

MDFNST_STRING
keyboard 13


0
gba.input.builtin.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
gba, Built-In, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
gba.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

gba.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
gba.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

gba.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
gba.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
gba.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
gba.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
gba.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
gba.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
gba.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
gba.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
gba.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
gba.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
gba.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
gg.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
gg.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
gg.input.builtin.gamepad.button1
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: Button 1

MDFNST_STRING
keyboard 258


0
gg.input.builtin.gamepad.button2
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: Button 2

MDFNST_STRING
keyboard 259


0
gg.input.builtin.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
gg.input.builtin.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
gg.input.builtin.gamepad.rapid_button1
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: Rapid Button 1

MDFNST_STRING



0
gg.input.builtin.gamepad.rapid_button2
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: Rapid Button 2

MDFNST_STRING



0
gg.input.builtin.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
gg.input.builtin.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: Start

MDFNST_STRING
keyboard 13


0
gg.input.builtin.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
gg, Built-In, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
gg.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

gg.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
gg.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

gg.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
gg.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
gg.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
gg.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
gg.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
gg.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
gg.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
gg.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
gg.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
gg.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
gg.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
input.autofirefreq

Auto-fire frequency.
Auto-fire frequency = GameSystemFrameRateHz / (value + 1)
MDFNST_UINT
3
0
1000
0
input.ckdelay

Dangerous key action delay.
The length of time, in milliseconds, that a button/key corresponding to a \"dangerous\" command like power, reset, exit, etc. must be pressed before the command is executed.
MDFNST_UINT
0
0
99999
0
input.joystick.axis_threshold

Analog axis binary press detection threshold.
Threshold for detecting a digital-like \"button\" press on analog axis, in percent.
MDFNST_FLOAT
75
0
100
0
input.joystick.global_focus

Update physical joystick(s) internal state in Mednafen even when Mednafen lacks OS focus.

MDFNST_BOOL
1


0
lynx.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
lynx.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
lynx.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: A (outer)

MDFNST_STRING
keyboard 259


0
lynx.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: B (inner)

MDFNST_STRING
keyboard 258


0
lynx.input.builtin.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
lynx.input.builtin.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
lynx.input.builtin.gamepad.option_1
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Option 1 (upper)

MDFNST_STRING
keyboard 263


0
lynx.input.builtin.gamepad.option_2
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Option 2 (lower)

MDFNST_STRING
keyboard 257


0
lynx.input.builtin.gamepad.pause
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: PAUSE

MDFNST_STRING
keyboard 13


0
lynx.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Rapid A (outer)

MDFNST_STRING



0
lynx.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Rapid B (inner)

MDFNST_STRING



0
lynx.input.builtin.gamepad.rapid_option_1
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Rapid Option 1 (upper)

MDFNST_STRING



0
lynx.input.builtin.gamepad.rapid_option_2
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: Rapid Option 2 (lower)

MDFNST_STRING



0
lynx.input.builtin.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
lynx.input.builtin.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
lynx, Built-In, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
lynx.lowpass
MDFNSF_CAT_SOUND 
Enable sound output lowpass filter.

MDFNST_BOOL
1


0
lynx.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

lynx.rotateinput

Virtually rotate D-pad along with screen.

MDFNST_BOOL
1


0
lynx.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
lynx.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

lynx.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
lynx.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
lynx.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
lynx.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
lynx.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
lynx.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
lynx.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
lynx.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
lynx.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
lynx.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
lynx.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
md.cdbios
MDFNSF_EMU_STATE 
Path to the CD BIOS
SegaCD/MegaCD emulation is currently nonfunctional.
MDFNST_STRING
us_scd1_9210.bin


0
md.correct_aspect
MDFNSF_CAT_VIDEO 
Correct the aspect ratio.

MDFNST_BOOL
1


0
md.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

md.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
md.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
md.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
md.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1

MDFNST_ENUM
gamepad


5
none
none

gamepad2
2-Button Gamepad

gamepad
3-Button Gamepad

gamepad6
6-Button Gamepad

megamouse
Sega Mega Mouse

md.input.port1.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: A

MDFNST_STRING
keyboard 257


0
md.input.port1.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: B

MDFNST_STRING
keyboard 258


0
md.input.port1.gamepad.c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: C

MDFNST_STRING
keyboard 259


0
md.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
md.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
md.input.port1.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port1.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port1.gamepad.rapid_c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: Rapid C

MDFNST_STRING



0
md.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
md.input.port1.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: Start

MDFNST_STRING
keyboard 13


0
md.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 3-Button Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
md.input.port1.gamepad2.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: A

MDFNST_STRING



0
md.input.port1.gamepad2.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: B

MDFNST_STRING



0
md.input.port1.gamepad2.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: DOWN ↓

MDFNST_STRING



0
md.input.port1.gamepad2.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: LEFT ←

MDFNST_STRING



0
md.input.port1.gamepad2.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port1.gamepad2.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port1.gamepad2.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: RIGHT →

MDFNST_STRING



0
md.input.port1.gamepad2.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: Start

MDFNST_STRING



0
md.input.port1.gamepad2.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 2-Button Gamepad: UP ↑

MDFNST_STRING



0
md.input.port1.gamepad6.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: A

MDFNST_STRING



0
md.input.port1.gamepad6.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: B

MDFNST_STRING



0
md.input.port1.gamepad6.c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: C

MDFNST_STRING



0
md.input.port1.gamepad6.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: DOWN ↓

MDFNST_STRING



0
md.input.port1.gamepad6.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: LEFT ←

MDFNST_STRING



0
md.input.port1.gamepad6.mode
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Mode

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid C

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid X

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid Y

MDFNST_STRING



0
md.input.port1.gamepad6.rapid_z
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Rapid Z

MDFNST_STRING



0
md.input.port1.gamepad6.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: RIGHT →

MDFNST_STRING



0
md.input.port1.gamepad6.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Start

MDFNST_STRING



0
md.input.port1.gamepad6.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: UP ↑

MDFNST_STRING



0
md.input.port1.gamepad6.x
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: X

MDFNST_STRING



0
md.input.port1.gamepad6.y
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Y

MDFNST_STRING



0
md.input.port1.gamepad6.z
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, 6-Button Gamepad: Z

MDFNST_STRING



0
md.input.port1.megamouse.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, Sega Mega Mouse: Left Button

MDFNST_STRING



0
md.input.port1.megamouse.middle
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, Sega Mega Mouse: Middle Button

MDFNST_STRING



0
md.input.port1.megamouse.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, Sega Mega Mouse: Right Button

MDFNST_STRING



0
md.input.port1.megamouse.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 1, Sega Mega Mouse: Start Button

MDFNST_STRING



0
md.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2

MDFNST_ENUM
gamepad


5
none
none

gamepad2
2-Button Gamepad

gamepad
3-Button Gamepad

gamepad6
6-Button Gamepad

megamouse
Sega Mega Mouse

md.input.port2.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: A

MDFNST_STRING



0
md.input.port2.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: B

MDFNST_STRING



0
md.input.port2.gamepad.c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: C

MDFNST_STRING



0
md.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: DOWN ↓

MDFNST_STRING



0
md.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: LEFT ←

MDFNST_STRING



0
md.input.port2.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port2.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port2.gamepad.rapid_c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: Rapid C

MDFNST_STRING



0
md.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: RIGHT →

MDFNST_STRING



0
md.input.port2.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: Start

MDFNST_STRING



0
md.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 3-Button Gamepad: UP ↑

MDFNST_STRING



0
md.input.port2.gamepad2.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: A

MDFNST_STRING



0
md.input.port2.gamepad2.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: B

MDFNST_STRING



0
md.input.port2.gamepad2.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: DOWN ↓

MDFNST_STRING



0
md.input.port2.gamepad2.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: LEFT ←

MDFNST_STRING



0
md.input.port2.gamepad2.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port2.gamepad2.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port2.gamepad2.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: RIGHT →

MDFNST_STRING



0
md.input.port2.gamepad2.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: Start

MDFNST_STRING



0
md.input.port2.gamepad2.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 2-Button Gamepad: UP ↑

MDFNST_STRING



0
md.input.port2.gamepad6.a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: A

MDFNST_STRING



0
md.input.port2.gamepad6.b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: B

MDFNST_STRING



0
md.input.port2.gamepad6.c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: C

MDFNST_STRING



0
md.input.port2.gamepad6.down
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: DOWN ↓

MDFNST_STRING



0
md.input.port2.gamepad6.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: LEFT ←

MDFNST_STRING



0
md.input.port2.gamepad6.mode
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Mode

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid A

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid B

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_c
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid C

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid X

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid Y

MDFNST_STRING



0
md.input.port2.gamepad6.rapid_z
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Rapid Z

MDFNST_STRING



0
md.input.port2.gamepad6.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: RIGHT →

MDFNST_STRING



0
md.input.port2.gamepad6.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Start

MDFNST_STRING



0
md.input.port2.gamepad6.up
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: UP ↑

MDFNST_STRING



0
md.input.port2.gamepad6.x
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: X

MDFNST_STRING



0
md.input.port2.gamepad6.y
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Y

MDFNST_STRING



0
md.input.port2.gamepad6.z
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, 6-Button Gamepad: Z

MDFNST_STRING



0
md.input.port2.megamouse.left
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, Sega Mega Mouse: Left Button

MDFNST_STRING



0
md.input.port2.megamouse.middle
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, Sega Mega Mouse: Middle Button

MDFNST_STRING



0
md.input.port2.megamouse.right
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, Sega Mega Mouse: Right Button

MDFNST_STRING



0
md.input.port2.megamouse.start
(nil) MDFNSF_SUPPRESS_DOC 
md, Port 2, Sega Mega Mouse: Start Button

MDFNST_STRING



0
md.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

md.region
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate the specified region\'s Genesis/MegaDrive

MDFNST_ENUM
game


5
game
Match game\'s header.
Emulate the region that the game indicates it expects to run in via data in the header(or in an internal database for a few games that may have bad header data).
overseas_ntsc
Overseas(non-Japan), NTSC
Region used in North America.
overseas_pal
Overseas(non-Japan), PAL
Region used in Europe.
domestic_ntsc
Domestic(Japan), NTSC
Region used in Japan.
domestic_pal
Domestic(Japan), PAL
Probably an invalid region, but available for testing purposes anyway.
md.reported_region
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Region reported to the game.

MDFNST_ENUM
same


6
same
Match the region emulated.

game
Match game\'s header.
This option, in conjunction with the \"md.region\" setting, can be used to run all games at NTSC speeds, or all games at PAL speeds.
overseas_ntsc
Overseas(non-Japan), NTSC
Region used in North America.
overseas_pal
Overseas(non-Japan), PAL
Region used in Europe.
domestic_ntsc
Domestic(Japan), NTSC
Region used in Japan.
domestic_pal
Domestic(Japan), PAL
Probably an invalid region, but available for testing purposes anyway.
md.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
md.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

md.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
md.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
md.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
md.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
md.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
md.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
md.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
md.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
md.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
md.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
md.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
nes.clipsides

Clip left+right 8 pixel columns.

MDFNST_BOOL
0


0
nes.correct_aspect
MDFNSF_CAT_VIDEO 
Correct the aspect ratio.

MDFNST_BOOL
0


0
nes.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

nes.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
cp437


0
nes.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
nes.fnscan
MDFNSF_EMU_STATE 
Scan filename for (U),(J),(E),etc. strings to en/dis-able PAL emulation.
Warning: This option may break NES network play when enabled IF the players are using ROM images with different filenames.
MDFNST_BOOL
1


0
nes.gg
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable Game Genie emulation.

MDFNST_BOOL
0


0
nes.ggrom
MDFNSF_EMU_STATE 
Path to Game Genie ROM image.

MDFNST_STRING
gg.rom


0
nes.input.fcexp
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Famicom Expansion Port

MDFNST_ENUM
none


12
none
none

arkanoid
Arkanoid Paddle

shadow
Space Shadow Gun

4player
4-player Adapter

fkb
Family Keyboard

hypershot
Hypershot Paddles

mahjong
Mahjong Controller

partytap
Party Tap

ftrainera
Family Trainer Side A

ftrainerb
Family Trainer Side B

oekakids
Oeka Kids Tablet

bworld
Barcode World Scanner

nes.input.fcexp.arkanoid.button
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Arkanoid Paddle: Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.fcexp.arkanoid.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Arkanoid Paddle: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.fcexp.fkb.0
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 0

MDFNST_STRING
keyboard 48


0
nes.input.fcexp.fkb.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 1

MDFNST_STRING
keyboard 49


0
nes.input.fcexp.fkb.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 2

MDFNST_STRING
keyboard 50


0
nes.input.fcexp.fkb.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 3

MDFNST_STRING
keyboard 51


0
nes.input.fcexp.fkb.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 4

MDFNST_STRING
keyboard 52


0
nes.input.fcexp.fkb.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 5

MDFNST_STRING
keyboard 53


0
nes.input.fcexp.fkb.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 6

MDFNST_STRING
keyboard 54


0
nes.input.fcexp.fkb.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 7

MDFNST_STRING
keyboard 55


0
nes.input.fcexp.fkb.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 8

MDFNST_STRING
keyboard 56


0
nes.input.fcexp.fkb.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: 9

MDFNST_STRING
keyboard 57


0
nes.input.fcexp.fkb.a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: A

MDFNST_STRING
keyboard 97


0
nes.input.fcexp.fkb.at
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: @

MDFNST_STRING
keyboard 96


0
nes.input.fcexp.fkb.b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: B

MDFNST_STRING
keyboard 98


0
nes.input.fcexp.fkb.backslash
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: \\

MDFNST_STRING
keyboard 92


0
nes.input.fcexp.fkb.c
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: C

MDFNST_STRING
keyboard 99


0
nes.input.fcexp.fkb.caret
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: ^

MDFNST_STRING
keyboard 61


0
nes.input.fcexp.fkb.clear
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: CLR

MDFNST_STRING
keyboard 127


0
nes.input.fcexp.fkb.colon
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: :

MDFNST_STRING
keyboard 39


0
nes.input.fcexp.fkb.comma
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: ,

MDFNST_STRING
keyboard 44


0
nes.input.fcexp.fkb.ctrl
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: CTR

MDFNST_STRING
keyboard 306


0
nes.input.fcexp.fkb.d
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: D

MDFNST_STRING
keyboard 100


0
nes.input.fcexp.fkb.delete
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: DEL

MDFNST_STRING
keyboard 281


0
nes.input.fcexp.fkb.down
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: DOWN

MDFNST_STRING
keyboard 274


0
nes.input.fcexp.fkb.e
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: E

MDFNST_STRING
keyboard 101


0
nes.input.fcexp.fkb.empty
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Empty

MDFNST_STRING
keyboard 307


0
nes.input.fcexp.fkb.escape
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: ESC

MDFNST_STRING
keyboard 27


0
nes.input.fcexp.fkb.f
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F

MDFNST_STRING
keyboard 102


0
nes.input.fcexp.fkb.f1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F1

MDFNST_STRING
keyboard 282


0
nes.input.fcexp.fkb.f2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F2

MDFNST_STRING
keyboard 283


0
nes.input.fcexp.fkb.f3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F3

MDFNST_STRING
keyboard 284


0
nes.input.fcexp.fkb.f4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F4

MDFNST_STRING
keyboard 285


0
nes.input.fcexp.fkb.f5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F5

MDFNST_STRING
keyboard 286


0
nes.input.fcexp.fkb.f6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F6

MDFNST_STRING
keyboard 287


0
nes.input.fcexp.fkb.f7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F7

MDFNST_STRING
keyboard 288


0
nes.input.fcexp.fkb.f8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: F8

MDFNST_STRING
keyboard 289


0
nes.input.fcexp.fkb.g
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: G

MDFNST_STRING
keyboard 103


0
nes.input.fcexp.fkb.graph
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: GRPH

MDFNST_STRING
keyboard 308


0
nes.input.fcexp.fkb.h
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: H

MDFNST_STRING
keyboard 104


0
nes.input.fcexp.fkb.i
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: I

MDFNST_STRING
keyboard 105


0
nes.input.fcexp.fkb.insert
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: INS

MDFNST_STRING
keyboard 279


0
nes.input.fcexp.fkb.j
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: J

MDFNST_STRING
keyboard 106


0
nes.input.fcexp.fkb.k
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: K

MDFNST_STRING
keyboard 107


0
nes.input.fcexp.fkb.kana
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: カナ

MDFNST_STRING
keyboard 277


0
nes.input.fcexp.fkb.l
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: L

MDFNST_STRING
keyboard 108


0
nes.input.fcexp.fkb.left
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: LEFT

MDFNST_STRING
keyboard 276


0
nes.input.fcexp.fkb.left_bracket
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: [

MDFNST_STRING
keyboard 91


0
nes.input.fcexp.fkb.left_shift
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Left SHIFT

MDFNST_STRING
keyboard 304


0
nes.input.fcexp.fkb.m
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: M

MDFNST_STRING
keyboard 109


0
nes.input.fcexp.fkb.minus
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: -

MDFNST_STRING
keyboard 45


0
nes.input.fcexp.fkb.n
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: N

MDFNST_STRING
keyboard 110


0
nes.input.fcexp.fkb.o
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: O

MDFNST_STRING
keyboard 111


0
nes.input.fcexp.fkb.p
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: P

MDFNST_STRING
keyboard 112


0
nes.input.fcexp.fkb.period
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: .

MDFNST_STRING
keyboard 46


0
nes.input.fcexp.fkb.q
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Q

MDFNST_STRING
keyboard 113


0
nes.input.fcexp.fkb.r
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: R

MDFNST_STRING
keyboard 114


0
nes.input.fcexp.fkb.return
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: RETURN

MDFNST_STRING
keyboard 13


0
nes.input.fcexp.fkb.right
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: RIGHT

MDFNST_STRING
keyboard 275


0
nes.input.fcexp.fkb.right_bracket
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: ]

MDFNST_STRING
keyboard 93


0
nes.input.fcexp.fkb.right_shift
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Right SHIFT

MDFNST_STRING
keyboard 303


0
nes.input.fcexp.fkb.s
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: S

MDFNST_STRING
keyboard 115


0
nes.input.fcexp.fkb.semicolon
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: ;

MDFNST_STRING
keyboard 59


0
nes.input.fcexp.fkb.slash
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: /

MDFNST_STRING
keyboard 47


0
nes.input.fcexp.fkb.space
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: SPACE

MDFNST_STRING
keyboard 32


0
nes.input.fcexp.fkb.stop
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: STOP

MDFNST_STRING
keyboard 8


0
nes.input.fcexp.fkb.t
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: T

MDFNST_STRING
keyboard 116


0
nes.input.fcexp.fkb.u
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: U

MDFNST_STRING
keyboard 117


0
nes.input.fcexp.fkb.up
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: UP

MDFNST_STRING
keyboard 273


0
nes.input.fcexp.fkb.v
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: V

MDFNST_STRING
keyboard 118


0
nes.input.fcexp.fkb.w
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: W

MDFNST_STRING
keyboard 119


0
nes.input.fcexp.fkb.x
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: X

MDFNST_STRING
keyboard 120


0
nes.input.fcexp.fkb.y
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Y

MDFNST_STRING
keyboard 121


0
nes.input.fcexp.fkb.z
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Keyboard: Z

MDFNST_STRING
keyboard 122


0
nes.input.fcexp.ftrainera.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 1

MDFNST_STRING
keyboard 111


0
nes.input.fcexp.ftrainera.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 10

MDFNST_STRING
keyboard 44


0
nes.input.fcexp.ftrainera.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 11

MDFNST_STRING
keyboard 46


0
nes.input.fcexp.ftrainera.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 12

MDFNST_STRING
keyboard 47


0
nes.input.fcexp.ftrainera.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 2

MDFNST_STRING
keyboard 112


0
nes.input.fcexp.ftrainera.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 3

MDFNST_STRING
keyboard 91


0
nes.input.fcexp.ftrainera.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 4

MDFNST_STRING
keyboard 93


0
nes.input.fcexp.ftrainera.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 5

MDFNST_STRING
keyboard 107


0
nes.input.fcexp.ftrainera.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 6

MDFNST_STRING
keyboard 108


0
nes.input.fcexp.ftrainera.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 7

MDFNST_STRING
keyboard 59


0
nes.input.fcexp.ftrainera.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 8

MDFNST_STRING
keyboard 39


0
nes.input.fcexp.ftrainera.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side A: 9

MDFNST_STRING
keyboard 109


0
nes.input.fcexp.ftrainerb.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 1

MDFNST_STRING
keyboard 111


0
nes.input.fcexp.ftrainerb.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 10

MDFNST_STRING
keyboard 44


0
nes.input.fcexp.ftrainerb.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 11

MDFNST_STRING
keyboard 46


0
nes.input.fcexp.ftrainerb.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 12

MDFNST_STRING
keyboard 47


0
nes.input.fcexp.ftrainerb.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 2

MDFNST_STRING
keyboard 112


0
nes.input.fcexp.ftrainerb.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 3

MDFNST_STRING
keyboard 91


0
nes.input.fcexp.ftrainerb.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 4

MDFNST_STRING
keyboard 93


0
nes.input.fcexp.ftrainerb.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 5

MDFNST_STRING
keyboard 107


0
nes.input.fcexp.ftrainerb.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 6

MDFNST_STRING
keyboard 108


0
nes.input.fcexp.ftrainerb.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 7

MDFNST_STRING
keyboard 59


0
nes.input.fcexp.ftrainerb.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 8

MDFNST_STRING
keyboard 39


0
nes.input.fcexp.ftrainerb.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Family Trainer Side B: 9

MDFNST_STRING
keyboard 109


0
nes.input.fcexp.hypershot.i_jump
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: I, JUMP

MDFNST_STRING
keyboard 119


0
nes.input.fcexp.hypershot.i_run
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: I, RUN

MDFNST_STRING
keyboard 113


0
nes.input.fcexp.hypershot.ii_jump
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: II, JUMP

MDFNST_STRING
keyboard 114


0
nes.input.fcexp.hypershot.ii_run
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: II, RUN

MDFNST_STRING
keyboard 101


0
nes.input.fcexp.hypershot.rapid_i_jump
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: Rapid I, JUMP

MDFNST_STRING



0
nes.input.fcexp.hypershot.rapid_i_run
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: Rapid I, RUN

MDFNST_STRING



0
nes.input.fcexp.hypershot.rapid_ii_jump
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: Rapid II, JUMP

MDFNST_STRING



0
nes.input.fcexp.hypershot.rapid_ii_run
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Hypershot Paddles: Rapid II, RUN

MDFNST_STRING



0
nes.input.fcexp.mahjong.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 1

MDFNST_STRING
keyboard 113


0
nes.input.fcexp.mahjong.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 10

MDFNST_STRING
keyboard 103


0
nes.input.fcexp.mahjong.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 11

MDFNST_STRING
keyboard 104


0
nes.input.fcexp.mahjong.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 12

MDFNST_STRING
keyboard 106


0
nes.input.fcexp.mahjong.13
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 13

MDFNST_STRING
keyboard 107


0
nes.input.fcexp.mahjong.14
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 14

MDFNST_STRING
keyboard 108


0
nes.input.fcexp.mahjong.15
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 15

MDFNST_STRING
keyboard 122


0
nes.input.fcexp.mahjong.16
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 16

MDFNST_STRING
keyboard 120


0
nes.input.fcexp.mahjong.17
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 17

MDFNST_STRING
keyboard 99


0
nes.input.fcexp.mahjong.18
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 18

MDFNST_STRING
keyboard 118


0
nes.input.fcexp.mahjong.19
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 19

MDFNST_STRING
keyboard 98


0
nes.input.fcexp.mahjong.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 2

MDFNST_STRING
keyboard 119


0
nes.input.fcexp.mahjong.20
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 20

MDFNST_STRING
keyboard 110


0
nes.input.fcexp.mahjong.21
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 21

MDFNST_STRING
keyboard 109


0
nes.input.fcexp.mahjong.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 3

MDFNST_STRING
keyboard 101


0
nes.input.fcexp.mahjong.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 4

MDFNST_STRING
keyboard 114


0
nes.input.fcexp.mahjong.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 5

MDFNST_STRING
keyboard 116


0
nes.input.fcexp.mahjong.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 6

MDFNST_STRING
keyboard 97


0
nes.input.fcexp.mahjong.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 7

MDFNST_STRING
keyboard 115


0
nes.input.fcexp.mahjong.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 8

MDFNST_STRING
keyboard 100


0
nes.input.fcexp.mahjong.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Mahjong Controller: 9

MDFNST_STRING
keyboard 102


0
nes.input.fcexp.oekakids.button
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Oeka Kids Tablet: Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.fcexp.oekakids.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Oeka Kids Tablet: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.fcexp.oekakids.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Oeka Kids Tablet: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
nes.input.fcexp.partytap.buzzer_1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 1

MDFNST_STRING
keyboard 113


0
nes.input.fcexp.partytap.buzzer_2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 2

MDFNST_STRING
keyboard 119


0
nes.input.fcexp.partytap.buzzer_3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 3

MDFNST_STRING
keyboard 101


0
nes.input.fcexp.partytap.buzzer_4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 4

MDFNST_STRING
keyboard 114


0
nes.input.fcexp.partytap.buzzer_5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 5

MDFNST_STRING
keyboard 116


0
nes.input.fcexp.partytap.buzzer_6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Party Tap: Buzzer 6

MDFNST_STRING
keyboard 121


0
nes.input.fcexp.shadow.away_trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Space Shadow Gun: Away Trigger

MDFNST_STRING
mouse 0000000000000000 00000002


0
nes.input.fcexp.shadow.trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Space Shadow Gun: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.fcexp.shadow.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Space Shadow Gun: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.fcexp.shadow.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Famicom Expansion Port, Space Shadow Gun: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
nes.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1

MDFNST_ENUM
gamepad


6
none
none

gamepad
Gamepad

zapper
Zapper

powerpada
Power Pad Side A

powerpadb
Power Pad Side B

arkanoid
Arkanoid Paddle

nes.input.port1.arkanoid.button
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Arkanoid Paddle: Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.port1.arkanoid.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Arkanoid Paddle: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.port1.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: A

MDFNST_STRING
keyboard 259


0
nes.input.port1.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: B

MDFNST_STRING
keyboard 258


0
nes.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
nes.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
nes.input.port1.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: Rapid A

MDFNST_STRING



0
nes.input.port1.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: Rapid B

MDFNST_STRING



0
nes.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
nes.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
nes.input.port1.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: START

MDFNST_STRING
keyboard 13


0
nes.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
nes.input.port1.powerpada.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 1

MDFNST_STRING
keyboard 111


0
nes.input.port1.powerpada.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 10

MDFNST_STRING
keyboard 44


0
nes.input.port1.powerpada.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 11

MDFNST_STRING
keyboard 46


0
nes.input.port1.powerpada.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 12

MDFNST_STRING
keyboard 47


0
nes.input.port1.powerpada.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 2

MDFNST_STRING
keyboard 112


0
nes.input.port1.powerpada.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 3

MDFNST_STRING
keyboard 91


0
nes.input.port1.powerpada.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 4

MDFNST_STRING
keyboard 93


0
nes.input.port1.powerpada.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 5

MDFNST_STRING
keyboard 107


0
nes.input.port1.powerpada.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 6

MDFNST_STRING
keyboard 108


0
nes.input.port1.powerpada.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 7

MDFNST_STRING
keyboard 59


0
nes.input.port1.powerpada.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 8

MDFNST_STRING
keyboard 39


0
nes.input.port1.powerpada.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side A: 9

MDFNST_STRING
keyboard 109


0
nes.input.port1.powerpadb.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 1

MDFNST_STRING
keyboard 111


0
nes.input.port1.powerpadb.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 10

MDFNST_STRING
keyboard 44


0
nes.input.port1.powerpadb.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 11

MDFNST_STRING
keyboard 46


0
nes.input.port1.powerpadb.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 12

MDFNST_STRING
keyboard 47


0
nes.input.port1.powerpadb.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 2

MDFNST_STRING
keyboard 112


0
nes.input.port1.powerpadb.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 3

MDFNST_STRING
keyboard 91


0
nes.input.port1.powerpadb.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 4

MDFNST_STRING
keyboard 93


0
nes.input.port1.powerpadb.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 5

MDFNST_STRING
keyboard 107


0
nes.input.port1.powerpadb.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 6

MDFNST_STRING
keyboard 108


0
nes.input.port1.powerpadb.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 7

MDFNST_STRING
keyboard 59


0
nes.input.port1.powerpadb.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 8

MDFNST_STRING
keyboard 39


0
nes.input.port1.powerpadb.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Power Pad Side B: 9

MDFNST_STRING
keyboard 109


0
nes.input.port1.zapper.away_trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Zapper: Away Trigger

MDFNST_STRING
mouse 0000000000000000 00000002


0
nes.input.port1.zapper.trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Zapper: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.port1.zapper.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Zapper: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.port1.zapper.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 1, Zapper: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
nes.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2

MDFNST_ENUM
gamepad


6
none
none

gamepad
Gamepad

zapper
Zapper

powerpada
Power Pad Side A

powerpadb
Power Pad Side B

arkanoid
Arkanoid Paddle

nes.input.port2.arkanoid.button
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Arkanoid Paddle: Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.port2.arkanoid.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Arkanoid Paddle: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.port2.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: A

MDFNST_STRING



0
nes.input.port2.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: B

MDFNST_STRING



0
nes.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: DOWN ↓

MDFNST_STRING



0
nes.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: LEFT ←

MDFNST_STRING



0
nes.input.port2.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: Rapid A

MDFNST_STRING



0
nes.input.port2.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: Rapid B

MDFNST_STRING



0
nes.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: RIGHT →

MDFNST_STRING



0
nes.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: SELECT

MDFNST_STRING



0
nes.input.port2.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: START

MDFNST_STRING



0
nes.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Gamepad: UP ↑

MDFNST_STRING



0
nes.input.port2.powerpada.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 1

MDFNST_STRING
keyboard 111


0
nes.input.port2.powerpada.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 10

MDFNST_STRING
keyboard 44


0
nes.input.port2.powerpada.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 11

MDFNST_STRING
keyboard 46


0
nes.input.port2.powerpada.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 12

MDFNST_STRING
keyboard 47


0
nes.input.port2.powerpada.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 2

MDFNST_STRING
keyboard 112


0
nes.input.port2.powerpada.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 3

MDFNST_STRING
keyboard 91


0
nes.input.port2.powerpada.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 4

MDFNST_STRING
keyboard 93


0
nes.input.port2.powerpada.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 5

MDFNST_STRING
keyboard 107


0
nes.input.port2.powerpada.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 6

MDFNST_STRING
keyboard 108


0
nes.input.port2.powerpada.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 7

MDFNST_STRING
keyboard 59


0
nes.input.port2.powerpada.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 8

MDFNST_STRING
keyboard 39


0
nes.input.port2.powerpada.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side A: 9

MDFNST_STRING
keyboard 109


0
nes.input.port2.powerpadb.1
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 1

MDFNST_STRING
keyboard 111


0
nes.input.port2.powerpadb.10
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 10

MDFNST_STRING
keyboard 44


0
nes.input.port2.powerpadb.11
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 11

MDFNST_STRING
keyboard 46


0
nes.input.port2.powerpadb.12
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 12

MDFNST_STRING
keyboard 47


0
nes.input.port2.powerpadb.2
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 2

MDFNST_STRING
keyboard 112


0
nes.input.port2.powerpadb.3
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 3

MDFNST_STRING
keyboard 91


0
nes.input.port2.powerpadb.4
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 4

MDFNST_STRING
keyboard 93


0
nes.input.port2.powerpadb.5
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 5

MDFNST_STRING
keyboard 107


0
nes.input.port2.powerpadb.6
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 6

MDFNST_STRING
keyboard 108


0
nes.input.port2.powerpadb.7
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 7

MDFNST_STRING
keyboard 59


0
nes.input.port2.powerpadb.8
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 8

MDFNST_STRING
keyboard 39


0
nes.input.port2.powerpadb.9
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Power Pad Side B: 9

MDFNST_STRING
keyboard 109


0
nes.input.port2.zapper.away_trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Zapper: Away Trigger

MDFNST_STRING
mouse 0000000000000000 00000002


0
nes.input.port2.zapper.trigger
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Zapper: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
nes.input.port2.zapper.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Zapper: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
nes.input.port2.zapper.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 2, Zapper: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
nes.input.port3
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 3

MDFNST_ENUM
gamepad


2
none
none

gamepad
Gamepad

nes.input.port3.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: A

MDFNST_STRING



0
nes.input.port3.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: B

MDFNST_STRING



0
nes.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: DOWN ↓

MDFNST_STRING



0
nes.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: LEFT ←

MDFNST_STRING



0
nes.input.port3.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: Rapid A

MDFNST_STRING



0
nes.input.port3.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: Rapid B

MDFNST_STRING



0
nes.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: RIGHT →

MDFNST_STRING



0
nes.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: SELECT

MDFNST_STRING



0
nes.input.port3.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: START

MDFNST_STRING



0
nes.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 3, Gamepad: UP ↑

MDFNST_STRING



0
nes.input.port4
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 4

MDFNST_ENUM
gamepad


2
none
none

gamepad
Gamepad

nes.input.port4.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: A

MDFNST_STRING



0
nes.input.port4.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: B

MDFNST_STRING



0
nes.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: DOWN ↓

MDFNST_STRING



0
nes.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: LEFT ←

MDFNST_STRING



0
nes.input.port4.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: Rapid A

MDFNST_STRING



0
nes.input.port4.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: Rapid B

MDFNST_STRING



0
nes.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: RIGHT →

MDFNST_STRING



0
nes.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: SELECT

MDFNST_STRING



0
nes.input.port4.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: START

MDFNST_STRING



0
nes.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
nes, Port 4, Gamepad: UP ↑

MDFNST_STRING



0
nes.n106bs

Enable less-accurate, but better sounding, Namco 106(mapper 19) sound emulation.

MDFNST_BOOL
0


0
nes.no8lim

Remove 8-sprites-per-scanline hardware limit.
WARNING: Enabling this option will cause graphical glitches in some games, including \"Solstice\".
MDFNST_BOOL
0


0
nes.nofs
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Disable four-score emulation.

MDFNST_BOOL
0


0
nes.ntsc.brightness

NTSC composite blitter brightness.

MDFNST_FLOAT
0
-1
1
0
nes.ntsc.contrast

NTSC composite blitter contrast.

MDFNST_FLOAT
0
-1
1
0
nes.ntsc.hue

NTSC composite blitter hue.

MDFNST_FLOAT
0
-1
1
0
nes.ntsc.matrix

Enable NTSC custom decoder matrix.

MDFNST_BOOL
0


0
nes.ntsc.matrix.0

NTSC custom decoder matrix element 0(red, value * V).

MDFNST_FLOAT
1.539
-2.000
2.000
0
nes.ntsc.matrix.1

NTSC custom decoder matrix element 1(red, value * U).

MDFNST_FLOAT
-0.622
-2.000
2.000
0
nes.ntsc.matrix.2

NTSC custom decoder matrix element 2(green, value * V).

MDFNST_FLOAT
-0.571
-2.000
2.000
0
nes.ntsc.matrix.3

NTSC custom decoder matrix element 3(green, value * U).

MDFNST_FLOAT
-0.185
-2.000
2.000
0
nes.ntsc.matrix.4

NTSC custom decoder matrix element 4(blue, value * V).

MDFNST_FLOAT
0.000
-2.000
2.000
0
nes.ntsc.matrix.5

NTSC custom decoder matrix element 5(blue, value * U.

MDFNST_FLOAT
2.000
-2.000
2.000
0
nes.ntsc.mergefields

Merge fields to partially work around !=60.1Hz refresh rates.

MDFNST_BOOL
0


0
nes.ntsc.preset

Video quality/type preset.

MDFNST_ENUM
none


6
disabled
Disabled

none


composite
Composite Video

svideo
S-Video

rgb
RGB

monochrome
Monochrome

nes.ntsc.saturation

NTSC composite blitter saturation.

MDFNST_FLOAT
0
-1
1
0
nes.ntsc.sharpness

NTSC composite blitter sharpness.

MDFNST_FLOAT
0
-1
1
0
nes.ntscblitter

Enable NTSC color generation and blitter.
NOTE: If your refresh rate isn\'t very close to 60.1Hz(+-0.1), you will need to set the nes.ntsc.mergefields setting to \"1\" to avoid excessive flickering.
MDFNST_BOOL
0


0
nes.pal
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable PAL(50Hz) NES emulation.

MDFNST_BOOL
0


0
nes.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

nes.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
nes.slend

Last displayed scanline in NTSC mode.

MDFNST_UINT
231
0
239
0
nes.slendp

Last displayed scanline in PAL mode.

MDFNST_UINT
239
0
239
0
nes.slstart

First displayed scanline in NTSC mode.

MDFNST_UINT
8
0
239
0
nes.slstartp

First displayed scanline in PAL mode.

MDFNST_UINT
0
0
239
0
nes.sound_rate_error

Output rate tolerance.
Lower values correspond to better matching of the output rate of the resampler to the actual desired output rate, at the expense of increased RAM usage and poorer CPU cache utilization.  DO NOT INCREASE THIS VALUE, OR SOUND WILL LIKELY BE OFF-KEY AND THE WRONG TEMPO, AMONG OTHER PROBLEMS.
MDFNST_FLOAT
0.00004
0.0000001
0.01
0
nes.soundq

Sound quality.
Higher values correspond to better SNR and better preservation of higher frequencies(\"brightness\"), at the cost of increased computational complexity and a negligible(<0.5ms) increase in latency.
MDFNST_INT
0
-2
3
0
nes.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

nes.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
nes.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
nes.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
nes.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
nes.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
nes.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
nes.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
nes.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
nes.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
nes.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
nes.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
netplay.gamekey

Key to hash with the MD5 hash of the game.

MDFNST_STRING



0
netplay.host

Server hostname.

MDFNST_STRING
netplay.fobby.net


0
netplay.localplayers

Local player count.
Number of local players for network play.  This number is advisory to the server, and the server may assign fewer players if the number of players requested is higher than the number of controllers currently available.
MDFNST_UINT
1
0
16
0
netplay.nick

Nickname.
Nickname to use for network play chat.
MDFNST_STRING



0
netplay.password

Server password.
Password to connect to the netplay server.
MDFNST_STRING



0
netplay.port

Server port.

MDFNST_UINT
4046
1
65535
0
netplay.smallfont

Use small(tiny!) font for netplay chat console.

MDFNST_BOOL
0


0
ngp.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
ngp.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
ngp.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: A

MDFNST_STRING
keyboard 258


0
ngp.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: B

MDFNST_STRING
keyboard 259


0
ngp.input.builtin.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
ngp.input.builtin.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
ngp.input.builtin.gamepad.option
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: OPTION

MDFNST_STRING
keyboard 13


0
ngp.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: Rapid A

MDFNST_STRING



0
ngp.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: Rapid B

MDFNST_STRING



0
ngp.input.builtin.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
ngp.input.builtin.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
ngp, Built-In, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
ngp.language
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Language games should display text in.

MDFNST_ENUM
english


4
japanese
Japanese

0


english
English

1


ngp.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

ngp.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
ngp.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

ngp.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
ngp.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
ngp.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
ngp.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
ngp.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
ngp.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
ngp.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
ngp.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
ngp.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
ngp.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
4.000000
0.01
256
0
ngp.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
nothrottle

Disable speed throttling when sound is disabled.

MDFNST_BOOL
0


0
osd.alpha_blend

Enable alpha blending for OSD elements.

MDFNST_BOOL
1


0
osd.state_display_time

The length of time, in milliseconds, to display the save state or the movie selector after selecting a state or movie.

MDFNST_UINT
2000
0
15000
0
pce.adpcmextraprec

Output the full 12-bit ADPCM predictor.
Enabling this option causes the MSM5205 ADPCM predictor to be outputted with full precision of 12-bits, rather than only outputting 10-bits of precision(as an actual MSM5205 does).  Enable this option to reduce whining noise during ADPCM playback.
MDFNST_BOOL
0


0
pce.adpcmvolume

ADPCM volume.
Setting this volume control too high may cause sample clipping.
MDFNST_UINT
100
0
200
0
pce.arcadecard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable Arcade Card emulation.
Leaving this option enabled is recommended, unless you want to see special warning screens on ACD games, or you prefer the non-enhanced modes of ACD-enhanced SCD games.  Additionally, you may want to disable it you you wish to use state rewinding with a SCD ACD-enhanced game on a slow CPU, as the extra 2MiB of RAM the Arcade Card offers is difficult to compress in real-time.
MDFNST_BOOL
1


0
pce.cdbios
MDFNSF_EMU_STATE 
Path to the CD BIOS

MDFNST_STRING
syscard3.pce


0
pce.cddavolume

CD-DA volume.
Setting this volume control too high may cause sample clipping.
MDFNST_UINT
100
0
200
0
pce.cdpsgvolume

PSG volume when playing a CD game.
Setting this volume control too high may cause sample clipping.
MDFNST_UINT
100
0
200
0
pce.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

pce.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
pce.disable_bram_cd
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Disable BRAM(saved game memory) for CD games.
It is intended for viewing CD games\' error screens that may be different from simple BRAM full and uninitialized BRAM error screens, though it can cause the game to crash outright.
MDFNST_BOOL
0


0
pce.disable_bram_hucard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Disable BRAM(saved game memory) for HuCard games.
It is intended for changing the behavior(passwords vs save games) of some HuCard games.
MDFNST_BOOL
0


0
pce.disable_softreset

If set, when RUN+SEL are pressed simultaneously, disable both buttons temporarily.

MDFNST_BOOL
0


0
pce.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
pce.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
pce.forcesgx
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Force SuperGrafx emulation.
Enabling this option is not necessary to run unrecognized PCE ROM images in SuperGrafx mode, and enabling it is discouraged; ROM images with a file extension of \".sgx\" will automatically enable SuperGrafx emulation.
MDFNST_BOOL
0


0
pce.gecdbios
MDFNSF_EMU_STATE 
Path to the GE CD BIOS
Games Express CD Card BIOS (Unlicensed)
MDFNST_STRING
gecard.pce


0
pce.h_overscan

Show horizontal overscan area.

MDFNST_BOOL
0


0
pce.input.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap(TurboTap) emulation.

MDFNST_BOOL
1


0
pce.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1

MDFNST_ENUM
gamepad


4
none
none

gamepad
Gamepad

mouse
Mouse

tsushinkb
Tsushin Keyboard

pce.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
pce.input.port1.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: I

MDFNST_STRING
keyboard 259


0
pce.input.port1.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: II

MDFNST_STRING
keyboard 258


0
pce.input.port1.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: III

MDFNST_STRING
keyboard 257


0
pce.input.port1.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: IV

MDFNST_STRING
keyboard 260


0
pce.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
pce.input.port1.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: 2/6 Mode Select

MDFNST_STRING
keyboard 109


0
pce.input.port1.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: Rapid I

MDFNST_STRING



0
pce.input.port1.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: Rapid II

MDFNST_STRING



0
pce.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
pce.input.port1.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
pce.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
pce.input.port1.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: V

MDFNST_STRING
keyboard 261


0
pce.input.port1.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Gamepad: VI

MDFNST_STRING
keyboard 262


0
pce.input.port1.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pce.input.port1.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pce.input.port1.mouse.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Mouse: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port1.mouse.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Mouse: SELECT

MDFNST_STRING
keyboard 9


0
pce.input.port1.tsushinkb.0
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 0

MDFNST_STRING
keyboard 48


0
pce.input.port1.tsushinkb.1
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 1

MDFNST_STRING
keyboard 49


0
pce.input.port1.tsushinkb.2
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 2

MDFNST_STRING
keyboard 50


0
pce.input.port1.tsushinkb.3
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 3

MDFNST_STRING
keyboard 51


0
pce.input.port1.tsushinkb.4
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 4

MDFNST_STRING
keyboard 52


0
pce.input.port1.tsushinkb.5
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 5

MDFNST_STRING
keyboard 53


0
pce.input.port1.tsushinkb.6
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 6

MDFNST_STRING
keyboard 54


0
pce.input.port1.tsushinkb.7
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 7

MDFNST_STRING
keyboard 55


0
pce.input.port1.tsushinkb.8
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 8

MDFNST_STRING
keyboard 56


0
pce.input.port1.tsushinkb.9
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 9

MDFNST_STRING
keyboard 57


0
pce.input.port1.tsushinkb.a
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: a

MDFNST_STRING
keyboard 97


0
pce.input.port1.tsushinkb.at
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: @

MDFNST_STRING
keyboard 96


0
pce.input.port1.tsushinkb.b
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: b

MDFNST_STRING
keyboard 98


0
pce.input.port1.tsushinkb.backspace
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: backspace

MDFNST_STRING
keyboard 8


0
pce.input.port1.tsushinkb.c
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: c

MDFNST_STRING
keyboard 99


0
pce.input.port1.tsushinkb.caps_lock
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Caps Lock

MDFNST_STRING
keyboard 301


0
pce.input.port1.tsushinkb.caret
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ^

MDFNST_STRING
keyboard 61


0
pce.input.port1.tsushinkb.clear
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: clear

MDFNST_STRING
keyboard 278


0
pce.input.port1.tsushinkb.colon
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: :

MDFNST_STRING
keyboard 39


0
pce.input.port1.tsushinkb.comma
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ,

MDFNST_STRING
keyboard 44


0
pce.input.port1.tsushinkb.convert
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 変換

MDFNST_STRING
keyboard 307


0
pce.input.port1.tsushinkb.copy
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Copy

MDFNST_STRING
keyboard 316


0
pce.input.port1.tsushinkb.ctrl
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: CTRL/Control

MDFNST_STRING
keyboard 306


0
pce.input.port1.tsushinkb.d
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: d

MDFNST_STRING
keyboard 100


0
pce.input.port1.tsushinkb.delete
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Delete

MDFNST_STRING
keyboard 127


0
pce.input.port1.tsushinkb.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: down

MDFNST_STRING
keyboard 274


0
pce.input.port1.tsushinkb.e
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: e

MDFNST_STRING
keyboard 101


0
pce.input.port1.tsushinkb.escape
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Escape

MDFNST_STRING
keyboard 27


0
pce.input.port1.tsushinkb.f
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: f

MDFNST_STRING
keyboard 102


0
pce.input.port1.tsushinkb.f1
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F1

MDFNST_STRING
keyboard 282


0
pce.input.port1.tsushinkb.f10
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F10

MDFNST_STRING
keyboard 291


0
pce.input.port1.tsushinkb.f2
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F2

MDFNST_STRING
keyboard 283


0
pce.input.port1.tsushinkb.f3
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F3

MDFNST_STRING
keyboard 284


0
pce.input.port1.tsushinkb.f4
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F4

MDFNST_STRING
keyboard 285


0
pce.input.port1.tsushinkb.f5
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: F5

MDFNST_STRING
keyboard 286


0
pce.input.port1.tsushinkb.f6
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: f6

MDFNST_STRING
keyboard 287


0
pce.input.port1.tsushinkb.f7
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: f7

MDFNST_STRING
keyboard 288


0
pce.input.port1.tsushinkb.f8
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: f8

MDFNST_STRING
keyboard 289


0
pce.input.port1.tsushinkb.f9
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: f9

MDFNST_STRING
keyboard 290


0
pce.input.port1.tsushinkb.g
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: g

MDFNST_STRING
keyboard 103


0
pce.input.port1.tsushinkb.grph
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: GRPH

MDFNST_STRING
keyboard 0


0
pce.input.port1.tsushinkb.h
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: h

MDFNST_STRING
keyboard 104


0
pce.input.port1.tsushinkb.help
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Help

MDFNST_STRING
keyboard 279


0
pce.input.port1.tsushinkb.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: i

MDFNST_STRING
keyboard 105


0
pce.input.port1.tsushinkb.insert
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: insert

MDFNST_STRING
keyboard 277


0
pce.input.port1.tsushinkb.j
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: j

MDFNST_STRING
keyboard 106


0
pce.input.port1.tsushinkb.k
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: k

MDFNST_STRING
keyboard 107


0
pce.input.port1.tsushinkb.kana
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: カナ

MDFNST_STRING
keyboard 311


0
pce.input.port1.tsushinkb.kp_0
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 0

MDFNST_STRING
keyboard 256


0
pce.input.port1.tsushinkb.kp_1
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 1

MDFNST_STRING
keyboard 257


0
pce.input.port1.tsushinkb.kp_2
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 2

MDFNST_STRING
keyboard 258


0
pce.input.port1.tsushinkb.kp_3
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 3

MDFNST_STRING
keyboard 259


0
pce.input.port1.tsushinkb.kp_4
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 4

MDFNST_STRING
keyboard 260


0
pce.input.port1.tsushinkb.kp_5
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 5

MDFNST_STRING
keyboard 261


0
pce.input.port1.tsushinkb.kp_6
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 6

MDFNST_STRING
keyboard 262


0
pce.input.port1.tsushinkb.kp_7
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 7

MDFNST_STRING
keyboard 263


0
pce.input.port1.tsushinkb.kp_8
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 8

MDFNST_STRING
keyboard 264


0
pce.input.port1.tsushinkb.kp_9
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad 9

MDFNST_STRING
keyboard 265


0
pce.input.port1.tsushinkb.kp_comma
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad ,

MDFNST_STRING
keyboard 0


0
pce.input.port1.tsushinkb.kp_divide
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad Divide

MDFNST_STRING
keyboard 267


0
pce.input.port1.tsushinkb.kp_enter
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad Enter

MDFNST_STRING
keyboard 271


0
pce.input.port1.tsushinkb.kp_equals
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad =

MDFNST_STRING
keyboard 272


0
pce.input.port1.tsushinkb.kp_minus
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad Minus

MDFNST_STRING
keyboard 269


0
pce.input.port1.tsushinkb.kp_multiply
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad *

MDFNST_STRING
keyboard 268


0
pce.input.port1.tsushinkb.kp_period
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad .

MDFNST_STRING
keyboard 266


0
pce.input.port1.tsushinkb.kp_plus
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Keypad +

MDFNST_STRING
keyboard 270


0
pce.input.port1.tsushinkb.l
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: l

MDFNST_STRING
keyboard 108


0
pce.input.port1.tsushinkb.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: left

MDFNST_STRING
keyboard 276


0
pce.input.port1.tsushinkb.left_bracket
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: [

MDFNST_STRING
keyboard 91


0
pce.input.port1.tsushinkb.left_shift
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Left Shift

MDFNST_STRING
keyboard 304


0
pce.input.port1.tsushinkb.m
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: m

MDFNST_STRING
keyboard 109


0
pce.input.port1.tsushinkb.minus
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Minus

MDFNST_STRING
keyboard 45


0
pce.input.port1.tsushinkb.n
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: n

MDFNST_STRING
keyboard 110


0
pce.input.port1.tsushinkb.nonconvert
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 決定

MDFNST_STRING
keyboard 308


0
pce.input.port1.tsushinkb.o
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: o

MDFNST_STRING
keyboard 111


0
pce.input.port1.tsushinkb.p
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: p

MDFNST_STRING
keyboard 112


0
pce.input.port1.tsushinkb.pc
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: PC

MDFNST_STRING
keyboard 312


0
pce.input.port1.tsushinkb.period
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: .

MDFNST_STRING
keyboard 46


0
pce.input.port1.tsushinkb.q
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: q

MDFNST_STRING
keyboard 113


0
pce.input.port1.tsushinkb.r
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: r

MDFNST_STRING
keyboard 114


0
pce.input.port1.tsushinkb.return
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: return

MDFNST_STRING
keyboard 13


0
pce.input.port1.tsushinkb.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: right

MDFNST_STRING
keyboard 275


0
pce.input.port1.tsushinkb.right_bracket
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ]

MDFNST_STRING
keyboard 93


0
pce.input.port1.tsushinkb.right_shift
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Right Shift

MDFNST_STRING
keyboard 303


0
pce.input.port1.tsushinkb.roll_down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ROLL DOWN

MDFNST_STRING
keyboard 281


0
pce.input.port1.tsushinkb.roll_up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ROLL UP

MDFNST_STRING
keyboard 280


0
pce.input.port1.tsushinkb.s
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: s

MDFNST_STRING
keyboard 115


0
pce.input.port1.tsushinkb.semicolon
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: ;

MDFNST_STRING
keyboard 59


0
pce.input.port1.tsushinkb.slash
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: /

MDFNST_STRING
keyboard 47


0
pce.input.port1.tsushinkb.space
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: space

MDFNST_STRING
keyboard 32


0
pce.input.port1.tsushinkb.stop
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: STOP

MDFNST_STRING
keyboard 318


0
pce.input.port1.tsushinkb.t
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: t

MDFNST_STRING
keyboard 116


0
pce.input.port1.tsushinkb.tab
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Tab

MDFNST_STRING
keyboard 9


0
pce.input.port1.tsushinkb.u
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: u

MDFNST_STRING
keyboard 117


0
pce.input.port1.tsushinkb.underscore
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Underscore

MDFNST_STRING
keyboard 0


0
pce.input.port1.tsushinkb.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: up

MDFNST_STRING
keyboard 273


0
pce.input.port1.tsushinkb.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: v

MDFNST_STRING
keyboard 118


0
pce.input.port1.tsushinkb.w
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: w

MDFNST_STRING
keyboard 119


0
pce.input.port1.tsushinkb.width
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: 変換

MDFNST_STRING
keyboard 305


0
pce.input.port1.tsushinkb.x
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: x

MDFNST_STRING
keyboard 120


0
pce.input.port1.tsushinkb.y
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: y

MDFNST_STRING
keyboard 121


0
pce.input.port1.tsushinkb.yen
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: Yen

MDFNST_STRING
keyboard 43


0
pce.input.port1.tsushinkb.z
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 1, Tsushin Keyboard: z

MDFNST_STRING
keyboard 122


0
pce.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: DOWN ↓

MDFNST_STRING



0
pce.input.port2.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: I

MDFNST_STRING



0
pce.input.port2.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: II

MDFNST_STRING



0
pce.input.port2.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: III

MDFNST_STRING



0
pce.input.port2.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: IV

MDFNST_STRING



0
pce.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: LEFT ←

MDFNST_STRING



0
pce.input.port2.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce.input.port2.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: Rapid I

MDFNST_STRING



0
pce.input.port2.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: Rapid II

MDFNST_STRING



0
pce.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: RIGHT →

MDFNST_STRING



0
pce.input.port2.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: RUN

MDFNST_STRING



0
pce.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: SELECT

MDFNST_STRING



0
pce.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: UP ↑

MDFNST_STRING



0
pce.input.port2.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: V

MDFNST_STRING



0
pce.input.port2.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Gamepad: VI

MDFNST_STRING



0
pce.input.port2.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pce.input.port2.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pce.input.port2.mouse.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Mouse: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port2.mouse.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 2, Mouse: SELECT

MDFNST_STRING
keyboard 9


0
pce.input.port3
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 3

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: DOWN ↓

MDFNST_STRING



0
pce.input.port3.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: I

MDFNST_STRING



0
pce.input.port3.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: II

MDFNST_STRING



0
pce.input.port3.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: III

MDFNST_STRING



0
pce.input.port3.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: IV

MDFNST_STRING



0
pce.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: LEFT ←

MDFNST_STRING



0
pce.input.port3.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce.input.port3.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: Rapid I

MDFNST_STRING



0
pce.input.port3.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: Rapid II

MDFNST_STRING



0
pce.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: RIGHT →

MDFNST_STRING



0
pce.input.port3.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: RUN

MDFNST_STRING



0
pce.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: SELECT

MDFNST_STRING



0
pce.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: UP ↑

MDFNST_STRING



0
pce.input.port3.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: V

MDFNST_STRING



0
pce.input.port3.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Gamepad: VI

MDFNST_STRING



0
pce.input.port3.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pce.input.port3.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pce.input.port3.mouse.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Mouse: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port3.mouse.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 3, Mouse: SELECT

MDFNST_STRING
keyboard 9


0
pce.input.port4
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 4

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: DOWN ↓

MDFNST_STRING



0
pce.input.port4.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: I

MDFNST_STRING



0
pce.input.port4.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: II

MDFNST_STRING



0
pce.input.port4.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: III

MDFNST_STRING



0
pce.input.port4.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: IV

MDFNST_STRING



0
pce.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: LEFT ←

MDFNST_STRING



0
pce.input.port4.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce.input.port4.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: Rapid I

MDFNST_STRING



0
pce.input.port4.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: Rapid II

MDFNST_STRING



0
pce.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: RIGHT →

MDFNST_STRING



0
pce.input.port4.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: RUN

MDFNST_STRING



0
pce.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: SELECT

MDFNST_STRING



0
pce.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: UP ↑

MDFNST_STRING



0
pce.input.port4.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: V

MDFNST_STRING



0
pce.input.port4.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Gamepad: VI

MDFNST_STRING



0
pce.input.port4.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pce.input.port4.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pce.input.port4.mouse.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Mouse: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port4.mouse.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 4, Mouse: SELECT

MDFNST_STRING
keyboard 9


0
pce.input.port5
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 5

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce.input.port5.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: DOWN ↓

MDFNST_STRING



0
pce.input.port5.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: I

MDFNST_STRING



0
pce.input.port5.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: II

MDFNST_STRING



0
pce.input.port5.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: III

MDFNST_STRING



0
pce.input.port5.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: IV

MDFNST_STRING



0
pce.input.port5.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: LEFT ←

MDFNST_STRING



0
pce.input.port5.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce.input.port5.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: Rapid I

MDFNST_STRING



0
pce.input.port5.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: Rapid II

MDFNST_STRING



0
pce.input.port5.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: RIGHT →

MDFNST_STRING



0
pce.input.port5.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: RUN

MDFNST_STRING



0
pce.input.port5.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: SELECT

MDFNST_STRING



0
pce.input.port5.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: UP ↑

MDFNST_STRING



0
pce.input.port5.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: V

MDFNST_STRING



0
pce.input.port5.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Gamepad: VI

MDFNST_STRING



0
pce.input.port5.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pce.input.port5.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pce.input.port5.mouse.run
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Mouse: RUN

MDFNST_STRING
keyboard 13


0
pce.input.port5.mouse.select
(nil) MDFNSF_SUPPRESS_DOC 
pce, Port 5, Mouse: SELECT

MDFNST_STRING
keyboard 9


0
pce.mouse_sensitivity

Emulated mouse sensitivity.

MDFNST_FLOAT
0.50


0
pce.nospritelimit

Remove 16-sprites-per-scanline hardware limit.
WARNING: Enabling this option may cause undesirable graphics glitching on some games(such as \"Bloody Wolf\").
MDFNST_BOOL
0


0
pce.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

pce.psgrevision

Select PSG revision.
WARNING: HES playback will always use the \"huc6280a\" revision if this setting is set to \"match\", since HES playback is always done with SuperGrafx emulation enabled.
MDFNST_ENUM
match


3
huc6280
HuC6280
HuC6280 as found in the original PC Engine.
huc6280a
HuC6280A
HuC6280A as found in the SuperGrafx and CoreGrafx I.  Provides proper channel amplitude centering, but may cause clicking in a few games designed with the original HuC6280\'s sound characteristics in mind.
match
Match emulation mode.
Selects \"huc6280\" for non-SuperGrafx mode, and \"huc6280a\" for SuperGrafx(full) mode.
pce.resamp_quality

Sound quality.
Higher values correspond to better SNR and better preservation of higher frequencies(\"brightness\"), at the cost of increased computational complexity and a negligible increase in latency.\n\nHigher values will also slightly increase the probability of sample clipping(relevant if Mednafen\'s volume control settings are set too high), due to increased (time-domain) ringing.
MDFNST_INT
3
0
5
0
pce.resamp_rate_error

Sound output rate tolerance.
Lower values correspond to better matching of the output rate of the resampler to the actual desired output rate, at the expense of increased RAM usage and poorer CPU cache utilization.
MDFNST_FLOAT
0.0000009
0.0000001
0.0000350
0
pce.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
pce.slend

Last rendered scanline.

MDFNST_UINT
235
0
239
0
pce.slstart

First rendered scanline.

MDFNST_UINT
4
0
239
0
pce.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

pce.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
pce.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
pce.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
pce.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
pce.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
pce.vramsize
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE MDFNSF_SUPPRESS_DOC 
Size of emulated VRAM per VDC in 16-bit words.  DO NOT CHANGE THIS UNLESS YOU KNOW WTF YOU ARE DOING.

MDFNST_UINT
32768
32768
65536
0
pce.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
pce.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pce.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
pce.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
pce.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pce.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
pce_fast.adpcmlp

Enable dynamic ADPCM lowpass filter.

MDFNST_BOOL
0


0
pce_fast.adpcmvolume

ADPCM volume.

MDFNST_UINT
100
0
200
0
pce_fast.arcadecard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable Arcade Card emulation.

MDFNST_BOOL
1


0
pce_fast.cdbios
MDFNSF_EMU_STATE 
Path to the CD BIOS

MDFNST_STRING
syscard3.pce


0
pce_fast.cddavolume

CD-DA volume.

MDFNST_UINT
100
0
200
0
pce_fast.cdpsgvolume

PSG volume when playing a CD game.

MDFNST_UINT
100
0
200
0
pce_fast.cdspeed
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
CD-ROM data transfer speed multiplier.

MDFNST_UINT
1
1
100
0
pce_fast.correct_aspect
MDFNSF_CAT_VIDEO 
Correct the aspect ratio.

MDFNST_BOOL
1


0
pce_fast.disable_softreset

If set, when RUN+SEL are pressed simultaneously, disable both buttons temporarily.

MDFNST_BOOL
0


0
pce_fast.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
pce_fast.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
pce_fast.forcesgx
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Force SuperGrafx emulation.

MDFNST_BOOL
0


0
pce_fast.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce_fast.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: DOWN ↓

MDFNST_STRING



0
pce_fast.input.port1.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: I

MDFNST_STRING



0
pce_fast.input.port1.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: II

MDFNST_STRING



0
pce_fast.input.port1.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: III

MDFNST_STRING



0
pce_fast.input.port1.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: IV

MDFNST_STRING



0
pce_fast.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: LEFT ←

MDFNST_STRING



0
pce_fast.input.port1.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce_fast.input.port1.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: Rapid I

MDFNST_STRING



0
pce_fast.input.port1.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: Rapid II

MDFNST_STRING



0
pce_fast.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: RIGHT →

MDFNST_STRING



0
pce_fast.input.port1.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: RUN

MDFNST_STRING



0
pce_fast.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: SELECT

MDFNST_STRING



0
pce_fast.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: UP ↑

MDFNST_STRING



0
pce_fast.input.port1.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: V

MDFNST_STRING



0
pce_fast.input.port1.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Gamepad: VI

MDFNST_STRING



0
pce_fast.input.port1.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Mouse: Left Button

MDFNST_STRING



0
pce_fast.input.port1.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 1, Mouse: Right Button

MDFNST_STRING



0
pce_fast.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce_fast.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: DOWN ↓

MDFNST_STRING



0
pce_fast.input.port2.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: I

MDFNST_STRING



0
pce_fast.input.port2.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: II

MDFNST_STRING



0
pce_fast.input.port2.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: III

MDFNST_STRING



0
pce_fast.input.port2.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: IV

MDFNST_STRING



0
pce_fast.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: LEFT ←

MDFNST_STRING



0
pce_fast.input.port2.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce_fast.input.port2.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: Rapid I

MDFNST_STRING



0
pce_fast.input.port2.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: Rapid II

MDFNST_STRING



0
pce_fast.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: RIGHT →

MDFNST_STRING



0
pce_fast.input.port2.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: RUN

MDFNST_STRING



0
pce_fast.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: SELECT

MDFNST_STRING



0
pce_fast.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: UP ↑

MDFNST_STRING



0
pce_fast.input.port2.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: V

MDFNST_STRING



0
pce_fast.input.port2.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Gamepad: VI

MDFNST_STRING



0
pce_fast.input.port2.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Mouse: Left Button

MDFNST_STRING



0
pce_fast.input.port2.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 2, Mouse: Right Button

MDFNST_STRING



0
pce_fast.input.port3
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 3

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce_fast.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: DOWN ↓

MDFNST_STRING



0
pce_fast.input.port3.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: I

MDFNST_STRING



0
pce_fast.input.port3.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: II

MDFNST_STRING



0
pce_fast.input.port3.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: III

MDFNST_STRING



0
pce_fast.input.port3.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: IV

MDFNST_STRING



0
pce_fast.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: LEFT ←

MDFNST_STRING



0
pce_fast.input.port3.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce_fast.input.port3.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: Rapid I

MDFNST_STRING



0
pce_fast.input.port3.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: Rapid II

MDFNST_STRING



0
pce_fast.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: RIGHT →

MDFNST_STRING



0
pce_fast.input.port3.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: RUN

MDFNST_STRING



0
pce_fast.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: SELECT

MDFNST_STRING



0
pce_fast.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: UP ↑

MDFNST_STRING



0
pce_fast.input.port3.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: V

MDFNST_STRING



0
pce_fast.input.port3.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Gamepad: VI

MDFNST_STRING



0
pce_fast.input.port3.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Mouse: Left Button

MDFNST_STRING



0
pce_fast.input.port3.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 3, Mouse: Right Button

MDFNST_STRING



0
pce_fast.input.port4
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 4

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce_fast.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: DOWN ↓

MDFNST_STRING



0
pce_fast.input.port4.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: I

MDFNST_STRING



0
pce_fast.input.port4.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: II

MDFNST_STRING



0
pce_fast.input.port4.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: III

MDFNST_STRING



0
pce_fast.input.port4.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: IV

MDFNST_STRING



0
pce_fast.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: LEFT ←

MDFNST_STRING



0
pce_fast.input.port4.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce_fast.input.port4.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: Rapid I

MDFNST_STRING



0
pce_fast.input.port4.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: Rapid II

MDFNST_STRING



0
pce_fast.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: RIGHT →

MDFNST_STRING



0
pce_fast.input.port4.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: RUN

MDFNST_STRING



0
pce_fast.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: SELECT

MDFNST_STRING



0
pce_fast.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: UP ↑

MDFNST_STRING



0
pce_fast.input.port4.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: V

MDFNST_STRING



0
pce_fast.input.port4.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Gamepad: VI

MDFNST_STRING



0
pce_fast.input.port4.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Mouse: Left Button

MDFNST_STRING



0
pce_fast.input.port4.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 4, Mouse: Right Button

MDFNST_STRING



0
pce_fast.input.port5
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 5

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pce_fast.input.port5.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: DOWN ↓

MDFNST_STRING



0
pce_fast.input.port5.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: I

MDFNST_STRING



0
pce_fast.input.port5.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: II

MDFNST_STRING



0
pce_fast.input.port5.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: III

MDFNST_STRING



0
pce_fast.input.port5.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: IV

MDFNST_STRING



0
pce_fast.input.port5.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: LEFT ←

MDFNST_STRING



0
pce_fast.input.port5.gamepad.mode_select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: 2/6 Mode Select

MDFNST_STRING



0
pce_fast.input.port5.gamepad.rapid_i
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: Rapid I

MDFNST_STRING



0
pce_fast.input.port5.gamepad.rapid_ii
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: Rapid II

MDFNST_STRING



0
pce_fast.input.port5.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: RIGHT →

MDFNST_STRING



0
pce_fast.input.port5.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: RUN

MDFNST_STRING



0
pce_fast.input.port5.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: SELECT

MDFNST_STRING



0
pce_fast.input.port5.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: UP ↑

MDFNST_STRING



0
pce_fast.input.port5.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: V

MDFNST_STRING



0
pce_fast.input.port5.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Gamepad: VI

MDFNST_STRING



0
pce_fast.input.port5.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Mouse: Left Button

MDFNST_STRING



0
pce_fast.input.port5.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pce_fast, Port 5, Mouse: Right Button

MDFNST_STRING



0
pce_fast.mouse_sensitivity

Mouse sensitivity.

MDFNST_FLOAT
0.50


0
pce_fast.nospritelimit

Remove 16-sprites-per-scanline hardware limit.

MDFNST_BOOL
0


0
pce_fast.ocmultiplier
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
CPU overclock multiplier.

MDFNST_UINT
1
1
100
0
pce_fast.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

pce_fast.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
pce_fast.slend

Last rendered scanline.

MDFNST_UINT
235
0
239
0
pce_fast.slstart

First rendered scanline.

MDFNST_UINT
4
0
239
0
pce_fast.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

pce_fast.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
pce_fast.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
pce_fast.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
pce_fast.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
pce_fast.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
pce_fast.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
pce_fast.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pce_fast.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
pce_fast.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
pce_fast.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pce_fast.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
pcfx.adpcm.emulate_buggy_codec

Hack that emulates the codec a buggy ADPCM encoder used for some games\' ADPCM.

MDFNST_BOOL
0


0
pcfx.adpcm.suppress_channel_reset_clicks

Hack to suppress clicks caused by forced channel resets.

MDFNST_BOOL
1


0
pcfx.bios
MDFNSF_EMU_STATE 
Path to the ROM BIOS

MDFNST_STRING
pcfx.rom


0
pcfx.cdspeed
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulated CD-ROM speed.
Setting the value higher than 2, the default, will decrease loading times in most games by some degree.
MDFNST_UINT
2
2
10
0
pcfx.cpu_emulation
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
CPU emulation mode.

MDFNST_ENUM
auto


3
fast
Fast Mode
Fast mode trades timing accuracy, cache emulation, and executing from hardware registers and RAM not intended for code use for performance.
accurate
Accurate Mode
Increased timing accuracy, though not perfect, along with cache emulation, at the cost of decreased performance.  Additionally, even the pipeline isn\'t correctly and fully emulated in this mode.
auto
Auto Mode
Selects \"fast\" or \"accurate\" automatically based on an internal database.  If the CD image is not recognized, defaults to \"fast\".
pcfx.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

pcfx.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
pcfx.disable_bram
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Disable internal and external BRAM.
It is intended for viewing games\' error screens that may be different from simple BRAM full and uninitialized BRAM error screens, though it can cause the game to crash outright.
MDFNST_BOOL
0


0
pcfx.disable_softreset

When RUN+SEL are pressed simultaneously, disable both buttons temporarily.

MDFNST_BOOL
0


0
pcfx.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
pcfx.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
pcfx.fxscsi
MDFNSF_EMU_STATE 
Path to the FX-SCSI ROM
Intended for developers only.
MDFNST_STRING
0


0
pcfx.high_dotclock_width

Emulated width for 7.16MHz dot-clock mode.
Lower values are faster, but will cause some degree of pixel distortion.
MDFNST_ENUM
1024


3
256
256 pixels
This value will cause heavy pixel distortion.
341
341 pixels
This value will cause moderate pixel distortion.
1024
1024 pixels
This value will cause no pixel distortion as long as interpolation is enabled on the video output device and the resolution is sufficiently high, but it will use a lot of CPU time.
pcfx.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
pcfx.input.port1.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: I

MDFNST_STRING
keyboard 259


0
pcfx.input.port1.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: II

MDFNST_STRING
keyboard 258


0
pcfx.input.port1.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: III

MDFNST_STRING
keyboard 257


0
pcfx.input.port1.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: IV

MDFNST_STRING
keyboard 260


0
pcfx.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
pcfx.input.port1.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: MODE 1 (Switch)

MDFNST_STRING
keyboard 264


0
pcfx.input.port1.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: MODE 2 (Switch)

MDFNST_STRING
keyboard 265


0
pcfx.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
pcfx.input.port1.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: RUN

MDFNST_STRING
keyboard 13


0
pcfx.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
pcfx.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
pcfx.input.port1.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: V

MDFNST_STRING
keyboard 261


0
pcfx.input.port1.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Gamepad: VI

MDFNST_STRING
keyboard 262


0
pcfx.input.port1.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pcfx.input.port1.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 1, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pcfx.input.port1.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on PC-FX port 1.
EXPERIMENTAL emulation of the unreleased multitap.  Enables ports 3 4 5.
MDFNST_BOOL
0


0
pcfx.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port2.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: I

MDFNST_STRING



0
pcfx.input.port2.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: II

MDFNST_STRING



0
pcfx.input.port2.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: III

MDFNST_STRING



0
pcfx.input.port2.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port2.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port2.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port2.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port2.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: V

MDFNST_STRING



0
pcfx.input.port2.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port2.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
pcfx.input.port2.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 2, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
pcfx.input.port2.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on PC-FX port 2.
EXPERIMENTAL emulation of the unreleased multitap.  Enables ports 6 7 8.
MDFNST_BOOL
0


0
pcfx.input.port3
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 3

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port3.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: I

MDFNST_STRING



0
pcfx.input.port3.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: II

MDFNST_STRING



0
pcfx.input.port3.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: III

MDFNST_STRING



0
pcfx.input.port3.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port3.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port3.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port3.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port3.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: V

MDFNST_STRING



0
pcfx.input.port3.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port3.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port3.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 3, Mouse: Right Button

MDFNST_STRING



0
pcfx.input.port4
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 4

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port4.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: I

MDFNST_STRING



0
pcfx.input.port4.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: II

MDFNST_STRING



0
pcfx.input.port4.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: III

MDFNST_STRING



0
pcfx.input.port4.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port4.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port4.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port4.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port4.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: V

MDFNST_STRING



0
pcfx.input.port4.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port4.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port4.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 4, Mouse: Right Button

MDFNST_STRING



0
pcfx.input.port5
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 5

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port5.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port5.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: I

MDFNST_STRING



0
pcfx.input.port5.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: II

MDFNST_STRING



0
pcfx.input.port5.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: III

MDFNST_STRING



0
pcfx.input.port5.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port5.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port5.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port5.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port5.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port5.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port5.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port5.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port5.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: V

MDFNST_STRING



0
pcfx.input.port5.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port5.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port5.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 5, Mouse: Right Button

MDFNST_STRING



0
pcfx.input.port6
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 6

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port6.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port6.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: I

MDFNST_STRING



0
pcfx.input.port6.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: II

MDFNST_STRING



0
pcfx.input.port6.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: III

MDFNST_STRING



0
pcfx.input.port6.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port6.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port6.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port6.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port6.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port6.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port6.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port6.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port6.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: V

MDFNST_STRING



0
pcfx.input.port6.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port6.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port6.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 6, Mouse: Right Button

MDFNST_STRING



0
pcfx.input.port7
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 7

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port7.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port7.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: I

MDFNST_STRING



0
pcfx.input.port7.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: II

MDFNST_STRING



0
pcfx.input.port7.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: III

MDFNST_STRING



0
pcfx.input.port7.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port7.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port7.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port7.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port7.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port7.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port7.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port7.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port7.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: V

MDFNST_STRING



0
pcfx.input.port7.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port7.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port7.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 7, Mouse: Right Button

MDFNST_STRING



0
pcfx.input.port8
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 8

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

pcfx.input.port8.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: DOWN ↓

MDFNST_STRING



0
pcfx.input.port8.gamepad.i
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: I

MDFNST_STRING



0
pcfx.input.port8.gamepad.ii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: II

MDFNST_STRING



0
pcfx.input.port8.gamepad.iii
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: III

MDFNST_STRING



0
pcfx.input.port8.gamepad.iv
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: IV

MDFNST_STRING



0
pcfx.input.port8.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: LEFT ←

MDFNST_STRING



0
pcfx.input.port8.gamepad.mode1
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: MODE 1 (Switch)

MDFNST_STRING



0
pcfx.input.port8.gamepad.mode2
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: MODE 2 (Switch)

MDFNST_STRING



0
pcfx.input.port8.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: RIGHT →

MDFNST_STRING



0
pcfx.input.port8.gamepad.run
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: RUN

MDFNST_STRING



0
pcfx.input.port8.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: SELECT

MDFNST_STRING



0
pcfx.input.port8.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: UP ↑

MDFNST_STRING



0
pcfx.input.port8.gamepad.v
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: V

MDFNST_STRING



0
pcfx.input.port8.gamepad.vi
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Gamepad: VI

MDFNST_STRING



0
pcfx.input.port8.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Mouse: Left Button

MDFNST_STRING



0
pcfx.input.port8.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
pcfx, Port 8, Mouse: Right Button

MDFNST_STRING



0
pcfx.mouse_sensitivity

Mouse sensitivity.

MDFNST_FLOAT
1.25


0
pcfx.nospritelimit

Remove 16-sprites-per-scanline hardware limit.

MDFNST_BOOL
0


0
pcfx.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

pcfx.rainbow.chromaip

Enable bilinear interpolation on the chroma channel of RAINBOW YUV output.
This is an enhancement-related setting.  Enabling it may cause graphical glitches with some games.
MDFNST_BOOL
0


0
pcfx.resamp_quality

Sound quality.
Higher values correspond to better SNR and better preservation of higher frequencies(\"brightness\"), at the cost of increased computational complexity and a negligible increase in latency.
MDFNST_INT
3
0
5
0
pcfx.resamp_rate_error

Output rate tolerance.
Lower values correspond to better matching of the output rate of the resampler to the actual desired output rate, at the expense of increased RAM usage and poorer CPU cache utilization.
MDFNST_FLOAT
0.0000009
0.0000001
0.0000350
0
pcfx.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
pcfx.slend

Last rendered scanline.

MDFNST_UINT
235
0
239
0
pcfx.slstart

First rendered scanline.

MDFNST_UINT
4
0
239
0
pcfx.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

pcfx.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
pcfx.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
pcfx.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
pcfx.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
pcfx.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
pcfx.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
pcfx.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pcfx.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
pcfx.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
pcfx.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
pcfx.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
player.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

player.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
player.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

player.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
player.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
player.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
player.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
player.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
player.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
player.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
player.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
psx.bios_eu
MDFNSF_EMU_STATE 
Path to the Europe SCPH-5502 ROM BIOS

MDFNST_STRING
scph5502.bin


0
psx.bios_jp
MDFNSF_EMU_STATE 
Path to the Japan SCPH-5500 ROM BIOS

MDFNST_STRING
scph5500.bin


0
psx.bios_na
MDFNSF_EMU_STATE 
Path to the North America SCPH-5501 ROM BIOS
SHA1 0555c6fae8906f3f09baf5988f00e55f88e9f30b
MDFNST_STRING
scph5501.bin


0
psx.clobbers_lament

Enable experimental save state functionality.
Save states will destroy your saved game/memory card data if you\'re careless, and that will make clobber sad.  Poor clobber.
MDFNST_BOOL
0


0
psx.dbg_level

Debug printf verbosity level.

MDFNST_UINT
0
0
4
0
psx.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

psx.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
psx.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
psx.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
psx.input.analog_mode_ct
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable analog mode combo-button alternate toggle.
When enabled, instead of the configured Analog mode toggle button for the emulated DualShock, use a combination of buttons to toggle it instead.  When Select, Start, and all four shoulder buttons are held down for about 1 second, the mode will toggle.
MDFNST_BOOL
0


0
psx.input.mouse_sensitivity

Emulated mouse sensitivity.

MDFNST_FLOAT
1.00


0
psx.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 1

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port1.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 1.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port1.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port1.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port1.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port1.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port1.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port1.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port1.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port1.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port1.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port1.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port1.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port1.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port1.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port1.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port1.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port1.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port1.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port1.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port1.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port1.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: START

MDFNST_STRING



0
psx.input.port1.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port1.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port1.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: ○ (upper right)

MDFNST_STRING
keyboard 265


0
psx.input.port1.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: x (upper left)

MDFNST_STRING
keyboard 263


0
psx.input.port1.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: DOWN ↓

MDFNST_STRING
keyboard 258


0
psx.input.port1.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: LEFT ←

MDFNST_STRING
keyboard 260


0
psx.input.port1.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: RIGHT →

MDFNST_STRING
keyboard 262


0
psx.input.port1.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: SELECT

MDFNST_STRING
keyboard 267


0
psx.input.port1.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: □ (lower right)

MDFNST_STRING
keyboard 259


0
psx.input.port1.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: START

MDFNST_STRING
keyboard 268


0
psx.input.port1.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: △ (lower left)

MDFNST_STRING
keyboard 257


0
psx.input.port1.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dance Pad: UP ↑

MDFNST_STRING
keyboard 264


0
psx.input.port1.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 1.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port1.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port1.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port1.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port1.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port1.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port1.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port1.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port1.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port1.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port1.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port1.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port1.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port1.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port1.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port1.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port1.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port1.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port1.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port1.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port1.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port1.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port1.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port1.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: START

MDFNST_STRING



0
psx.input.port1.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port1.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port1.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port1.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 1.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port1.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port1.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port1.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port1.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port1.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port1.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port1.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port1.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port1.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port1.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port1.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port1.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port1.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port1.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port1.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port1.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port1.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port1.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port1.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port1.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port1.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port1.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: SELECT

MDFNST_STRING



0
psx.input.port1.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port1.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: START

MDFNST_STRING



0
psx.input.port1.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port1.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port1.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: ○ (right)

MDFNST_STRING
keyboard 262


0
psx.input.port1.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: x (lower)

MDFNST_STRING
keyboard 258


0
psx.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
psx.input.port1.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING
keyboard 257


0
psx.input.port1.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING
keyboard 263


0
psx.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
psx.input.port1.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING
keyboard 259


0
psx.input.port1.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING
keyboard 265


0
psx.input.port1.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port1.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port1.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port1.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
psx.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
psx.input.port1.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: □ (left)

MDFNST_STRING
keyboard 260


0
psx.input.port1.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: START

MDFNST_STRING
keyboard 13


0
psx.input.port1.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: △ (upper)

MDFNST_STRING
keyboard 264


0
psx.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Digital Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
psx.input.port1.gun_chairs

Crosshairs color for lightgun on virtual port 1.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0xFF0000
0x000000
0x1000000
0
psx.input.port1.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port1.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port1.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port1.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port1.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port1.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port1.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: O

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port1.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port1.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: Start

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port1.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port1.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port1.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Konami Justifier: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port1.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 1.

MDFNST_BOOL
1


0
psx.input.port1.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port1.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port1.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: A

MDFNST_STRING



0
psx.input.port1.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: B

MDFNST_STRING



0
psx.input.port1.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port1.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port1.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port1.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port1.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port1.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port1.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port1.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: START

MDFNST_STRING



0
psx.input.port1.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port1.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port1.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 1, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 2

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port2.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 2.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port2.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port2.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port2.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port2.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port2.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port2.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port2.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port2.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port2.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port2.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port2.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port2.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port2.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port2.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port2.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port2.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port2.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port2.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port2.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port2.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: START

MDFNST_STRING



0
psx.input.port2.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port2.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port2.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port2.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port2.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port2.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port2.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port2.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port2.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port2.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: START

MDFNST_STRING



0
psx.input.port2.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port2.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port2.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 2.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port2.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port2.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port2.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port2.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port2.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port2.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port2.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port2.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port2.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port2.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port2.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port2.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port2.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port2.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port2.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port2.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port2.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port2.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port2.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port2.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port2.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port2.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port2.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: START

MDFNST_STRING



0
psx.input.port2.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port2.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port2.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port2.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 2.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port2.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port2.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port2.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port2.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port2.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port2.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port2.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port2.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port2.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port2.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port2.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port2.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port2.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port2.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port2.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port2.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port2.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port2.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port2.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port2.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port2.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port2.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: SELECT

MDFNST_STRING



0
psx.input.port2.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port2.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: START

MDFNST_STRING



0
psx.input.port2.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port2.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port2.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port2.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port2.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port2.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port2.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port2.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port2.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port2.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port2.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port2.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port2.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port2.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port2.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port2.gun_chairs

Crosshairs color for lightgun on virtual port 2.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0x00FF00
0x000000
0x1000000
0
psx.input.port2.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port2.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port2.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port2.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port2.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port2.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port2.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: O

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port2.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port2.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: Start

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port2.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port2.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port2.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Konami Justifier: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port2.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 2.

MDFNST_BOOL
1


0
psx.input.port2.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port2.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port2.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: A

MDFNST_STRING



0
psx.input.port2.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: B

MDFNST_STRING



0
psx.input.port2.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port2.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port2.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port2.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port2.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port2.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port2.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port2.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: START

MDFNST_STRING



0
psx.input.port2.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port2.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port2.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 2, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port3
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 3

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port3.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 3.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port3.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port3.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port3.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port3.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port3.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port3.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port3.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port3.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port3.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port3.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port3.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port3.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port3.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port3.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port3.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port3.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port3.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port3.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port3.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port3.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: START

MDFNST_STRING



0
psx.input.port3.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port3.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port3.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port3.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port3.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port3.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port3.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port3.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port3.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port3.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: START

MDFNST_STRING



0
psx.input.port3.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port3.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port3.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 3.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port3.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port3.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port3.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port3.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port3.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port3.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port3.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port3.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port3.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port3.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port3.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port3.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port3.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port3.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port3.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port3.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port3.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port3.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port3.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port3.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port3.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port3.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port3.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: START

MDFNST_STRING



0
psx.input.port3.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port3.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port3.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port3.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 3.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port3.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port3.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port3.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port3.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port3.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port3.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port3.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port3.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port3.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port3.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port3.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port3.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port3.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port3.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port3.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port3.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port3.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port3.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port3.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port3.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port3.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port3.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: SELECT

MDFNST_STRING



0
psx.input.port3.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port3.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: START

MDFNST_STRING



0
psx.input.port3.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port3.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port3.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port3.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port3.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port3.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port3.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port3.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port3.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port3.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port3.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port3.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port3.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port3.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port3.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port3.gun_chairs

Crosshairs color for lightgun on virtual port 3.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0xFF00FF
0x000000
0x1000000
0
psx.input.port3.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port3.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port3.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port3.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port3.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port3.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port3.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: O

MDFNST_STRING



0
psx.input.port3.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port3.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port3.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port3.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port3.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port3.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 3.

MDFNST_BOOL
1


0
psx.input.port3.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port3.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port3.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: A

MDFNST_STRING



0
psx.input.port3.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: B

MDFNST_STRING



0
psx.input.port3.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port3.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port3.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port3.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port3.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port3.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port3.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port3.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: START

MDFNST_STRING



0
psx.input.port3.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port3.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port3.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 3, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port4
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 4

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port4.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 4.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port4.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port4.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port4.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port4.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port4.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port4.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port4.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port4.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port4.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port4.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port4.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port4.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port4.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port4.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port4.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port4.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port4.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port4.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port4.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port4.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: START

MDFNST_STRING



0
psx.input.port4.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port4.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port4.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port4.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port4.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port4.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port4.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port4.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port4.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port4.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: START

MDFNST_STRING



0
psx.input.port4.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port4.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port4.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 4.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port4.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port4.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port4.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port4.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port4.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port4.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port4.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port4.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port4.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port4.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port4.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port4.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port4.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port4.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port4.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port4.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port4.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port4.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port4.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port4.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port4.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port4.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port4.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: START

MDFNST_STRING



0
psx.input.port4.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port4.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port4.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port4.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 4.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port4.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port4.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port4.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port4.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port4.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port4.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port4.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port4.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port4.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port4.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port4.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port4.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port4.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port4.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port4.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port4.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port4.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port4.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port4.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port4.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port4.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port4.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: SELECT

MDFNST_STRING



0
psx.input.port4.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port4.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: START

MDFNST_STRING



0
psx.input.port4.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port4.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port4.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port4.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port4.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port4.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port4.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port4.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port4.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port4.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port4.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port4.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port4.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port4.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port4.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port4.gun_chairs

Crosshairs color for lightgun on virtual port 4.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0xFF8000
0x000000
0x1000000
0
psx.input.port4.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port4.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port4.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port4.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port4.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port4.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port4.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: O

MDFNST_STRING



0
psx.input.port4.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port4.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port4.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port4.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port4.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port4.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 4.

MDFNST_BOOL
1


0
psx.input.port4.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port4.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port4.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: A

MDFNST_STRING



0
psx.input.port4.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: B

MDFNST_STRING



0
psx.input.port4.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port4.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port4.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port4.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port4.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port4.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port4.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port4.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: START

MDFNST_STRING



0
psx.input.port4.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port4.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port4.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 4, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port5
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 5

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port5.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 5.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port5.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port5.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port5.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port5.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port5.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port5.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port5.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port5.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port5.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port5.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port5.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port5.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port5.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port5.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port5.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port5.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port5.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port5.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port5.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port5.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: START

MDFNST_STRING



0
psx.input.port5.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port5.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port5.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port5.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port5.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port5.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port5.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port5.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port5.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port5.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: START

MDFNST_STRING



0
psx.input.port5.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port5.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port5.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 5.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port5.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port5.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port5.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port5.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port5.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port5.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port5.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port5.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port5.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port5.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port5.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port5.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port5.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port5.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port5.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port5.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port5.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port5.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port5.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port5.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port5.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port5.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port5.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: START

MDFNST_STRING



0
psx.input.port5.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port5.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port5.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port5.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 5.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port5.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port5.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port5.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port5.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port5.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port5.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port5.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port5.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port5.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port5.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port5.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port5.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port5.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port5.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port5.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port5.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port5.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port5.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port5.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port5.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port5.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port5.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: SELECT

MDFNST_STRING



0
psx.input.port5.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port5.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: START

MDFNST_STRING



0
psx.input.port5.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port5.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port5.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port5.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port5.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port5.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port5.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port5.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port5.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port5.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port5.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port5.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port5.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port5.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port5.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port5.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port5.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port5.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port5.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port5.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port5.gun_chairs

Crosshairs color for lightgun on virtual port 5.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0xFFFF00
0x000000
0x1000000
0
psx.input.port5.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port5.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port5.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port5.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port5.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port5.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port5.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: O

MDFNST_STRING



0
psx.input.port5.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port5.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port5.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port5.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port5.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port5.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 5.

MDFNST_BOOL
1


0
psx.input.port5.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port5.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port5.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: A

MDFNST_STRING



0
psx.input.port5.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: B

MDFNST_STRING



0
psx.input.port5.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port5.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port5.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port5.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port5.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port5.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port5.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port5.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: START

MDFNST_STRING



0
psx.input.port5.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port5.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port5.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 5, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port6
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 6

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port6.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 6.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port6.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port6.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port6.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port6.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port6.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port6.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port6.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port6.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port6.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port6.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port6.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port6.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port6.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port6.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port6.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port6.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port6.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port6.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port6.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port6.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: START

MDFNST_STRING



0
psx.input.port6.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port6.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port6.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port6.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port6.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port6.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port6.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port6.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port6.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port6.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: START

MDFNST_STRING



0
psx.input.port6.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port6.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port6.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 6.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port6.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port6.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port6.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port6.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port6.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port6.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port6.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port6.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port6.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port6.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port6.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port6.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port6.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port6.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port6.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port6.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port6.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port6.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port6.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port6.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port6.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port6.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port6.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: START

MDFNST_STRING



0
psx.input.port6.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port6.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port6.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port6.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 6.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port6.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port6.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port6.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port6.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port6.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port6.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port6.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port6.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port6.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port6.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port6.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port6.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port6.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port6.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port6.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port6.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port6.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port6.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port6.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port6.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port6.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port6.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: SELECT

MDFNST_STRING



0
psx.input.port6.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port6.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: START

MDFNST_STRING



0
psx.input.port6.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port6.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port6.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port6.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port6.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port6.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port6.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port6.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port6.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port6.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port6.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port6.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port6.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port6.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port6.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port6.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port6.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port6.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port6.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port6.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port6.gun_chairs

Crosshairs color for lightgun on virtual port 6.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0x00FFFF
0x000000
0x1000000
0
psx.input.port6.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port6.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port6.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port6.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port6.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port6.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port6.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: O

MDFNST_STRING



0
psx.input.port6.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port6.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port6.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port6.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port6.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port6.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 6.

MDFNST_BOOL
1


0
psx.input.port6.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port6.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port6.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: A

MDFNST_STRING



0
psx.input.port6.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: B

MDFNST_STRING



0
psx.input.port6.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port6.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port6.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port6.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port6.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port6.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port6.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port6.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: START

MDFNST_STRING



0
psx.input.port6.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port6.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port6.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 6, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port7
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 7

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port7.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 7.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port7.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port7.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port7.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port7.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port7.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port7.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port7.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port7.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port7.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port7.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port7.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port7.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port7.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port7.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port7.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port7.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port7.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port7.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port7.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port7.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: START

MDFNST_STRING



0
psx.input.port7.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port7.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port7.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port7.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port7.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port7.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port7.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port7.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port7.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port7.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: START

MDFNST_STRING



0
psx.input.port7.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port7.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port7.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 7.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port7.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port7.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port7.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port7.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port7.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port7.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port7.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port7.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port7.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port7.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port7.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port7.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port7.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port7.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port7.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port7.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port7.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port7.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port7.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port7.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port7.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port7.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port7.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: START

MDFNST_STRING



0
psx.input.port7.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port7.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port7.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port7.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 7.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port7.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port7.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port7.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port7.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port7.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port7.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port7.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port7.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port7.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port7.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port7.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port7.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port7.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port7.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port7.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port7.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port7.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port7.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port7.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port7.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port7.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port7.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: SELECT

MDFNST_STRING



0
psx.input.port7.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port7.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: START

MDFNST_STRING



0
psx.input.port7.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port7.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port7.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port7.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port7.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port7.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port7.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port7.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port7.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port7.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port7.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port7.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port7.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port7.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port7.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port7.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port7.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port7.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port7.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port7.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port7.gun_chairs

Crosshairs color for lightgun on virtual port 7.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0x0080FF
0x000000
0x1000000
0
psx.input.port7.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port7.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port7.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port7.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port7.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port7.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port7.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: O

MDFNST_STRING



0
psx.input.port7.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port7.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port7.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port7.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port7.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port7.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 7.

MDFNST_BOOL
1


0
psx.input.port7.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port7.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port7.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: A

MDFNST_STRING



0
psx.input.port7.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: B

MDFNST_STRING



0
psx.input.port7.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port7.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port7.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port7.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port7.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port7.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port7.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port7.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: START

MDFNST_STRING



0
psx.input.port7.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port7.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port7.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 7, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port8
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Virtual Port 8

MDFNST_ENUM
gamepad


10
none
none

gamepad
Digital Gamepad
PlayStation digital gamepad; SCPH-1080.
dualshock
DualShock
DualShock gamepad; SCPH-1200.  Emulation in Mednafen includes the analog mode toggle button.  Rumble is emulated, but currently only supported on Linux, and MS Windows via the XInput API and XInput-compatible gamepads/joysticks.  If you\'re having trouble getting rumble to work on Linux, see if Mednafen is printing out error messages during startup regarding /dev/input/event*, and resolve the issue(s) as necessary.
dualanalog
Dual Analog
Dual Analog gamepad; SCPH-1180.  It is the predecessor/prototype to the more advanced DualShock.  Emulated in Mednafen as forced to analog mode, and without rumble.
analogjoy
Analog Joystick
Flight-game-oriented dual-joystick controller; SCPH-1110.   Emulated in Mednafen as forced to analog mode.
mouse
Mouse

negcon
neGcon
Namco\'s unconventional twisty racing-game-oriented gamepad; NPC-101.
guncon
GunCon
Namco\'s light gun; NPC-103.
justifier
Konami Justifier
Konami\'s light gun; SLUH-00017.  Rumored to be wrought of the coagulated rage of all who tried to shoot The Dog.  If the game you want to play supports the \"GunCon\", you should use that instead. NOTE: Currently does not work properly when on any of ports 1B-1D and 2B-2D.
dancepad
Dance Pad
Dingo Dingo Rodeo!
psx.input.port8.analogjoy.axis_scale

Analog axis scale coefficient for Analog Joystick on Virtual Port 8.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port8.analogjoy.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right stick, R-thumb

MDFNST_STRING



0
psx.input.port8.analogjoy.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right stick, L-thumb

MDFNST_STRING



0
psx.input.port8.analogjoy.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Thumbstick DOWN ↓

MDFNST_STRING



0
psx.input.port8.analogjoy.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left stick, L-thumb

MDFNST_STRING



0
psx.input.port8.analogjoy.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left stick, Trigger

MDFNST_STRING



0
psx.input.port8.analogjoy.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Thumbstick LEFT ←

MDFNST_STRING



0
psx.input.port8.analogjoy.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left Stick, BACK ↓

MDFNST_STRING



0
psx.input.port8.analogjoy.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left Stick, LEFT ←

MDFNST_STRING



0
psx.input.port8.analogjoy.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left Stick, RIGHT →

MDFNST_STRING



0
psx.input.port8.analogjoy.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left Stick, FORE ↑

MDFNST_STRING



0
psx.input.port8.analogjoy.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left stick, R-thumb

MDFNST_STRING



0
psx.input.port8.analogjoy.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Left stick, Pinky

MDFNST_STRING



0
psx.input.port8.analogjoy.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Thumbstick RIGHT →

MDFNST_STRING



0
psx.input.port8.analogjoy.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right Stick, BACK ↓

MDFNST_STRING



0
psx.input.port8.analogjoy.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right Stick, LEFT ←

MDFNST_STRING



0
psx.input.port8.analogjoy.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right Stick, RIGHT →

MDFNST_STRING



0
psx.input.port8.analogjoy.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right Stick, FORE ↑

MDFNST_STRING



0
psx.input.port8.analogjoy.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: SELECT

MDFNST_STRING



0
psx.input.port8.analogjoy.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right stick, Trigger

MDFNST_STRING



0
psx.input.port8.analogjoy.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: START

MDFNST_STRING



0
psx.input.port8.analogjoy.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Right stick, Pinky

MDFNST_STRING



0
psx.input.port8.analogjoy.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Analog Joystick: Thumbstick UP ↑

MDFNST_STRING



0
psx.input.port8.dancepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: ○ (upper right)

MDFNST_STRING



0
psx.input.port8.dancepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: x (upper left)

MDFNST_STRING



0
psx.input.port8.dancepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: DOWN ↓

MDFNST_STRING



0
psx.input.port8.dancepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: LEFT ←

MDFNST_STRING



0
psx.input.port8.dancepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: RIGHT →

MDFNST_STRING



0
psx.input.port8.dancepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: SELECT

MDFNST_STRING



0
psx.input.port8.dancepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: □ (lower right)

MDFNST_STRING



0
psx.input.port8.dancepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: START

MDFNST_STRING



0
psx.input.port8.dancepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: △ (lower left)

MDFNST_STRING



0
psx.input.port8.dancepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dance Pad: UP ↑

MDFNST_STRING



0
psx.input.port8.dualanalog.axis_scale

Analog axis scale coefficient for Dual Analog on Virtual Port 8.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port8.dualanalog.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: ○ (right)

MDFNST_STRING



0
psx.input.port8.dualanalog.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: x (lower)

MDFNST_STRING



0
psx.input.port8.dualanalog.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualanalog.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port8.dualanalog.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port8.dualanalog.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port8.dualanalog.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port8.dualanalog.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualanalog.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port8.dualanalog.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port8.dualanalog.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port8.dualanalog.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port8.dualanalog.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port8.dualanalog.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port8.dualanalog.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port8.dualanalog.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Rapid x (lower)

MDFNST_STRING



0
psx.input.port8.dualanalog.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Rapid □ (left)

MDFNST_STRING



0
psx.input.port8.dualanalog.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port8.dualanalog.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port8.dualanalog.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualanalog.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port8.dualanalog.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port8.dualanalog.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port8.dualanalog.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: SELECT

MDFNST_STRING



0
psx.input.port8.dualanalog.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: □ (left)

MDFNST_STRING



0
psx.input.port8.dualanalog.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: START

MDFNST_STRING



0
psx.input.port8.dualanalog.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: △ (upper)

MDFNST_STRING



0
psx.input.port8.dualanalog.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Dual Analog: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port8.dualshock.analog
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Analog(mode toggle)

MDFNST_STRING



0
psx.input.port8.dualshock.axis_scale

Analog axis scale coefficient for DualShock on Virtual Port 8.

MDFNST_FLOAT
1.00
1.00
1.50
0
psx.input.port8.dualshock.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: ○ (right)

MDFNST_STRING



0
psx.input.port8.dualshock.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: x (lower)

MDFNST_STRING



0
psx.input.port8.dualshock.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualshock.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port8.dualshock.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port8.dualshock.l3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Left Stick, Button(L3)

MDFNST_STRING



0
psx.input.port8.dualshock.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port8.dualshock.lstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Left Stick DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualshock.lstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Left Stick LEFT ←

MDFNST_STRING



0
psx.input.port8.dualshock.lstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Left Stick RIGHT →

MDFNST_STRING



0
psx.input.port8.dualshock.lstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Left Stick UP ↑

MDFNST_STRING



0
psx.input.port8.dualshock.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port8.dualshock.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port8.dualshock.r3
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Right stick, Button(R3)

MDFNST_STRING



0
psx.input.port8.dualshock.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port8.dualshock.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Rapid x (lower)

MDFNST_STRING



0
psx.input.port8.dualshock.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Rapid □ (left)

MDFNST_STRING



0
psx.input.port8.dualshock.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port8.dualshock.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port8.dualshock.rstick_down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Right Stick DOWN ↓

MDFNST_STRING



0
psx.input.port8.dualshock.rstick_left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Right Stick LEFT ←

MDFNST_STRING



0
psx.input.port8.dualshock.rstick_right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Right Stick RIGHT →

MDFNST_STRING



0
psx.input.port8.dualshock.rstick_up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: Right Stick UP ↑

MDFNST_STRING



0
psx.input.port8.dualshock.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: SELECT

MDFNST_STRING



0
psx.input.port8.dualshock.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: □ (left)

MDFNST_STRING



0
psx.input.port8.dualshock.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: START

MDFNST_STRING



0
psx.input.port8.dualshock.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: △ (upper)

MDFNST_STRING



0
psx.input.port8.dualshock.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, DualShock: D-Pad UP ↑

MDFNST_STRING



0
psx.input.port8.gamepad.circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: ○ (right)

MDFNST_STRING



0
psx.input.port8.gamepad.cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: x (lower)

MDFNST_STRING



0
psx.input.port8.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: DOWN ↓

MDFNST_STRING



0
psx.input.port8.gamepad.l1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: L1 (front left shoulder)

MDFNST_STRING



0
psx.input.port8.gamepad.l2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: L2 (rear left shoulder)

MDFNST_STRING



0
psx.input.port8.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: LEFT ←

MDFNST_STRING



0
psx.input.port8.gamepad.r1
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: R1 (front right shoulder)

MDFNST_STRING



0
psx.input.port8.gamepad.r2
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: R2 (rear right shoulder)

MDFNST_STRING



0
psx.input.port8.gamepad.rapid_circle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: Rapid ○ (right)

MDFNST_STRING



0
psx.input.port8.gamepad.rapid_cross
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: Rapid x (lower)

MDFNST_STRING



0
psx.input.port8.gamepad.rapid_square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: Rapid □ (left)

MDFNST_STRING



0
psx.input.port8.gamepad.rapid_triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: Rapid △ (upper)

MDFNST_STRING



0
psx.input.port8.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: RIGHT →

MDFNST_STRING



0
psx.input.port8.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: SELECT

MDFNST_STRING



0
psx.input.port8.gamepad.square
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: □ (left)

MDFNST_STRING



0
psx.input.port8.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: START

MDFNST_STRING



0
psx.input.port8.gamepad.triangle
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: △ (upper)

MDFNST_STRING



0
psx.input.port8.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Digital Gamepad: UP ↑

MDFNST_STRING



0
psx.input.port8.gun_chairs

Crosshairs color for lightgun on virtual port 8.
A value of 0x1000000 disables crosshair drawing.
MDFNST_UINT
0x8000FF
0x000000
0x1000000
0
psx.input.port8.guncon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: A

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port8.guncon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: B

MDFNST_STRING
mouse 0000000000000000 00000001


0
psx.input.port8.guncon.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
psx.input.port8.guncon.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port8.guncon.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
psx.input.port8.guncon.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, GunCon: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
psx.input.port8.justifier.o
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: O

MDFNST_STRING



0
psx.input.port8.justifier.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: Offscreen Shot(Simulated)

MDFNST_STRING



0
psx.input.port8.justifier.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: Start

MDFNST_STRING



0
psx.input.port8.justifier.trigger
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: Trigger

MDFNST_STRING



0
psx.input.port8.justifier.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: X Axis

MDFNST_STRING



0
psx.input.port8.justifier.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Konami Justifier: Y Axis

MDFNST_STRING



0
psx.input.port8.memcard
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Emulate memcard on virtual port 8.

MDFNST_BOOL
1


0
psx.input.port8.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
psx.input.port8.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
psx.input.port8.negcon.a
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: A

MDFNST_STRING



0
psx.input.port8.negcon.b
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: B

MDFNST_STRING



0
psx.input.port8.negcon.down
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: D-Pad DOWN ↓

MDFNST_STRING



0
psx.input.port8.negcon.i
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: I (Analog)

MDFNST_STRING



0
psx.input.port8.negcon.ii
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: II (Analog)

MDFNST_STRING



0
psx.input.port8.negcon.l
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: Left Shoulder (Analog)

MDFNST_STRING



0
psx.input.port8.negcon.left
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: D-Pad LEFT ←

MDFNST_STRING



0
psx.input.port8.negcon.r
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: Right Shoulder

MDFNST_STRING



0
psx.input.port8.negcon.right
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: D-Pad RIGHT →

MDFNST_STRING



0
psx.input.port8.negcon.start
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: START

MDFNST_STRING



0
psx.input.port8.negcon.twist_ccwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: Twist ↑|↓ (Analog, Turn Left)

MDFNST_STRING



0
psx.input.port8.negcon.twist_cwise
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: Twist ↓|↑ (Analog, Turn Right)

MDFNST_STRING



0
psx.input.port8.negcon.up
(nil) MDFNSF_SUPPRESS_DOC 
psx, Virtual Port 8, neGcon: D-Pad UP ↑

MDFNST_STRING



0
psx.input.pport1.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on PSX port 1.
Makes 3 more virtual ports available.\n\nNOTE: Enabling multitap in games that don\'t fully support it may cause deleterious effects.
MDFNST_BOOL
0


0
psx.input.pport2.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on PSX port 2.
Makes 3 more virtual ports available.\n\nNOTE: Enabling multitap in games that don\'t fully support it may cause deleterious effects.
MDFNST_BOOL
0


0
psx.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

psx.region_autodetect
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Attempt to auto-detect region of game.

MDFNST_BOOL
1


0
psx.region_default
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Default region to use.
Used if region autodetection fails or is disabled.
MDFNST_ENUM
jp


3
jp
Japan

na
North America

eu
Europe

psx.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
psx.slend

Last displayed scanline in NTSC mode.

MDFNST_INT
239
0
239
0
psx.slendp

Last displayed scanline in PAL mode.

MDFNST_INT
287
0
287
0
psx.slstart

First displayed scanline in NTSC mode.

MDFNST_INT
0
0
239
0
psx.slstartp

First displayed scanline in PAL mode.

MDFNST_INT
0
0
287
0
psx.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

psx.spu.resamp_quality

SPU output resampler quality.
0 is lowest quality and CPU usage, 10 is highest quality and CPU usage.  The resampler that this setting refers to is used for converting from 44.1KHz to the sampling rate of the host audio device Mednafen is using.  Changing Mednafen\'s output rate, via the \"sound.rate\" setting, to \"44100\" may bypass the resampler, which can decrease CPU usage by Mednafen, and can increase or decrease audio quality, depending on various operating system and hardware factors.
MDFNST_UINT
5
0
10
0
psx.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
psx.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
psx.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
psx.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
psx.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
1


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
psx.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
psx.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
psx.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
psx.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
psx.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
psx.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
qtrecord.h_double_threshold

Double the raw image\'s height if it\'s below this threshold.

MDFNST_UINT
256
0
1073741824
0
qtrecord.vcodec

Video codec to use.

MDFNST_ENUM
cscd


3
raw
Raw
A fast codec, computationally, but will cause enormous file size and may exceed your storage medium\'s sustained write rate.
cscd
CamStudio Screen Codec
A good balance between performance and compression ratio.
png
PNG
Has a better compression ratio than \"cscd\", but is much more CPU intensive.  Use for compatibility with official QuickTime in cases where you have insufficient disk space for \"raw\".
qtrecord.w_double_threshold

Double the raw image\'s width if it\'s below this threshold.

MDFNST_UINT
384
0
1073741824
0
sfspeed

SLOW-forwarding speed multiplier.

MDFNST_FLOAT
0.75
0.25
1
0
sftoggle

Treat the SLOW-forward button as a toggle.

MDFNST_BOOL
0


0
sms.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
sms.fm
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable FM sound emulation when playing domestic/Japan-region games.

MDFNST_BOOL
1


0
sms.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
sms.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
sms.input.port1.gamepad.fire1
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: Fire 1/Start

MDFNST_STRING
keyboard 258


0
sms.input.port1.gamepad.fire2
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: Fire 2

MDFNST_STRING
keyboard 259


0
sms.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
sms.input.port1.gamepad.pause
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: Pause

MDFNST_STRING
keyboard 13


0
sms.input.port1.gamepad.rapid_fire1
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: Rapid Fire 1/Start

MDFNST_STRING



0
sms.input.port1.gamepad.rapid_fire2
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: Rapid Fire 2

MDFNST_STRING



0
sms.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
sms.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 1, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
sms.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: DOWN ↓

MDFNST_STRING



0
sms.input.port2.gamepad.fire1
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: Fire 1/Start

MDFNST_STRING



0
sms.input.port2.gamepad.fire2
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: Fire 2

MDFNST_STRING



0
sms.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: LEFT ←

MDFNST_STRING



0
sms.input.port2.gamepad.pause
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: Pause

MDFNST_STRING



0
sms.input.port2.gamepad.rapid_fire1
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: Rapid Fire 1/Start

MDFNST_STRING



0
sms.input.port2.gamepad.rapid_fire2
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: Rapid Fire 2

MDFNST_STRING



0
sms.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: RIGHT →

MDFNST_STRING



0
sms.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
sms, Port 2, Gamepad: UP ↑

MDFNST_STRING



0
sms.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

sms.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
sms.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

sms.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
sms.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
sms.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
sms.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
sms.territory
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
System territory/region.

MDFNST_ENUM
export


2
domestic
Domestic(Japanese)

export
Export(World)

sms.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
sms.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
sms.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
sms.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
sms.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
sms.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
sms.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
snes.apu.resamp_quality

APU output resampler quality.
0 is lowest quality and latency and CPU usage, 10 is highest quality and latency and CPU usage.\n\nWith a Mednafen sound output rate of about 32041Hz or higher: Quality \"0\" resampler has approximately 0.125ms of latency, quality \"5\" resampler has approximately 1.25ms of latency, and quality \"10\" resampler has approximately 3.99ms of latency.
MDFNST_UINT
5
0
10
0
snes.correct_aspect
MDFNSF_CAT_VIDEO 
Correct the aspect ratio.
Note that regardless of this setting\'s value, \"512\" and \"256\" width modes will be scaled to the same dimensions for display.
MDFNST_BOOL
0


0
snes.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
snes.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
snes.input.port1
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 1/1A

MDFNST_ENUM
gamepad


3
none
none

gamepad
Gamepad

mouse
Mouse

snes.input.port1.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: A (right)

MDFNST_STRING
keyboard 262


0
snes.input.port1.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: B (center, lower)

MDFNST_STRING
keyboard 258


0
snes.input.port1.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: DOWN ↓

MDFNST_STRING
keyboard 115


0
snes.input.port1.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Left Shoulder

MDFNST_STRING
keyboard 263


0
snes.input.port1.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: LEFT ←

MDFNST_STRING
keyboard 97


0
snes.input.port1.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Right Shoulder

MDFNST_STRING
keyboard 265


0
snes.input.port1.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port1.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port1.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port1.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port1.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: RIGHT →

MDFNST_STRING
keyboard 100


0
snes.input.port1.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: SELECT

MDFNST_STRING
keyboard 9


0
snes.input.port1.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: START

MDFNST_STRING
keyboard 13


0
snes.input.port1.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: UP ↑

MDFNST_STRING
keyboard 119


0
snes.input.port1.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: X (center, upper)

MDFNST_STRING
keyboard 264


0
snes.input.port1.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Gamepad: Y (left)

MDFNST_STRING
keyboard 260


0
snes.input.port1.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
snes.input.port1.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1/1A, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
snes.input.port1.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on SNES port 1.

MDFNST_BOOL
0


0
snes.input.port2
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input device for Port 2/2A

MDFNST_ENUM
gamepad


4
none
none

gamepad
Gamepad

mouse
Mouse

superscope
Super Scope
Monkey!
snes.input.port2.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port2.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port2.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port2.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port2.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port2.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port2.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port2.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port2.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port2.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port2.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port2.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port2.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: START

MDFNST_STRING



0
snes.input.port2.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port2.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port2.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port2.mouse.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Mouse: Left Button

MDFNST_STRING
mouse 0000000000000000 00000000


0
snes.input.port2.mouse.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Mouse: Right Button

MDFNST_STRING
mouse 0000000000000000 00000002


0
snes.input.port2.multitap
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Enable multitap on SNES port 2.

MDFNST_BOOL
0


0
snes.input.port2.superscope.cursor
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Cursor

MDFNST_STRING
mouse 0000000000000000 00000002


0
snes.input.port2.superscope.offscreen_shot
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Offscreen Shot(Simulated)

MDFNST_STRING
keyboard 32


0
snes.input.port2.superscope.pause
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Pause

MDFNST_STRING
mouse 0000000000000000 00000001


0
snes.input.port2.superscope.trigger
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Trigger

MDFNST_STRING
mouse 0000000000000000 00000000


0
snes.input.port2.superscope.turbo
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Turbo

MDFNST_STRING
keyboard 279


0
snes.input.port2.superscope.x_axis
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: X Axis

MDFNST_STRING
mouse 0000000000000000 00008000


0
snes.input.port2.superscope.y_axis
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2/2A, Super Scope: Y Axis

MDFNST_STRING
mouse 0000000000000000 00008001


0
snes.input.port3.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port3.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port3.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port3.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port3.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port3.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port3.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port3.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port3.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port3.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port3.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port3.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port3.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: START

MDFNST_STRING



0
snes.input.port3.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port3.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port3.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2B, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port4.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port4.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port4.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port4.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port4.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port4.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port4.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port4.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port4.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port4.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port4.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port4.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port4.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: START

MDFNST_STRING



0
snes.input.port4.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port4.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port4.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2C, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port5.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port5.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port5.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port5.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port5.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port5.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port5.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port5.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port5.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port5.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port5.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port5.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port5.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: START

MDFNST_STRING



0
snes.input.port5.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port5.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port5.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 2D, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port6.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port6.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port6.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port6.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port6.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port6.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port6.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port6.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port6.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port6.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port6.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port6.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port6.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: START

MDFNST_STRING



0
snes.input.port6.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port6.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port6.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1B, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port7.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port7.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port7.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port7.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port7.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port7.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port7.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port7.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port7.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port7.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port7.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port7.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port7.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: START

MDFNST_STRING



0
snes.input.port7.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port7.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port7.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1C, Gamepad: Y (left)

MDFNST_STRING



0
snes.input.port8.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: A (right)

MDFNST_STRING



0
snes.input.port8.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: B (center, lower)

MDFNST_STRING



0
snes.input.port8.gamepad.down
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: DOWN ↓

MDFNST_STRING



0
snes.input.port8.gamepad.l
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Left Shoulder

MDFNST_STRING



0
snes.input.port8.gamepad.left
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: LEFT ←

MDFNST_STRING



0
snes.input.port8.gamepad.r
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Right Shoulder

MDFNST_STRING



0
snes.input.port8.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Rapid A (right)

MDFNST_STRING



0
snes.input.port8.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Rapid B (center, lower)

MDFNST_STRING



0
snes.input.port8.gamepad.rapid_x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Rapid X (center, upper)

MDFNST_STRING



0
snes.input.port8.gamepad.rapid_y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Rapid Y (left)

MDFNST_STRING



0
snes.input.port8.gamepad.right
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: RIGHT →

MDFNST_STRING



0
snes.input.port8.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: SELECT

MDFNST_STRING



0
snes.input.port8.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: START

MDFNST_STRING



0
snes.input.port8.gamepad.up
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: UP ↑

MDFNST_STRING



0
snes.input.port8.gamepad.x
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: X (center, upper)

MDFNST_STRING



0
snes.input.port8.gamepad.y
(nil) MDFNSF_SUPPRESS_DOC 
snes, Port 1D, Gamepad: Y (left)

MDFNST_STRING



0
snes.mouse_sensitivity

Emulated mouse sensitivity.

MDFNST_FLOAT
0.50


0
snes.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

snes.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
snes.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

snes.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
snes.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
snes.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
snes.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
snes.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
snes.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
snes.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
snes.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
snes.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
snes.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
snes.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
sound

Enable sound output.

MDFNST_BOOL
1


0
sound.buffer_time

Desired buffer size in milliseconds(ms).
The default value of 0 enables automatic buffer size selection.
MDFNST_UINT
0
0
1000
0
sound.device

Select sound output device.
When using ALSA sound output under Linux, the \"sound.device\" setting \"default\" is Mednafen\'s default, IE \"hw:0\", not ALSA\'s \"default\". If you want to use ALSA\'s \"default\", use \"sexyal-literal-default\".
MDFNST_STRING
default


0
sound.driver

Select sound driver.
The following choices are possible, sorted by preference, high to low, when \"default\" driver is used, but dependent on being compiled in.
MDFNST_ENUM
default


8
default
Default
Selects the default sound driver.
alsa
ALSA
The default for Linux(if available).
oss
Open Sound System
The default for non-Linux UN*X/POSIX/BSD systems, or anywhere ALSA is unavailable. If the ALSA driver gives you problems, you can try using this one instead.\n\nIf you are using OSSv4 or newer, you should edit \"/usr/lib/oss/conf/osscore.conf\", uncomment the max_intrate= line, and change the value from 100(default) to 1000(or higher if you know what you\'re doing), and restart OSS. Otherwise, performance will be poor, and the sound buffer size in Mednafen will be orders of magnitude larger than specified.\n\nIf the sound buffer size is still excessively larger than what is specified via the \"sound.buffer_time\" setting, you can try setting \"sound.period_time\" to 2666, and as a last resort, 5333, to work around a design flaw/limitation/choice in the OSS API and OSS implementation.
wasapish
WASAPI(Shared Mode)
The default when it\'s available(running on Microsoft Windows Vista and newer).
dsound
DirectSound
The default for Microsoft Windows XP and older.
wasapi
WASAPI(Exclusive Mode)
Experimental exclusive-mode WASAPI driver, usable on Windows Vista and newer.  Use it for lower-latency sound.  May not work properly on all sound cards.
sdl
Simple Directmedia Layer
This driver is not recommended, but it serves as a backup driver if the others aren\'t available. Its performance is generally sub-par, requiring higher latency or faster CPUs/SMP for glitch-free playback, except where the OS provides a sound callback API itself, such as with Mac OS X and BeOS.
jack
JACK
The latency reported during startup is for the local sound buffer only and does not include server-side latency.  Please note that video card drivers(in the kernel or X), and hardware-accelerated OpenGL, may interfere with jackd\'s ability to effectively run with realtime response.
sound.period_time

Desired period size in microseconds(μs).
Currently only affects OSS, ALSA, WASAPI(exclusive mode), and SDL output.  A value of 0 defers to the default in the driver code in SexyAL.\n\nNote: This is not the \"sound buffer size\" setting, that would be \"sound.buffer_time\".
MDFNST_UINT
0
0
100000
0
sound.rate

Specifies the sound playback rate, in sound frames per second(\"Hz\").

MDFNST_UINT
48000
22050
192000
0
sound.volume

Sound volume level, in percent.
Setting this volume control higher than the default of \"100\" may severely distort the sound.
MDFNST_UINT
100
0
150
0
srwcompressor

Compressor to use with state rewinding

MDFNST_ENUM
quicklz


3
minilzo
MiniLZO

quicklz
QuickLZ

blz
BLZ

srwframes

Number of frames to keep states for when state rewinding is enabled.
WARNING: Setting this to a large value may cause excessive RAM usage in some circumstances, such as with games that stream large volumes of data off of CDs.
MDFNST_UINT
600
10
99999
0
vb.3dmode

3D mode.

MDFNST_ENUM
anaglyph


5
anaglyph
Anaglyph
Used in conjunction with classic dual-lens-color glasses.
cscope
CyberScope
Intended for use with the CyberScope 3D device.
sidebyside
Side-by-Side
The left-eye image is displayed on the left, and the right-eye image is displayed on the right.
vli
Vertical Line Interlaced
Vertical lines alternate between left view and right view.
hli
Horizontal Line Interlaced
Horizontal lines alternate between left view and right view.
vb.3dreverse

Reverse left/right 3D views.

MDFNST_BOOL
0


0
vb.allow_draw_skip
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Allow draw skipping.
If vb.instant_display_hack is set to \"1\", and this setting is set to \"1\", then frame-skipping the drawing to the emulated framebuffer will be allowed.  THIS WILL CAUSE GRAPHICAL GLITCHES, AND THEORETICALLY(but unlikely) GAME CRASHES, ESPECIALLY WITH DIRECT FRAMEBUFFER DRAWING GAMES.
MDFNST_BOOL
0


0
vb.anaglyph.lcolor

Anaglyph maximum-brightness color for left view.

MDFNST_UINT
0xffba00
0x000000
0xFFFFFF
0
vb.anaglyph.preset

Anaglyph preset colors.

MDFNST_ENUM
red_blue


8
disabled
Disabled
Forces usage of custom anaglyph colors.
0


red_blue
Red/Blue
Classic red/blue anaglyph.
red_cyan
Red/Cyan
Improved quality red/cyan anaglyph.
red_electriccyan
Red/Electric Cyan
Alternate version of red/cyan
red_green
Red/Green

green_magenta
Green/Magenta

yellow_blue
Yellow/Blue

vb.anaglyph.rcolor

Anaglyph maximum-brightness color for right view.

MDFNST_UINT
0x00baff
0x000000
0xFFFFFF
0
vb.cpu_emulation
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
CPU emulation mode.

MDFNST_ENUM
fast


2
fast
Fast Mode
Fast mode trades timing accuracy, cache emulation, and executing from hardware registers and RAM not intended for code use for performance.
accurate
Accurate Mode
Increased timing accuracy, though not perfect, along with cache emulation, at the cost of decreased performance.  Additionally, even the pipeline isn\'t correctly and fully emulated in this mode.
vb.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

vb.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
vb.default_color

Default maximum-brightness color to use in non-anaglyph 3D modes.

MDFNST_UINT
0xF0F0F0
0x000000
0xFFFFFF
0
vb.disable_parallax
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Disable parallax for BG and OBJ rendering.

MDFNST_BOOL
0


0
vb.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
vb.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
vb.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: A

MDFNST_STRING



0
vb.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: B

MDFNST_STRING



0
vb.input.builtin.gamepad.down-l
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: DOWN ↓ (Left D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.down-r
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: DOWN ↓ (Right D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.left-l
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: LEFT ← (Left D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.left-r
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: LEFT ← (Right D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.lt
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Left-Back

MDFNST_STRING



0
vb.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Rapid A

MDFNST_STRING



0
vb.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Rapid B

MDFNST_STRING



0
vb.input.builtin.gamepad.right-l
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: RIGHT → (Left D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.right-r
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: RIGHT → (Right D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.rt
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Right-Back

MDFNST_STRING



0
vb.input.builtin.gamepad.select
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Select

MDFNST_STRING



0
vb.input.builtin.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: Start

MDFNST_STRING



0
vb.input.builtin.gamepad.up-l
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: UP ↑ (Left D-Pad)

MDFNST_STRING



0
vb.input.builtin.gamepad.up-r
(nil) MDFNSF_SUPPRESS_DOC 
vb, Built-In, Gamepad: UP ↑ (Right D-Pad)

MDFNST_STRING



0
vb.input.instant_read_hack
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Input latency reduction hack.
Reduces latency in some games by 20ms by returning the current pad state, rather than latched state, on serial port data reads.  This hack may cause some homebrew software to malfunction, but it should be relatively safe for commercial official games.
MDFNST_BOOL
1


0
vb.instant_display_hack

Display latency reduction hack.
Reduces latency in games by displaying the framebuffer 20ms earlier.  This hack has some potential of causing graphical glitches, so it is disabled by default.
MDFNST_BOOL
0


0
vb.liprescale

Line Interlaced prescale.

MDFNST_UINT
2
1
10
0
vb.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

vb.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
vb.sidebyside.separation

Number of pixels to separate L/R views by.
This setting refers to pixels before vb.xscale(fs) scaling is taken into consideration.  For example, a value of \"100\" here will result in a separation of 300 screen pixels if vb.xscale(fs) is set to \"3\".
MDFNST_UINT
0
0
1024
0
vb.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

vb.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
vb.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
vb.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
vb.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
vb.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
vb.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
vb.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
vb.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
vb.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
vb.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
2.000000
0.01
256
0
vb.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
video.blit_timesync

Enable time synchronization(waiting) for frame blitting.
Disable to reduce latency, at the cost of potentially increased video \"juddering\", with the maximum reduction in latency being about 1 video frame\'s time.\nWill work best with emulated systems that are not very computationally expensive to emulate, combined with running on a relatively fast CPU.
MDFNST_BOOL
1


0
video.deinterlacer
MDFNSF_CAT_VIDEO 
Deinterlacer to use for interlaced video.

MDFNST_ENUM
weave


3
weave
Good for low-motion video; can be used in conjunction with negative <system>.scanlines setting values.

bob
Good for causing a headache.  All glory to Bob.

bob_offset
Good for high-motion video, but is a bit flickery; reduces the subjective vertical resolution.

video.disable_composition

Attempt to disable desktop composition.
Currently, this setting only has an effect on Windows Vista and Windows 7(and probably the equivalent server versions as well).
MDFNST_BOOL
1


0
video.driver

Video output method/driver.

MDFNST_ENUM
opengl


5
0


1


opengl
OpenGL + SDL
This output method is preferred, as all features are available with it.
sdl
SDL Surface
Slower with lower-quality scaling than OpenGL, but if you don\'t have hardware-accelerated OpenGL rendering, it will be faster than software OpenGL rendering. Bilinear interpolation not available. Pixel shaders do not work with this output method, of course.
overlay
SDL Overlay
As fast as OpenGL, perhaps faster in some situations, *if* it\'s hardware-accelerated. Scanline effects are not available. hq2x, hq3x, hq4x are not available. The OSD may be missing or glitchy. PSX emulation will not display properly. Bilinear interpolation can\'t be turned off. Harsh chroma subsampling blurring in some picture types.  If you use this output method, it is strongly recommended to use a special scaler with it, such as nn2x.
video.frameskip

Enable frameskip during emulation rendering.
Disable for rendering code performance testing.
MDFNST_BOOL
1


0
video.fs

Enable fullscreen mode.

MDFNST_BOOL
0


0
video.glvsync

Attempt to synchronize OpenGL page flips to vertical retrace period.
Note: Additionally, if the environment variable \"__GL_SYNC_TO_VBLANK\" does not exist, then it will be created and set to the value specified for this setting.  This has the effect of forcibly enabling or disabling vblank synchronization when running under Linux with NVidia\'s drivers.
MDFNST_BOOL
1


0
wswan.bday
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Birth Day

MDFNST_UINT
23
1
31
0
wswan.blood
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Blood Type

MDFNST_ENUM
O


5
a
A

b
B

o
O

ab
AB

5


wswan.bmonth
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Birth Month

MDFNST_UINT
6
1
12
0
wswan.byear
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Birth Year

MDFNST_UINT
1989
0
9999
0
wswan.debugger.disfontsize
MDFNSF_COMMON_TEMPLATE 
Disassembly font size.
Note: Setting the font size to larger than the default may cause text overlap in the debugger.
MDFNST_ENUM
small


4
xsmall
4x5

small
5x7

medium
6x13

large
9x18

wswan.debugger.memcharenc
MDFNSF_COMMON_TEMPLATE 
Character encoding for the debugger\'s memory editor.

MDFNST_STRING
shift_jis


0
wswan.enable
MDFNSF_COMMON_TEMPLATE 
Enable (automatic) usage of this module.

MDFNST_BOOL
1


0
wswan.excomm
MDFNSF_EMU_STATE MDFNSF_SUPPRESS_DOC 
Enable comms to external program.

MDFNST_BOOL
0


0
wswan.excomm.path
MDFNSF_EMU_STATE MDFNSF_SUPPRESS_DOC 
Comms external program path.

MDFNST_STRING
wonderfence


0
wswan.forcemono
MDFNSF_CAT_SOUND MDFNSF_COMMON_TEMPLATE 
Force monophonic sound output.

MDFNST_BOOL
0


0
wswan.input.builtin.gamepad.a
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: A

MDFNST_STRING
keyboard 259


0
wswan.input.builtin.gamepad.b
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: B

MDFNST_STRING
keyboard 258


0
wswan.input.builtin.gamepad.down-x
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: DOWN ↓, X Cursors

MDFNST_STRING
keyboard 115


0
wswan.input.builtin.gamepad.down-y
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: DOWN ↓, Y Cur: MUST NOT = X CURSORS

MDFNST_STRING
keyboard 274


0
wswan.input.builtin.gamepad.left-x
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: LEFT ←, X Cursors

MDFNST_STRING
keyboard 97


0
wswan.input.builtin.gamepad.left-y
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: LEFT ←, Y Cur: MUST NOT = X CURSORS

MDFNST_STRING
keyboard 276


0
wswan.input.builtin.gamepad.rapid_a
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: Rapid A

MDFNST_STRING



0
wswan.input.builtin.gamepad.rapid_b
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: Rapid B

MDFNST_STRING



0
wswan.input.builtin.gamepad.right-x
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: RIGHT →, X Cursors

MDFNST_STRING
keyboard 100


0
wswan.input.builtin.gamepad.right-y
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: RIGHT →, Y Cur: MUST NOT = X CURSORS

MDFNST_STRING
keyboard 275


0
wswan.input.builtin.gamepad.start
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: Start

MDFNST_STRING
keyboard 13


0
wswan.input.builtin.gamepad.up-x
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: UP ↑, X Cursors

MDFNST_STRING
keyboard 119


0
wswan.input.builtin.gamepad.up-y
(nil) MDFNSF_SUPPRESS_DOC 
wswan, Built-In, Gamepad: UP ↑, Y Cur: MUST NOT = X CURSORS

MDFNST_STRING
keyboard 273


0
wswan.language
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Language games should display text in.
The only game this setting is known to affect is \"Digimon Tamers - Battle Spirit\".
MDFNST_ENUM
english


4
japanese
Japanese

0


english
English

1


wswan.name
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Name

MDFNST_STRING
Mednafen


0
wswan.pixshader
MDFNSF_COMMON_TEMPLATE 
Enable specified OpenGL pixel shader.
Obviously, this will only work with the OpenGL \"video.driver\" setting, and only on cards and OpenGL implementations that support pixel shaders, otherwise you will get a black screen, or Mednafen may display an error message when starting up. Bilinear interpolation is disabled with pixel shaders, and any interpolation, if present, will be noted in the description of each pixel shader.
MDFNST_ENUM
none


10
none
None/Disabled

autoip
Auto Interpolation
Will automatically interpolate on each axis if the corresponding effective scaling factor is not an integer.
autoipsharper
Sharper Auto Interpolation
Same as \"autoip\", but when interpolation is done, it is done in a manner that will reduce blurriness if possible.
scale2x
Scale2x

sabr
SABR v3.0
GPU-intensive.
ipsharper
Sharper bilinear interpolation.

ipxnoty
Linear interpolation on X axis only.

ipynotx
Linear interpolation on Y axis only.

ipxnotysharper
Sharper version of \"ipxnoty\".

ipynotxsharper
Sharper version of \"ipynotx\".

wswan.rotateinput

Virtually rotate D-pads along with screen.

MDFNST_BOOL
0


0
wswan.scanlines
MDFNSF_COMMON_TEMPLATE 
Enable scanlines with specified opacity.
Opacity is specified in %; IE a value of \"100\" will give entirely black scanlines.\n\nNegative values are the same as positive values for non-interlaced video, but for interlaced video will cause the scanlines to be overlaid over the previous field\'s lines(only if the video.deinterlacer setting is set to \"weave\", the default).
MDFNST_INT
0
-100
100
0
wswan.sex
MDFNSF_EMU_STATE MDFNSF_UNTRUSTED_SAFE 
Sex

MDFNST_ENUM
F


5
m


male
Male

f


female
Female

3


wswan.special
MDFNSF_COMMON_TEMPLATE 
Enable specified special video scaler.
The destination rectangle is NOT altered by this setting, so if you have xscale and yscale set to \"2\", and try to use a 3x scaling filter like hq3x, the image is not going to look that great. The nearest-neighbor scalers are intended for use with bilinear interpolation enabled, at high resolutions(such as 1280x1024; nn2x(or nny2x) + bilinear interpolation + fullscreen stretching at this resolution looks quite nice).
MDFNST_ENUM
none


17
0


none
None/Disabled

hq2x
hq2x

hq3x
hq3x

hq4x
hq4x

scale2x
scale2x

scale3x
scale3x

scale4x
scale4x

2xsai
2xSaI

super2xsai
Super 2xSaI

supereagle
Super Eagle

nn2x
Nearest-neighbor 2x

nn3x
Nearest-neighbor 3x

nn4x
Nearest-neighbor 4x

nny2x
Nearest-neighbor 2x, y axis only

nny3x
Nearest-neighbor 3x, y axis only

nny4x
Nearest-neighbor 4x, y axis only

wswan.stretch
MDFNSF_COMMON_TEMPLATE 
Stretch to fill screen.

MDFNST_ENUM
aspect_mult2


8
0
Disabled

off


1


full
Full
Full-screen stretch, disregarding aspect ratio.
2


aspect
Aspect Preserve
Full-screen stretch as far as the aspect ratio(in this sense, the equivalent xscalefs == yscalefs) can be maintained.
aspect_int
Aspect Preserve + Integer Scale
Full-screen stretch, same as \"aspect\" except that the equivalent xscalefs and yscalefs are rounded down to the nearest integer.
aspect_mult2
Aspect Preserve + Integer Multiple-of-2 Scale
Full-screen stretch, same as \"aspect_int\", but rounds down to the nearest multiple of 2.
wswan.tblur
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Enable video temporal blur(50/50 previous/current frame by default).

MDFNST_BOOL
0


0
wswan.tblur.accum
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Accumulate color data rather than discarding it.

MDFNST_BOOL
0


0
wswan.tblur.accum.amount
MDFNSF_CAT_VIDEO MDFNSF_COMMON_TEMPLATE 
Blur amount in accumulation mode, specified in percentage of accumulation buffer to mix with the current frame.

MDFNST_FLOAT
50
0
100
0
wswan.videoip
MDFNSF_COMMON_TEMPLATE 
Enable (bi)linear interpolation.

MDFNST_ENUM
0


4
0
Disabled

1
Bilinear

x
Linear (X)
Interpolation only on the X axis.
y
Linear (Y)
Interpolation only on the Y axis.
wswan.xres
MDFNSF_COMMON_TEMPLATE 
Full-screen horizontal resolution.
A value of \"0\" will cause the desktop horizontal resolution to be used.
MDFNST_UINT
0
0
65536
0
wswan.xscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
wswan.xscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the X axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
wswan.yres
MDFNSF_COMMON_TEMPLATE 
Full-screen vertical resolution.
A value of \"0\" will cause the desktop vertical resolution to be used.
MDFNST_UINT
0
0
65536
0
wswan.yscale
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in windowed mode.

MDFNST_FLOAT
3.000000
0.01
256
0
wswan.yscalefs
MDFNSF_COMMON_TEMPLATE 
Scaling factor for the Y axis in fullscreen mode.
For this settings to have any effect, the \"<system>.stretch\" setting must be set to \"0\".
MDFNST_FLOAT
1.000000
0.01
256
0
