Nintendo 64 emulator becomes available via JavaScript

Back in the 1990s, the home console race came down to two main competitors: Sony's PlayStation, and the Nintendo 64. Both of these titans came with their own game legacies; Goldeneye for the N64 remains one of the most cherished examples of a console FPS game, for example.

Thanks to the work of a developer named Paul Holden, you can bring back those heady days of the '90s through a JavaScript emulator. He's managed to built an N64 emulator in JavaScript.

You may know Paul Holden's name if you follow the emulation scene. He was the original developer of Daedalus. When he ceased to develop it, others soldiered on, calling it DaedalusX64. Since then, Holden was inspired by the JavaScript Linux emulator. This led him to ponder the feasibility of constructing a JavaScript N64 emulator.

After what was probably a lot of late nights and empty cans of Red Bull, Holden has the project in a working manner. He admits it is still limited, but that it works for a small number of games. Super Mario 64 plays, and a number of other games do, but he warns they may display graphical glitches.

If you'd like to give Holden's N64 emulator a go, try it here. You need your own ROMs, and either Chrome or a Firefox Nightly build. Older versions of Firefox do not have the same features needed to use the emulator, which he feels will still take time to become usable. Now you can either relive old classics, or try out the competition's games.

The videos do show that the project has some development ahead of it, unfortunately. You'll notice that the game isn't running particularly smoothly, and that may be a limitation of the project at present. It definitely has a future in spite of this, because who wouldn't want to slack off in work with some Super Mario?

Source: N64JS
Emulator: HulkHolden

Report a problem with article
Previous Story

RIP ChevronWP7, thanks for all the memories.

Next Story

Google's Voice Search now understands 13 more languages

34 Comments

Commenting is disabled on this article.

N64 emulation is a great example why you shouldn't listen to the general consensus. The general consensus back in the day was that you would NEVER be able to emulate the N64. It was IMPOSSIBLE! Then one day out of left field came an emulator known as UltraHLE and all of that change.

warwagon said,
N64 emulation is a great example why you shouldn't listen to the general consensus. The general consensus back in the day was that you would NEVER be able to emulate the N64. It was IMPOSSIBLE! Then one day out of left field came an emulator known as UltraHLE and all of that change.

people thought it was impossible to emulate a 64bit system on the current 32bit hardware at the time... advanced graphics cards and faster processors are what made it possible... the hardware that was out when N64 came out, it wasn't exactly the easiest thing to do on and get good results

warwagon said,
N64 emulation is a great example why you shouldn't listen to the general consensus. The general consensus back in the day was that you would NEVER be able to emulate the N64. It was IMPOSSIBLE! Then one day out of left field came an emulator known as UltraHLE and all of that change.

You really shouldn't listen to the general consesus because they say there's no Xbox 360 emulator available for download as of yet. &, mostly, they're right. But Microsoft themselves actually included in Microsoft Research Giano a 360 emulator that anyone can get for free... provided all you want to emulate is a 360 color test. Yeah, pretty unimpressive, but I remember a while ago that Kenneth of the BetaArchive Forums was making his own, better version of Giano or something, (that, unfortunately, he never released,) & I still think that whoever actually decides to finally make a full 360 emulator should take a look at Giano & build off that or something...

EDIT: Personally, this generation is nearing its end, (& arguably should've a while ago,) & I'm kinda sad that the only console this gen to have been fully emulated so far is the Wii, but what are you gonna do?

MASTER260 said,

EDIT: Personally, this generation is nearing its end, (& arguably should've a while ago,) & I'm kinda sad that the only console this gen to have been fully emulated so far is the Wii, but what are you gonna do?

I agree, but, since I don't plan to build the Emulators I don't have much right to complain. My PC probably couldn't handle one anyways... not yet.

I remember playing Golden Eye back in the day. I thought it sucked terribly. It was sooo sloww. The gameplay was extremely awkward. Computer FPS games at the time spanked Golden Eye.

But this Javascript thing is pretty cool.

jamieakers said,

...Your basis for this being?

Classes, encapsulation, global variables, ==, liberal conversion of types,functions....

Brony said,
It is impressible, specially since Javascript is a big pile of crap.

I completely agree with you -- it doesn't cease to amaze me how the crappiest scripting language that ever existed could've made it this far.

But, this doesn't diminish the amazing feat by Mr. Paul.

MASTER260 said,
Meh, if I want to play N64 games in a browser, I'll continue to use: http://vizzed.com

EDIT: BTW, Vizzed is MUCH faster than n64js...

That sites requires a plugin to be downloaded which weighs 60mb. It's not because it runs inside a browser window that it does not rely on external software.

MASTER260 said,
Meh, if I want to play N64 games in a browser, I'll continue to use: http://vizzed.com

EDIT: BTW, Vizzed is MUCH faster than n64js...

That might be one of the ugliest websites i've seen in a long time. Especially the main n64 page.

xplatinum said,
That sites requires a plugin to be downloaded which weighs 60mb. It's not because it runs inside a browser window that it does not rely on external software.

Are you implying the emulator is inside the plugin or something weird like that? Because I think that would defeat the point of browser-based emulation, so I don't see why anyone would do it, which would make me doubt it to be true...

Yeah, I wasn't expecting an emulator in JavaScript to run full speed. In Java, sure, JavaScript...no chance in hell.
But I have to admit, this is a very good display of programming skills and a feat!

Interesting but incredibly slow. Took probably a minute or so just for marios head to start to appear after starting up mario 64 in my quick try of it.

Blackhearted said,
Interesting but incredibly slow. Took probably a minute or so just for marios head to start to appear after starting up mario 64 in my quick try of it.

Painfully slow now, perhaps. Aside from the fact that it's probably more meant to be a proof of concept than an actual working thing, it does give some incredible insight into the future - imagine emulators that would run on any hardware with a web browser.

It should be noted that it isn't Javascript only, but also WebGL, which allows direct GPU computations from a web-application. WebGL is not an open standard, and is only supported by Chrome and a few others.

When you realize this, it is still amazingly done, but not THAT amazing as this article wants it to be.

ffMathy said,
It should be noted that it isn't Javascript only, but also WebGL, which allows direct GPU computations from a web-application. WebGL is not an open standard, and is only supported by Chrome and a few others.

When you realize this, it is still amazingly done, but not THAT amazing as this article wants it to be.

What are you talking about? Why would you say things so firmly, as if they are fact when you obviously have no idea about the subject.

It most definitely is an open standard... Its base on OpenGL, which, as you can see from the name, is open.

The only major browser that doesn't support it is IE and I have a feeling that might be because MS plan on trying to integrate DirectX or something similar into their browser... If that is the case then good luck to em... closed standards don't do too well in web development.

The_Decryptor said,
WebGL is supported by Safari/Firefox/Chrome/Opera, the only browser that doesn't support it is IE.

And it is an open standard.

Yes, it is an open standard, but it is not part of the official web standard made by W3.

M4x1mus said,

What are you talking about? Why would you say things so firmly, as if they are fact when you obviously have no idea about the subject.

It most definitely is an open standard... Its base on OpenGL, which, as you can see from the name, is open.

The only major browser that doesn't support it is IE and I have a feeling that might be because MS plan on trying to integrate DirectX or something similar into their browser... If that is the case then good luck to em... closed standards don't do too well in web development.


MS is afaik working on a DX based standard. However, that's not because they want DX so bad, but because OpenGL and thus by extention WebGL allow manufacturer-specific addons. Some of the available addons allow for direct hardware access.
I hope I do not neem to explain why direct hardware access is "a bad thing"(TM)

Jorik Modderkolk said,

MS is afaik working on a DX based standard. However, that's not because they want DX so bad, but because OpenGL and thus by extention WebGL allow manufacturer-specific addons. Some of the available addons allow for direct hardware access.
I hope I do not neem to explain why direct hardware access is "a bad thing"(TM)

Ahaa, ok that makes sense and thinking about it, yeah that does sound like a massive security hole to have in your browser.

I still think MS would probably try and push their own DX based standard if WebGL didn't have this flaw though as it just makes business sense for them... As long as they can get people to use it anyway. I don't see it happening though, because all the other browsers use OpenGL and MS doesn't have the same clout in the browser world that they used to.