JavaScript Emulators

Here at Ludei we are always trying to be aware of all cool technologies, frameworks and products out there. Recently, we have bumped into a couple of curiosities: JavaScript bases emulators. An emulator is a piece of software that emulates a piece of hardware. In this case, and as CocoonJS has a strong emphasis on games, we have been playing around with game console emulators. We have found these interesting projects (among others, check out the end of this post):

  • Miracle: A Sega Master System emulator in JavaScript and HTML5
  • JSNES: A Nintendo Entertainment System emulator in JavaScript and HTML5.
  • JSSMS: A Sega Master System emulator/compiler in JavaScript and HTML5.

Since the eruption of HTML5, javascript based game emulators started to make more sense. You need to think that any emulator will have to work on a pixel level and the HTML5 Canvas element, finally provides this functionality for a web browser based app. We were curious to see if some of these JavaScript based game emulators would work inside Canvas+. As Canvas+ is not a full browser, just a couple of simple modifications on some DOM related code made them both to work. We have also added a virtual joystick to be able to play on a touch base mobile device (thanks Austin to the GameController project from Clay.io). As we mentioned, this has been just a curiosity as the JavaScript performance is not good enough on a mobile device to make these projects playable (it is nothing related to graphics but to the JavaScript based emulation). Only JSSMS, as it is taking a different approach by compiling emulated code into JavaScript, has improved performance, but still, overall performance depends on the underlying JSVM and hardware among other factors.

Here is a video (as said, performance is not great due to JS emulation, not graphics):

We have found other interesting projects we haven’t have time to play around with still.

  • A great list of JavaScript Emulators by Frederic Cambus.
  • JSMESS: Still a beta work in progress Emscripten port of the MESS emulator to JavaScript. This ambitious project aims to have hundreds of device emulators on the web.
  • XNES: A Super Nintendo emulator in JavaScript and HTML5.
  • JSLinux: A Linux Machine boot and command line emulation in JavaScript.

Enjoy this retro-experience! 😉

 

1 Comment JavaScript Emulators

  1. avatarZara

    I read a lot of interesting articles here. Probably you spend a lot of time writing, i know how to
    save you a lot of work, there is an online tool
    that creates unique, SEO friendly posts in minutes, just search in google –
    laranitas free content source

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *