This project aims at adding multiple playable retro consoles to Minecraft. What consoles are supported is listed below.
It's as simple as downloading the jar. All necessary libraries are downloaded on-the-fly. ROMs have to be supplied by the user.
The emulators all run fully on the server and sync display and audio data to clients. This allows for watching other players play.
My previous attempt at this used coffee gb, a Java Game Boy emulator, which was kinda inefficient. Now I am using a custom core using JNI and do all emulation through an executable instancing libretro cores. This allows me to implement a wide variety of retro consoles.
Console | Core | Features |
---|---|---|
Game Boy | Gearboy | Video, Audio |
Game Boy Color | Gearboy | Video, Audio |
Game Boy Advance | Beetle GBA | Video, Audio |
SEGA Game Gear | Genesis-Plus-GX | Video, Audio |
Console | Core | Ports (Players) | Features |
---|---|---|---|
NES | FCEUmm | 2 | Video, Audio |
I strongly discourage contributing currently, as the project is still in its earliest stage and the codebase might change by a lot.
Initially, please clone this repo and all it's submodules and create the run/retroGamingRequired folder. To now use this project, you first have to use your C++ IDE of choice to open the src/core folder containing the cpp code. If you don't want to edit any native code, you can also just build using cmake. Afterward you can use your Java IDE of choice to open the gradle project. Now you should be all set.