Skip to content

ARM-OS handhelds ​

The N-Gage, Gizmondo, GP32 and GP2X run ARM code on an operating system. Study a game's imports and OS calls as closely as its CPU code, as for a Windows PE game. Ghidra's ARM module covers all four devices. Unicorn's ARM support can run their functions (Ghidra Processors on GitHub; Unicorn Engine).

The devices ​

DeviceYearsCPU and clockMedia and formatGhidra supportEmulator with a debugger
Nokia N-Gage, QD7 October 2003 to 26 November 2005 (West)ARM920T at 104 MHzMMC cards; Symbian OS 6.1, Series 60ARM built inEKA2L1 (GDB stub not confirmed)
Gizmondo19 March 2005 to 6 February 2006Samsung S3C2440 (ARM9) at 400 MHzSD or MMC; Windows CEARM built inNone sourced
GP3223 November 2001 (KR)Samsung S3C2400X01 (ARM920T), 20 to 133 MHzSmartMedia, 2 to 128 MBARM built inNot confirmed
GP2X, F-20010 November 2005 and 30 October 2007 (KR)MMSP2 MP2520F: 200 MHz ARM920T host, 200 MHz ARM940T coprocessorSD (SDHC on the F-200 with firmware 4.0 or later); LinuxARM built inNot confirmed

Nokia N-Gage ​

Hardware ​

Nokia's N-Gage came out on 7 October 2003. It was discontinued in Western markets on 26 November 2005. It uses an ARM920T at 104 MHz, a 2.1-inch 176 by 208 TFT with 4,096 colours, and Symbian OS 6.1 with Series 60 (1st Edition). Games came on MultiMediaCard (MMC) cards.

The N-Gage QD shipped on 26 May 2004 in Europe, Africa and Asia-Pacific. It reached the Americas in June 2004. It has the same S60 software, without MP3, FM radio or USB. N-Gage 2.0 was a service on Nokia smartphones from April 2008 to October 2009. Pirated N-Gage games ran on other phones of the time such as the Nokia 3650 (Wikipedia: N-Gage).

Tools ​

EKA2L1 is a C++17 Symbian OS and N-Gage emulator. It emulates the Symbian kernel. It reimplements the app servers and libraries. It supports nearly all official N-Gage and N-Gage 2.0 libraries. It also supports most game libraries from S60v1 to Symbian Belle. Builds exist for Windows, macOS, Linux and Android (EKA2L1 GitHub). Whether it has a GDB stub is not confirmed.

For an exact reimplementation ​

EKA2L1 reimplements the OS at high level. Code that depends on exact OS behaviour may differ from a real N-Gage. To run a single function under Unicorn, write stubs for the Symbian calls it makes.

Gizmondo ​

Hardware ​

The Gizmondo came out in the UK on 19 March 2005 and in the US on 22 October 2005. It was discontinued on 6 February 2006. It uses a Samsung S3C2440 (ARM9) at 400 MHz and an Nvidia GoForce 3D 4500 GPU. It has 64 MB of SDRAM, 1.2 MB of graphics SRAM and 64 MB of ROM. Its 2.8-inch 320 by 240 TFT runs Windows CE. Games come on SD or MMC. It also has GPS, GPRS and a camera. Fourteen games were released. Only eight reached the US (Wikipedia: Gizmondo).

Tools ​

No emulator is known for it.

For an exact reimplementation ​

To run a single function under Unicorn, write stubs for the Windows CE calls it makes. GPS, GPRS and the camera are outside inputs (Handheld practices).

GP32 ​

Hardware ​

Game Park's GP32 came out in South Korea on 23 November 2001. Its Samsung S3C2400X01 (ARM920T) runs from 20 MHz up to 133 MHz. Some units reach 166 MHz or more. It has 8 MB of 16-bit SDRAM, a 3.5-inch 320 by 240 TFT with 16-bit colour, and SmartMedia cards of 2 to 128 MB at 3.3 V. A free C SDK was available. Game Park's firmware launches programs. Alternative firmware removed the need for the "Free Launcher" (Wikipedia: GP32).

Tools ​

The GP32's executable formats are not confirmed. Neither is any emulator with a debugger.

GP2X ​

Hardware ​

GamePark Holdings' GP2X came out in South Korea on 10 November 2005. The F-200 followed on 30 October 2007. Its successors were the Wiz (announced 26 August 2008) and the Caanoo. The MagicEyes MMSP2 MP2520F pairs a 200 MHz ARM920T host with a 200 MHz ARM940T coprocessor. It has 64 MB of SDRAM and 64 MB of NAND. It takes SD cards, with SDHC on the F-200 with firmware 4.0 or later. It runs Linux on a 3.5-inch 320 by 240 screen with 65,536 colours. The F-200 added a touchscreen and a d-pad (Wikipedia: GP2X).

Tools ​

No emulator with a debugger is confirmed.

Code: Apache 2.0. Content: CC0 1.0. No game material: bring your own copy.