#gamedev #port #msx #gomsx

librsmsx

a MSX emulator written in rust, a port from gomsx

52 releases (4 breaking)

new 0.5.2 Mar 21, 2025
0.5.1 Mar 10, 2025
0.4.6 Mar 10, 2025
0.4.2 Feb 27, 2025
0.1.0 Jan 24, 2025

#25 in Emulators

Download history 55/week @ 2025-01-19 505/week @ 2025-01-26 2254/week @ 2025-02-02 608/week @ 2025-02-09 740/week @ 2025-02-16 467/week @ 2025-02-23 428/week @ 2025-03-02 424/week @ 2025-03-09 121/week @ 2025-03-16

1,493 downloads per month

GPL-2.0-or-later

3.5MB
19K SLoC

Contains (Windows DLL, 2.5MB) SDL3.dll, (static library, 270KB) SDL3.lib

rsmsx

a MSX emulator written in rust, a port from gomsx(https://github.com/pnegre/gomsx). Tested for debian linux and windows.

Why?

There's no MSX emulator written in rust and I want to learn more about rust and emulation. It's for the educational purpose and did not targeted for 100% perfect emulator.

How to RUN it

Make sure you have the following libraries installed: - libsdl3 - libsdl3-image - libsdl3-ttf

Bundled with the emulator is the C-BIOS rom file. It provides a free implementation of the BIOS routines of the MSX. No BASIC.

If you want to run BASIC, you can find a MSX1.ROM system file elsewhere.

The file "softwaredb.xml" is useful in aiding the emulator to apply the correct memory mapper for the MSX cartridge games. It's not required, but usually you can't play games without it.

To run it:

$ cargo run --example rsmsx --cart game.rom

Compilation

So, you want to check the source, eh? First, you'll need a rust installation. I recommend rustup.

Next, get the source and the dependencies if necessary:

$ git clone https://github.com/ghtalpo/librsmsx
$ sudo apt install sdl3 libsdl3-dev

And, you just build the program:

$ cd yourworkspace/rsmsx
$ cargo run --example rsmsx --cart game.rom

Happy hacking!!!

Dependencies

~10MB
~136K SLoC