Introduction to Mednafen

Mednafen is a portable, utilizing OpenGL and SDL, argument(command-line)-driven multi-system emulator. Mednafen has the ability to remap hotkey functions and virtual system inputs to a keyboard, a joystick, or both simultaneously. Save states are supported, as is real-time game rewinding. Screen snapshots may be taken, in the PNG file format, at the press of a button. Mednafen can record audiovisual movies in the QuickTime file format, with several different lossless codecs supported.

The following systems are supported(refer to the emulation module documentation for more details):

Mednafen is distributed under the terms of the GNU GPLv2.

Due to the threaded model of emulation used in Mednafen, and limitations of SDL, a joystick is preferred over a keyboard to play games, as the joystick will have slightly less latency, although the latency differences may not be perceptible to most people.


Mednafen 1.32.1April 5, 2024 - 19:39 PDT

Tiny update primarily to fix issues with loading CloneCD and Apple II WOZ files from uncompressed ZIP archives, and to implement a workaround for a gcc bug that broke the Saturn VDP1 rasterization code when Mednafen was compiled with certain -mcpu=/-mtune= flags.


SHA-256: de7eb94ab66212ae7758376524368a8ab208234b33796625ca630547dbc83832
SHA-256: 3b680ce6b50a17bcbb2ac611e38962ee469e399b412cc435ffacd6e7f6fb1982
SHA-256: ca8e5cb53c2aedb347ab0358a1be496cfc4a51fc2e444648fa430365289c82e7

Mednafen 1.32.0-UNSTABLEJanuary 9, 2024 - 18:24 PST

Notable changes since 1.31.0-UNSTABLE:
  • The default key mapping(for new configurations) to exit Mednafen is now only "F12", instead of both "ESC" and/or "F12" as before; additionally, a new mapping for "ESC" to close the netplay console/text popup has been added.
  • Added command-line option "-ovconfig", to load global override settings from the specified file. The global override settings will override any settings loaded from "mednafen.cfg" or set via command-line arguments, but will be overridden in turn by more-specific per-module and per-game override configuration files.
  • Fixed data alignment issue that could produce broken QuickTime videos when using the CSCD codec(the default) with certain combinations of emulation module video settings.
  • Added setting "input.grab.strategy", default value of "full". It can be set to "auto" to enable minimalistic grabbing of the system keyboard and/or mouse, when input grabbing is toggled on, dependent on emulating a virtual keyboard and/or virtual mouse/ball device.
  • On the Windows build, keyboard grabbing will now capture ALT+Tab and the Windows keys, and discard synthetic left CTRL keypresses generated from pressing AltGr.
  • Restored Windows 2000 compatibility, broken in 1.21.0-UNSTABLE, for people who enjoy airgaps, firewalls, and/or insecurities.
  • Fixed fatal startup error when running the Mednafen executable from the root directory of a drive on Windows, a regression introduced around version 1.22.0-UNSTABLE.
  • Apple2: Added support for Apple IIe and Enhanced IIe, selectable via changing the new "apple2.model" setting, or by utilizing the new "model" directive in a MAI file.
  • Apple2: When loading a floppy disk image from a ZIP archive without a MAI file, all other floppy disk images with the same extension in the same directory in the ZIP archive will now also be loaded automatically. If desired, this feature can be disabled by setting the new "apple2.multiload" setting to "0".
  • Apple2: Added setting "apple2.input.kb.ghosting", default value of "1", that can be set to "0" to disable emulation of spurious ghost keypresses.
  • Apple2: Increased the maximum value of the "" setting to "2", which will enable more-aggressive composite video color smoothing.
  • Apple2: Added an adjustable composite color video sharpening filter, controlled by the new setting "".
  • Apple2: Reworked how HGR is handled with the "rgb_alt" and "rgb_alt_tfr" video rendering modes, for consistency with DHGR and to correct a few glitches.
  • Apple2: Added "rgb_qd" and "rgb_qd_tfr" video rendering modes, which will render DHGR at quarter-resolution, and provide two distinct grays, but are otherwise the same as "rgb" and "rgb_tfr".
  • Apple2: Added "rgb_video7" video rendering mode, which supports the additional graphics modes offered by the Apple IIe Video 7 RGB interface, one of which is used by Sierra's AGI games.
  • Apple2: Added high-level(no seek delay) ProDOS-compatible hard disk drive emulation, usable by loading a raw hard disk drive image with an "hdv" file extension, and through the "hdd" directive in a MAI file.
  • PS1: Added support for Konami's "Pop'n Music" controller.
  • SNES-Faust: Fixed distorted graphics in "Marvelous" and "Bishoujo Janshi Suchie-Pai" due to hires color math emulation inaccuracies.
  • SNES-Faust: Fixed letter sprite glitches(horizontal black lines) in "Wordtris".
  • SNES-Faust: CPU writes to VRAM during active display are now blocked. Fixes missing dialog box and text in "Mazinger Z", title screen corruption in "NBA Pro Basketball: Bulls vs Blazers" and "Shin Nihon Pro Wrestling: Chou Senshi in Tokyo Dome", and graphical garbage during startup in "Zen-Nihon Pro Wres". May break ancient ROM hacks and fan translations.
  • SS: Fixed hangs in "Gal Jan", "Kanzen Chuukei Pro Yakyuu Greatest Nine", the USA version of "Creature Shock: Special Edition", and the European versions of "Magic Carpet", "Manx TT SuperBike", and "Revolution X".
  • SS: Fixed erroneous red shadows beneath units during the final episode's first battle in "Sakura Taisen".
  • SS: Added support for loading bootable ROM cart images up to 48MiB in size, with a filename extension of "ss". If the ROM image is 32MiB or smaller, 512KiB of backup memory for save games will be available.
  • SS: Added support for routing SCSP MIDI output to stdout, for debug text output, by changing the new "ss.midi" setting's value to "stdout".

SHA-256: cede8fe3384849f06cb15bfd67d0739fe4fdc9e819add5c1b6df686f296f54f9
SHA-256: 3ca97a8786b1ad0c040e5374d29e93bdd6b0f3af2361ba841e6bf9a439d33434
SHA-256: 2effc8a5108e4eb6d04b81f6251e0d69e61277317906dbd6d749a39d42ad8295

Mednafen 1.31.0-UNSTABLEAugust 27, 2022 - 17:21 PDT

Notable changes since 1.29.0:
  • MD: Fixed glitches and hang in the Europe release of "Donald in Maui Mallard".
  • PC-FX: Expanded external backup memory from 32KiB to 128KiB, to match the amount of memory in an FX-BMP.
  • PC-FX: External backup memory will now be saved to/loaded from its own file, instead of being appended to the internal backup memory in the same file. For backwards compatibility, there is support for initially loading data from a combined 32KiB+32KiB file; however, the additional 96KiB of external backup memory will be unusable by the game in this case due to existing filesystem structures.
  • SASPlay: Added support for "Air Walkers".
  • SNES-Faust: Added mouse emulation.
  • SNES-Faust: Fixed color math glitch in "Final Fantasy V" when Exdeath is holding the opaque white sphere party hostage.
  • SNES-Faust: Fixed broken ExLoROM support, used by a "Heartthrob Memorial" translation patch.
  • SS: Added experimental support for ST-V games that don't require decryption chips or special hardware. Refer to the ST-V section of the documentation for more details and a list of explicitly supported games.
  • SS: Fixed missing and glitchy graphics in "Houkago Ren'ai Club: Koi no Etude".
  • SS: Fixed graphical glitches in "Radiant Silvergun" at the start of a new game begun after interrupting the attract mode, or game over, while a fancy rotating background was present, such as during the AKA-O battle.

SHA-256: bfcff72e370e09e12ba3791600782187fbf5e2cc9d6b5fe4f9f3471642046367
SHA-256: 787ff503eb282dcd1bcdfc5b17da2f5bd24ac607b6c7ba6e36df1df335a607e5
SHA-256: 0f4c21472bf7631133784c5b23999b11fc5ca6b196a6074ef071d9ebbb4a6636

Mednafen 1.29.0January 19, 2022 - 02:19 PST

Small bugfix-oriented update that also adds support for playing music from Sega Model 2A/2B/2C/3 games by loading ZIP archives of ROM image sets with MAME-style filenames.

Notable changes since 1.28.0-UNSTABLE:
  • Added support for playing the SCSP-generated music from most Sega Model 2A, 2B, 2C, and 3 arcade games.
  • PCE: Fixed a memory initialization bug that could cause graphics glitches after the explosion of the first boss in "R-Type".
  • PCE, PCE-Fast: Fixed unreadable black letters in "Order of the Griffon"'s password entry screen.
  • SNES: Fixed broken emulation on little-endian PPC64 due to endianness misdetection.
  • SNES-Faust: Fixed S-DSP pitch modulation being half as strong as it should be.
  • VB: Fixed a VSU modulation emulation inaccuracy that severely distorted some sound effects in "Virtual Boy Wario Land".

SHA-256: da3fbcf02877f9be0f028bfa5d1cb59e953a4049b90fe7e39388a3386d9f362e
SHA-256: 26c6676354d44e7d2c31b002f0abb097940e0846e449ed080fb79e6b64db0be2
SHA-256: f1c78dd0190129efaeeaa8e96553fb4d83d0120041caaaa6d4e7f440a573d811

Mednafen 1.28.0-UNSTABLENovember 12, 2021 - 02:23 PST

Notable changes since 1.27.1:
  • Stricter parsing of the configuration file and numeric setting values, with error messages now containing line numbers when relevant.
  • Added setting "video.force_bbclear", default value of "0", which when set to "1" will force clearing of the backbuffer before drawing every frame.
  • Added setting "video.cursorvis", default value of "hidden", to allow for showing the windowing system's mouse cursor within Mednafen's window even when it's not required.
  • Implemented an M3U recursion limit of 9, adjustable by the new setting "cd.m3u.recursion_limit".
  • Implemented a limit of 25 on the total number of CD images loaded while processing M3U files, adjustable via the new setting "cd.m3u.disc_limit".
  • Added Zstandard decompression support to game loading, with both naked files("zst" extension) and ZIP archives.
  • Added support for loading CD images from ZIP archives when the "cd.image_memcache" setting is set to "1". The ZIP archive may be loaded directly, or indirectly via an M3U file. An M3U file may also exist within the ZIP archive, to allow loading multiple CD images from within that ZIP archive. However, loading from a ZIP archive within another ZIP archive is not supported.
  • Changed the naming of save games, save states, etc. for gzip-compressed games. Previously, a gzip-compressed file named like "whatever.nes.gz" would generate a save game named like "whatever.nes.<HASH>.sav", but will now generate a save game named like "whatever.<HASH>.sav", the same as if "whatever.nes" had been loaded instead of "whatever.nes.gz". The old behavior may be restored by setting the new undocumented setting "filesys.old_gz_naming" to "1".
  • SS: The emulated reset button mapped to Mednafen's reset command key(F10 default) will now respect the "input.ckdelay" setting.
  • SS: The VA0/VA1 motherboard's memory mapping behavior for Low-RAM is now emulated instead of VA2's, to fix a crash in "Myst" in the generator room.
  • SS: Fixed unresponsive input in "Discworld".
  • SS: Fixed startup abort to CD player screen in the Europe and USA releases of "Primal Rage".
  • SS: Fixed abort to CD player screen when trying to start a game demo in Gremlin Interactive's "Demo Disc".
  • SS: Fixed inability to skip the intro FMV in "Senkutsu Katsuryu Taisen: Chaos Seed".
  • SS: Fixed flickering title screen in the "Saturn Super Vol. 2" demo of "Golden Axe: The Duel".
  • SS: Fixed a regression introduced in 1.26.0-UNSTABLE that broke the CD audio player in the North America/Europe BIOS.
  • SS: Implemented emulation of the CD block Scan command, to allow the scan forward/backward functionality in the BIOS's CD audio player to work.
  • SS: Fixed a bug in the CD seek handling code that could cause more emulator frame pacing and sound buffer underrun issues than strictly necessary when CD image memory caching is not enabled, the default.
  • SS: Corrected a few inaccuracies in the relative timing between different SCSP EG rates and between different SCSP timer prescaler rates(probably with negligible audible effects in commercial game sound drivers).
  • VB: Added "left" and "right" options to the "vb.3dmode" setting, to allow for more easily showing only the left or right view.

SHA-256: 0aef2b2ed30a23fd1586a590860077d75826ed077e7d32772b1acf3fcbf03f53
SHA-256: 2181acabc3af0014b3d764ecd0ae7f921f51d16475cec3b4c5e6367abc437709
SHA-256: e003f55c644ebb4fe84884a0bd4a9bd87eacd01f4553928360ad8e1e3ac9c811

Mednafen 1.27.1June 13, 2021 - 01:19 PDT

Minor bugfix release.


SHA-256: f3a89b2f32f40c3232593808d05e0c21cbdf443688ace04c9c27e4cf4d5955fb
SHA-256: 578c49ce2d8a36af9103113d5d6cf97139c59f89450db5a1ea0c7a3ada895458
SHA-256: a0f4dd4e66b056f756aa7d181714507cfefa526332ccc371e6665ec1617b306b

Mednafen 1.27.0-UNSTABLEApril 1, 2021 - 12:29 PDT

With this release, there is now a special non-Unicode Windows 98-compatible build available. This special Windows 98 build will not be provided for every release, and may be discontinued entirely if it becomes too much of a pain. The minimum CPU requirement is i686-class with MMX, e.g. Intel Pentium II, AMD K7(Athlon), and VIA C3 Nehemiah, though the PS1 emulation module also requires SSE2 for MDEC emulation.

Notable changes since 1.26.1:
  • Added support for 16bpp graphics output to the majority of emulation modules(excluding "pce", "pcfx", "psx", "snes", "ss", and "vb"). Using this support with OpenGL can be done by setting the video.glformat setting appropriately, which *may* result in a small performance boost on scary dinosaur toasters and underpowered ARM SBCs.
  • Rewrote the save state preview image resizing code, such that it no longer makes Saturn mesh transparency look horrendous.
  • Dropped usage of and dependency on libsndfile, and added a direct dependency on libFLAC. The only CD image audio file formats/encodings other than raw supported now are: FLAC, Ogg Vorbis, Musepack, and uncompressed PCM in AIFF/AIFC, AU/SND, W64, and WAV.
  • Each Mednafen data directory created on startup will now be based on the current value of the corresponding filesys.path_* setting, rather than the default value, except when the current value of the corresponding filesys.fname_* setting is different from its default, in which case the directory will not be created at all.
  • Added manual physical game controller hotplugging support, by pressing SHIFT+F3 to rescan and reinitialize the controllers.
  • Changed netplay/cheat console key combos for navigating to the beginning and end of the scrollback buffer to CTRL+Home and CTRL+End, respectively(previously SHIFT+Home and SHIFT+End).
  • Added netplay/cheat console key combos CTRL+Backspace and CTRL+Delete for quickly clearing the prompt text entry buffer.
  • PS1: Fixed hangs at different points in some versions of "Tomb Raider", a problem initially fixed in, but regressed in 1.22.0-UNSTABLE.
  • PS1: Fixed missing FMV audio in "Blue's Clues: Blue's Big Musical".
  • SNES-Faust: Fixed hangs in "Derby Stallion 96", "Hakunetsu Pro Yakyuu: Ganba League", "Ihatov Monogatari", "Kentou Ou World Champion", "Kyuuyaku Megami Tensei", "Sound Novel Tsukuru", "Super Professional Baseball II", "Yuujin Janjuu Gakuen 2", and "Yuuyu no Quiz de Go! Go!".
  • SNES-Faust: Fixed missing sound in "Shougi Club".
  • SNES-Faust: Fixed saving in "Light Fantasy", "PGA Tour Golf", and "Ys III".
  • SS: Fixed major audio problems in "Lunar" during boss battles, due to the sound CPU crashing inaccurately during game bootup and corrupting SCSP DSP registers. Note that this fix will not affect existing save states made within the game.

SHA-256: 4a7ecf38139372472598ab1c75469eac284ba203cdce5ba6ec8aefbff5f0a382
SHA-256: a6196361b8c7740c65d9647550ff3e7b870e2f2c833e178f06bbda1deea963f9
SHA-256: dcb5649b857b4879bbc76aba4bf04d31bc250d97a5e81539325ee2a771691188

Mednafen 1.26.1November 10, 2020 - 23:12 PST

This release fixes compilation errors with clang, fixes compilation errors after configuring with --disable-debugger, fixes a few minor MSU1 handling bugs in the SNES-Faust module, and improves the accuracy of the PS1 SPU reverb emulation.

SHA-256: 842907c25c4292c9ba497c9cb9229c7d10e04e22cb4740d154ab690e6587fdf4
SHA-256: 1d776e9355208c2fc81bea5ce036e955c5aea02f1176dc311df0a74ec17e6b48
SHA-256: 7ba91c81e7c40179adbd066fb390d8d696fdf3f9222c87090576f62359c9e7fb

Mednafen 1.26.0-UNSTABLEOctober 28, 2020 - 23:13 PDT

This release may have more Saturn-related regressions than usual.

Notable changes since 1.25.0-UNSTABLE:
  • SS: Fixed startup hang in the Europe releases of "Virtua Cop" and "Virtua Cop 2".
  • SS: Fixed startup hang in the USA release of "Independence Day".
  • SS: Fixed hang in "QuoVadis".
  • SS: Fixed hang in "Kidou Senkan Nadesico: Yappari Saigo wa Ai ga Katsu".
  • SS: Fixed crash/hang in "Hop Step Idol".
  • SS: Fixed startup abort to CD player screen in "Break Point" and "DJ Wars".
  • SS: Fixed hang of finite duration that sometimes occurred when trying to skip FMVs in "Dragon Force II" and "World Cup France '98: Road to Win".
  • SS: Fixed major sound glitches during gameplay in "Gunbird" after starting a game after exiting from the illustration gallery.
  • SS: Fixed dialogue voice audio being cut off prematurely in "Paneltia Story".
  • SS: Fixed missing graphics in the intro of "Magical Drop III".
  • SS: Fixed missing background layer graphics on disc 2 of "Mahjong Doukyuusei Special".
  • SS: Fixed glitchy ship sprite in the ending sequence of "Thunder Force III" in "Thunder Force Gold Pack 1".
  • SS: Fixed FMV tearing in "Ys II" of "Falcom Classics II".
  • SS: Fixed FMV tearing in "In the Hunt".
  • SS: Fixed minor FMV glitches in "3D Baseball", "The Crow", "NBA Action", "NFL Quarterback Club 96", "Solar Eclipse", and "Titan Wars".
  • SS: Fixed FMV glitches in "NFL Quarterback Club 97".
  • SS: Fixed FMV glitches in the Japan and USA releases of "Virtua Fighter Kids".
  • SS: Fixed intro FMV ending too soon in "Yu-No".
  • SS: Fixed glitchy frames on the Konami intro arm sprite in "Tokimeki Memorial: Forever With You".
  • SS: Fixed graphical glitches on the save and load screens in "Horror Tour".
  • SS: Fixed glitchy rotation-zoom effect in "Corpse Killer".
  • SS: Fixed blank game over screen in "Doraemon: Nobita to Fukkatsu no Hoshi".
  • SS: Fixed glitches when character graphics change in "Mujintou Monogatari R: Futari no Love Love Island".
  • SS: Fixed character portrait graphical glitch after entering the character select screen in "Zero Divide".
  • SS: Further reduced graphical glitching in "Virtua Fighter Remix".
  • SS: Fixed most rock face graphical glitches in "The Lost World: Jurassic Park".
  • SS: Fixed most graphical glitches with the player's robot in "Wolf Fang SS: Kuuga 2001".

SHA-256: 0ab810f32fde4feb9fcf94fa595362b529b8c2cdbb6d47b400983c426808ace1
SHA-256: 4b03e0f25db89b512e4c80689d48bc21693ff57c399b8efadc360bb25c8218c7
SHA-256: e85bc80e0bf0483b9547f31270c2ad1a0cd3cfd80cc62f2e578d6a0c687b9aa1

Mednafen 1.25.0-UNSTABLEJuly 13, 2020 - 22:53 PDT

Notable changes since 1.24.3:
  • SS: Implemented more complete emulation of SCSP's buggy linear interpolation on FM carrier slots.
  • SS: Fixed a minor VDP1 rendering inaccuracy with non-rectangular sprites and polygons.
  • SS: Fixed excessive CPU usage during the FMV in "Dark Seed II".
  • SS: Fixed hang after defeating the final boss in "Rayman".
  • SS: Fixed hang after the Meribia singer's singing in "Lunar".
  • SS: Fixed missing graphics during the attract mode in "Virtua Cop".
  • SS: Fixed garbage horizontally-stretched sprite in the Christmas-themed stage in "Christmas NiGHTS into Dreams".
  • SS: Fixed dialogue text truncation in "Senken Kigyouden".
  • SS: Significantly reduced graphical glitching in "Virtua Fighter" and "Virtua Fighter Remix".

SHA-256: 0ee12e6b52325d5b158f55725f2f34845afd85a4bfba2d5e3c1e139e2be5982a
SHA-256: 3a1d0be4da01fbff3eef7019e89db38bcbb12b249e426cfb49261a230c47ed5a
SHA-256: 1170c8cd84829dc1c5b7e735e22cef1c309ffe7d5926262412a765e8b8bb79db

Page design and original content copyright © 2005-2024 Mednafen Team. The Mednafen Beetle is copyright © 2005 Camille Young. Nintendo, Nintendo Entertainment System, GameBoy, GameBoy Color, and GameBoy Advance are registered trademarks of Nintendo. Mednafen is not an official Nintendo product, and Mednafen is in no way affiliated with the Nintendo corporation.