Above screenshot is of GBA.js

A Big List of Browser-Based Emulators and Ports of Classic Games

via - 11th May, 2013

You say you like old games, but you can’t be bothered—or aren’t currently in a position to—hook up an old system or open your favorite emulation app? The Internet’s got you covered, with emulators for most consoles and early computers playable right in your browser.

But finding them can be a chore, so I’ve put together this list to help you out. These are all the functional browser-based emulators I could find. I’ve put a brief note about its features and quality, together with whether it’s coded in HTML5/JavaScript, Flash, Java, or some special plugin.

Many—though not all—of these include commercial ROMs, making them technically illegal, but we’ll let you be the judge of whether using them is okay.

Sorted by system, with "others" saved for the end:

Acorn Electron

ElkJS - JavaScript - The newest emulator on the list, ElkJS is relatively easy to use thanks to a slick design and solid emulation. It includes a speed setting (turbo or normal), seven built-in games, external (from your hard drive) UEF file support, sound, and a nice bit of documentation explaining the Acorn Electron and the emulator. There are also links to other Electron emulators, including Elkulator (which ElkJS was ported from), and to more information about the computer.

Amiga

Scripted Amiga Emulator - JavaScript/HTML5 - SAE comes with just 11 pre-installed games and a couple of dozen demos, but it can load up disks and Amiga-formatted virtual drives from your computer. It’s based on WinUAE, so there’s lots of customization for chipset, CPU, RAM, ROM, and ports. You can also double scale the display, to fill up more of the screen on large monitors.

Amstrad CPC

CPCBox - JavaScript - I can’t tell you much about CPCBox’s accuracy, but it ran reliably at 50 frames per second in my testing. The game selection is small, but includes most of the big names—1943, Donkey Kong, Boulder Dash, Commando, Ghosts ’n Goblins, Ikari Warriors, Rick Dangerous, and more. It will suck up your time.

Roland - JavaScript - Roland has a huge library of disks and tapes available, although I couldn’t figure out how to get double-sided disks to work. There’s full-screen and save support as well as sound and a few other cool things emulators tend to offer.

Apple II

Virtual Apple ][ - Requires ActiveGS plugin - The Virtual Apple ][ online disk archive doesn’t just provide downloads and basic information for hundreds of Apple ][ and IIgs games; it also lets you play them via a fairly robust browser emulator extension.

Apple ][+ - JavaScript/WebGL - David Caldwell’s Apple II+ emulator doesn’t have as many games, and it’s surrounding user interface is rather simpler, but it offers a neat screen curvature effect and a mock Apple II+ display. There are a few debugger-type options, and you select a game or program from a select menu. You’ll struggle to get anywhere without basic knowledge of Apple DOS commands.

Apple ][js/Apple //jse - JavaScript/HTML5 - My pick of the three is Will Scullin’s effort, with a pair of JavaScript emulators that have a responsive interface, a virtual keyboard, and great organization of disks (it’s not just for games). Some games chug a bit, unfortunately, but when it works it’s fantastic.

Arcade

Atari Arcade - JavaScript (with Flash pre-roll ads) - Revisit eight of the best Atari arcade games, with fancy new visuals and sound. I’d honestly prefer straight ports of the originals, with everything the same, but you can’t blame them for trying to up-sell your memories.

Phoenix - HTML5/JavaScript with Google Web Toolkit - Originally housed in an arcade cabinet in the early 1980s, Phoenix will now happily live in a browser tab. It’s an early top-down space shoot ‘em up with bright, colorful visuals and great sound effects, notable for being the first shmup to include bosses and for being released just months after Galaxian introduced full RGB color to video games.

World’s Biggest Pac-Man - JavaScript - The name is self-explanatory; it’s Pac-Man, only with tens of thousands of player-created mazes. You’ll find the original levels in there somewhere.

Atari 2600

Virtual Atari - Java - If you have Java enabled in your browser, this one will provide a decent experience in any of 550 Atari 2600 VCS games.

jsAtari - JavaScript (and Flash) - Having a Flash button to load ROMs in your JavaScript emulator kinda defeats the purpose, don’t you think? Once you get past the irony of jsAtari’s use of Flash, it’s…not very good. The frame rate is sluggish, the visuals are blurry, and I wasn’t getting any sound.

2600online.com - Java - It ain’t the prettiest site around, but it does the job and has a fairly big selection of titles. You’re probably better off with Virtual Atari.

Atari ST

EtsyJS - JavaScript - Not much works yet in this JavaScript Atari ST emulator, but you can enjoy a game of Speedball nonetheless. Hopefully soon there'll be support for floppy disk images and sound.

BBC Micro

The online BBC Micro Emulator - Java - There’s an impressive collection of games on offer here, but I couldn’t get it to work. My iMac freaked out on the BBC Micro command line every time.

Commodore 64

FC64 - Flash - The default size is a tad small for my comfort, but there’s not much else to fault with FC64. Granted, the selection is small (eight games, two of which are effectively the same), and you can’t customize the controls, but it runs well.

jsc64 - JavaScript - A port for FC64, jsc64 is inferior in every way to the original except that it doesn’t require Flash (which is a pretty big factor, in my book). You get six games to choose from: Galaga, Galaga Color, Hellgate, Matrix, Rally Speedway II, and Void Runner.

Survivor - HTML5/CSS/JavaScript - Taking the path less travelled, Survivor adapts the 1983 Commodore 64 game of the same name to your web browser. It’s pretty neat. If you’re lost, click the question mark near the bottom right of the window—it’ll tell you how to play and what you’re controlling.

Game Boy/Game Boy Color/ Game Boy Advance

JSGB - JavaScript - Expect the frame rate to get choppy at times in JSGB, a simple but competent JavaScript Game Boy emulator and debugger that’s yet to support sound. You can play any of fourteen games, including Mario Land, Tetris, Bomberman, and Kirby’s Dream Land.

Game Play - iPhone 5 (JavaScript) - Based on JSGB, Game Play lets you take the emulated Game Boy experience with you anywhere you go, thanks to Mobile Safari’s JavaScript and offline caching capabilities. We got the lowdown on Game Play back in February.

Virtual Gameboy - Java - From the team that brought you Virtual Apple ][ and Virtual Atari, Virtual Game Boy shines for the fact that it offers 630+ Game Boy and Game Boy Color titles at good frame rates and with sound…if your setup plays nice with it.

GameBoy Online - JavaScript/HTML5 - My favorite of the Game Boy options, GameBoy Online runs like butter in Chrome (and like porridge in Firefox). You get full sound support, a resizeable canvas window, Game Boy Color support, freeze states, speed control, and a bunch of settings to tweak.

GBA.js - JavaScript - GBA.js puts a Game Boy Advance in your browser. There are no included ROMs, but you can upload any of your own to play. It supports both uploading and downloading save games, and there’s a filter for smoothed or blocky graphics, while sound works only in Chrome. It looks very slick, but doesn’t quite manage full-speed emulation.

Game Gear and Master System

jsSMS - JavaScript - Only the homebrew Master System games and technical ROMs seem to be working here. There is full-screen support, though, so you can at least enjoy those in style.

Miracle - JavaScript - Miracle only includes two ROMs, Sonic and Teddy Boy, but it smoothly emulates the Sega Master System (minus sound) and allows you to load ROMs from your computer. It also features a built-in debugger, but there’s no saving so far as I can see.

Virtual Sega Master System - Java - It’s unfortunate that this one requires Java, which is disabled by default on many browsers and computers for security reasons, because it supports a whopping 350+ Master System and Game Gear games. Sound jitters in my testing, and sometimes the controls get stuck.

http://mastersystem8.com/ - Java - Like Virtual SMS, this one runs games via the JavaGear emulator. It includes 100 popular titles.

Genesis/Mega Drive

SSega - Java - I could only find one working browser-based emulator for Sega’s famed 16-bit console, and I couldn’t get the controls to work. SSega has a large offering of ROMs, most of which are commercial, and the emulation seems pretty sound—aside from my control issues and a few layering bugs.

MSX

jsMSX - JavaScript - I couldn’t get this to work. If you’re willing to be more patient and figure it out, jsMSX supposedly runs anything developed for MSX 1.0.

NES

NES Play - Java - NES fans are spoiled for choice when it comes to browser-based emulators. As with all the other Java emulators, NES Play runs smoothly but is unplayable on my machine. Your mileage may vary, but I don’t really see any reason to choose it over…

NESbox - Flash - With 1810 games, NESbox includes not just commercial ROMs from different regions but also hacks and fan translations. You can even play two players with a friend over the Internet, and load up your own ROMs if you have something they don’t or if you specifically want to play your own dumps.

Nezulator - JavaScript - Speaking of playing your own collection in your browser, Nezulator will handle whatever you throw at it—with a simple drag-and-drop interface and Game Genie support.

8-Bit Hits - Google Native Client - 8-Bit Hits will be a great choice once it adds sound support, offering a drag-and-drop importer, ROM organization, and offline play.

VirtualNES - Java - Probably the best known of the browser-based NES emulators, VirtualNES hosts lots of commercial games along with homebrew, pirate clones, and translated and unreleased titles. Look out for its Chrome Native Client port in the coming months, as site maintainer Emulation Collective moves away from Java.

JSNES - JavaScript - Don’t be fooled into thinking this is a Super Nintendo emulator; despite the ambiguous name, JSNES supports 17 well-known NES games—running at a fairly stable frame rate, even with sound enabled and zoom on.

NESbar - Java - As if there weren’t enough options, you can also dig into more than 500 NES titles on NESbar. I guess the good thing about all these choices is that if one falls you can just slide across to the next.

NESCafe - Java - And there’s yet another one. NES Cafe at least runs on its own emulator, rather than vNES. You’ll have to experiment to see which of these your favorite games run best on.

Nintendo 64

n64js - JavaScript - Performance is woeful, even on Chrome, but the mere fact that this exists is cause for celebration. The way things are going, we can expect a completed N64 JavaScript emulator to run full-speed with sound and graphics filters in just a few years.

PC/DOS

NaClBox - Chrome Native Client - My favorite emulator on this list includes multiplayer Descent support, along with a bunch of other commercial DOS games. Performance in my testing was near flawless. There are three paid plans for those of you wanting to play your own DOS games, with tiered storage levels.

RGB Classic Games - Java - With an impressive 528 games, it’ll keep you busy for a while, but I was saddened to see that some games—such as my beloved Lemmings—didn’t seem to support sound. You should support the project however you can, though, because its mission statement is focused on preservation and accountability. Nothing hosted there is illegal—anything not officially released under a public domain or freeware license is a shareware or demo version.

JPC - Java - The Pure Java x86 PC Emulator has an applet version with four games—Doom, The Secret of Monkey Island, Commander Keen, and Mario Bros. Maybe there’s a problem with Java in my browser at the moment, but I couldn’t get the games past their respective title screens.

SEGA SC-3000

SC-3000 Survivors - Java - Controls weren’t working for me, but it was interesting to watch the games run in demo mode. Includes 16 titles, some better known than others. (The SC-3000 was SEGA’s 8-bit computer—with hardware largely identical to the SG-1000 console.)

Super Nintendo (SNES)

snes4nacl - Google Native Client - The performance seems pretty rock solid—frame rate never dropped below 59-60 for me on NTSC ROMs (and 49-50 on PAL), even on demanding games like Star Fox. I didn’t test enough to see what the accuracy is like, but that’s unlikely to be important to most people. You need to supply your own ROMs, and you can’t customize the controls unless you modify the code.

SNESbar - Java - Yet another one running Java. I actually like Java as a programming language, but as a web app platform I wish it would go away. There’s a good selection of ROMs here, however.

XNes - JavaScript - Don’t ask me why it’s called XNes when it emulates the SNES. I don’t get it either.

VirtualSuperNES - Java - The Emulation Collective, which runs this site, is hoping to roll out a Native Client (NaCl) version. For now, though, you’ll have to settle for the Java version, which is okay. One highlight is a special unreleased games section separate from the main collection.

Snessy - Java - I’m not sure if Snessy’s working, since I could never get beyond the Java loading graphic. Included it for posterity.

SNESBox - Flash - If you can’t run Chrome, or aren’t able to enable NaCl, SNESBox should be your Super Nintendo browser emulator of choice. It boasts 1,861 games, although most of these are alternate versions or hacks of the same title—Super Mario World, for instance, has somewhere in the vicinity of 100+ ROMs attached to it. you can also access walkthroughs, load your own ROMs, and enjoy private multiplayer sessions over the Internet.

TRS-80

TRS-80 Model III Emulator - JavaScript/HTML5 - It’s simple, but it works. This TRS-80 emulator lets you relive the wonderful video test pattern, unlicensed ports of classic arcade games, and a couple of mostly-original TRS-80 titles.

Vectrex

JSVecX - JavaScript/HTML5 - This has a cool Vextrex cabinet mockup around it, and the fancy color overlays are automatically applied (you can turn them off). Game selection is alright, with a bunch of commercial and homebrew titles. Sound doesn’t work. I’d like to see more web-based emulators presented this well.

ZX Spectrum

JSSpeccy - JavaScript - Based on the excellent Fuse, JSSpeccy takes the hassle out of playing ZX Spectrum games. It has around 30 games included, although you can load up others from your computer, a given URL, or World of Spectrum. Performance is good, but there’s no sound.

Unreal Speccy Portable - Google Native Client (NaCl) - You get a huge collection of games to choose from, with full 16-bit sound emulation, multiple joysticks, full-screen mode, and some other neat features. I’ve never played with a real Spectrum, but this seemed like a great virtual one.

Other/Multiple Systems

Pica Pic - Flash - This is cool. Flash versions of old Nintendo Game & Watch and other handheld electronic games like Bartman, Fishing Boy, and Coffee House.

JSMESS - JavaScript - As far as I know, there is nothing available that makes full use of this JavaScript port of everything-emulator MESS, but this page links to some functioning demos that implement specific systems.

EmuParadise - Java - Popular retro gaming website EmuParadise offers its entire collection of Atari 2600, NES, Game Boy, Game Boy Color, Game Gear, and Master System ROMs for play within your browser through the leading Java emulators.

Chip-8 Emulator - JavaScript - An interpreted programming language originally developed for early 8-bit microcomputers as an easier alternative for creating simple games and programs, Chip-8 has been implemented on most platforms since. This emulator has a bunch of ports of classic arcade and early computer and console games.

Sarien.net - JavaScript - Play any of four early Sierra point-and-click graphic adventures—King’s Quest, Police Quest, Space Quest, or The Black Cauldron—starting from a location of your choice. Other players visiting the same section of the game show up on screen, and you can have a chat to them. Sarien.net also works on iPad.

Play Infocom Adventures Online - Java - If you’re yearning for some classic text adventures in your browser, this may be your best option. It works well, judging from the few minutes I spent with Zork, but then why wouldn’t it? It’s not like un-styled text on a black background is hard to render.

Another World JS - JavaScript - The Eric Chahi masterpiece, ported to your browser. Unfortunately only the first level is playable, however, and barely at that.

Dune 2 Online - HTML5 - Based on the OpenDune project, this puts influential early RTS Dune II in your browser. It’s come along since word first got out about it, with accounts for saving your progress automatically across browsers/machines.

Transport Tycoon Deluxe Online - HTML5 - From the developer who brought you Dune 2 Online, TTDOnline comes in both single-player and multiplayer flavors. It sizes itself to your browser window, and runs beautifully (except for a few crash bugs). I still love that music. This is a web port of OpenTTD, so it implements a bunch of that project's improvements to the original game.

Command & Conquer - HTML5/JavaScript - Enjoy one of the best RTS games of all time from anywhere. It has the amazing cutscenes, too. I’m not sure if all the levels are included yet—they certainly weren’t before—but it has both NOD and GDI campaigns. You can also dive in to multiplayer.

Quake Flash - Flash - It’s Quake, in your browser, running via Flash. That’s all you need to know.

Addendum: There's now also a ScummVM browser port that includes demos of seven classic LucasArts point-and-click adventure games, and an HTML5 version of Freeciv—the long-running open-source Civilization-inspired project.

Darren Coles got in touch about his new JavaScript Acorn Electron emulator ElkJS. It's pretty slick and runs smoothly (with sound), and I've added it to the newly-minted Acorn Electron section above.

12 July, 2013. I just discovered a JavaScript remake of the Amiga/PC classic Lemmings.

18 July, 2013. Added EstyJS to the Atari ST section.

3 October, 2013. Game Oldies - Flash - Game Oldies provides thousands of games for NES, SNES, Game Boy (including Color and Advance), Arcade, Neo Geo, Turbografx, PC-Engine, and Sega 8-bit and 16-bit systems, all emulated in Flash. Performance seems pretty good, and the controls work better for some systems than others, but this looks to be a good one-stop shop for retro emulation.


What am I missing? Let me know in the comments or via Archive’s Twitter or Facebook, and I’ll update the list (with credit to you for the tip).

Games in the Archive:


Speedball

Atari ST, 1988

Speedball is a Futuristic Sports game, developed by Bitmap Brothers and published by Imageworks, which was released in Europe in 1988.

Photos From PAX Australia's Classic Console Area

via - 26th July, 2013

A selection of photos from the Classic Console area at PAX Australia 2013, including a few console rarities and impromptu Smash Bros tourneys.

Read More...


Bruce Morrison on Man Up Time Studios, Reviving Bungie’s Classics, Freeverse, and iOS Game Development

via - 17th May, 2013

We talk to Bruce Morrison about the OS X port of Bungie classic Pathways into Darkness, his history in the industry, and his indie studio Man Up Time, and get his...

Read More...


A Big List of Browser-Based Emulators and Ports of Classic Games

via - 11th May, 2013

A list of all the functional browser-based emulators and ports of classic games I could find.

Read More...