The iCade review: your iPad as an arcade machine

The iCade adds a joystick and buttons to your iPad, and while it only works …

The iCade might have started its life as an April Fools gag but, as Think Geek told us after the Internet went wild for the concept, some jokes have a way of becoming reality. The $100 iCade is now available, and we've had the chance to open one, assemble the hardware, and play for a number of hours. There are a few annoyances here, but this is an impressive way of adding physical controls to the iPad in a package that's both an instant conversation starter and small enough to fit on your desk.

I have yet to see anyone take a look at this thing and not immediately want to play it. My kids have been going ape playing the classic Atari games. It's easy to look past the hardware's uncertain future when the present is already so striking.

The iCade comes in a single box and requires some assembly. All you need is an allen wrench, so anyone familiar with Ikea furniture is going to be just fine; I was up and running in about 20 minutes. There is nothing to hook up or install when it comes to the iPad, it simply slides into the slot where the screen would be in a regular arcade machine.

The iCade before assembly

The joystick and buttons connect via bluetooth, so you'll need to pair the iCade with your iPad. There is a diagram that shows which direction or button corresponds to which number to input when you're syncing the devices. Again, this is simple and only takes a minute. After that, the game automatically picks up on the controller and adjusts accordingly.

And there's the rub, at least for now: there is only one iPad app that works with the iCade, and that's Atari's Greatest Hits. Luckily, that bundle includes 100 games, but the entire bundle will cost you $15. If you'd like to get the hardware and every game that runs on it, you'll be spending around $115 all told. You can see the list of games available via in-app purchases online, and both the number of games and their quality is exceptional. Tempest? That's there. Asteroids? Yup. Centipede? You know it.

The SDK has been released, however, and we've been told that there are multiple teams working on different projects for the iCade. We'll continue to report on new games for the platform as they come out, but this is a review of the current product. Luckily, you have a good variety of classic games to play, including Battlezone, Lunar Lander, Super Breakout, and many more.

I've included a short video of my son playing with the iCade, trying to figure out some of the classic games. These games don't hold your hand for the first 30 minutes like we're used to, and to my delight he took to them like a duck to water, playing for as long as we let him. For children, these games aren't a dated look into our past, they're vital action games that play out in their imagination. I can't buy him an arcade to play in, so he can't enjoy the same experience I had as a youth, but this is close.

The iCade in action

The hardware

Once you have everything installed and running, you'll get a chance to sit down and enjoy the hardware. There are eight concave buttons with the shallowest of bowls. They require a heavy finger to push, but there's nothing wrong with a stiff, loud button. The joystick itself is digital, and is actually a little looser than I would prefer. Still, these are passing concerns, and both the button and the joystick worked well under heavy use. I tend to abuse controls when I play arcade-style games, and the iCade held up under my heavy hand.

This is an attractive, capable piece of hardware that does exactly what you want it to do: it makes you feel like you're playing on a slightly smaller than average arcade machine. For $100 this is certainly a niche product, but it's also worth the money you're paying for it, and will look great in your office or home. Let's just hope the developers use the tools available and add more supported games.

Is the device 'open' in the sense that other games (Street Fighter for example) could add support for it without fees?

i checked thinkgeeks page for the iCade, they have an open source SDK and free documentation, so i guess street fighter without extra fees is a possibility.

EDIT: the guide is just a couple of pages long. the icade connects to the ipad as a bluetooth keyboard. it sends a set of leters for key press and a different set of letter for key release events. which means you don't even have to buy an icade to develop for it. just test your game with a standard BT keyboard.

As mentioned by another commentor the Atari collection mentioned is mostly Atari 2600 titles which have little replay value (and many have no play value at all, the 2600's best games were all third party).

What would be really cool would be a modular system, a core Bluetooth box with four ports supporting USB sticks, and then this cabinet, another like a television (landscape) and another arcade style with landscape. For both arcade holders include a single USB controller that can be integrated into the cabinet.

Many of these features could be added in v2.0. A lot of this $100 probably goes towards recouping the development and SDK cost.

No Android support currently, as the SDK is for iOS. But given that it's open-source, you can bet there's some folks tinkering with it right now to get a version for Android.

ThinkGeek is so awesome, they perfectly nailed my sentiment:"Didn't think you needed an iPad? Think again!... After the glow of the initial announcement wore off, many of us came to the conclusion that the iPad was actually pretty useless."But now it is useful! And a Greatest Hits collection was a smart move for the first "game" - 100+ games for the price of one, and MAME already supports keyboard input!

Looks cute. Seems it takes 2 AA batteries or an optional adapter, which appears to be unmentioned on the site. Definitely needs MAME confirmed working at the minimum though. Which controls to support has always been a problem for home arcades; I assume that's a four position joystick, no rotation? Missile Command with a joystick instead of trackball sounds painfully slow. How is it in practice for a few waves?

The Atari 2600 version of Missile Command was played with a joystick, and you only had one button so everything dispatched from the middle. The difficulty was much easier than the arcade version, it was one of the first games I recall being able to play until i was bored, not because it ended. There's what's call the "umbrella technique", where you just keep sweeping three points around the two closest cities to the firing center to save only them.

It looks like the iPad version is a port of the arcade one, using three buttons. The 2600 version proves it's possible to play the game with a joystick though, just harder.

Looks cute. Seems it takes 2 AA batteries or an optional adapter, which appears to be unmentioned on the site. Definitely needs MAME confirmed working at the minimum though. Which controls to support has always been a problem for home arcades; I assume that's a four position joystick, no rotation? Missile Command with a joystick instead of trackball sounds painfully slow. How is it in practice for a few waves?

Oh so excruciatingly close... WHY can't some Chinese\Taiwanese\Korean knockoff get this concept right and make it available for Android Tablets... Or just make a standalone with this form-factor, screw the Tablet!

Looks cute. Seems it takes 2 AA batteries or an optional adapter, which appears to be unmentioned on the site. Definitely needs MAME confirmed working at the minimum though. Which controls to support has always been a problem for home arcades; I assume that's a four position joystick, no rotation? Missile Command with a joystick instead of trackball sounds painfully slow. How is it in practice for a few waves?

No Android support currently, as the SDK is for iOS. But given that it's open-source, you can bet there's some folks tinkering with it right now to get a version for Android.

it's already supported by android honeycomb. it presents itself as a standard HID keyboard. all you need to do is accept the key inputs and decide what to do for each of them. not much different than using WASD on the PC.

it's already supported by android honeycomb. it presents itself as a standard HID keyboard. all you need to do is accept the key inputs and decide what to do for each of them. not much different than using WASD on the PC.

It's slightly odd in that it sends one letter for button down, another for button up. So, for example, when the player pushes the top left button down the joystick sends a keypress of 'y'. When the player releases that button, the joystick sends a keypress of 't'. I don't know if that's to work around a limitation in the Bluetooth keyboard profile or the iOS API for getting key events, but I guess it'll mean that games — for whatever tablet — have to support the iCade specifically.

Oh so excruciatingly close... WHY can't some Chinese\Taiwanese\Korean knockoff get this concept right and make it available for Android Tablets... Or just make a standalone with this form-factor, screw the Tablet!

NAh, a well made and configured Digital stik is SOO much better as it can do anything you need without having to have additional sticks for your cab, and it saves costs as you don't need a converter board... I.e.

Is what I have in my 4-player Mame cab and it works like a dream. It auto-detects what game you have loaded and immediatly changes it's configuration for that control (i.e. becoming a diagonal 4-way for Q-bert when Q-Bert loads). It also allows you to connect the buttons to it, which means no controller board needed for those either. Which means you can sink that money into LED buttons and trackball instead . At least that is what I did.

I must admit that I haven't kept up with MAME recently, I imagine if there were some kinda smoothing algorithm that Sinistar might be playable. Do the Digital sticks really play the game well now?

The Gameboy Advance version is WRETCHED with Digital controls. I was also thinking that an Asteroids control scheme would work and would be kinda fitting as Sinistar is in many ways a spiritual successor to Asteroids. Or a hybrid where you hold down a rotate button (kinda like the tight turn air-braking in Star Wars Rogue Squadron) If you can't precisely rotate somehow you loose so much of that game...

it's already supported by android honeycomb. it presents itself as a standard HID keyboard. all you need to do is accept the key inputs and decide what to do for each of them. not much different than using WASD on the PC.

It's slightly odd in that it sends one letter for button down, another for button up. So, for example, when the player pushes the top left button down the joystick sends a keypress of 'y'. When the player releases that button, the joystick sends a keypress of 't'. I don't know if that's to work around a limitation in the Bluetooth keyboard profile or the iOS API for getting key events, but I guess it'll mean that games — for whatever tablet — have to support the iCade specifically.

I'm pretty sure they're different because of keystroke repition. If you hold down a button, it's like holding down the a key and sending a long "aaaaaaa" string that could be confused for multiple inputs as opposed to a sustained signal.

it's already supported by android honeycomb. it presents itself as a standard HID keyboard. all you need to do is accept the key inputs and decide what to do for each of them. not much different than using WASD on the PC.

It's slightly odd in that it sends one letter for button down, another for button up. So, for example, when the player pushes the top left button down the joystick sends a keypress of 'y'. When the player releases that button, the joystick sends a keypress of 't'. I don't know if that's to work around a limitation in the Bluetooth keyboard profile or the iOS API for getting key events, but I guess it'll mean that games — for whatever tablet — have to support the iCade specifically.

I'm pretty sure they're different because of keystroke repition. If you hold down a button, it's like holding down the a key and sending a long "aaaaaaa" string that could be confused for multiple inputs as opposed to a sustained signal.

Actually, that makes me think, they might not be sending those extra keys, to save battery life or possibly because of Bluetooth? That is, they just send the down signal, then nothing until you cause an actual change by letting go of the button.

to play Tempest properly, you need a dial controller...one that can spin very fast when you put some major rotation on it.

+1 and Tron. One of my favorite games, but practically unplayable without a rotary paddle.

Ya know, I still have my 2600's paddle controllers. Maybe it's time to break out a wiring guide and see if I can't adapt them for this. While not exactly the same as a true weighted analog rotary controller in function, it would be fun to tinker anyhow.

it's already supported by android honeycomb. it presents itself as a standard HID keyboard. all you need to do is accept the key inputs and decide what to do for each of them. not much different than using WASD on the PC.

It's slightly odd in that it sends one letter for button down, another for button up. So, for example, when the player pushes the top left button down the joystick sends a keypress of 'y'. When the player releases that button, the joystick sends a keypress of 't'. I don't know if that's to work around a limitation in the Bluetooth keyboard profile or the iOS API for getting key events, but I guess it'll mean that games — for whatever tablet — have to support the iCade specifically.

I'm pretty sure they're different because of keystroke repition. If you hold down a button, it's like holding down the a key and sending a long "aaaaaaa" string that could be confused for multiple inputs as opposed to a sustained signal.

A regular AT keyboard sends a different code for key down and key up. The keystroke repetition and the conversion of keyboard codes to actual characters is done by the driver (that's why key repetition and keyword layout are OS settings and not some knob on the keyboard.) I don't know how BT keyboards work but I'm assuming they work the same way as regular keyboards. This is either a limitation of the keyboard API (which the first answer to this blog post seems to support) or something they did to make supporting the Atari games easier.

A regular AT keyboard sends a different code for key down and key up. The keystroke repetition and the conversion of keyboard codes to actual characters is done by the driver (that's why key repetition and keyword layout are OS settings and not some knob on the keyboard.)

That's most certainly not the case for key repeat, only for key -> character mapping. The XT/AT interface (that hasn't been seen literally for decades now, but the PS/2 looks like it at the level of programming if you just do the basics) definitely has the keyrate programmable in the keyboard controller. Not the OS. The original XT interface was one way - key down, repeated as need be for auto-repeat, and key up (the same key down code with bit 7 set) came back, and that was it. The AT interface became two way - commands to reset the typematic rate (delay before repeat, and repeat rate), and turn on/off the LEDs were added. Also added were some useful options to mask out bit 20 of the address bus, for compatibility of memory wrapping on the 286, and to reset the CPU so a return to real mode was possible were added.

And...then the PS/2 keyboard came out, with 101 (or more) keys on it, and we were out of scan codes. Got ugly then, with double byte scan codes. PCs have alternative means of masking bit 20 and returning to real mode now as well. For that matter, the 286 CPU reset was redundant if you used a triple fault reset, and that was faster than sending out commands to a slow microcontroller on a bus...

The BIOS can change the typematic rate, and does generally offer it. The OS just sends the same commands. USB and Bluetooth are a whole different world.

(Do I remember programming TSRs to deal with the keyboard controller? Yes. Did it suck? Yes. Do we ever want to go back to DOS real mode? Like hell no. Is this relevant to the article? Not at all.)

to play Tempest properly, you need a dial controller...one that can spin very fast when you put some major rotation on it.

+1 and Tron. One of my favorite games, but practically unplayable without a rotary paddle.

Ya know, I still have my 2600's paddle controllers. Maybe it's time to break out a wiring guide and see if I can't adapt them for this. While not exactly the same as a true weighted analog rotary controller in function, it would be fun to tinker anyhow.

The Atari joystick/paddle ports connected to the Pokey chip, a marvel of custom silicon:

You'd need to get some sort of A/D conversion going. It wouldn't need to have a very fast sampling rate (the Pokey was timed to TV vertical sync), and 8 bits is fine. The microphone input would be overkill for this, but should work as long as there's access to the hardware.