This prerelease adds built-in emulation via EmulatorJS to both the web client and desktop clients. This also adds initial cloud saves and cloud save states support for these emulators only.
Installation
Installation is the same for this beta as it is for normal Retrom releases. Make sure both the Retrom server (if using one) and client are both on the same beta release!. The service is tagged ghcr.io/jmberesford/retrom-service:v0.7.18-emulatorjs-beta.1, so update your docker configurations accordingly.
Refer to #276 for exact details on currently implemented features for this prerelease, as well as planned features not yet present.
How to use EmulatorJS in Retrom
The emulator configuration menu will now contain many "built-in" emulators. Configure the respective emulator to support the correct platform, and you should then be able to launch games for that platform!
Default Controls
While controls for the various emulators are 100% configurable via their in-game menus, the controls to navigate Retrom are currently hard-coded. This will be changed soon, allowing for configuration of Retrom's controls as well. Gamepads should have sane defaults, but please open an issue for any gamepads that have wonky default bindings.
Keyboard default keybinds:
Note that these are the same as for "fullscreen mode".
ACCEPT: "f",
BACK: "b",
MENU: "m",
OPTION: "t",
UP: "k",
LEFT: "h",
DOWN: "j",
RIGHT: "l",
PAGE_LEFT: "q", // think left bumper
PAGE_RIGHT: "e", // think right bumper