Soon after my initial announcement on this weblog, a few tweets of the posting, followed by some press attention, means tens of thousands of people have now visited the Internet Arcade. Many are happy. A goodly amount are stunned. A few are annoyed and wondering why it “doesn’t work”.
This quick post from a plane is for the last group, who are having issues. Hopefully this can help clear things up for you.
First, the Internet Arcade works best in Firefox, and a very recent flavor of Firefox at that. If you needed an excuse to upgrade, this is it. Chrome also works well, although due to disagreements between Mozilla and Google that bore me, Chrome runs about 20% slower on average. This can mean the difference between good and clunky emulation. Safari, mostly recent Safari, works good but sound does not currently work on it. Same for Internet Explorer. Believe it or not, I’ve had great response from a 64-bit Windows version of Firefox called Waterfox. As they say, your mileage may vary. We continue to improve this experience and we’re constantly doing fixups to the code to work with other browsers.
People occasionally complain about the irony of how you need the latest and greatest to run such old stuff. Well, you’re really running an emulation system that itself is running an old system, and that emulation system is in a browser. Let’s call it even on the “why is it so intense” issue. Work continues to make it run as best as it can.
This is entirely un-intuitive. I’m sorry about that – we’re going to make it clearer soon. Basically, you need to start a game, i.e. after the MAME logo goes, and you see the game booting, and then you hit keys on your joypad until it says “joypad detected”, and then you need to refresh the browser. The Gamepad API we use is somewhat janky, and it takes a while for the browser to “get it”. Also, only Chrome and Firefox currently support the Gamepad API meaningfully. So again… start game, wait for booting, twirl buttons until it notices, then it will generally work for all the games you click on after that.
Another issue, if you live with the keyboard controller, is that MAME wants to use CTRL, ALT/OPTION, and a few other wacky keys. This comes into conflict with MacOS especially, as hot keys and accessibility come from combinations. There are two solutions, both are annoying. One is to Press TAB after the game starts, and you can go into a menu and change the keys… problem is, you lose these settings currently after you refresh the browser. Another solution is to go into your OS, make a guest account, and make that account not have hotkeys – that worked fine in OSX and in Windows for us. As this expands out into other setups, I’m sure other solutions will present themselves.
Sound, like Gamepads, is a little strange. It starts out muted by default. This is because the way the Webaudio API works is really poor, and you can thank Mozilla AND Google for that one. They claim they’re going to make it better. But here, you have to start the game, wait for the booting of the game, and then hit the UNMUTE button. Then you (you guessed it) refresh the browser to make sound work.
The good news is, once you set this cookie, it’ll have sound for everything. The other slightly annoying news is that that Webaudio API thing means that sound can be really fuzzy and crackly on a browser, and doing anything with a lower-powered machine (including, with some of them, even moving the mouse or swapping tabs) will get that fuzziness. I get it too, especially when you’re running a post-1983 machine in this emulator. As I’ve said to people testing it the past few months, when it works, it works great. When it doesn’t, hoo boy.
Credit Where Credit is Due
As this thing busted wise, it gets way too easy for people to report that “Jason Scott” did all this. Jason Scott by no means did even a notable percentage of this. JSMESS is a port of the MAME/MESS emulator. JSMESS, (github repo is here) was the work of a huge amount of people, listed there and on the JSMESS main page. And MAME/MESS has its own massive, massive collection of people who are working on the actual emulation, coding, driver refinement, and related coordination to making the most comprehensive emulator system on the planet. Every single time that this project has broken wide, some places don’t do a good job of reporting on the amazing nearly-20-years project of MAME/MESS. So that we’re clear.
I’m sure there’s other questions, or considerations. That’s some of the stuff that comes up.
Comments are disabled on this post