Help and FAQ

User Forums
User Contributed
Developer Support
Thanks to...

User Forums

Free Stuff
Telnet BBS

Message Board
Support and Contact

GuineaPig - SEGA Genesis/Megadrive, Atari VCS 2600, Mastersystem (SMS), GameGear (GG) and NEC TurboGrafx/PCEngine (TG16) Emulator for Palm OS

GuineaPig is a freeware open source emulator of several consoles of the early to late 1980's and early 1990's, including the SEGA Genesis (Megadrive), the NEC TurboGrafx (PC Engine) the Sega Mastersystem and the Game Gear. GuineaPig is built up entirely from Charles MacDonald's excellent emulators including Genesis Plus, SMS Plus and TGemu.

GuineaPig, Genesis Plus, SMS Plus, TGemu are freeware! See the links below for details. There is no warranty implied! Use at your own risk!

SEGA, Genesis, Megadrive, Mastersystem and Game Gear are trademarks of SEGA corporation. TurboGrafx and PCEngine are trademarks of NEC Corporation. Please respect all of their copyrights and purchase their games, old and new. No rights are implied by the existance of this tool.

For help, contact support@codejedi.com


As of the alpha 001 release, GuineaPig requires an OS5 high resolution device with an expansion media card. I will likely build a mode soon so it can run on low res OS5 devices like the Treo 600. Its possible I'll build a mode so it can run without an expansion card, but for now it requires ROM's to be on expansion media.

Memory requirements vary by emulation module; the Genesis module is the big boy; the SMS/GG and TG16 modules have much lower requirements!

A lot of memory is needed in these early releases of the Genesis module, so many older OS5 units won't be able to run it. But memory requirements are going down with each revision, so if you're running out of runtime RAM and getting errors, keep trying as new versions come out. (Remember, theres device runtime RAM and storage RAM. Its the runtime RAM thats small and we need lots of)

For example, the TH55 couldn't run the 001 version of the emu, but sure should be able to run the 004 version!


For now its a bit basic, but the app is yet young. You'll need to have an expansion card (SD card, memory stick, compact flash, etc) to use the emu.

  • Install GuineaPig.prc to your device (wherever you want it to be)
  • As of 006 and later, install any emulator modules you desire; genesis.emu for genesis, smsgg.emu, or pce.emu for example. (They go in /PALM/Programs/GuineaPig with your ROMs)
  • After running GuineaPig at least once, you can just hotsync .smd files over to your expansion card. (.bin and other extensions are not managed for hotsync due to potential conflicts, but will work fine in the emu!)
  • Note that you can use .bin or .smd for Genesis, .gg for Game Gear, .sms for Sega Mastersystem, and .pce for PCEngine (TurboGrafx16) games. You need the appropriate emulator module (.emu file) to run the games of course.
  • If you're confused about getting the files to your card, consider using a card writer (USB SD writers are cheap at your local computer shop), Card Export software, hotsync, rename-trick, etc. Use Filez or FileCaddy (both are freeware) to move it around and rename it if needed.
  • You put your cartridge game ROMs and emulator modules in this directory -- /PALM/Programs/GuineaPig
  • ROMs must (for now) be unzipped; so no .zip files!
  • Atari 2600 ROMs for v014 must have file extension .vcs!
  • Thats it. Just run GuineaPig :) Pick a ROM from the listing and hit Go!

Message Board and SEGA Genesis Links:


By request I've turned up a donation box in the webstore; I build all of my free software to help support the communities I'm a proud member of, but feel free to help pay the bills of a self employed coder :)

Screenshots of GuineaPig:

Sega Genesis module:

Sega SMS/GG module:

NEC TG16 module:

GuineaPig Downloads:

GuineaPig is descended from Genesis Plus, so you may want to check out the other ports (for Windows, DOS, Mac, DreamCast, GP32, you name it)

Release notes:

alpha 012
NEW: Zodiac hardware mode
  o Genesis and TG16 only (the GG/SMS emu seams unstable)
  o Default is unscaled as always; check the Scale checkbox to enable this mode
  o When on Zodiac, scaling mode will use hardware blitting to go fullscreen
    with smoothing; this is a true fullscreen.. scaling to fill, not integer or
    other scaling.
  o When scaling, FS and Audio checkboxes will be drawn over.. but they're
    still there; tap around with your finger to locate if you want.. you can
    still alter frameskip if you want to, even though you can barely see it :)
  o FPS count is not shown when fullscreening with zodiac mode

Alpha 009:
Not a lot of free time, but a quick audio hack on all modules.

Alpha 007 and Alpha 008:
Changes to support devices with less heap RAM; more work in this area can
and will be done, but this should get Genesis going on a lot more devices!
Some rudimentary scaling and screen cleanups are now in place. New
policy in place for releases.. see above. No more spamming me :)

Alpha 006:

Yep, this one pretty much covers a lot of bases, and maybe I'll drop in the
Columbo Colecovision module as well one of these days :)

Genesis improvements here mostly impact non-Zodiacs (who have memory issues
the Zodiac doesn't have). The SMS/GG/TG16 drivers are all new and should work
pretty well, though they're "first alphas" (so theres spacing around their
screens, etc). Theres no stretch or audio implemented yet, but they run
pretty well :)

Genesis will continue to get donor and public updates alternating or
whatever; I'm undecided about the public side of TG16 and SMS/GG drivers..
they will certainly get donor-side updates, but likely not public updates
too much, since I really don't want to hurt Kalemsoft (who has remappable
keys, RAM based ROM pdbs, and other features I don't intend to add to this
free stuff, so do support them!)

Stretch and audio will be going in soon :)

This version uses loadable modules, so you can install the modules you want;
just put the .emu modules in the /PALM/Programs/GuineaPig directory with
your ROMs, and it'll use them as needed.
Alpha 004:
NEW: On lower memory units will try and move emu core and some other stuff
  into storage memory, so memory requirements to run should be a few MB
  lower. Still a long way to go, but in theory maybe units with 4-5MB of
  heap or more can run the emu. The challenge is freeing up that big 4MB
  cartridge rom block..

Alpha 003:
NEW: frameskip changable live while emu is running
  o default frameskip is now 2
  o the FPS shown is accurate, but it still feels slow; must be the emu
    core not running enough for each frame perhaps..

Alpha 002:
Assorted fixes and changes..

	1) Has the guinea pig icon in it
	2) Should be "left justified" now (let me know if not!)
	3) A touch faster (not a lot, but a touch)
	4) Emulated is the 3 button controller
	o Zodiac: the bank of 4 triggers is used; the left, right and
bottom triggers do the deeds
	o Non-Zodiac: Since the units have limited buttons (and vary by
unit) its tougher; On PalmOne 5-ways, the center button is the 3rd
button; may be jog dial on some Sony devices
	5) Start button in top right; needed on non-Zodiacs (Zodiac gray
'function' button acts as Start)

Alpha 001:
Zodiac "function" button is used for Start. Home will exit, but it might
take a moment to register.Only 2 button Genesis controller is currently

Send email to Jeff Mitchell at support@codejedi.com