Playing StarCraft On An ARM

Starcraft

Except for the really terrible Nintendo 64 port, StarCraft has always been bound to desktop and laptop PCs. Blizzard could take the code for StarCraft, port it to an ARM platform, put a version on the Google Play an iTunes store, and sit there while the cash rolls in. This would mean a ton of developer time, though, and potentially years tracking down hard to find bugs.

Or one random dude on the Internet could port StarCraft to an ARM platform. Yes, this means all the zerg rushes and dark templar ambushes you could possibly want are available for tablets and Raspberry Pis.

This godlike demonstration of compiler wizardry is a months-long project of [notaz] over on the OpenPandora team. Without the source for StarCraft, [notaz] was forced to disassemble the Win32 version of the game, convert the disassembly to C with some custom tools, and recompile it for ARM while linking in all the necessary Win32 API calls from the ARM port of Wine. Saying this was not easy is an understatement.

If you have an OpenPandora and want to relive your heady days of youth, you can grab everything you need here. For anyone without an OpenPandora that wants to play StarCraft on a Raspi, you might want to get working on your own recompiled port. Video below.

24 thoughts on “Playing StarCraft On An ARM

    1. not at all, you’re speaking about a windows emulator…
      this is a static recompilation of the software, it runs natively on the ARM with much greater performance than if it was emulated

        1. Winulator isn’t (wasn’t?) an emulator, it used similar techniques. IIRC, the creator wanted to do the same thing with Starcraft, but didn’t finish it.

  1. Well looks like my Youtube watch count will go up again…

    -Not the person that ported this, just made the video.

    1. Also doubt the link shared will work on the Pi, OpenPandora’s port is an ARMv7 with using NEON.. the Pi is ARMv6 and lacks NEON. AFIAK Notaz( the person that ported this) never opened the code.

  2. and let’s now hope Blizzard is kind enough to release the sourcode so we can port this to everything and become the new ‘doom test’

    1. This is an interesting point.. Blizzard and ‘kind enough’ have NEVER gone hand-in-hand. Blizzard, is by far the most known for bringing in the lawyers when it comes to their property. I didn’t really even think about it when I read this post that while what he did was awesome, especially being up on here getting all the attention (that is DOES deserve), he’s just lit a path right to his house for the legal team and their cease-and-desist letter, or so I imagine, sadly enough.. One thing is for sure, emu teams of all kinds working on all sorts of projects are looking for you, random dude, cuz you are just about what every good dev team needs! :)

  3. Yet another reason I’m kicking myself for selling my Pandora. Truly had a love hate relationship with that thing, but it was really a unique form factor that still hasn’t been filled.

  4. Never mind the Starcraft, I want to know about the tools! x86 -> C -> retarget is a technique I’ve considered doing myself, and occasionally I see others doing it, but there’s never any reliable source :(

    1. On a port that still requires a legitimate purchased copy of the game to run and as of now only runs on an obscure handheld device with only ~5000 units out in the wild.. I think blizzard has bigger things to worry about..

        1. Blizzard is no more protective of their IP then a legion of other companies. I really, really doubt this will be an issue as long as he sticks to SC1 and does it in a way that requires users have a legit copy.

  5. thats awesome, i was hoping in the long-term someone might disassemble and rebuild starcraft with open code, it’s been done for a couple of sonic games on megadrive but this is probably a whole lot more difficult!

  6. So you spend months working on this port but can’t spare 5 minutes to properly set up a camera? It’s always such a waste to see great projects where they don’t take the time to document it in a good way.

    1. Actually I only made the video that has been spread around, I had nothing to do with the static recompile. I linked in a previous post an article Notaz shared details of his process and tools.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s