Euphrates: Master System / Game Gear / SG-1000 Emulator in Rust


Euphrates: Master System / Game Gear / SG-1000 Emulator in Rust

Euphrates: A Game Console Emulator

Euphrates is an emulator for the Sega Master System, Sega Game Gear, and Sega SG-1000 Game consoles.

This repository consists of these crates:

  • euphrates , the main emulation library;

  • euphrates_sdl , providing audio and video types for use with Euphrates;

  • euphrates_x64 , a small library that can make Euphrates a bit more performant on x86-64 systems with BMI2 instructions;

  • euphrates_virtual_memory , a library implementing memory banking via native virtual memory;

  • euphrates_cli , an application to run Euphrates from the command line using euphrates_sdl for audio and video.

If you just want to play some games, see the euphrates_cli crate. All officially released games that I’ve tested work. However, note that an excellent end user experience for playing games is not currently a high priority for Euphrates (for instance, you’ll have to play with your keyboard rather than a gamepad, and you’ll have to specify command line options for which memory map you want to use). Instead, Euphrates is intended to (eventually) be a platform for exploring artificial intelligence techniques.

See the README in the euphrates crate for more on Euphrates and its goals.


Euphrates is Copyright 2018, Michael Benfield.

Euphrates 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.

Euphrates 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 Euphrates (see the file LICENSE). If not, see .

原文 : Github