The GP2X has two ARM9 cores in a SoC fashion, each running at 200 MHz (software clockable). The ARM920T core is the main processor with 16K I- and D-Caches and MMU for virtual addressing. The ARM940T core is an additional processor with a PU (Protection Unit) instead of a MMU and 4K I- and D-Caches. See Docs and Papers for more details.
The GP2X has a 2D acceleration engine, with native 16 bit color. It is capable of blitting from one surface to another, with optional transparent color and color depth conversion.
The GP2X has firmware media decoding capabilities for some audio and video formats. MPEG, MPEG2, Most DivX(Newer usually fails), Mp3, Ogg, ? (don't know what others are accessible yet)
The GP2X does not have any 3D hardware, nor does it have a FPU (floating point unit), so software 3D that relies on floating point math is very slow. A solution to this problem is to use fixed point arithmetic instead.