Snes9x - Portable Super Nintendo Entertainment System (TM) emulator
Go to file
BearOso 5949bbab97 Vulkan: Utilize VK_EXT_swapchain_maintenance1.
This is core in Vulkan 1.1.

We can now change vsync state without a new swapchain.

A fence is signaled when image is on screen, so we can possibly
be a little more precise with timing and avoid a whole device wait.
2024-06-12 16:54:13 -05:00
apu Resampler: Consistently use signed ints. 2023-10-10 19:22:40 -05:00
common Wayland: Reorder resizing operations 2024-01-09 10:31:49 -06:00
data Cheats: Use "name" instead of "description". Allow whitespace. 2018-06-04 10:29:46 -05:00
docs Update changes.txt a bit. 2023-03-16 16:57:09 -05:00
external vulkan-headers: Roll back to v1.3.280. 2024-04-13 14:01:50 -05:00
filter Use alwaysinline with hq2x. 2023-03-24 17:44:45 -05:00
gtk Vulkan: Utilize VK_EXT_swapchain_maintenance1. 2024-06-12 16:54:13 -05:00
jma Remove useless 'register' storage class. 2018-11-17 15:02:37 -06:00
libretro Fix Libretro netplay immediately disconnecting 2023-05-09 22:53:34 +02:00
macosx Update version strings from 1.62.3 to 1.63. 2024-05-10 14:37:25 -05:00
qt Vulkan: Utilize VK_EXT_swapchain_maintenance1. 2024-06-12 16:54:13 -05:00
shaders Qt: Compilation fix. Help updates. 2023-08-25 11:47:29 -05:00
unix Update version strings from 1.62.3 to 1.63. 2024-05-10 14:37:25 -05:00
unzip Guard Z_BZIP2ED with #ifdef HAVE_BZIP2 in miniunz.c, unzip.c 2024-03-19 00:14:22 +01:00
vulkan Vulkan: Utilize VK_EXT_swapchain_maintenance1. 2024-06-12 16:54:13 -05:00
win32 Win32: Throttle frame rate on alternate interlaced frames. 2024-06-07 14:27:47 -05:00
.cirrus.yml Cirrus.yml: Update FreeBSD target. 2024-04-13 18:14:51 -05:00
.gitignore add temp osx files to .gitignore 2020-09-13 20:07:06 -04:00
.gitmodules Add submodule cubeb. 2023-08-25 11:47:29 -05:00
65c816.h Missed a couple. 2018-11-15 17:35:52 -06:00
LICENSE Update some copyrights and version strings. 2023-03-16 16:28:04 -05:00
README.md Add Linux & FreeBSD X11 CI builds 2019-12-16 13:21:57 +06:00
appveyor.yml Update version strings from 1.62.3 to 1.63. 2024-05-10 14:37:25 -05:00
bml.cpp Trim data elements beginning with colons in bml. 2019-06-23 16:43:28 -05:00
bml.h C++ification of bml parser. 2019-06-02 19:09:52 -05:00
bsx.cpp Fix up Windows build errors. 2023-03-07 13:58:22 -06:00
bsx.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
c4.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
c4.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
c4emu.cpp C4: Do the sign extend manually. 2019-02-12 22:27:36 -06:00
cheats.cpp Modernize cheat stuff. 2023-03-07 13:58:21 -06:00
cheats.h Qt: Attach cheats dialog directly to Snes9x. 2023-08-25 11:47:29 -05:00
cheats2.cpp Cheats: Retain enabled state when updating existing cheat. 2024-05-18 19:25:33 -05:00
clip.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
conffile.cpp win32: fix compilation error in vs2019 2020-01-19 12:48:06 +09:00
conffile.h win32: fix compilation error in vs2019 2020-01-19 12:48:06 +09:00
controls.cpp controls: Revert wording to 1.61 version. 2023-04-20 10:20:43 -05:00
controls.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
cpu.cpp Remove extra variables for interlace field. 2023-03-07 14:01:29 -06:00
cpuaddr.h Adjust opcode timing as reported by pi1541. 2022-10-21 17:42:40 -05:00
cpuexec.cpp CPU: Stop emulation if CPU is deadlocked. 2024-04-27 17:44:21 -05:00
cpuexec.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
cpumacro.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
cpuops.cpp Fix compile with DEBUGGER (fixes #832) 2023-03-24 16:11:00 +01:00
cpuops.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
crosshairs.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
crosshairs.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
debug.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
debug.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
display.h Add fscompat.h 2023-03-07 13:58:21 -06:00
dma.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
dma.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
dsp.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
dsp.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
dsp1.cpp dsp1: Optimise copying registers on LE platforms 2022-02-11 23:32:31 +00:00
dsp2.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
dsp3.cpp dsp: Mark function-scope const arrays as static 2022-02-04 22:52:50 +00:00
dsp4.cpp dsp: Mark function-scope const arrays as static 2022-02-04 22:52:50 +00:00
font.h Add special S9xDisplayStringType to pass additional info. 2018-12-12 16:15:56 -06:00
fscompat.cpp Windows changes. 2023-08-25 11:47:29 -05:00
fscompat.h Fix Mac build after Vulkan changes 2023-03-08 10:23:32 -08:00
fxdbg.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
fxemu.cpp SuperFX: Allow execution from ROM in higher banks. 2024-04-27 16:59:11 -05:00
fxemu.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
fxinst.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
fxinst.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
getset.h Add support for mapping more than 128KByte SRAM 2021-08-20 15:33:23 -07:00
gfx.cpp Only use JIS->UTF8 conversion with new overlay. 2023-05-08 13:55:54 -05:00
gfx.h win32: Wire imgui up to OpenGL and Vulkan. 2023-05-04 17:36:36 -05:00
globals.cpp Remove most of GFX_MULTI_FORMAT. 2019-03-07 17:14:51 -06:00
language.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
loadzip.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
memmap.cpp boot 4mb superfx roms 2024-04-28 08:26:06 -05:00
memmap.h Qt port. 2023-08-25 11:47:29 -05:00
messages.h BUildfix for PS3 - error: comma at end of enumerator list 2018-12-29 11:50:22 -06:00
missing.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
movie.cpp More cleaning. 2023-03-07 13:58:21 -06:00
movie.h Remove S9xChooseMovieFilename 2020-08-07 14:08:51 -05:00
msu1.cpp Modernize cheat stuff. 2023-03-07 13:58:21 -06:00
msu1.h Fix Windows build. Tweak XAudio a bit. 2019-02-09 16:46:08 -06:00
netplay.cpp More cleaning. 2023-03-07 13:58:21 -06:00
netplay.h Merge pull request #428 from CapnCrinklepants/master 2019-03-09 18:14:50 -06:00
obc1.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
obc1.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
pixform.h Proper 16-bit color conversion. 2019-03-21 15:28:31 -05:00
port.h win32: fix libretro build 2024-01-03 00:20:56 +01:00
ppu.cpp Change S9xInterlaceField to an inline function. 2023-03-07 14:01:29 -06:00
ppu.h Fix PPU blending with unoptimized change. 2019-03-06 19:00:29 -06:00
sa1.cpp Fix #799 2023-02-04 13:58:01 +01:00
sa1.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sa1cpu.cpp Revert "Don't spin when SA1 is stopped." 2019-01-14 14:08:03 -06:00
sar.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
screenshot.cpp Start simplifying filesystem stuff. 2023-03-07 13:58:21 -06:00
screenshot.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sdd1.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sdd1.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sdd1emu.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sdd1emu.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
server.cpp netplay: Fix warnings and crash with >5 clients. 2023-04-30 16:07:45 -05:00
seta.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
seta.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
seta010.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
seta011.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
seta018.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
sha256.cpp (PS3) Buildfixes 2018-08-29 09:49:51 -05:00
sha256.h Add bml parser and sha256 sum support. 2018-04-24 16:16:22 -05:00
snapshot.cpp snapshot: Store fixed string instead of ROMFilename. 2023-05-10 14:14:57 -05:00
snapshot.h Adjust snapshot to load old DSP data. 2023-03-16 15:21:41 -05:00
snes9x.cpp Remove some unused, misplaced, or ancient code. 2023-05-01 15:29:39 -05:00
snes9x.h Update version strings from 1.62.3 to 1.63. 2024-05-10 14:37:25 -05:00
spc7110.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
spc7110.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
spc7110dec.cpp Get rid of some more warnings 2019-02-23 15:01:59 +01:00
spc7110dec.h Get rid of some more warnings 2019-02-23 15:01:59 +01:00
spc7110emu.cpp Add support for Tengai Makyou Zero English patch mapping 2017-10-23 09:03:19 -07:00
spc7110emu.h Initial 1.52 import 2010-09-25 17:46:12 +02:00
srtc.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
srtc.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
srtcemu.cpp Initial 1.52 import 2010-09-25 17:46:12 +02:00
srtcemu.h Initial 1.52 import 2010-09-25 17:46:12 +02:00
statemanager.cpp Move statemanager to s9x folder, add rewind support to unix port 2012-03-29 15:31:41 +02:00
statemanager.h Move statemanager to s9x folder, add rewind support to unix port 2012-03-29 15:31:41 +02:00
stream.cpp Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
stream.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
tile.cpp Add explicit declaration of tile unit templates. 2020-08-07 15:36:03 -05:00
tile.h Use a license stub everywhere. 2018-11-15 17:31:39 -06:00
tileimpl-h2x1.cpp Fix Mode7 mosaic glitch from tile cleanup. 2019-10-10 17:59:16 -05:00
tileimpl-n1x1.cpp Fix Mode7 mosaic glitch from tile cleanup. 2019-10-10 17:59:16 -05:00
tileimpl-n2x1.cpp Fix Mode7 mosaic glitch from tile cleanup. 2019-10-10 17:59:16 -05:00
tileimpl.h Add ability to force backdrop color for sprite extraction. 2023-03-31 17:09:23 -05:00
var8x10font.h win32: Get win32 working with variable font. 2023-05-04 15:55:11 -05:00

README.md

Snes9x

Snes9x - Portable Super Nintendo Entertainment System (TM) emulator

This is the official source code repository for the Snes9x project.

Please check the Wiki for additional information.

Nightly builds

Download nightly builds from continuous integration:

snes9x

OS status
Windows Status
Linux (GTK) Status
Linux (X11) Status
FreeBSD (X11) Status
macOS Status

libretro core

OS status
Linux/amd64 Status
Linux/i386 Status
Linux/armhf Status
Linux/armv7-neon-hf Status
Linux/arm64 Status
Android/arm Status
Android/arm64 Status
Emscripten Status
macOS/amd64 Status
Nintendo Wii Status
Nintendo Switch Status
Nintendo GameCube Status
PSP Status