Slashdot Mirror


JavaScript Gameboy Color Emulator

Prosthetic_Lips writes "A programmer named Grant Galitz has released a GameBoy Color emulator written in HTML5/JavaScript, and it will run ROM images stored locally. What's amazing is that it runs the games at a playable speed. We discussed a different, but similar project six months ago, but it seems like this one is pretty complete at this point. It's also open source."

18 of 153 comments (clear)

  1. GBC JavaScript by Anonymous Coward · · Score: 3, Funny

    Holy shit someone made JavaScript useful?!?

    1. Re:GBC JavaScript by jonescb · · Score: 2

      The x86 emulator running Linux in Javascript wasn't impressive enough to you?
      http://bellard.org/jslinux/

  2. Re:Why? by Shikaku · · Score: 4, Insightful

    Well, if you can visit this site on the phone with a modern browser for example...

  3. This actually works =D by EnderDom · · Score: 2, Interesting

    Ring in sick...
    Google Pokemon ROMs...
    Download Pokemon Gold...
    I'll be back in 20 hours...

  4. speed of your computer getting you down? by Hazel+Bergeron · · Score: 5, Interesting

    Finding that your machine is fast enough? Noticing that previous generation native software runs at a good speed, providing you the security of physical barriers and an uptime which doesn't require you to rely on hundreds of cooperating network, storage and service companies? Worried that it's too easy to trust the admins in your own office more than any number of competitors, foreign governments and bored hackers?

    Then you want... THE CLOUD. Turn your PC into a graphical terminal and turn the UI and responsiveness clock back 15 years. Show off to your friends that, thanks to the uniquely layered framework making up THE CLOUD, only you have a machine modern and beefy enough to emulate a 4MHz Z80. You too can have what you had with Windows 95, today!

  5. "Open source Javascript" by Anonymous Coward · · Score: 2, Insightful

    Wait a sec, is it even possible to hide Javascript code? Thought it was open by design, being client side and all...

    1. Re:"Open source Javascript" by johnnysaucepn · · Score: 4, Insightful

      Just because it's not obscured, doesn't make it open source. The author retains copyright, and still has the right to place it under any licensing terms he/she likes.

    2. Re:"Open source Javascript" by lucian1900 · · Score: 2

      No, you're wrong. If the source is available, then the source is available and that's it. Open Source has additional licensing requirements http://www.opensource.org/

    3. Re:"Open source Javascript" by bill_mcgonigle · · Score: 2

      If I can see the source code unobfuscated and without charge then it is open source.

      No, 'open source' was a term coined to convey a specific meaning. Free Software means something else too. Try here.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  6. Re:Why? by teh+kurisu · · Score: 3, Funny

    Maybe they want it to run on Windows 8.

  7. Pretty much my feeling by Sycraft-fu · · Score: 4, Interesting

    I've no issue with stuff being online. I love the Internet, it is a major part of my life both in terms of entertainment and profession. However let's be straight as to when it is and isn't useful. This "Let's do everything in a webbrowser," shit is stupid. No, let's not. There is nothing wrong with local, native apps and indeed there's efficiency advantages to be had.

    Maybe someday we'll have processors so ridiculously overpowered it won't matter, you'll be able to run everything in a very high level language, all sandboxed up, with all kinds of crazy overhead and still have great performance and do it on less than a watt. However until that day, I think there's plenty of room for more efficient things on your computer.

    That is all, of course, not to mention any of the security or privacy concerns you note.

    I like the progress of technology but I dislike the fadism. People get in to these various fads with no real thought of if they are a good idea for everything. Currently "the cloud" and 3D video top my list of stupid fads. Not that having remote, distributed, data storage and computing is useless in all cases, but we had that before "the cloud." "The cloud" is rather ill defined and just seems to be BS speak for "Let's do everything somewhere else online because... well I don't know but it is an awesome fad!"

    Seriously people, use the right tool for the job.

  8. Re:Remember back in the day... by DerPflanz · · Score: 3, Insightful

    There's a lot of developers out there still afraid to use anything other than C++ for a basic desktop application because, "those other languages are slow".

    Euhm. JavaScript *is* slow. In this case, it runs a technology of 13 years ago in a platform-on-a-platform. On hardware that is a zillion times faster than a handheld game computer. I have the feeling computers get more and more sluggish the last years, just because of all this eye candy and layer-upon-layer.

    Remember C64 boot times? It was subsecond. Granted, it loaded almost nothing, but it is also 30 years ago. But even the iPad (dedicated hardware, relatively small OS footprint) needs several tens of seconds to boot.

    --
    -- The Internet is a too slow way of doing things, you'd never do without it.
  9. C64 > GBC by Per+Wigren · · Score: 2

    Cool, but not as cool as the JavaScript C64 emulator.

    --
    My other account has a 3-digit UID.
  10. Re:Why? by narcc · · Score: 2, Funny

    Wow, you're an idiot.

  11. Re:Why? by max · · Score: 2, Insightful

    No. They might both be of the same magnitude of order, as in around 1GHz, but there definitely is a real noticable difference between the old 1GHz processor i bought around a decade ago, the 1GHz processor in my iPad and the 1.42GHz on my relatively old desktop.

    Clock speed is not comparable when you have different architectures and the surrounding hardware differs greatly.

  12. Re:Remember back in the day... by hairyfeet · · Score: 3, Insightful

    So am I the ONLY one that sees this and thinks "Wow, if they can run an emulator in nothing but HTML V5 and JS what kind of malware will they be cooking up with this tech?". Excuse me for being a bit of a party pooper but I fix infected machines all day and nearly all new infections I see are JavaScript based either by using browser trickery (you should really see the Windows Update site they have cooked up for Firefox, it is REALLY good) or some sort of drive by download.

    So maybe its me, maybe I'm wrong, but I've been thinking for years instead of bolting ever more onto JavaScript maybe, just maybe, we should be looking at a new language for the web? Maybe something that automatically starts in a "penalty box" until it passes inspection, and doesn't allow a single page to be made up of sometimes dozens of scripts from all over the place?

    Because frankly all these tricks like sandboxing and low rights mode just seem to me to be band aids on bullet wounds. JavaScript has been around since 1995 and the web is a vastly different (and nastier) place now than it was then. There has to be some way to let sites have their bling bling bullshit without making the user run untrusted code on their machine.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  13. Nezulator by Dwedit · · Score: 2

    Wow, we have a thread about a Javascript Gameboy Color emulator, and nobody has mentioned Nezulator, the Javascript NES emulator.

  14. Re:It runs pokemon red! by grantgalitz · · Score: 2

    The audio issues lots of people here are experiencing is not actually due to the emulator running slow. It's because of bugs in the various browsers and the fact that browsers like google chrome and opera take more time blitting than running the CPU emulation in JS. I render all the gfx in JS, I only blit them at the end of each iteration via a canvas-wide putImageData. Yeah, chrome can't run it fullspeed when your window is maximized, but not for the reason you're thinking of (webkit is retarded and takes up a whole core to render even at 20 fps). The gameboy advance emulator that's still being coded does run slower, but dynarec is being worked on to fix that. GBA games can be dynarec'd because they don't require as much clock cycle accuracy as GBC games. The dynarec is still going to land afterwards once the interpreter is fully baked. And yes, scaling of the sprites and BGs is done in JS, not canvas, because canvas is believe it or not slower. Yeah, I'm calling out the sucky gfx performance in webkit alright. :/