Skip to content

Latest commit

 

History

History

web

bun runtime lit element webassembly

This frontend is a web application that runs entirely on-browser, enabling it to be hosted as static files (no server code). It supports uploading games from a file, which persist locally as temporary storage (similar to cookies). You can play use it live here.

Build

Ensure Bun is installed, then run bun install to install dependencies. Afterwards, the application can be built with bun run build.

Note

The build scripts will automatically compile the core to Wasm. You can do this manually by running wasm-pack build.

Development

To run locally during development, install dependencies (see above) then start the development server with bun run dev.

Usage

Controls

Emulator controls should be fairly self-explanatory, with on-screen buttons corresponding to their emulator inputs. You can toggle power by clicking the "OFF • ON" label on the frame. Open the menu clicking the (ℹ︎) button.

Bindings

In addition to the on-screen buttons, these key bindings can be used as joypad inputs:

Keyboard Emulator
X A
Z B
Enter Start
Space Select
Arrows D-pad

There are also key bindings for the application:

Keyboard Action
? Toggle menu
F1 Show menu
Escape Hide menu
1-9 Open menu tab

Progress

  • Emulator
    • Joypad
      • Keyboard events
      • Mouse events
      • Touch events
    • Video
      • Custom palettes
  • Frontend
    • Documentation
      • About panel
      • Usage panel
    • Game library
      • Upload ROM files
      • Persistent storage
      • Save RAM snapshots
    • App settings
      • Play/pause emulator
      • Change clock speed

License

For information regarding licensure, please see the project's README.