Skip to content

Magnavox - Odyssey2 / Phillips Videopac+ (O2EM)

Background

O2EM is an open source multi-platform Odyssey2 / Videopac+ emulator. The Odyssey2 (Videopac/Jopac in Europe) was a video game console created in the late 70s.

The O2EM core has been authored by

  • Daniel Boris
  • Andre de la Rocha
  • Arlindo M. de Oliveira

The O2EM core is licensed under

A summary of the licenses behind RetroArch and its cores have found here.

BIOS

Required or optional firmware files go in the frontend's system directory.

Filename Description md5sum
o2rom.bin Odyssey2 BIOS - G7000 model - Required 562d5ebf9e030a40d6fabfc2f33139fd
c52.bin Videopac+ French BIOS - G7000 model - Required f1071cdb0b6b10dde94d3bc8a6146387
g7400.bin Videopac+ European BIOS - G7400 model - Required c500ff71236068e0dc0d0603d265ae76
jopac.bin Videopac+ French BIOS - G7400 model - Required 279008e4a0db2dc5f1c048853b033828

Currently the libretro core only works with the o2rom.bin. As a workaround for playing Videopac+ games, you can rename the g7400.bin firmware file into o2rom.bin, and the core plays it correctly as a Videopac+ game.

Extensions

Content that can be loaded by the O2EM core have the following file extensions:

  • .bin

RetroArch database(s) that are associated with the O2EM core:

Features

Frontend-level settings or features that the O2EM core respects.

Feature Supported
Restart
Saves
States
Rewind
Netplay
Core Options
RetroAchievements
RetroArch Cheats
Native Cheats
Controls
Remapping
Multi-Mouse
Rumble
Sensors
Camera
Location
Subsystem
Softpatching
Disk Control
Username
Language
Crop Overscan
LEDs

Directories

The O2EM core's library name is 'O2EM'

The O2EM core saves/loads to/from these directories.

Frontend's State directory

File Description
*.state# State

Geometry and timing

  • The O2EM core's core provided FPS is 60 for NTSC games and 50 for PAL games
  • The O2EM core's core provided sample rate is 44100 Hz
  • The O2EM core's base width is 340
  • The O2EM core's base height is 250
  • The O2EM core's max width is 340
  • The O2EM core's max height is 250
  • The O2EM core's core provided aspect ratio is 4/3

Core options

The O2EM core has the following option(s) that can be tweaked from the core options menu. The default setting is bolded.

  • Virtual keyboard transparency [o2em_vkb_transparency] (0%|10%|20%|30%|40%|50%|60%|70%|80%|90%)

Joypad

RetroPad Inputs User 1 input descriptors
Up
Down
Left
Right
Action / Press Key (Virtual Keyboard)
Move Virtual Keyboard Up/Down
Show/Hide Virtual Keyboard
RetroPad Inputs User 2 input descriptors
Up
Down
Left
Right
Action

In some games, for example UFO/Satellite Attack, the original had the joypads swapped so that Player 1 was on Joypad 2. If you only use one Joypad, a workaround is to provide identical assignments of both Retropads to one joystick and save it as Game Remap or Core Remap.

Keyboard

RetroKeyboard Inputs O2EM Inputs
Keyboard Return Enter
Keyboard Space Space
Keyboard Minus - -
Keyboard Period . .
Keyboard Slash / /
Keyboard 0 0
Keyboard 1 1
Keyboard 2 2
Keyboard 3 3
Keyboard 4 4
Keyboard 5 5
Keyboard 6 6
Keyboard 7 7
Keyboard 8 8
Keyboard 9 9
Keyboard Equals = =
Keyboard Question ? ?
Keyboard a a
Keyboard b b
Keyboard c c
Keyboard d d
Keyboard e e
Keyboard f f
Keyboard g g
Keyboard h h
Keyboard i i
Keyboard j j
Keyboard k k
Keyboard l l
Keyboard m m
Keyboard n n
Keyboard o o
Keyboard p p
Keyboard q q
Keyboard r r
Keyboard s s
Keyboard t t
Keyboard u u
Keyboard v v
Keyboard w w
Keyboard x x
Keyboard y y
Keyboard z z
Keyboard End Clear