I'm looking to experiment on a portable console platform ala Nintendo DS and PSP. But it could also be GP32, GP2X, GP2X Wiz or GP2X Caanoo.

So, before I go out and buy one, I'd like to hear from people who have experience with any portable console.

It would be best if each answer talked about one console with a link, pros, cons and personal experience (if any).

NOTE: I'm not looking for a mobile platform like iOS/Android/etc. I already know the answer to that: Android (I already have an Android device and I know Java). I'm specifically looking for a handheld console. See NopeAndNever's answer.

  • 1
    \$\begingroup\$ Consoles aren't all that easy to develop for even when you have the proper tools, handhelds probably moreso because of the hardware. That being said, you should probably start by trying to get hold of a homebrew kit (I believe NDS/GBA are quite easy to get hold of) and testing on an emulator first, before whipping out your wallet. \$\endgroup\$ – Jonathan Connell Sep 30 '11 at 8:04
  • \$\begingroup\$ Regarding the edit - in other words, you are looking for "extended discussion". \$\endgroup\$ – user744 Sep 30 '11 at 17:20
  • \$\begingroup\$ I wanted each answer to describe a console platform just like any other question that asks for a list of X (best blog, best resources, etc). \$\endgroup\$ – pek Sep 30 '11 at 17:29
  • \$\begingroup\$ @pek Maybe you should try to refine the question to ask for links/tutorials for the consoles you would actually like to develop for. You may get more precise answers. The fact that it's 'easy' to develop for shouldn't be part of the question though IMO. \$\endgroup\$ – Jonathan Connell Sep 30 '11 at 18:53
  • \$\begingroup\$ @JonathanConnell I followed your advise. Hope it's better. \$\endgroup\$ – pek Sep 30 '11 at 19:35

I'm not really a pro but you can look into the following consoles: (both are linux powered --> ease of development)

You can program in every program language that has a toolchain for ARM when developing for Linux in embedded devices, that gives you many possibilites instead of using a propretary SDK

Dingoo A320 http://dingoowiki.com/index.php?title=Main_Page (look for dingux)

'Made in china' but with a nice community and many emulators, but you have to flash the linux yourself (again, look for dingux), I own one of those, they are 'good' but not 'nice'

Open Pandora http://openpandora.org/index.php?lang=en

Made in Germany, a linux handheld with dual analog sticks, a keyboard and overall good hardware (afaik 600 MHz Core + dedicated GPU + 800x480 display) are a +, but the availability of a console may be a problem (they are producing as fast as they can)


NDS: Weak hardware (except you know EXACTLY how to use it), probably pretty hard to efficiently code

PSP: Good hardware, homebrew is 'ok', can be signed by now (will run on any console) but is hard to use (you should know what texture swizzeling for the GPU is etc. to make a game run halfway decent)


I have only tried development with the DS and the PSP, myself, and I've found the PSP to be a vastly nicer system to work with. The DS required a lot more hardware when I last looked into it -- I imagine some of these limitations have been worked around more recently, however.

Both are, of course, going to be a little tedious because of the fact that they are consoles and the fact that you'd be developing on them via unsupported means (and so jumping through some hoops, et cetera).

Developing on the PSP works best with older machines -- the "fat" original PSP seems to be the most broadly supported. You used to have to obtain a tool-mode battery -- either by purchasing one or making one yourself by taking apart a regular battery and applying a soldering iron. With that battery you could use some software to create a bootable memory stick that would let you install custom firmware to the device.

That may not be necessary any longer, however, it looks like the latest versions of the custom firmware installers available can simply be copied to a memory stick and launched from the standard firmware OS, which seems nice. They have to be re-run every time the machine suffers a hard power off though.

The PSP homebrew dev kit I used is here. They have toolchains for a number of other platforms as well.

I built a (very small) CLR implementation for the PSP using this setup (it could run most C# programs with simple console output as long as they didn't thrown exceptions, because I never got around to implementing that). With some judicious use of batch files or shell scripts you can make the code -> build -> deploy -> test loop fairly quick, although it's always going to be more annoying than simple PC development.


GLBasic is a very simple language with tons of features.

On it's features page, it lists the following as supported devices:

  • GP2X
  • GP2X-Wiz
  • GP2X-Caanoo
  • Pandora

It can do 2D and 3D, plus supports many other platforms and devices. They have a free version that you can check out, and when you're ready to test on those devices you can purchase the premium version for fairly cheap.

[Edit] Hmm, I don't know why this got down-voted? It is a valid answer, it just doesn't allow Nintendo devices, which most don't, and the OP did state it could be for the GPxx devices, which this does.

GLBasic allows most other platforms and since your main concern is 'ease of development' let me just say that it doesn't get any easier than with this SDK. Using BASIC for it's base language, you can get results quickly. It has most features that you may need, especially if you are new to game programming.

One limitation is that it doesn't have a native physics engine, but there is a Box2D wrapper in the forums. Any questions are usually answered quickly in the forums, and most by the developer himself. Bug fixes are quickly resolved and updates are frequent.

[Edit 2] I realize my answer was about how easy GLBasic is to program, and not specifically how easy the listed devices are to develop for. Maybe I should have worded it to say the GPxx devices are easy to develop for since SDKs such as GLBasic exist, which allow you to program your game using a simple language, then compile and deploy to your devices with a few clicks.


Not the answer you're looking for? Browse other questions tagged or ask your own question.