Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
(c) Copyright 1996 - 2002 Gary Henderson (gary.henderson@ntlworld.com),
Jerremy Koot (jkoot@snes9x.com)
(c) Copyright 2002 - 2004 Matthew Kendora
(c) Copyright 2002 - 2005 Peter Bortas (peter@bortas.org)
(c) Copyright 2004 - 2005 Joel Yliluoma (http://iki.fi/bisqwit/)
(c) Copyright 2001 - 2006 John Weidman (jweidman@slip.net)
(c) Copyright 2002 - 2006 funkyass (funkyass@spam.shaw.ca),
Kris Bleakley (codeviolation@hotmail.com)
(c) Copyright 2002 - 2010 Brad Jorsch (anomie@users.sourceforge.net),
Nach (n-a-c-h@users.sourceforge.net),
zones (kasumitokoduck@yahoo.com)
(c) Copyright 2006 - 2007 nitsuja
(c) Copyright 2009 - 2010 BearOso,
OV2
BS-X C emulator code
(c) Copyright 2005 - 2006 Dreamer Nom,
zones
C4 x86 assembler and some C emulation code
(c) Copyright 2000 - 2003 _Demo_ (_demo_@zsnes.com),
Nach,
zsKnight (zsknight@zsnes.com)
C4 C++ code
(c) Copyright 2003 - 2006 Brad Jorsch,
Nach
DSP-1 emulator code
(c) Copyright 1998 - 2006 _Demo_,
Andreas Naive (andreasnaive@gmail.com),
Gary Henderson,
Ivar (ivar@snes9x.com),
John Weidman,
Kris Bleakley,
Matthew Kendora,
Nach,
neviksti (neviksti@hotmail.com)
DSP-2 emulator code
(c) Copyright 2003 John Weidman,
Kris Bleakley,
Lord Nightmare (lord_nightmare@users.sourceforge.net),
Matthew Kendora,
neviksti
DSP-3 emulator code
(c) Copyright 2003 - 2006 John Weidman,
Kris Bleakley,
Lancer,
z80 gaiden
DSP-4 emulator code
(c) Copyright 2004 - 2006 Dreamer Nom,
John Weidman,
Kris Bleakley,
Nach,
z80 gaiden
OBC1 emulator code
(c) Copyright 2001 - 2004 zsKnight,
pagefault (pagefault@zsnes.com),
Kris Bleakley
Ported from x86 assembler to C by sanmaiwashi
SPC7110 and RTC C++ emulator code used in 1.39-1.51
(c) Copyright 2002 Matthew Kendora with research by
zsKnight,
John Weidman,
Dark Force
SPC7110 and RTC C++ emulator code used in 1.52+
(c) Copyright 2009 byuu,
neviksti
S-DD1 C emulator code
(c) Copyright 2003 Brad Jorsch with research by
Andreas Naive,
John Weidman
S-RTC C emulator code
(c) Copyright 2001 - 2006 byuu,
John Weidman
ST010 C++ emulator code
(c) Copyright 2003 Feather,
John Weidman,
Kris Bleakley,
Matthew Kendora
Super FX x86 assembler emulator code
(c) Copyright 1998 - 2003 _Demo_,
pagefault,
zsKnight
Super FX C emulator code
(c) Copyright 1997 - 1999 Ivar,
Gary Henderson,
John Weidman
Sound emulator code used in 1.5-1.51
(c) Copyright 1998 - 2003 Brad Martin
(c) Copyright 1998 - 2006 Charles Bilyue'
Sound emulator code used in 1.52+
(c) Copyright 2004 - 2007 Shay Green (gblargg@gmail.com)
SH assembler code partly based on x86 assembler code
(c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se)
2xSaI filter
(c) Copyright 1999 - 2001 Derek Liauw Kie Fa
HQ2x, HQ3x, HQ4x filters
(c) Copyright 2003 Maxim Stepin (maxim@hiend3d.com)
NTSC filter
(c) Copyright 2006 - 2007 Shay Green
GTK+ GUI code
(c) Copyright 2004 - 2010 BearOso
Win32 GUI code
(c) Copyright 2003 - 2006 blip,
funkyass,
Matthew Kendora,
Nach,
nitsuja
(c) Copyright 2009 - 2010 OV2
Mac OS GUI code
(c) Copyright 1998 - 2001 John Stiles
(c) Copyright 2001 - 2010 zones
Specific ports contains the works of other authors. See headers in
individual files.
Snes9x homepage: http://www.snes9x.com/
Permission to use, copy, modify and/or distribute Snes9x in both binary
and source form, for non-commercial purposes, is hereby granted without
fee, providing that this license information and copyright notice appear
with all copies and any derived work.
This software is provided 'as-is', without any express or implied
warranty. In no event shall the authors be held liable for any damages
arising from the use of this software or it's derivatives.
Snes9x is freeware for PERSONAL USE only. Commercial users should
seek permission of the copyright holders first. Commercial use includes,
but is not limited to, charging money for Snes9x or software derived from
Snes9x, including Snes9x or derivatives in commercial game bundles, and/or
using Snes9x as a promotion for your commercial product.
The copyright holders request that bug fixes and improvements to the code
should be forwarded to them so everyone can benefit from the modifications
in future versions.
Super NES and Super Nintendo Entertainment System are trademarks of
Nintendo Co., Limited and its subsidiary companies.28211-110.010.10000000000000001-110.010.10000000000000001-110.010.10000000000000001-110.010.10000000000000001-111.0408340855860843e-170.010.10000000000000001-110.010.10000000000000001-110.010.10000000000000001-110.010.10000000000000001-110.010.10000000000000001-110.010.1000000000000000122562113150032500319901101100501101999960961119999609611160111Truegtk-preferences1Truegtk-fullscreen1Truegtk-zoom-in1Truegtk-leave-fullscreen1Truegtk-refresh1Truegtk-redo1Truegtk-revert-to-saved1Truegtk-media-next1Truegtk-media-stop1Truegtk-media-record1Truegtk-open1Truegtk-media-pause1Truegtk-go-forward1Truegtk-quit1Truegtk-dialog-info1Truegtk-save1Truegtk-network1Truegtk-open15Open Multiple ROM Images (MultiCart)center-on-parent320dialogTrueTrue5True12TrueSlot A:False0TrueSelect an Image for Slot A1False0True12TrueSlot B:False0TrueSelect an Image for Slot B1False11Trueendgtk-cancelTrueTrueTrueTrueFalseFalse0gtk-okTrueTrueTrueTrueFalseFalse1Falseend0button14button135Snes9x NetPlaycenter-on-parentdialogTrue2True55True0noneTrue12True55TrueTrueThe game chosen will be loaded before connecting. This field can be blank if the server will send the ROM imageFalse0Browse...TrueTrueTrueFalse1TrueTrueTrueTrueClear entrygtk-clear1False2True<b>ROM Image</b>TrueFalse0True0noneTrue512TrueConnect to another computerTrueTrueFalseConnect to another computer that is running Snes9x NetPlay as a serverTrueTrue0True55TrueName or IP address:False0TrueTrueDomain name or internet protocol address of a remote computer1TruePort:False2TrueTrueConnect to specified TCP port on remote computeradjustment3TrueTrueFalse31Act as a serverTrueTrueFalseHost a game on this computer as Player 1, requiring extra throughput to support multitple usersTrueTrueconnect_radio2True<b>Server</b>TrueFalse1True0noneTrue12True55Sync using resetTrueTrueFalseReset the game when players join instead of transferring potentially unreliable freeze statesTrueFalse0Send ROM image to clientsTrueTrueFalseSend the running game image to players instead of requiring them to have their own copiesTrueFalse1True5TrueDefault port:False0TrueTrueTCP port used as a connection point for remote clientsadjustment2TrueTrueFalse1False2True5TrueAsk server to pause whenFalse0TrueTrueadjustment1TrueTrueFalse1Trueframes behindFalse2False3True<b>Settings</b>True21Trueendgtk-cancelTrueTrueTrueTrueFalseFalse0gtk-connectTrueTrueTrueTrueTrueFalseFalse1Falseend0button9button10512350GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5Snes9x Cheatscenter-on-parentdialogTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK2True5True0inTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0True55True0Type:False0TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKliststore10FalseFalse1True0Description:False2TrueTrue21False3True0Code:False4TrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalse5gtk-addTrueTrueTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse6TrueFalse7gtk-removeTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse8FalseFalse11TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKendgtk-closeTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse0Falseend0button7
8:7 Square pixels
4:3 SNES correct aspect
None
SuperEagle
2xSaI
Super2xSaI
EPX
EPX Smooth
Blargg's NTSC
Scanlines
0%
12.5%
25%
50%
100%
12.5%
25%
50%
100%
16-bit (GL_BGRA)
24-bit (GL_RGB)
32-bit (GL_BGRA)
48000 hz
44100 hz
32000 hz (SNES Default)
22050 hz
16000 hz
11025 hz
8000 hz
0 hz
Automatic
0
1
2
3
4
5
6
7
8
9
Toggle the menu bar
Exit fullscreen mode
Quit Snes9x
1
2
3
4
5
1+
2+
3+
4+
5+
1
2
3
4
5
1+
2+
3+
4+
5+
Game Genie
Pro Action Replay
Goldfinger
GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5Advance to Framecenter-on-parentdialogTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK2TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK510TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0The current frame in the movie isTrue0TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK10TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Fast-forward to frame0TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrue11False1TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKendgtk-cancelTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse0gtk-okTrueTrueTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse1Falseend0button3button2GDK_KEY_PRESS_MASKSnes9x Preferencescenter480dialogTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueTrueleft010TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKneverautomaticTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKqueuenoneTrue5True0noneTrue5512True5Use fullscreen on ROM openTrueTrueFalseGo to fullscreen mode immediately after opening a ROMTrueTrueFalseFalse0Show frame rateTrueTrueFalseTrueTrueFalseFalse1Use overscanned heightTrueTrueFalseUse SNES extended height. Will probably cause letterboxingTrueTrueFalseFalse2True12Change fullscreen resolution:TrueTrueFalseChanges the screen resolution when running Snes9x in fullscreen modeTrueTrueFalseFalse0Trueliststore1401FalseFalse3True<b>Basic Settings</b>TrueFalse0True0noneTrue5512True5Scale image to fit windowTrueTrueFalseScales the image so no black bars are presentTrueTrueFalseFalse0True12Maintain aspect-ratio:TrueTrueFalseScales the image as large as possible without distortionTrueTrueFalseFalse0Trueliststore130False11Force SNES-hires outputTrueTrueFalseGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKDetects frames that are not output by Snes9x in hires, and scales themTrue2True5Use TrueTrueFalseAllows scaling and filtering to use multiple processorsTrueTrueFalseFalse0TrueTrueadjustment17TrueTrueFalse1Truethreads for filtering and scalingFalse23True12True0Apply scaling filter:False0Trueliststore1201FalseFalse4True<b>Image Adjustments</b>TrueFalse1True0noneTrue5512TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK12TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Video preset:False0TrueCompositeTrueTrueTrueFalse0S-VideoTrueTrueTrueFalse1RGBTrueTrueTrueFalse2MonochromeTrueTrueTrueFalse3False10TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK112125TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Artifacts:67GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Sharpness:45GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Brightness:34GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Contrast:23GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Saturation:12GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Hue:GTK_FILLTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment16False-12left12TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment15False-12left1212TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment14False-12left1223TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment13False-12left1234TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment12False-12left1245TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment11False-12left1267TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment10False-12left1278TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment9False-12left1289TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment8False-12left12910TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKadjustment7False-12left121011TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Gamma:78GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Fringing:89GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Bleed:910GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Resolution:1011GTK_FILLTrue2561Merge odd and even fieldsTrueTrueFalseTrue2True12True0Scanline intensity:False0Trueliststore110False13True<b>NTSC Filter</b>TrueFalse2True0noneTrue5512True12True0Scanline intensity:False0Trueliststore100False1True<b>Scanline Filter</b>TrueFalse3True0noneTrue5512TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKliststore900TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5Bilinear-filter outputTrueTrueFalseSmoothens (blurs) the imageTrueTrue0Sync to vertical blankTrueTrueFalseSync the image to the vertical retrace to stop tearingTrueTrueFalseFalse1Sync every frameTrueTrueFalseUse glFinish to reduce latency by one frame. May cause 100% CPU usage in faulty graphics driversFalseTrue2Allow non-power-of-two texturesTrueTrueFalsePrevents edge artifacts, but can slow performanceTrue3Use pixel-buffer objectsTrueTrueFalseGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKCan be faster or slower depending on driversTrue4TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK10TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKDifferent formats can yield highly different performance10TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKPixel-buffer format:False0TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKliststore80False15Use GLSL shadersTrueTrueFalseTrue6True23True1012True0Fragment shader:GTK_FILLGTK_FILLTrue1012True0Vertex shader:12GTK_FILLGTK_FILLTrueTrue•12GTK_FILLTrueTrue•1212GTK_FILLBrowse...TrueTrueTrue23GTK_FILLGTK_FILLBrowse...TrueTrueTrue2312GTK_FILLGTK_FILL71TrueForce an inverted byte-orderingTrueTrueFalseForces a swapped byte-ordering for cases where the system's endian is used instead of the video cardTrue02True<b>Hardware Acceleration</b>TrueFalse4TrueTruevideo-display0TrueDisplayTrueFalseFalse1FalseTrueTrueneverautomaticTruequeuenoneTrue50noneTrue12True55True12TrueSound driver:FalseFalse0Trueliststore70FalseFalse1FalseFalse0Synchronize with soundTrueTrueFalseBase emulation speed on the rate sound is outputTrueFalseFalse1Mute sound outputTrueTrueFalseDisables output of soundTrueTrueFalseFalse2StereoTrueTrueFalseOutput two channels, left and rightTrueTrueFalseFalse3True32105True0Playback rate:GTK_FILLTrue5TrueTrueadjustment6TrueTrueFalse0TruemillisecondsFalse11223GTK_FILLGTK_FILLTrue0Buffer size:23GTK_FILLGTK_FILLTrue0Input rate:12GTK_FILLTrueTrueAdjust to produce more or less data. Decrease the rate if experiencing crackling. Increase the rate if experiencing frame-rate stuttering. Best used with the "Synchronize with sound" optionadjustment5False0left1212TrueTrueliststore60FalseFalse012GTK_FILLFalse4True<b>Sound Settings</b>True1TrueTrueaudio-x-generic0TrueSoundTrueFalseFalse11FalseTrueTrueautomaticautomaticTruequeuenoneTrueTrue50noneTrue12True55True10TrueFrameskip:FalseFalse0Trueliststore50FalseFalse1False0Enable HDMATrueTrueFalseEnable HDMA. Required feature for compatibility with some gamesTrueTrueFalseFalse1Block invalid VRAM accessTrueTrueFalseTrue2Allow opposing dpad directionsTrueTrueFalseLet left and right or up and down be pressed at the same timeTrue3True<b>Accuracy</b>TrueFalse0True50noneTrue12True55Pause emulation when switching away from Snes9xTrueTrueFalseTrue0True12TrueThe ESC key should:False0Trueliststore40False11True<b>Window Switching</b>TrueFalse1True50noneTrue12True5Prevent the screensaver from activatingTrueTrueFalseTrue0True<b>Screensaver</b>TrueFalse22TrueTrueutilities-terminal0TrueEmulationTrueFalseFalse12FalseTrue5True50noneTrue12True5True5355TrueTrueFalse•gtk-clear12TrueTrueFalse•gtk-clear1212TrueTrueFalse•gtk-clear1223TrueTrueFalse•gtk-clear1234TrueTrueFalse•gtk-clear1245Browse...TrueTrueTrue23GTK_FILLBrowse...TrueTrueTrue2312GTK_FILLBrowse...TrueTrueTrue2323GTK_FILLBrowse...TrueTrueTrue2334GTK_FILLBrowse...TrueTrueTrue2345GTK_FILLTrue0SRAM:GTK_FILLTrue0Save states:12GTK_FILLTrue0Cheats:23GTK_FILLTrue0Patches:34GTK_FILLTrue0Exports:45GTK_FILLFalse0True<b>Game Data Locations</b>TrueFalse0True0noneTrue512True5TrueSave SRAM:False0TrueTrueAutomatically save the game's SRAM at this interval. Setting this to 0 will only save when quitting or changing ROMs•51False1Trueseconds after changeFalse2True<b>Automatic Saving</b>TrueFalse13TrueTruefolder0TrueFilesTrueFalseFalse13FalseTrue55True5True5<b>Joypad:</b>TrueFalseFalse0Trueliststore30False1TrueFalse2_ResetTrueTrueTrueTrueFalseFalse3TrueFalse4TrueSwap with:False5Trueliststore20False6_SwapTrueTrueTrueTrueFalse7False0Use modifier keys (CTRL, SHIFT, ALT) directlyTrueTrueFalseAllow using modifier keys as independent keys instead of modifiersTrueTrueFalseFalse1TrueTrueTrue1012True62105True0UpGTK_FILLTrue0Down12GTK_FILLTrue0Left23GTK_FILLTrue0Right34GTK_FILLTrue0Start45GTK_FILLTrue0Select56GTK_FILL50TrueTrueFalse12GTK_FILL50TrueTrueFalse1212GTK_FILL50TrueTrueFalse1223GTK_FILL50TrueTrueFalse1234GTK_FILL50TrueTrueFalse1245GTK_FILL50TrueTrueFalse1256GTK_FILL0True62105True0AGTK_FILLTrue0B12GTK_FILLTrue0X23GTK_FILLTrue0Y34GTK_FILLTrue0L45GTK_FILLTrue0R56GTK_FILL50TrueTrueFalse1256GTK_FILL50TrueTrueFalse1234GTK_FILL50TrueTrueFalse1245GTK_FILL50TrueTrueFalse1223GTK_FILL50TrueTrueFalse1212GTK_FILL50TrueTrueFalse12GTK_FILL1TrueButtonsFalseTrue5225True562105True0AGTK_FILLTrue0B12GTK_FILLTrue0X23GTK_FILLTrue0Y34GTK_FILLTrue0L45GTK_FILLTrue0R56GTK_FILL50TrueTrueFalse1256GTK_FILL50TrueTrueFalse1245GTK_FILL50TrueTrueFalse1234GTK_FILL50TrueTrueFalse1223GTK_FILL50TrueTrueFalse1212GTK_FILL50TrueTrueFalse12GTK_FILL1212GTK_FILLTrue562105True0AGTK_FILLTrue0B12GTK_FILLTrue0X23GTK_FILLTrue0Y34GTK_FILLTrue0L45GTK_FILLTrue0R56GTK_FILL50TrueTrueFalse12GTK_FILL50TrueTrueFalse1212GTK_FILL50TrueTrueFalse1223GTK_FILL50TrueTrueFalse1234GTK_FILL50TrueTrueFalse1245GTK_FILL50TrueTrueFalse1256GTK_FILL12GTK_FILLTrue0<b>Sticky</b>Truecenter12True0<b>Turbo</b>Truecenter1FalseTrueTurbo / Sticky Buttons1FalseTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK5TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK50noneTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK12True55TrueSet new axis bindings at:FalseFalse0TrueTrueChanges the amount a joystick should be tilted to register a button pressadjustment41TrueFalseFalse1TruepercentFalseFalse2TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK<b>Joystick Axis Threshold</b>TrueFalse0TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0noneTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK12TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK55TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Center all axes on all joysticks and press Calibrate.FalseFalse0TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKCali_brateTrueTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueFalseFalse0FalseFalse1TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK<b>Calibration</b>True12TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKJoystick Options2False2True<small>Click an entry and then press the desired keys or joystick button
<i>Escape</i>: Move to next<i> Shift-Escape</i>: Clear selected</small>TruefillTrueFalse34TrueTrueinput-gaming0TrueJoypadsTrueFalseFalse14FalseTrue55True05<b>Snes9x Emulator Shortcut Keys</b>TrueFalseFalse0TrueFalseFalse1TrueTrueTrueTrueneverautomaticTruequeuenoneTrue10112105True0Soft reset910GTK_FILLTrue0Hardware reset89GTK_FILLTrue0Increase frame time78GTK_FILLTrue0Decrease frame time67GTK_FILLTrue0Increase frame rate56GTK_FILLTrue0Decrease frame rate45GTK_FILLTrue0Pause34GTK_FILLTrue0Toggle turbo23GTK_FILLTrue0Enable turbo12GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Open ROMGTK_FILLTrue0Quit Snes9x1011GTK_FILLGTK_FILLTrueTrueFalse12GTK_FILLTrueTrueFalse1212GTK_FILLTrueTrueFalse1223GTK_FILLTrueTrueFalse1234GTK_FILLTrueTrueFalse1245GTK_FILLTrueTrueFalse1256GTK_FILLTrueTrueFalse1267GTK_FILLTrueTrueFalse1278GTK_FILLTrueTrueFalse1289GTK_FILLTrueTrueFalse12910GTK_FILLTrueTrueFalse121011GTK_FILLTrueEmulationFalseTrueTrueneverautomaticTruequeuenoneTrue1082105True0Toggle BG layer 0GTK_FILLTrue0Toggle BG layer 112GTK_FILLTrue0Toggle BG layer 223GTK_FILLTrue0Toggle BG layer 334GTK_FILLTrue0Toggle sprites45GTK_FILLTrue0BG layering hack56GTK_FILLTrue0Screenshot67GTK_FILLTrue0Toggle fullscreen78GTK_FILLTrueTrueFalse12GTK_FILLTrueTrueFalse1212GTK_FILLTrueTrueFalse1223GTK_FILLTrueTrueFalse1234GTK_FILLTrueTrueFalse1245GTK_FILLTrueTrueFalse1256GTK_FILLTrueTrueFalse1267GTK_FILLTrueTrueFalse1278GTK_FILL1TrueGraphics1FalseTrueTrueneverautomaticTruequeuenoneTrue10104105True0<b>Quick save state</b>Truecenter2True0<b>Quick load state</b>True24True0Slot 123True0Slot 012True0Slot 234True0Slot 345True0Slot 456True0Slot 567True0Slot 678True0Slot 789True0Slot 02312True0Slot 12323True0Slot 22334True0Slot 32345True0Slot 42356True0Slot 52367True0Slot 62378True0Slot 72389True0Slot 823910True0Slot 891050TrueTrueFalse1212GTK_FILL50TrueTrueFalse1223GTK_FILL50TrueTrueFalse1234GTK_FILL50TrueTrueFalse1245GTK_FILL50TrueTrueFalse1256GTK_FILL50TrueTrueFalse1267GTK_FILL50TrueTrueFalse1278GTK_FILL50TrueTrueFalse1289GTK_FILL50TrueTrueFalse12910GTK_FILL50TrueTrueFalse3412GTK_FILL50TrueTrueFalse3434GTK_FILL50TrueTrueFalse3423GTK_FILL50TrueTrueFalse3445GTK_FILL50TrueTrueFalse3456GTK_FILL50TrueTrueFalse34910GTK_FILL50TrueTrueFalse3478GTK_FILL50TrueTrueFalse3467GTK_FILL50TrueTrueFalse3489GTK_FILL2TrueSave States2FalseTrueTrueneverautomaticTruequeuenoneTrue1092105True0Toggle sound channel 0GTK_FILLTrue0Toggle sound channel 112GTK_FILLTrue0Toggle sound channel 223GTK_FILLTrue0Toggle sound channel 334GTK_FILLTrue0Toggle sound channel 445GTK_FILLTrue0Toggle sound channel 556GTK_FILLTrue0Toggle sound channel 667GTK_FILLTrue0Toggle sound channel 778GTK_FILLTrue0Toggle all sound channels89GTK_FILLTrueTrueFalse12GTK_FILLTrueTrueFalse1212GTK_FILLTrueTrueFalse1223GTK_FILLTrueTrueFalse1234GTK_FILLTrueTrueFalse1245GTK_FILLTrueTrueFalse1256GTK_FILLTrueTrueFalse1267GTK_FILLTrueTrueFalse1278GTK_FILLTrueTrueFalse1289GTK_FILL3TrueSound3FalseTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK1062105TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Seek to frame45GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Load Movie34GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Stop movie recording23GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Begin movie recording12GTK_FILLTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK0Save SPCGTK_FILLTrueTrueFalse12GTK_FILLTrueTrueFalse1212GTK_FILLTrueTrueFalse1223GTK_FILLTrueTrueFalse1234GTK_FILLTrueTrueFalse1245GTK_FILLTrue0Swap controllers 1 & 256GTK_FILLTrueTrue1256GTK_FILL4TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKMisc4False2True<small>Click an entry and then press the desired keys or joystick button
<i>Escape</i>: Move to next<i> Shift-Escape</i>: Clear selected</small>TruefillTrueFalseFalse35TrueTrueinput-keyboard0TrueShortcutsTrueFalseFalse15False2Trueendgtk-cancelTrueTrueTrueFalseTrueFalseFalse0gtk-applyTrueTrueTrueFalseTrueFalseFalse1gtk-okTrueTrueTrueFalseTrueFalseFalse2gtk-aboutTrueTrueTrueFalseTrueFalseFalse3TrueFalseend0cancel_buttonok_buttonbutton1button8GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASKSnes9xTrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrue_FileTrue_Open ROM Image...TrueTrueimage2FalseTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKOpen RecentTrueTrueOpen with _NetPlay...TrueOpen a ROM to use with NetPlayTrueimage3FalseTrueOpen _MultiCart...TrueTrueTrue_Load StateTrueTrueSlot _0TrueTrueSlot _1TrueTrueSlot _2TrueTrueSlot _3TrueTrueSlot _4TrueTrueSlot _5TrueTrueSlot _6TrueTrueSlot _7TrueTrueSlot _8TrueTrueTrueFrom _File...TrueTrue_Save StateTrueTrueSlot _0TrueTrueSlot _1TrueTrueSlot _2TrueTrueSlot _3TrueTrueSlot _4TrueTrueSlot _5TrueTrueSlot _6TrueTrueSlot _7TrueTrueSlot _8TrueTrueTrueTo _File...TrueTrueSave SPC...TrueTrueimage4FalseTrueShow ROM _Info...TrueTrueimage5FalseTrue_QuitTrueTrueimage18FalseTrue_EmulationTrueRun / _ContinueTrueTrueimage6False_PauseTrueTrueimage7FalseTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKLoad _Movie...TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueimage8FalseR_ecord Movie...TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueimage19False_Stop RecordingTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueimage9False_Jump to Frame...TrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueimage10FalseTrueSy_nc ClientsTrueTrueimage11FalseTrueResetTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASKTrueimage12FalseSoft _ResetTrueTrueimage13FalseTrue_ViewTrue_Hide MenuTrueTrueimage14FalseTrue_Status BarTrueTrue_Change SizeTrueTrueimage17FalseTrueTrueFalseExact PixelsTrueTrue_1xTrueTrue_2xTrueTrue_3xTrueTrue_4xTrueTrue_5xTrueTrueTrueFalseCorrect AspectTrueTrue1xTrueTrue2xTrueTrue3xTrueTrue4xTrueTrue5xTrueTrue_FullscreenTrueTrueimage15FalseTrue_OptionsTrueTrueController PortsTrueTrueSNES Port 1TrueTrueJoypadTrueTrueMouseTruejoypad1TrueSuperscopeTrueTruejoypad1TrueSNES Port 2TrueTrueJoypadTrueTrueMouseTruejoypad2TrueMultitapTruejoypad2TrueSuperscopeTrueTruejoypad2TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK_Cheats...TrueTrueGDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK_Preferences...TrueTrueimage16FalseFalse0256224TrueTrueGDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK | GDK_SUBSTRUCTURE_MASK1TrueFalse2