darkfader.net <- Game Park 32 <- more H/W


On this page I will put pictures and descriptions of GP32 internals and hardware hacks.
I'll take no responsibility for damages etc...

For JTAG, check ARM and EXT page


pics - I found more pictures of the internals! these are higher resolution :)
pcb_front.jpg - S3C2400X01-EERO (CPU), LPC3600 (display timing controller), AT49BV040-90VC (flash memory)
pcb_back.jpg - SMC socket, HY57V641620HG (main memory)
display_back.jpg - the back of the display look exactly like the front of the display. weird uh
partlist.txt - some part numbers


disassemble.txt - disassemble & modification guide :)


screenshot - Real Time Clock (RTC) test program

clock.zip - v1.00 - a simple analog clock RTC program. use L/R buttons to select number and up/down to change the value.

Update!!!: You actually need to disconnect the pin on the CPU leading to C8... it is connected to the core power of the CPU and thus will drain the backup battery. Soo... it's recommended not to apply this patch and just wait for the GPi or something. Sorry.
However, you can still try out the clock demo.

Memory upgrade

GP32 contains only 8 MB SDRAM, which might not enough for some that try to run linux :)
You also might want to do this to get more than ~160MHz (memory runs at 1 or 1/2 speed of main clock).


Configuration Mosel Vitelic Samsung Infineon (Siemens) Toshiba Micron Elpida (NEC, Hitachi) Hynix (Hyundai) Alliance Goldstar (=Hynix?) Mitsubishi Fujitsu
4Mx16 (8MB) V54C365164V K4S641632, KM416S4020/21/30/21 HYB39S64160 TC59S6416 MT48LC4M16 uPD4564163 HY57V641620 AS4LC4M16S0 GM72V661641 M5M4V64S40 MB81F643242
8Mx16 (16MB) V54C3128164V K4S281632, KM416S8030 HYB39S128160 TC59SM716 MT48LC8M16 uPD45128163 HY57V281620 N/A GM72V281641 M5M2V28S40 ?

16Mx16 (32MB)

V54C3256164V K4S561632 HYB39S256160 TC59SM816 MT48LC16M16 EDS2516 HY57V561620 N/A ? ? ?
32Mx16 (64MB) N/A K4S511632 HYB39S5121600 N/A N/A HM5257165 HY57V121620 N/A ? ? ?

You can stack onto the existing chip (piggybacking), but I would recommend to replace it. (use a thin wire and heat the solder).
Other info: 4 banks, 3.3V, LVTTL, TSOP, PC133, CL3
32MB and up do need pin 36 (A12).

address count calculation for 8MB:
CA0-CA7 (A10=auto precharge flag) -> 8
RA0-RA11 -> 12
4 banks -> 2
16 bits -> 1


Maybe one can rip off a chip of a DIMM or SO-DIMM.
sdram module sizes

Unfortunately I have only these DIMMS:
133-512MB: 16 x 5225805BTT75, 32Mx8 (if it only contained 16 bit chips :/)
133-128MB: 8 x PQ3S816S75-8-T, 8Mx16 (hmm.. small :/)
100-128MB: 8 x TMS3808B4E-7, 16Mx8

CPU upgrade

I get a lot of questions about upgrading the CPU...
Just forget it and buy some PDA. Incompatible pin-layouts of other similar chips would require a LOT of small wires.

Front light

gpzigi has some pictures of front light tests
minebea has some front lights

Tilt sensor

I just received two samples of the ADXL202JE accelerometer. It has Pulse Width Modulation (PWM) output and measures up to 2G in two directions. So I'll just go find 2 unused pins on the S3C2400X... ;)




Line input

1V/3.3V*1024=310.3... so without amplifier you can get 8 of 10 bits resolution.

Other ideas

- touchscreen
- more buttons, could be analog too
- reset button
- SMC access led
- flash memory write protection (could be software)
- eeprom write protection (dedicated WP signal)
- SMC read-only check (probably need software change only or connect WP signal to read-only detection pin)

DC adapter

Instead of getting the official DC adapter, you could use a GBA DC adapter and swap the polarity to make it work for GP32.
This is very handy if you want to power the GP32 without needing clumsy batteries.


hmm... do you have some hacks too? ;)

(C) Copyright Dark Fader