Pages for the Creations of Ryan Armstrong
So I've been recently submitting a variety of old X games to Mobygames,and figured I may as well document them here too, since itis my website after all. Most of the games I will be posted were discovered when messing around withCaledra OpenLinux 1.3, though others were located through some otherbrowsing and searches.
They even get an entirely new category!
The general scope of the first set of articles is to list gamesreleased prior to the year 2000, and written using technology from the 1980s. So, no to Qt, GTK,SDL,SVGAlib, orOpenGL/Vulkan,but yes toAthena,Motif ordirect use of theX Toolkit Intrinsics.This scope allows for games that generally originated on Unix first,or used similar technologies or feel.
That said, I will probably post info on SVGAlib games in the future,as they were a fascinating and forgotten stepping stone towards SDL.
I am also going to omit extremely well-known games that are still underactive development, such as the Athena version ofNethack andFreeciv(the latter of which now uses GTK anyways).The main (initial) purpose of this category is to highlight gamesthat might have otherwise been forgotten. Most of these early X gameshave no sound, and have sparse graphics with very few (or no) colours.
The first set of articles will be posted in rough chronological order, based on whateverinformation I can find on the original release date. The release dateis based on the first graphical version for the application, evenif that wasn't technically for X windows, so long as it was similarto what was eventually ported. Such pre-X technologies includeSunView onSunOS orDisplay Manager (DM) onApollo Domain/OS, thoughthere are several others.Going through the history of Unix graphics is quite a rabbithole, so I suggest instead that you check out the Wikipedia articleonthe history of the graphical user interfaceif you are curious on how everything fits together.
Most of these early games use theimake build automation system,which may be unfamiliar to most users, even those who are familiarwith compiling source releases. These can be recognised by the prescence of anImakefile in the distribution. The build stepsare actually pretty simple, once you have the dependencies though:
$xmkmf$make
Yup, that's all. You can also runmake install
, but be careful,as these will typically install to/usr/bin
by default. You can defineDESTDIR andBINDIR variables to redirect this, or usea tool likecheckinstallto track what files are installed so theycan be easily removed later. Either way, I suggest reading the generatedMakefile before doing an automated install so you havean idea of what gets installed where. Or you can installby hand; there's typically only the one output binary anda single manpage for games this old.
On a modern Debian machine, the following dependencies should get youeverything you need to build most of them (barring build issues):
Some old games could theoretically also useXView, though none of the setthat I am currently writing about. If you find one, you will unfortunatelyneed to use an older distro, as it has been mostly abandonded and wasnever upgraded to be compatible with 64-bit processors.
If you are downloading older Debian source packages to rebuild, be sureto download the original (orig) source archive, the gzipped diff file,and the description (dsc) file. On a Debian system, these can beautomatically extracted and patched using the commanddpkg-source -x {package}.dsc
, optionally adding--force (prior to -x)if the old build dependencies can no longer be met. You can then attempt to use the Debian package build process to automatically rebuildthe package. If it works, you don't even need to deal with the specifics;just typedebuild -b -uc -us
to try it (potentially with-d to overrideoutdated dependency checks).
If you are on a non-Debian system, or if the above gives you trouble,they can also be extracted and patched fairly easily.To extract manually, simply extract theorig archive into a work folder,uncompress thediff file, change into the application's folder,then apply the diff file using patch, with a command similar to:
$patch-p1<$PATCHFILE.diff
Or, to do in one step from a gzip compressed diff file:
$gunzip<$PATCHFILE.diff.gz|patch-p1
Then refer to the documentation or the scripts in thedebian folderfor build instructions.
A couple of the games were never packaged for Debian, but a Red Hatsource package is available. In that case, the.src.rpm file canbe extracted withrpm2cpio as follows:
$rpm2cpio$PACKAGE.src.rpm|cpio-idmv
Note that this will extract everything into the current directory, so creating a separate work folder before extracting is recommended.The origial source package is one of the extracted files, which will needto be extracted as well.Once fully extracted, I suggest then reading the.spec file, as it willinclude the patches and build steps for the package.
Some games have additional issues building, but the fix was fairly simple.In these cases, I will also include my own patch to be applied on topof the source package. These can be applied using the patch commandas well.
There are no comments yet.