### EMame: A port of MAME for EPOC32

What is it?

MAME stands for Multiple Arcade Machine Emulator. When used in conjunction with a game's data files (ROMs), MAME will more or less faithfully reproduce that game on a PC. MAME can currently emulate over 1500 classic arcade video games from the '70s and '80s. The ROM images that MAME utilizes are "dumped" from arcade games' original circuit-board ROM chips. MAME becomes the "hardware" for the games, taking the place of their original CPUs and support chips. Therefore, these games are NOT simulations, but the actual, original games that appeared in arcades. MAME's purpose is to preserve these early decades of video-game history. As gaming technology continues to rush forward, MAME prevents these important "vintage" games from being lost and forgotten.
For more information visit the official MAME web site.

EMame is the port of MAME to EPOC32 and can be used on Psion devices such as the Series 5mx.
The current version of EMame is 1.1 and is released under the GNU General Public License.

How to install

There are two steps involved in installing EMame:

Install the binaries

Unzip `emame.zip` and copy the contained files over to your Psion device, maintaining the same folder structure as in the zip file. There is no need to copy any of the files in the \emame\doc folder. The folder structure looks like below. Files may either be stored on the C: or D: drive; EMame searches D: first.
Either before or after, you need to install stdlib.sis - this will put estlib.dll in the libs directory.

`\emame\app\emameapp.app`
`\emame\app\emameapp.rsc`
`\emame\app\emameapp.mbm`
`emame.exe`

Notes

- Normally the 'system' folder is hidden. To see it, tick 'Show system folder' in the dialog you get when selecting the menu item Tools->Preferences in EPOC's System Application.
- Emame.exe may be stored in any directory. You start EMame by starting `emame.exe`.

Install game roms

Just as for MAME, playing games in EMame require game roms. These games are zip files containing the rom images for one or more games. For example, the rom images for 'pacman' and all the 'pacman' clones are in pacman.zip. No one is allowed to distribute ROM images with MAME, so EMame doesn't either. Rumors have it that www.mame.dk might have a 'few' rom files :-). Here's the romlist for the current version of EMame. You don't need to install all zip files, just the ones for the games you want to play.

These zip files should be stored (no need to unzip them) in either `c:\emame\roms` or `d:\emame\roms`.
EMame will search on D: first when looking for game roms.

EMame version history

Version 1.2:

- Massive performance improvement on the Series 7 (1.5 x faster) and Netbook, less so for the Series 5mx. I simply compiled EMame using the gcc toolchain in ER6, so I could finally use some decent optimisation options. Appearently thay are more effective for the Series 7 than the 5mx. On the Series 7, games run at full speed with almost perfect sound.
- Enabled sound by default on the Series 7.

Version 1.1:

- Emame now supports 592 games, all of which run on Z80 CPUs.
- Sound. The good news is that EMame now supports sound. The bad news is that I have some difficulty keeping it synchronised with video. Also, as could be expected, it's quite bad for performance. You have to enable sound via the menu option (Game->Options).
- Implemented a simplistic throttle mechanism for Series 7/netbook. The granularity of EPOC timers isn't that good so I have implemented it by drawing bitmaps twice once in a while depending on the current framerate. It's far from perfect but alas.
- Added support for Gray16 and Color4K. EMame now fully supports frame buffer access for Gray4, Gray16 and Color256 and Color4K modes. The Color4K is needed for Quartz devices.
- First attempt to scale up games for the Series 7/netbook. For example, pacman can be played in its default size of 224x288 or in 370x480 (interlaced). I'm not very pleased with how the upscaling looks. Some advice on how to do this better is greatly appreciated.
- Unfortunately, I have not been able to include anyone's favorite games. Sorry!
- Added an FAQ.
- Fixed games:
- punch out & super punch out did not work. Fixed by increasing maximum heapsize

Version 1.0: Initial version.

Feedback

Send feedback to: EMame maintainer
Web: EMame home page