Saltar al contenido
PORTSNATIVE.
InicioCatálogo
Juegos WebEmuladoresHerramientasNovedades
PORTSNATIVE.

Un catálogo para descubrir ports y proyectos relacionados. Enlazamos a las fuentes oficiales y no alojamos archivos de los juegos originales.

ExplorarCatálogoMi lista
InformaciónNosotrosProponer un portSoporteApoyo y donacionesAviso legal
© 2026 PortsNative
Volver al catálogo
Mesen2
PORTSNATIVE

Mesen2

EMULADORACCIÓN / AVENTURAWINDOWSLINUXMACOSESTABLE

Mesen2

Emulador de Multi-system · Nintendo/retro

OrigenMulti-system · Nintendo/retro

TecnologíaEmulador Nativo Multiplataforma (JIT / Dinámico)

Disponible paraWindows, Linux, macOS

Ver proyecto oficial

Sobre el proyecto

Emulador multi-sistema para Windows, Linux y macOS con núcleos para NES, SNES, Game Boy/Color, GBA, PC Engine, Genesis, WonderSwan y soporte adicional mediante cores.

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗

Mesen

Mesen is a multi-system emulator for Windows, Linux and macOS.

✨ Highlights

🎮 Multi-System Support

SystemCore Type
NES/FamicomNative
SNES/Super FamicomNative
Game Boy / ColorNative
Game Boy AdvanceNative
PC Engine/TurboGrafx-16Native
Sega Master System / Game GearNative
Sega Mega Drive / GenesisNative
WonderSwanNative
Nintendo DSLibretro Core

🦅 Native Sega Mega Drive / Genesis Core

A from-scratch native Mesen2 core with mono thread for the Sega Mega Drive / Genesis — written in the same style as the existing NES/SMS/PCE cores, sharing Mesen2's infrastructure for save states, rewind, debugger, cheats, movies and the video recorder. The algorithmic reference is the ares MD core, but the implementation stands alone (no nall/libco/sljit dependency) — every subsystem is a Mesen2-native ISerializable class.

Subsystems (Core/Genesis/, ~14.5k LOC)

ModuleRole
GenesisConsoleIConsole implementation; owns all subsystems, drives RunFrame, region detection, cart load
GenesisM68KMotorola 68000 interpreter (full EA + instruction table, interrupts, disassembler)
GenesisZ80Z80 APU interpreter (the SMS-style CPU reused for Mega Drive audio)
GenesisVdpYamaha YM7101 VDP — H32/H40, V28/V30, interlace, sprite DMA, planes A/B + window, shadow/highlight
GenesisYm2612Yamaha YM2612 / OPN2 6-channel FM synth with SSG-EG and DAC
GenesisPsgSN76489 PSG (3 tone + 1 noise channel)
GenesisMemoryManagerM68K + Z80 buses, I/O space, VDP/PSG/YM2612 routing, Z80 bus arbitration
GenesisEepromM24C I2C EEPROM (X24C01 → M24C512) for battery saves on Acclaim-mapper carts
GenesisControlManager + Input/3-button & 6-button pads, TH/TL select protocol, U+D / L+R conflict resolution
Debugger/M68K assembler, disassembler, trace logger, event viewer, VDP tools

Cartridge & Save Support

  • SMD format auto-detection and 16 KB block deinterleaving (512-byte header)
  • Parallel SRAM with odd-byte (/LDS-selected) and word-wide modes, range validation against the header's RA field
  • M24C I2C EEPROM state machine ported from ares/component/eeprom/m24c/, with bit-bang wiring for Acclaim-mapper carts
  • SSF2 bank switching for >4 MB ROMs (e.g. Super Street Fighter II) — 8 × 512 KB swappable banks
  • Region auto-detection from the ROM header string at $1F0 (J/U/E), with NtscJapan for J and JE (Japanese-origin titles that lock out export hardware), and filename-tag fallback for headerless pirate/hack ROMs
  • Battery save/load via Mesen2's BatteryManager, with change detection so saves are only written when SRAM/EEPROM actually changed

Region & Timing

  • ConsoleRegion::Ntsc, Pal, and NtscJapan are all distinguished — the version register at $A10001 reports the correct PAL flag (bit 6) and domestic/export flag (bit 7), so region-locked titles boot on the right "hardware"
  • 262 scanlines / ~59.92 fps (NTSC) or 313 scanlines / ~49.70 fps (PAL); PAL-strict demos (e.g. Titan Overdrive 2) and Japan-only region-locked titles (e.g. Bare Knuckle 2) run correctly

Integration with Mesen2

Every Genesis subsystem inherits ISerializable and uses the SV() serializer macro, so out of the box you get:

  • 💾 Save states & rewind
  • 🎬 Movie recording / playback
  • 🕹️ Debugger (M68K + Z80 disassembly, register viewer, event viewer, VRAM/CRAM/VSRAM memory viewers)
  • 🎨 Cheat codes
  • 🎥 Built-in video recorder (UTVideo / FFVHUFF / H.264 / VP8)

Genesis Gallery

Genesis / Mega Drive game gallery — 3×3 grid

<details> <summary><b>Individual captures</b></summary>
Bare Knuckle 2 (CN)Comix Zone (J)Gunstar Heroes (J)
Bare Knuckle 2 (CN)Comix Zone (J)Gunstar Heroes (J)
Contra: Hard Corps (J)The Super Shinobi II (J)Batman & Robin (US)
Contra: Hard Corps (J)The Super Shinobi II (J)Batman & Robin (US)
Rock n' Roll Racing (E)Beyond Zero Tolerance (US)Astebros (Aftermarket)
Rock n' Roll Racing (E)Beyond Zero Tolerance (US)Astebros (Aftermarket)
</details>

🖥️ Cross-Platform Audio/Video with SDL

Mesen uses SDL2 for cross-platform audio and video output, ensuring consistent performance and compatibility across Windows, Linux, and macOS.

🎬 Modern Video Recording

Built-in video recorder with multiple codec support:

CodecTypeQualityUse Case
UTVideoLosslessPerfectHigh-quality archival
FFVHUFFLosslessPerfectWide compatibility
H.264LossyExcellentSmall file size
VP8LossyGoodWeb-friendly output

🎨 Modern Shader Support (Coming Soon)

Integration with librashader for advanced CRT, LCD, and custom shader presets - bringing retro gaming visuals to life with authentic display effects.


Releases

The latest stable version is available from the releases on GitHub.

Development Builds

Mesen

<ins>Native builds</ins> (recommended)

These builds don't require .NET to be installed.

  • Windows 10 / 11
  • Linux x64 (requires SDL2)
  • macOS - Intel (requires SDL2)
  • macOS - Apple Silicon (requires SDL2)

<ins>.NET builds</ins>

These builds require .NET 8 to be installed (except the Windows 7 build which requires .NET 6).
For Linux and macOS, SDL2 must also be installed.

  • Windows 7 / 8 (.NET 6)
  • Linux x64 - AppImage
  • Linux ARM64
  • Linux ARM64 - AppImage

<ins>Notes</ins>

Other builds are also available in the Actions tab.

SteamOS: See SteamOS.md

Compiling

See COMPILING.md

License

Mesen is available under the GPL V3 license. Full text here: http://www.gnu.org/licenses/gpl-3.0.en.html

Copyright (C) 2014-2025 Sour

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Ver proyecto oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
EMULADOR
Género
Acción / Aventura
Estado
Estable
Plataforma de origen
Multi-system · Nintendo/retro
Tecnología
Emulador Nativo Multiplataforma (JIT / Dinámico)
Versión
—
Actualización
4 oct 2026

Plataformas de destino 3

Windows
Linux
macOS
Descargas / Web Oficial
Publicidad