Skip to content
WebMSX

WebMSX

MSX JAPANESE COMPUTERS EMULATOR

WebMSX

WebMSX (WMSX) is an open-source, HTML5/JavaScript MSX emulator that runs MSX, MSX2, MSX2+, and MSX turbo R machines in a web browser. It is usable online at the project's hosted site and can be downloaded and self-hosted from the official GitHub repository.

msx japanese computersPRIMARY SYSTEM
2011PROJECT BEGAN
Open sourcePROJECT MODEL

WHY IT MATTERS

Why use WebMSX?

Runs natively in modern browsers with no native install; supports a wide collection of MSX machine models and VDP/sound extensions, drag & drop media loading, savestates, NetPlay, mobile-friendly touch controls, and a JavaScript API for embedding and automation.

BEST FOR

Best for

Quickly playing and sharing MSX software in a browser, embedding MSX content in web pages, testing MSX software across machine models, and lightweight self-hosted deployments where a browser-based emulator is desired.

The people behind WebMSX

History & status

WebMSX is authored and maintained in the ppeccin GitHub repository. The project traces back to early commits in 2011 and has an active release history (major 6.x releases in the 2020s). It is under active development and receives releases and fixes via GitHub releases and the repository. The canonical hosted instance is webmsx.org; the source and release bundles are available from the GitHub repository.

What WebMSX supports

  • Runs in modern web browsers (Chrome, Firefox, Safari) on desktop and mobile
  • Self-hostable on any static web hosting or simple HTTP server
  • Can be embedded in webpages via the provided JavaScript API
  • Loads ROM (.rom), disk (.dsk/.dmk), tape (.cas/.wav), Nextor hard-disk images, ZIP/GZIP-compressed images
  • NetPlay (P2P) for multi-user shared sessions

Download and availability

OFFICIAL DOWNLOADS

Get WebMSX

Official release bundles and tags are published on the project's GitHub releases page. The project can also be used instantly from the hosted instance at webmsx.org without downloading.

Get WebMSX ↗

DOCUMENTATION

Official documentation

Read the official configuration, compatibility, and troubleshooting material before changing advanced options.

Read official documentation ↗
Broken or missing download? Emulator projects move and official links sometimes change. Please contact Retro Replay so the source can be verified and updated.

WebMSX setup guide

Setup note: Practical setup notes — WebMSX is designed to run in a browser. Below are specific steps for using the hosted instance, downloading for offline/self-hosting, and embedding in a website. Follow each step exactly and note that commercial game ROMs, BIOS files, or other copyrighted firmware are not included and must be supplied by you where required.

  1. Use the hosted emulator (fastest): Open https://webmsx.org in a modern browser (Chrome/Firefox/Safari). Use the UI to pick a machine or use URL query parameters to load media directly (for example: ?ROM=https://example.com/game.rom). The hosted instance provides the C-BIOS light set linked from the project site; do not expect commercial BIOS or commercial game ROMs to be bundled.
  2. Download official releases: Go to the project's GitHub Releases page and download the desired release ZIP (release bundles are provided per tag). The releases include a release/stable folder with the distribution files suitable for hosting. Confirm the exact asset names in the release you download.
  3. Self-hosting essentials: After extracting the release bundle, put the contents under any static HTTP(S) server root (Nginx, Apache, GitHub Pages, Netlify, S3 + CloudFront, etc.). No server-side code is required for basic use. Ensure the server serves correct MIME types for the JavaScript and asset files. If you intend to host NetPlay sessions or offer file hosting for remote ROMs, review the release notes and repository docs for any optional server components or recommended settings; NetPlay uses WebRTC and may require HTTPS for browser WebRTC features.
  4. Build from source (optional): If you need to modify or rebuild the project, clone the GitHub repository. The repo contains package.json and a build process (grunt is present in repository files); you will need a Node.js toolchain (node and npm) and the development dependencies specified in package.json. Follow the repository's README and doc folder for exact build commands and release packaging steps.
  5. Loading media and using URL parameters: WebMSX can load cartridges, disk/tape images, savestates, and configuration via URL query parameters or the global WMSX JavaScript object. Typical parameters include ROM, DISKA_URL, HARDDISK_URL, TAPE_URL, STATE_URL, PRESETS and MACHINE. Use the documented parameter names and file URLs; the emulator can auto-create disk images and accept ZIP/GZIP archives containing images.
  6. Machine selection, extensions and BIOS: WebMSX provides many generic machine presets (MSX1, MSX2, MSX2+, MSX turbo R) and localized variants (NTSC/PAL, Japanese/European/American turbo R). Optional extensions like SCC, OPL4, MegaRAM, and Nextor hard-disk support are selectable from the UI or by preset. The project provides a light C-BIOS package for basic MSX booting; if your use requires specific commercial BIOS/firmware, you must obtain and supply those files yourself — they are not included.
  7. Mobile and PWA use: The hosted site is designed as a Progressive Web App (PWA). On iOS and Android you can add it to the Home Screen and run it offline to the extent browser caching supports the release files. Expect limitations on some features (NetPlay uses WebRTC and may be restricted on some iOS versions).
  8. NetPlay caution and performance: NetPlay is a peer-to-peer feature that uses WebRTC; performance depends on network latency and browser WebRTC support. For best results use desktop browsers with up-to-date WebRTC support and HTTPS. R800/ turbo R emulation and V9990/advanced sound/video support are more CPU-intensive — reduce turbo settings or select simpler machine models on low-power devices.

Software reminder: WebMSX is distributed as JavaScript/HTML; browser compatibility is important. Building from source requires Node/npm and the repository's build tooling; self-hosting requires a static HTTP(S) server. The project does not include commercial games or firmware.

Sources and further reading

Detailed guides and tutorials

Explore step-by-step guides for WebMSX as they are published.