LIMESTONE

An MSX emulator for the MSX1, MSX2 and MSX2+. The Z80 is paired with the TMS9918A on the MSX1, the V9938 on the MSX2 and the V9958 on the MSX2+, with every display mode, both sprite modes, the command engine and 128 KB of video RAM. The V9958 adds hardware horizontal scrolling and the YJK screen modes, which show far more colours than the palette holds.

The beeper, the AY-3-8910 and the Konami SCC are synthesised band-limited into one mix. The MSX2 and MSX2+ add MSX-MUSIC, a YM2413 checked sample by sample against a reference implementation across every instrument, envelope rate and waveform, and all five percussion voices. Each source has its own volume control.

Cartridge types are identified by checksum using a built-in database, guessed from the ROM when a game isn't listed, or set by hand: Normal, 32 Kb, 48 Kb, Konami, Konami SCC, ASCII 8K and ASCII 16K. C-BIOS is built in, so you don't need a system ROM, and the MSX2's clock and CMOS settings are kept between sessions. There is also keyboard and joystick input, save states, and battery-backed cartridge saves.

Available on Windows, Linux, macOS, Android, iOS, and WebAssembly. Limestone is written in plain, portable C11 with no unusual dependencies, so porting it to game consoles is straightforward. Contact us if you are interested.

Retro City Skyline

Limestone in Action

Unmodified commercial games running on Limestone.

Knightmare running on Limestone
Knightmare © 1986 Konami
Metal Gear running on Limestone
Metal Gear © 1987 Konami
The Treasure of Usas running on Limestone
The Treasure of Usas © 1987 Konami
Zanac running on Limestone
Zanac © 1986 Compile / Pony Canyon

Limestone Options

Third-Party Software