Advertisement

Play Retro Games Free in Your Browser — Legally

Every title in our catalog is homebrew or public-domain — created by independent developers who chose to share their work freely. No grey-area copyright risks, no dodgy download sites.

Pick a System ↓
Legal Disclaimer

This site provides an emulation environment and a curated catalog of homebrew, public-domain, and author-approved freeware titles. Emulators themselves are legal software. All titles listed in our catalog are released by their creators under permissive licenses; download links point to official sources. We do not host, distribute, or endorse downloading copyrighted commercial game ROMs. The "Load Your ROM" feature is provided for owners of original game media who may use personal backups in jurisdictions where that is lawful. Consult applicable law in your country before loading any ROM you do not own the original media for. This site is not affiliated with Nintendo, Sega, Atari, Commodore, or any other original hardware manufacturer.

Choose Your System

Featured Titles

Why Homebrew Only?

Almost every retro gaming site online operates in a legal grey area — linking to ROM dumps of games whose copyright belongs to Nintendo, Sega, Atari, or Commodore. We think that is unnecessary. There is a thriving world of homebrew retro development: talented programmers creating original games for the NES, SNES, Game Boy, Sega Genesis, Atari 2600, and Commodore 64, and releasing them for free.

Every title you see here was written by an independent developer who holds the copyright and chose to give the game away. Some are NESdev competition entries that became beloved parts of the homebrew canon. Others are passion projects that took years to complete.

The emulation layer comes from EmulatorJS, an open-source project that wraps RetroArch WebAssembly cores for browser use. Emulation itself has been confirmed as lawful in US courts (Sony v. Connectix, 9th Circuit 2000). We use open-source RetroArch cores — fceumm for NES, snes9x for SNES, genesis_plus_gx for Sega, gambatte for Game Boy, stella2014 for Atari 2600, and vice_x64sc for Commodore 64.

Advertisement

Play on Real Hardware

Get New Homebrew Drops

We scout CSDb, itch.io, and PDRoms weekly. New legal titles land in your inbox first.

About This Browser Arcade

Browser-based retro gaming has exploded in recent years, yet almost every emulator hub online operates in a legal grey area — linking to or hosting ROM dumps of games whose copyright belongs to Nintendo, Sega, Atari, or Commodore. We think that is unnecessary. There is a thriving world of homebrew retro development: talented programmers and artists creating original games for the NES, SNES, Game Boy, Sega Genesis, Atari 2600, and the legendary Commodore 64 — and releasing them for free.

This arcade is built on that catalog. Every title you see here was written by an independent developer who holds the copyright and chose to give the game away. Some are NESdev competition entries that went on to become beloved parts of the homebrew canon. Others are passion projects that took years to complete. A few are demos of commercially released homebrew cartridges, shared as a goodwill gesture to the community.

The emulation layer comes from EmulatorJS, an open-source project that wraps RetroArch's WebAssembly cores for browser use. EmulatorJS is legal software — emulation itself has been repeatedly confirmed as lawful in US courts. The cores used here — fceumm for NES, snes9x for SNES, genesis_plus_gx for Sega, gambatte for Game Boy, stella2014 for Atari 2600, and vice_x64sc for Commodore 64 — are all open-source RetroArch cores compiled to run in your browser without any installation.

For Commodore 64 fans, the VICE x64sc core delivers cycle-accurate 6510 CPU emulation, SID chip sound, and support for disk images (.d64) and tape images (.t64). The C64 section includes genuine homebrews from CSDb, the Commodore 64 scene database that has archived free productions since 2001. Sam's Journey alone is worth experiencing — a professionally produced platformer that would have been a commercial hit in 1988.

We also offer a "Load Your Own ROM" feature for collectors who own original game cartridges. Your file is processed entirely in your browser — it never touches our servers. Save states are stored in your browser's IndexedDB storage and persist across sessions, though they will not transfer to another device.

Gamepad support uses the Web Gamepad API — plug in any USB or Bluetooth controller and the browser maps it automatically. On mobile, EmulatorJS's built-in virtual d-pad appears automatically for touch play. A minimum 5-inch screen is recommended for comfortable handheld play. iOS Safari 15.4+ and Android Chrome are supported.

Whether you are a childhood C64 devotee, an NES collector who wants to play on the go, or a developer curious about classic hardware constraints, you are welcome here. All we ask is that you respect the spirit of the homebrew scene: these games are gifts, made with love for the community.

Frequently Asked Questions

Yes. This site hosts only homebrew games (original creations released by their authors) and public-domain software. Emulators themselves are legal — US courts confirmed this in Sony v. Connectix (2000) and Sony v. Bleem (2000). The games in our catalog were released by their copyright holders under freeware, Creative Commons, MIT, or public-domain terms. We do not host commercial game ROMs.
Yes. The "Load Your Own ROM" feature on the player page lets you upload a file from your device. Your file is handled entirely in your browser — it is never uploaded to our servers. Whether using a backup of software you own is lawful depends on your country's copyright laws. Our site provides the emulator; what you load into it is your responsibility.
Yes. EmulatorJS stores save states in your browser's IndexedDB database. They persist across visits as long as you use the same browser and have not cleared site data. You can have up to 9 save slots per game (F2 = save, F3 = cycle slot, F4 = load). Save states are device-specific and cannot be transferred between browsers or devices.
NES (.nes), SNES (.sfc / .smc), Sega Genesis (.md / .bin / .smd), Game Boy / GBC (.gb / .gbc), Atari 2600 (.a26 / .bin), Commodore 64 (.d64 / .t64 / .prg / .crt — best zipped as .zip), and Arcade/MAME 2003 (.zip ROM set, user-supplied). All files can be zipped (.zip) and EmulatorJS will decompress them automatically.
Nothing. The emulator runs in any modern browser (Chrome 79+, Firefox 72+, Edge 79+) via WebAssembly. On first play, the emulator core downloads from the EmulatorJS CDN (~1–5 MB depending on system) and is cached in your browser. Subsequent loads are instant. MAME cores are larger (~4.8 MB) and may take 5–10 seconds on first load.
Yes, with limitations. A virtual D-pad and buttons appear automatically on touchscreens via EmulatorJS. A minimum 5-inch screen is recommended for comfortable play. iOS Safari 15.4+ and Android Chrome work well. MAME arcade games may run slowly on older phones due to the larger emulator core.
The MAME-approved ROMs on mamedev.org are licensed for non-commercial use and distribution from mamedev.org only. Because this site carries advertising, hosting those files here would violate that license. Instead we provide the MAME 2003 emulator ready to go — you download the ROM ZIP from mamedev.org and upload it directly. Your file stays in your browser session.