The first game I tried is not an emulator but the remake of the 90's game Command & Conquer Red Alert, it's called openra.

I downloaded the AppImage, chmoded the file to 755 and it works.

At the first run, it downloads automatically the game data.

I created a few maps for openra, they are available for download at France, Crimea, Taiwan, Middle East, Baltic Sea, Turkey, Korea, Caribbean, D Tech, D Tech Water, US and Canada.

Only the person creating the network game needs to copy the map file to:

~/.config/openra/maps/ra/release-20230225/

The other players can download the map from the game interface.

Amiga

Then I installed an amiga emulator: fs-uae and fs-uae-launcher I played a few games on fs-uae, it works great.

Debian Bookworm

fs-uae-launcher is not available anymore. I create the configuration for fs-uae directly in ~/Documents/FS-UAE/Configurations/Default.fs-uae:

[config]
amiga_model = A500
floppy_drive_0 =  /home/user/Downloads/emulators/amiga/Double Dragon (1989)(Virgin).zip

And then I start fs-uae and it loads the disk in the configuration:

> fs-uae

Atari

The next emulator is an atari emulator, I chose hatari. hatari wants the TOS file to be stored in /usr/share/hatari/tos.img, so I downloaded TOS v1.00 (1986)(Atari Corp)(ST).zip and unzipped it the required directory. I played a few games, it works fine.

NES

I installed fceux (Debian Bookworm):

apt-get install fceux

To run a game:

fceux ROM.zip

Keys are: arrows, enter, fdsa for buttons

In MAME (0.251), some NES games are working but not all of them.

Super NES

I installed higan, to run a game, enter: higan ROM.zip

Debian Bookworm

higan is not available.

I installed mednaffe and there are problem with sound.

So I compile snes9x, maybe the list of apt packages is not complete because some packages are already installed on my system:

sudo apt-get install ninja-build libsdl2-dev libgtkmm-3.0-dev portaudio19-dev libminizip-dev gettext$
git clone https://github.com/snes9xgit/snes9x$
cd snes9x/$
git submodule update --init --recursive$
cd gtk/$
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -S . -B build$
ninja

To run a game:

./snes9x-gtk ROM.zip

At first start, the keys for the joystick have to be set in the configuration.

PC emulator

I installed dosbox, to run a game, cd to the game directory and then enter this:

dosbox
mount c .
c:
run game exe

I recently discovered the 86box PC emulator which emulate the hardware accurately. In 86Box, I created a Pentium pro PC and I:

  • booted MSDOS 6.2 from floppy disk
  • installed Windows 95
  • ran Command & Conquer Red Alert (also the Counterstrike extension)
  • booted the debian install CD-ROM and installed the latest debian stable (Debian 11.5 Bullseye, it takes longer than a day to install)
  • installed Whereisit 2.16 (from 2000) to be able to open my .ctf catalog files.

The hardware configuration is:

- Machine type: Socket 8
- Machine: [i440FX] Gigabyte GA-686NX
- CPU type: Intel Pentium Pro
- Speed: 200Mhz
- Memory: 512MB
- Video: [PCI] Tseng Las ET4000/w32p Rev. D (Diamond Stealth32)
- Mouse: Logitech Serial Mouse
- Sound Card: [ISA16] Sound Blaster AWE32 Pnp
- Network adapter: SLiRP [ISA16] Novell NE2000, [PCI] Realtek RTL8029AS, both not detected in linux and don't work in windows
- 2 Serial ports, 1 parallel port
- HD Controler: Internal controller
- FD Controler: Internal controller
- Hard disks: IDE 0:0 1.5GB (Windows), IDE 0:1 5GB (Debian)
- 3.5 inch floppy 1.44MB
- 5.25 inch floppy 1.2MB
- CD-ROM drive ATAPI IDE 1:0 8x

I installed Windows like this:

  • boot MSDOS 6.2 from floppy (A:)
  • use fdisk to create a partition in C: drive
  • format C:
  • run SETUP.EXE on Windows 95 CD-ROM, the CD-ROM drive has letter R: (enter 'R:' at the prompt and then 'setup')

I copied my files to the VM by creating a CD-ROM and loading it in the CD-ROM drive:

apt-get install genisoimage
genisoimage -o cd.iso pathWithFilesToCopy

In DOS, I can run:

  • Borland Turbo C++ (1990)
  • Borland Turbo Pascal (1990)
  • Borland Turbo Debug (1990)
  • Borland Turbo Assembler (1990)
  • My programs written in assembly. The graphical programs use CGA, MCGA and VGA 16 colors modes.

The command line in DOS is basic, here are some commands:

# enter letter to change drive
# A: is floppy disk
# C: is harddisk
# R: is CD-ROM
# Change to C: drive, enter:
C:
# Change directory:
cd dirname
# DOS uses \ as path separator, cd path is:
cd dirname\dirname2
# To run a program, enter the program name with or without extension:
program
# DOS ignores lower and upper case for directory and file names
# To list a directory, enter:
dir
# Filter by extension:
dir *.exe
# When there are many files, list the files page by page like this:
dir /p

Amstrad CPC 6128

The Amstrad emulator is not in APT, I insalled caprice32 like this:

sudo apt-get install libsdl1.2-dev

mkdir -p ~/Downloads/amstrad/
cd ~/Downloads/amstrad/
git clone https://github.com/ColinPitrat/caprice32.git
cd caprice32/
make APP_PATH="$PWD"

And to run a game (Sabre Wulf in this example):

cd ~/Downloads/amstrad/caprice32
./cap32 ../Sabre\ Wulf\ \(1984\)\(Ultimate\ Play\ The\ Game\)\[t\].zip
cat
run"sabre

In MAME (0.251), the CPC 6128 works well, all the programs I tried are working.

Sinclair ZX spectrum 48K

I installed fbzx, I add to install the spectrum-roms pacakge manually in Debian Bullseye and not all games I tried worked.

Moon Alert works fine:

fbzx Moon\ Alert\ \(1984\)\(Ocean\ Software\)\[Speech\].z80

For games on tape, start like this:

fbzx Battlecars\ \(1984\)\(Games\ Workshop\).tap
Press j, Control p, Enter to display
LOAD ""
Press F6 to play the tape

Commodore C64

I installed the vice emulator:

apt-get install vice

# the vice package installs:
# dpkg -L lists files installed by the package
dpkg -L vice|less
/usr/bin/c1541
/usr/bin/cartconv
/usr/bin/petcat
/usr/bin/vsid
/usr/bin/x128
/usr/bin/x64
/usr/bin/x64dtv
/usr/bin/x64sc
/usr/bin/xcbm2
/usr/bin/xcbm5x0
/usr/bin/xpet
/usr/bin/xplus4
/usr/bin/xscpu64
/usr/bin/xvic

Copy roms to ~/.local/share/vice/C64/:

~/.local/share/vice/C64/kernal-901227-03.bin
~/.local/share/vice/C64/chargen-901225-01.bin
~/.local/share/vice/C64/basic-901226-01.bin

Run a game with the command:

x64 "Zaxxon.crt:run me"

Sony Playstation 1

I installed pcsxr.

apt-get install pcsxr

I got an error when trying to start a game:

RGB & YUV not found. Quitting.

I found a fix on Ryan Halliday's blog

Under Configuration > Plugins & BIOS change the Graphics dropdown from XVideo Driver to OpenGL Driver

Sony Playstation 2

I use pcsx2. Download the latest nightly appimage from https://pcsx2.net/ and then download the bios files. Then I copy the bios to the default config directory:

~/.config/PCSX2/bios

Then run:

chmod 755 pcsx2-v1.7.5592-linux-appimage-x64-Qt.AppImage
./pcsx2-v1.7.5592-linux-appimage-x64-Qt.AppImage

MAME Arcade

I installed mame and copied the ROMs to ~/mame/roms/.

To run a game, enter mame in a terminal and choose a game in the list.

To compile the latest version of mame, execute these steps:

git clone https://github.com/mamedev/mame
apt-get install libsdl2-ttf-dev qtbase5-dev libfontconfig-dev

##################
# Add in makefile:
##################
QT_HOME = /usr/lib/x86_64-linux-gnu/qt5/
make

Machines I successfully run in MAME (0.251):

atari 2600 ok$
nes ok (not all games)$
macintosh 128 airborne and sys 1.1 ok$
megadrive ok$
gameboy ok$
atari jaguar mostly ok$
amstrad cpc 6128 ok

There are some machines I tried to emulate in MAME (0.251) and they were not working:

amiga workbench no$
amiga games no - hw problems$
apple lisa no$
acorn atom no$
c64/c128 no missing rom mercury31s.u4 not on the internet$
coco no$
mo5 no$
msx1 msx2 no$
atari 800 no$
apple 2 gs no
bbc no$
commodore pet no, pet 2001 boots but I don't know how to start a program$
snes no$
zx spectrum no
atari st no$
to7 no$
vectrex no
x68000 no$
acorn archimedes 310 works a bit - games don't work

Running Xeno Crisis Neo Geo version in Mame

apt command for installing the emulators in this page

apt-get install fs-uae fs-uae-launcher hatari higan dosbox libsdl1.2-dev fbzx mame pcsxr

hashtags: #emulators