This repo has moved to: https://gitlab.com/mbitsnbites/mc1-doom
This is the classic game DOOM (by id Software) ported to the MRISC32-based computer MC1.
MC1-DOOM is based on the original linuxdoom v1.10 code base from 1997, with some bugfixes and alterations to make it work on MRISC32, and of course graphics and I/O routines for the MC1 computer.
Original README.TXT.
The source code is released under the GNU General Public License, as outlined in DOOMLIC.TXT.
In order to build MC1-DOOM for an MC1 target, you need the MRISC32 GNU toolchain installed. You can find it here.
$ mkdir src/out
$ cd src/out
$ cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=../mc1-toolchain.cmake -DCMAKE_BUILD_TYPE=Release ..
$ ninja
The resulting ELF binary is src/out/mc1doom
, which is runnable in the MRISC32 simulator (use run.sh
or run.bat
to run it).
To build for an MC1 computer target, add -DMC1SDK_HOME=/path/to/mc1-sdk-installation
to the CMake options.
For testing purposes, you can also build MC1-DOOM for other platforms, such as Linux.
To install dependencies on Ubuntu:
$ sudo apt install libasound2-dev libsdl2-dev
To build:
$ mkdir src/out-host
$ cd src/out-host
$ cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug ..
$ ninja
To run Doom you need a game WAD file. For instance the shareware version of Doom 1.
mc1doom
will search for a valid WAD file in the current working directory
(i.e. the folder from which the program is started).