Mednafen, emulador multiplataforma de, según el manual
y sus módulos disponibles:

Apple II, NES, SNES, GB, GBA, Master System, Game Gear, Mega Drive, PCEngine,  Lynx, TurboGraphx, Neogeo Pocket, Play Station, Sega Saturn, Virtual Boy, WonderSwan, cd de música.

Una lista bastante grande, aunque algunos módulos son redundantes.
Pero tiene su porqué, el módulo snes_faust usa muchos
menos ciclos de CPU que el módulo snes normal.
Es mucho menos preciso, pero el 99% de los juegos irá bien.
Por supuesto, no recomiendo usar el módulo psx (Play Station)
o ssf (Saturn) en un Atom ni por asomo, son muy pesados por su
elevadísima precisión. Es mejor usar pcsx4all para jugar al 95-99%
del catálogo.

A ello. Instalamos mednafen con

doas pkg_add mednafen

y movemos el mednafen a mednafen.old:

doas mv /usr/local/bin/mednafen /usr/local/bin/mednafen.old

Hacemos lo propio con la documentación:

doas mv /usr/local/share/doc/mednafen /usr/local/share/doc/mednafen.old

Eso hará que nuestro mednafen instalado sea "mednafen.old" y no
choque con el que compilaremos.

Bajamos las fuentes:

mkdir -p ~/src

cd ~/src

ftp -C https://mednafen.github.io/releases/files/mednafen-1.21.0-UNSTABLE.tar.xz

xz -d mednafen*.tar.xz - | tar xf -

cd mednafen

Ahora, establecemos los CFLAGS y CXXFLAGS para una CPU Atom:

export CFLAGS="-O3 -march=atom -mtune=atom -mssse3 -mfpmath=sse -fomit-frame-pointer"
export CXXFLAGS="$CFLAGS"

Para los que usen PPC, en concreto un G4 7400:

export CFLAGS="-mcpu=7400 -O2 -maltivec -mabi=altivec"
export CXXFLAGS="$CFLAGS"

Compilamos e instalamos:

sh configure

make

doas make install

Creamos un directorio ~/.mednafen para alojar una config propia:

mkdir ~/.mednafen

cd ~/.mednafen

ftp -C  https://caja.texto-plano.xyz/anthk/random/mednafen.cfg

cd

La config lo que hace es ajustar el nucleo snes_faust como activo
y desactivar el módulo de snes más pesado.
Tambien activa el frameskip, establece la resolución
a una más baja y activa el render por software.
Tambien configura las teclas
tal que:

Todos los sistemas:
esdf = arriba,izquierda,abajo,derecha
f5 = guardar
f7= cargar
shift+alt+[1-9] = configurar mando del 1 al 9.

SNES:
ijkl = y, x, a, b
nm = select, Start

NES:
jk = b, a
nm = select, start

MD:
jkl = a, b, z
uio = x, y, z
m = start

GB:
jk = b, a
nm = select, start

GBA:
jk = b, a
io = l, r
nm = select, start

El resto de sistemas como Neogeo Pocket o PC Engine
se pueden configurar con el combo de
antes de shift+alt+1-9.

Si necesitáis una rom para probar, en
https://caja.texto-plano.xyz/anthk/pdroms/gbc/daikatana_europe.zip
hay una rom totalmente legal de Daikatana liberada
en su día por John Romero (adjunto la web dumpeada
como prueba de la wayback machine de  https://archive.org).

Feliz frikismo.
También, si me lo pedís, podría compartir una lista de ROMs
de dominio público (o de libre distribución), como
el demake para MD de Silent Hill a partir del juego de
novela gráfica de GBA.

TODAS las ROMS decentes de dominio público que he recompilado
en un pack (no son todas ni por asomo, anda que no hay
homebrew gratis por ahí):

https://caja.texto-plano.xyz/anthk/pdroms/base.zip
https://caja.texto-plano.xyz/anthk/pdroms/extra.zip

base.zip 127MB comprimidos, 220 descomprimidos.
extra.zip 4.9MB comprimidos, 17MB descomprimidos.

Añado también un subdir "rarezas/" con bootlegs
chinos de NES y demás. Cosas como el Resident Evil,
el FFVII en su versión demake y parcheadas al inglés.

Recomiendo ahora.

ROMS de GBA:

Metal Warrior 4.

Los Metal Warrior I-III junto con el Hessian son
de libre distribución pero para el C64,
necesitáis un emulador como Vice. El Hessian
es maravilloso, mejor que un Half Life 2D.

Broken Circle
Un RPG COMPLETO para GBA, y gratis de forma legal.

Anguna
Un clónico de Zelda

Más cosas decentes para GBA:
https://www.gbadev.org/demos.php?listby=popularity

Unas son demos, otros como Another World son
juegos completos y legales (port de Another World).
El Motocross Challenge también es increíble,
una especie de Excitebike para GBA.
Uno también que os recordará buenos tiempos
es el port de 1942, junto con el Bust a Move.

3 weeks in paradise.
Plataformas.

Airball
Puzzle/plataformas.

Chip Advance
Clon de Chip's Challengue, un puzzle muy bueno.

ROMS de GB:

Port de Jet Set Willy

Port de Manic Miner

Star Heritage

The Bouncing Ball

Daikatana en castellano
Juegazo a lo Zelda mezcla de futurismo y tradicionalismo japonés,
nada que ver con el horrible port de PC. Liberado en su día
por John Romero.

ROMS de NES

Alter Ego
Plataformas/Puzzle en espejo.

Elite
Elite para NES, todo dicho.

Tetris

Sir Ababol

Streemerz
Un clónico de Bionic Commando.

Nova The Squirrel
Un buen clon de Mario/Kirby


ROMS de SNES:

Super Boss Gaiden
Un plataformas gracioso. Eres el CEO de... Sony?
y estás enfadado porque los prototipos de la Play 1
vuelan en internet consiguiendo copias completas
de juegos al 99%, y debes evitarlo.

ROMS de MD:
ROMs decentes como Zero Tolerance (un FPS para Mega Drive)
y Hardwired.

Metal Blast 2277
Un shoot and run típico

Silent Hill:Genesis
El Silent Hill de novela gráfica de GBA
portado a MD. Muy bueno.

Cave Story.
Grandísimo juego de plataformas 2D, port
para Mega Drive.

Rick Dangerous 1 y 2.
Otro juego relativamente famoso de aventuras, de
prueba y error hasta desesperarte.
Muy buenos ambos.

ROMS de PC Engine

Pues no he encontrado en el repo de GitHub, pero
he encontrado esto:

https://www.chrismcovell.com/creations.html

y esto, un zip recompilando:

https://sites.google.com/site/jbrodack/pcenginepd.zip?attredirects=0

##Consejos##

Obtener el pack desde 0, para actualizar.

Creamos el directorio ~/retrobrews
, entramos en el e instalamos Git.
Tras ello, bajamos los repos
legales de dichas roms ordenadas por
capeta.

##Inicio de comandos

mkdir -p ~/retrobrews
cd ~/retrobrews
doas pkg_add git

git clone --depth=1 https://github.com/retrobrews/gba-games
git clone --depth=1 https://github.com/retrobrews/gbc-games
git clone --depth=1 https://github.com/retrobrews/nes-games
git clone --depth=1 https://github.com/retrobrews/snes-games
git clone --depth=1 https://github.com/retrobrews/sms-games
git clone --depth=1 https://github.com/retrobrews/md-games

##Fin de comandos

Para actualizar todo de golpe, copia y pega en una term
y pulsa enter:

#inicio


cd ~/retrobrews
cat >> up.sh << EOF
#!/bin/sh
for i in *
do
if [ -d "$i" ]
then
cd "$i"
pwd
git pull
cd ..
fi
done
EOF
chmod +x ./up.sh
##Fin

Ahora, para actualizar siempre quer quieras:

##Inicio
cd ~/retrobrews
sh up.sh
##Fin

Con eso no hay excusa para piratear muchos juegos retro si ya tienes
equivalentes igual de potentes.