O2em GP2X

From wiki.gp2x.org
Download(s) (archive)
Developer(s) Daniel Boris, Andre de la Rocha and Arlindo Oliveira
Sean Poyser
Version 1.05 January 2008
Status Most games playable
Webpage Original Project

O2EM is an Odyssey2/Videopac emulator. Source code is included.



  • Before you can run O2EM you need a copy of the Odyssey2 or Videopac bios ROM. For copyright reasons, this ROM image can not be included in this archive. This ROM image is stored inside the 8048 processor and can be read out with the appropriate equipment. The image should be 1024 bytes long and should be in the BIOS directory.
  • You will also need cartridge images, but again for copyright reasons these can not be provided. ROMS should be located the ROMS directory.
  • If you wish to use Voice emulation for games like KC's Krazy Chase, download the voice samples and unzip them into the VOICE directory. There are two sets of voice samples, mainsamp.zip which is the main voice samples and sidsamp.zip which are the samples used by the game Sid the Spellbinder. You only need the Sid samples if you want voice in that game.

Running O2em

  • Virtual Keyboard finally implemented making most games fully playable
  • Keyboard is toggled On/Off with 'Y' button

Keyboard Controls

  • Joystick - Moves Cursor
  • X - Presses key indicated by cursor
  • Select + Joystick - Moves Keyboard
  • Start - makes keyboard transparent
  • Left Shoulder - presses Enter on keyboard
  • Right Shoulder - presses Clear on keyboard

Minor changes to 1.03

  • Some games, eg Satellite Attack/UFO automatically map the GP2X joystick to the correct joystick (for those that don't use the 'Switch Sticks' menu item).
  • Removed some key mappings:
    • L Shoulder mapped to 0 - Remains
    • R Shoulder mapped to 1 - Remains
    • Y - Removed (Use Keyboard)
    • A - Removed (Use Keyboard)
    • X - Removed (Use Keyboard)
  • Executable renamed to o2em_gp2x (ie no extension) to avoid confusion (hopefully) with the supplied scripts (as suggested by ZE_RO)

Developer's Notes

Modifications for GP2X Port (not alot)

Files changed:

  • vmachine.c
  • main.c

All changes are within "#if defined(GP2X)" and "#endif" sections

Extra functions in vmachine.c are: void EmulateKeyboard(), bool IsCommand() and void CheckForCommand().

I haven't created a rom selector, front-end or keyboard simply because the whole idea of this port was simply so that I could play Satellite Attack which I can now do!

Personal tools