Atari 800

Atari 800
Ingame screenshot
Download(s) (archive)
Version v1.2
Status Released and playable
Webpage Homepage

An Atari 800 emulator released by Foft. Source code here.


  1. Copy the roms folder into the sd card root (note: when extracting archives, you will see a 'gpmm' directory. This dir must be moved to the SD card root and renamed 'roms').
  2. Copy the atari800.gpe into the sd card root


On startup you are presented with the emulator "ui" menu. Options should be self-explanatory, but I'll at least tell you the controls:

L shoulder
virtual keyboard

(These can now be redefined in -> see below for menus)

To get started select disk management, then select the first entry. From the file selector choose an ATR file. Then hit escape twice to go to the emulator proper.

You can return to this ui menu at any point by holding start, select, A, B, L and R for two seconds! There are easier ways, but that one will always work. The others can be redefined. Most menus define it as left shoulder.

By default (using that the keys work as follows:

menu with most keys, navigate with joystick, presses key when you release
5200 force menu and accelerate button (can't emulate an analog stick with a digital well)
-> Select
-> Start
-> Option
L, R & START held
ui menu (hold for fast forward)
virtual keyboard

To have a more custom setup you need to write a menu (.men) file and put it in \gpmm\a800\menu\

There is an example of this for Star Raiders ( This does the following: R -> Toggle through views B -> Hold and use up/down on joypad to change speed SELECT -> Press for menu for other, less common, actions

Keyboard map files are loaded from the ui screen. The active keyboard map is also saved with the save state, so you don't need to select each time you start a game...

Version History

  • 0.1
    • First release in theory -> only went to a select few on IRC
  • 0.2
    • Fixed sound bug
    • Added reset/reboot back to the emu menu
  • 0.3
    • Added option on R key in
    • Added option to B menu in
    • Fixed screen drifting problems
  • 0.4 (Yeah I know its been ages. Moving house... I've only done this one to avoid packing!)
    • Fixed screen drifting problems properly -> tum tee tum!
    • Added seperator into menu (to stop accidentally restarting GP32)
    • Auto Frame skip can be disabled (needed for Mountain King because of collision detection bug).
    • GTIA/CTIA artifacting switched (as in 1.3.0...)
    • Artifacting stored in save state
    • Joystick 0/1 can be mapped (Needed for several pinball games (see and
    • now has lower case keys (Still no decent keyboard entry though)
    • Cut fpk was missing menu files in previous versions (so no input!)
  • 0.4a (Not a proper release, just a patch to make arrow keys work on Rescue on Fractalus. Fxe only is available here)
  • 0.5
    • Simple chatboard support (More to come -> can't do control keys yet etc.)
    • Timing fix
    • Built with GCC 3.4 so may be quicker? Nothing really noticeable though.
  • 0.6
    • Merged with atari800 v1.3.2 source
    • Built various speeds
    • Added builds with cycle exact emulation (slow but good... See picture)
    • Fixed 130XE bank switching
    • Added virtual keyboard (press L+R together)
    • Fixed ATZ, DCM support
    • Savestates are gzipped (slowish, no option to disable yet)
    • PCX files are stored in the state dir, rather than root
    • Savestate filename can be typed
    • Savestate filename can be based on current menu or first disk
    • Added extra chatboard keys
    • Used proper libc port - wrote (another?) syscall.c in terms of gp sdk
  • 0.7
    • Splashscreen by Antiriad
    • Clock speed selection
    • Switched to better compiler build/flags (10% faster ish)
    • Fast forward support (hold left shoulder in default/5200 menu)
    • State file management (startup in state, rename, delete)
    • Restructured menu a bit
    • Fixed a few bugs...
  • 0.8
    • Merged GP2X and GP32 versions (mostly)
    • Added ZIP file support
    • GP2X:Added clock speed change (Fast forward uses 250, let me know if it crashes for you)
    • GP2X:Fixed crash when displaying onscreen keyboard
    • GP2X:config now go in /mnt/sd/roms/a800 (i.e. move it from gpmm/a800 to roms/a800)
    • GP2X:Switched to 8-bit mode
    • GP2X:Added X and Y buttons
    • GP2X:Stereo works (thanks to Rlyeh again)
  • 0.9
    • Bumped emulator core to 2.0.1
    • Moved CPU clock speed into external script, seems to differ depending on peoples LCD prefs etc.
    • I included cpu_speed_light, cpu_speed built with dietlibc and an example script
    • Added 16-way input and simple speed control for 5200
    • Added default menus for people who put the config in the wrong place!
    • Now uses proper atari800 config file, so things can go anywhere. I included an example.
    • Still accesses /tmp (booo), but I included the Linux ramdisk module. I recommended mounting /tmp on that.
    • Lots of other things I've forgotten
  • 1.0
    • Fixed savestates (You can't load 0.9 ones since they were broken, delete them)
    • Added 16-bit HiFi Pokey (Off by default, slow in some programs)
    • Config file is now atari800.cfg (not .atari800.cfg) and autogenerates better
    • Fixed 5200 controls in
    • 5200 digital controls mode
    • Improved palette
    • Improved timing
    • Fixed NTSC sound
  • 1.1
    • No idea...
  • 1.2
    • DPAD fixes for modded F100s and F200s. Just a build I did for DaveC iirc... Since its on the archive and F200 has a DPAD as standard thought I should upload it here.
    • Gizmondo port...
Personal tools