The GP2x PDA

A PDA focused on games and GNU/Linux

Download the whole article as PDF

Write a full post in response to this!


Games under GNU/Linux have usually been a lacklustre affair. For every Tux Racer, there are a hundred sub-standard Pac-man clones you’d be embarrassed to advocate. For every commercial version of Quake, there’s a hundred other worthy games the publisher elected not to port to GNU/Linux. Without good games, there’s no market, and without the market, no effort is spared. And so the cycle continues. In this article, I will look at two of the areas in which GNU/Linux games have succeeded, and a new device that combines them both, which could help expose GNU/Linux to the populous.

Two success stories

There are two main areas in which GNU/Linux games appear to thrive. The first is through the home-brew market of 2D platform and arcade games. Many of these are not necessarily written for GNU/Linux as a platform, but developed using a cross-platform API enabling a Windows code base to be ported across to GNU/Linux with the minimum of effort and vice-versa.

The most popular API for this task is SDL.

SDL

SDL (Simple DirectMedia Layer) is a low-level game API that supports cross-platform development for graphics, audio and joystick input. It isn’t the only cross-platform API available (Allegro and G2 spring to mind in the 2D arena) but it’s probably the most widespread. Having been started in 1997 by Sam Lantinga, it has grown beyond its humble beginnings, and now supports a myriad of platforms across most operating systems. There are several GNU/Linux ports, including those for PlayStation Linux and Dreamcast Linux, and the API has been used in countless games because of its simplicity of use, stability, and power.

Emulation

It is often argued that one of things free software developers do better than anyone else is re-engineer (that is, rebuild existing software in a better way). Whether it’s true or not, the free software community has provided the world with a wealth of good emulation software, encompassing an entire range of 8- and 16-bit games consoles and home computers. It is for this reason that emulation can be considered the second of the big games-oriented contributions by free software.

Enter the GP2x

One place where the SDL and emulation meet is with the GP2x. This is a new handheld games console designed and built by GamePark Holdings (GPH), and was released in South Korea in November 2005. To a very large degree it has been marketed as a portable entertainment player, and comes ready to play DivX and XviD movies, view photographs, read text files, and play MP3 and Ogg Vorbis music tracks. However, coming from the same genealogy as the GP32, GPH have adopted a games-style form factor with joystick, shoulder buttons and, now standard, ABXY controls.

In any other life, the GP2x would be the illegitimate offspring of a game console and an MP3 player. But, what sets the GP2x apart from other media players and PDAs is its use of embedded GNU/Linux as an operating system. Naturally, this allows anyone to develop for it or even change the underlying system itself.

The GP2x
The GP2x

The use of GNU/Linux has allowed the GP2x to harness the rabid user base of developers and bedroom coders giving them a real opportunity to work on a handheld console. Armed with free software, developers can build software for the GP2x without the corporate intervention of Sony or Nintendo.

What’s so special about a handheld console?

The first computer games were simply board games played on computer; multi-player games were single player games that supported more players; and network games were multiplayer games with a network option. So, the first generation of handheld games were (and are) “normal” games compressed to play on a handheld. Previously, the impetus to do something new was controlled by the gilded minority at Nintendo HQ. But in the hands of creative free software developers, these boundaries can be removed with the availability of a free console, such as the GP2x, and a free development environment. And unlike the Indrema, this exists!

However, from the point of view of many developers, a handheld console introduces nothing but problems: it has a small screen, limited input, poor audio, and a fixed hardware set eliminating any attempt at scalability. Despite these apparent limitations, the machine is capable of: running a respectable version of Quake; running Mame; emulating the Commodore 64, ZX Spectrum and NES, among many others; and playing movies.

The nature of handheld devices changes the type of games that are possible

The current generation of GP2x software is focused in the games arena, with developers writing and porting a wealth of emulators to the console. But, emulation gives the opportunity to provide casual games with little outlay. Then, native applications are only a step away for those who wish to push in new directions, since the nature of handheld devices changes the type of games that are possible, and available.

Behind the scenes

The device itself is a relatively compact 143.6 x 82.9 x 34mm, but still holds two ARM CPUs (both running at 200 Mhz), an SD (Secure Digital) reader and 64MB of non-volatile NAND memory. This is done by employing the MP2520F “system on a chip” from MagicEyes, which combines both ARM chips, along with the video and graphic processors and various I/O components in a single component form factor.

GP2x Specification

CPU (dual core) ARM 920T (200MHz, MMU) and ARM 940T (200MHz, no MMU)
NAND Flash memory 64MB
RAM 64MB (each core is able to access 32MB of it)
Storage Secure Digital (SD) memory card, sizes up to 1GB are supported, although version 1.10 of the firmware reports an upper limit of 2GB
Connection USB 2.0, without host control
Display 320 x 240, 3.5 inch TFT LCD
I/O Stereo speakers. Headphone socket. TV output cable (available seperately)
Power 2 x AA batteries (but only rechargeables make sense!), 3.3 V AC (adapter not supplied)

Technical information

Don't miss out on the other pages!
123next ›last »

Write a full post in response to this!

Similar articles

0

Do you like this post?
Vote for it!

Copyright information

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at http://www.gnu.org/copyleft/fdl.html.

Biography

Steven Goodwin: When builders go down to the pub they talk about football. Presumably therefore, when footballers go down to the pub they talk about builders! When Steven Goodwin goes down the pub he doesn’t talk about football. Or builders. He talks about computers. Constantly... He is also known as the angry man of open source. Steven Goodwin a blog that no one reads that, and a beer podcast that no one listens to :)

Terry Hancock's picture

I am so looking forward to developing for this platform

Submitted by Terry Hancock on Wed, 2006-05-31 07:15.

Vote!
0

I'm really hoping I'll be able to get my current game project to work on this platform.

This should be pretty easy. With SDL already ported, PyGame should be a no-brainer, and then it's just a matter of making sure the game design fits the specs on the machine (screen size, joystick capabilities, no mouse or keyboard requirements, etc).

Readers should also be aware that there is a "MK2" GP2X coming out which will double the screen resolution to 720x480 (which is a much more useful spec, IMHO).

(Nitpick: I think you meant "no effort is made" in paragraph 1, "no effort is spared" means the exact opposite, of course, as in "No effort was spared to bring you the best possible X".).

Anonymous visitor's picture

lol

Submitted by Anonymous visitor on Sun, 2007-02-18 16:12.

Vote!
0

720x480? What was this guy smoking?

Anonymous visitor's picture

hehe

Submitted by Anonymous visitor on Tue, 2007-02-27 22:33.

Vote!
0

nothing, he just didn't read the specs :) All GP2x have 320x240 LCD and 720x480 HDTVout.

Bigballs's picture

man the gp2x will stay at

Submitted by Bigballs (not verified) on Thu, 2007-08-30 09:47.

Vote!
0

man the gp2x will stay at 3.5" screen and there will be no changes to it and what do you think they call it portable for nothing you think i will take withe me a 720x480 console lol


From the FSM staff...

Odiogo