Related, GBA.js is a project a friend of mine has been working on to make a GameBoy Advance emulator in pure Javascript. A WIP version is running at http://endrift.com/gbajs/index.html but there's a lot of bugs and compatibility is far from perfect. Source code is all on GitHub at https://github.com/jpfau/gbajs/
ahahahaha, I'm working on my own GBA emulator in JS too. It seems I might have started a trend, since I've been working on https://github.com/grantgalitz/IodineGBA for a bit now.
Has anyone suceeded in running it in any browser on any smartphone? It seems to fail on Windows Phone's IE. However, it works perfectly in few desktop browsers (including IE9), I've tried.
Anyway it seemes, that gameboy game format could be used as some kind of lightweight format for cross-platform browser games. It could enable publishing small browser games without giving away js sources or using third-party plug-ins.
Works fine (not at full frame rate, but playable) on an iPad 3. No sound of course. The Audio APIs still aren't just there yet for dynamically generated audio.
Same with the iPhone 4s, though it tried to download the .js file first and didn't start working until I hit back. Load time was also much longer on the iPhone 4 over the same connection. Low framerate is hard to play through :/
I'm not that familiar with html5/js, but I am curious if it is viable to develop games for it old-school. What I mean by that is having a framebuffer and direct per pixel control. Is this what people do?
I've certainly used it myself (for loading levels - bitmaps are great for level designing), dunno about performance with direct pixel access. It may be higher or lower.
Because on the physical Gameboy the B is on the left and A is on the right but then again the DPad is on the left and the buttons are on the right and I use my thumbs instead of fingers so I'm not sure copying the physical layout for just this one particular thing improves the experience any.