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_sdlfor 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 https://www.gnu.org/licenses/.