The p20-emu package is a Plexus P/20 emulator.
Required ROM 1: https://github.com/misterblack1/plexus-p20/raw/refs/heads/main/ROMs/U15-MERGED.BIN
Required ROM 2: https://github.com/misterblack1/plexus-p20/raw/refs/heads/main/ROMs/U17-MERGED.BIN
Recommended patch: https://glfs-book.github.io/lfs-qol/patches/com-emu/p20-emu/p20-emu-d75a83-no-debug.patch
Recommended patch: https://glfs-book.github.io/lfs-qol/patches/com-emu/p20-emu/p20-emu-d75a83-system-roms.patch
libarchive (to unpack the distribution)
During extraction, you may get the following message(s):
unzip: Cannot set mode for '...': Operation not supported
You may ignore said message(s), everything is fine. It is caused by an attempt to set the file attributes on a symbolic link, which are ignored on most Unix and Unix-like systems, a notable exception being macOS.
Apply a patch to build without any debugging information, which allows for a slightly faster binary:
patch -Np1 -i ../p20-emu-d75a83-no-debug.patch
Optionally, apply a patch to search for the ROMs in a system-wide location and not the current directory:
patch -Np1 -i ../p20-emu-d75a83-system-roms.patch
Install p20-emu by running the following command:
make Musashi/m68kops.h && make
Now, as the root
user:
install -v -Dm755 emu /usr/bin/p20-emu
If you have applied the systemwide ROMs patch, install those ROMs
as the root
user:
install -v -m755 -d /usr/share/p20-emu && install -v -m644 ../U15-MERGED.BIN /usr/share/p20-emu && install -v -m644 ../U17-MERGED.BIN /usr/share/p20-emu
make Musashi/m68kops.h: This command explicitly generates a header file used during build time to avoid a race condition.