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:
• Atari Lynx
• Neo Geo Pocket (Color)
• GameBoy (Color)
• GameBoy Advance
• Nintendo Entertainment System
• Super Nintendo Entertainment System/Super Famicom
• Virtual Boy
• PC Engine/TurboGrafx 16 (CD)
• Sega Game Gear
• Sega Genesis/Megadrive
• Sega Master System
• Sony PlayStation
o SS: Settings "ss.dbg_mask" and "ss.dbg_exe_cdpath", and the functionality they control, are no longer available unless Mednafen has been compiled with
o "MDFN_SS_DEV_BUILD" defined(such as with -DMDFN_SS_DEV_BUILD=1 in CPPFLAGS env var passed to configure).
o SS: Replaced some instances of case ranges with more portable constructs.
o SS: Run VDP1 vblank erase at end of vblank, so we know how much time we have and thus how many entries in the framebuffer we'll be able
o to erase. Currently, the available time calculations are generous, allowing for a bit more erase than what's possible on a Saturn, but we can tighten
o it up in the future once it's fairly certain there aren't any more event scheduling accuracy issues. Fixes FMV subtitle text in "Panzer Dragoon".
o SS: Fixed a bug that caused VDP2 frames to be short by 1 to 3 CPU cycles.
o SS: Reschedule the SH-2 DMA event handler as necessary to prevent it from running when the SH-2 bus is locked.
o SS: Force the SH-2 DMA and SCU DMA event handlers to be rescheduled to SH7095_mem_timestamp time when necessary.
o SS: Check for pending events right before calling VDP1, VDP2, SMPC, and SCU regs read/write handlers, which may then call their own event update
o Fixed an old bug that could cause a startup crash on Windows systems without XInput DLLs installed(e.g. some Windows XP systems).
o NES: Fixed a very old bug triggered when disabling(via CTRL+1) the background layer, that would cause sprite pixels to also be visually disabled too under certain
o MD, PC-FX: Fixed several instances of left-shifting negative values.
o SS: Fixed a compilation error when compiling with the debugger disabled("--disable-debugger" passed to configure).
o Added configure options "--with-external-mpcdec" and "--with-external-tremor", for distribution packagers.
o SS, SNES-Faust: Fixed a few issues causing compilation errors on clang.
o SS: Tweaked how seek command pause works; fixes a lockup issue in "Astal".
o WonderSwan: Fixed a bad usage of "char" without an unsigned/signed qualifier.
o SS: Slow down SCU DMA to VDP2 VRAM under certain conditions.
o SS: Adjusted VDP1 polygon and line draw commands to behave as if SPD=1, ECD=1 when color mode >= 6; fixes missing graphics problem in "Hi-Octane".
o SS: Reworked SCU DMA's timekeeping and scheduling code to be more accurate; reduces the size of the flickering section of the FMV in "Lunar".
o SS: Fixed handling of CPUSMPC open bus.
o Relaxed the CloneCD Q subchannel sanity checks to allow a track number of 0xAA(leadout).
o SS: Implemented kludgy(incomplete) support for quasi-illegal window X start position values; fixes ground layer issues in the forest stage of Panzer Dragoon 2.