emmd
github.com
What it is
emmd is a free Sega Genesis (Mega Drive) emulator written in Go and targeting Model 1 hardware. Its desktop library can scan ROMs and organize games with artwork and metadata. It includes save-state management, rewind, fast-forward, shader effects, RetroAchievements integration and configurable settings. The emulator supports Motorola 68000 and Zilog Z80 CPUs, VDP rendering, YM2612 FM synthesis and SN76489 PSG audio. It handles two-player three-button and six-button controllers, battery-backed SRAM, and save states checked with CRC32 checksums and ROM CRC matching. NTSC and PAL can be detected from a ROM header or selected manually. A LibRetro core is available for compatible frontends, and a documented macOS build creates an application bundle with an icon and code signing. The stated scope is officially licensed, released Genesis games; unlicensed or homebrew games, prototypes, beta ROMs and non-controller peripherals are unsupported. Platforms listed are Windows, macOS, Linux and iOS. Building requires Go 1.25 or later, and the repository identifies the license as GPL-3.0.
Spec sheet
- Purpose
- emmd is a Sega Genesis (Mega Drive) emulator written in Go and targeting Model 1 hardware.Read 3 Oct 2026 · github.com
- Product
- emmd is a Sega Genesis (Mega Drive) emulator written in Go and targeting Model 1 hardware.Read 2 Oct 2026 · github.com
- License
- The repository lists a GPL-3.0 license.Read 3 Oct 2026 · github.com
- Maker
- The GitHub account for the repository is named John Schember and lists Florida, USA.Read 2 Oct 2026 · github.com
- Build requirement
- Building the project requires Go 1.25 or later.Read 3 Oct 2026 · github.com
- Compatibility limit
- The emulator targets officially licensed, released Genesis games and lists unlicensed or homebrew games, prototypes, beta ROMs, and non-controller peripherals as unsupported.Read 2 Oct 2026 · github.com
- Compatibility limits
- The emulator targets officially licensed and released Genesis games and says it does not support unlicensed or homebrew games, prototype or beta ROMs, or non-controller peripherals.Read 3 Oct 2026 · github.com
- Controllers
- It supports two players using 3-button or 6-button controllers.Read 3 Oct 2026 · github.com
- Desktop features
- The desktop UI includes a game library with ROM scanning, artwork, metadata, save state management, rewind, fast-forward, shader effects, RetroAchievements integration, and configurable settings.Read 3 Oct 2026 · github.com
- Desktop library
- Its desktop UI provides a game library with ROM scanning, artwork, metadata, save-state management, rewind, fast-forward, shader effects, RetroAchievements integration, and configurable settings.Read 2 Oct 2026 · github.com
- Development requirement
- Building the project requires Go 1.25 or later.Read 2 Oct 2026 · github.com
- Emulated hardware
- The emulator supports Motorola 68000 and Zilog Z80 CPUs, VDP rendering, YM2612 FM synthesis, and SN76489 PSG audio.Read 3 Oct 2026 · github.com
- Emulation
- The emulator supports Motorola 68000 and Zilog Z80 CPUs, VDP rendering, YM2612 FM synthesis, and SN76489 PSG audio.Read 2 Oct 2026 · github.com
- Frontend integration
- The project provides a LibRetro core for use with LibRetro-compatible frontends.Read 3 Oct 2026 · github.com
- Integration
- A LibRetro core is provided for use with LibRetro-compatible frontends.Read 2 Oct 2026 · github.com
- macOS
- The project documents a build target that creates a macOS application bundle with an icon and code signing.Read 2 Oct 2026 · github.com
- Regions
- It supports NTSC and PAL and can detect the region from a ROM header.Read 3 Oct 2026 · github.com
- Save data
- It supports battery-backed SRAM and save states, which are checked with CRC32 checksums and ROM CRC matching.Read 3 Oct 2026 · github.com
Strong points and limits
Strong points
- Supports Windows, macOS, Linux and iOS.
- Includes rewind, fast-forward and shader effects.
- Supports two-player three-button and six-button controllers.
- A LibRetro core is provided.
- Free to use.
Limits
- Unlicensed and homebrew games are unsupported.
- Prototypes and beta ROMs are unsupported.
- Non-controller peripherals are unsupported.
- Building requires Go 1.25 or later.
Who it suits
It suits Genesis owners looking for an emulator with game-library tools, save states and shader effects. It is intended for officially licensed, released games and users able to build with Go 1.25 or later.
Verdict
emmd offers game-library features alongside Genesis hardware emulation and multiple region options. Check its compatibility limits before choosing it, especially if you use homebrew, prototype ROMs or non-controller peripherals.
Where Specifiction places it
- Sega Genesis Emulators#19 of 297.4