gitmyhub

LoopyDOOM

C++ ★ 38 updated 20d ago

An unofficial DOOM port for the Casio Loopy based on GBADoom

An unfinished, unofficial port of the classic game DOOM to the obscure 1995 Casio Loopy console, built on top of the GBADoom engine.

C++SH-1 assemblyPythonGCC cross-compilersetup: hardcomplexity 5/5

LoopyDOOM is a port of the classic video game DOOM to the Casio Loopy, an obscure 1995 Japanese console with limited hardware, about 512 kilobytes of memory and a built in thermal sticker printer. The author describes it as unpolished and closer to a tech demo than a finished product. It is a real port of id Software's original DOOM engine, passed down through two earlier community projects called PrBoom and GBADoom, with new code added to handle the Loopy's specific video chip, timers, controller, and sound hardware.

Right now the game includes the first six levels of the shareware episode, using as much content as fits in the console's 4 megabyte cartridge limit. Video runs as a double buffered bitmap, music plays through the console's built in synth chip across all six included levels, and sound effects require an added companion circuit board with its own firmware and a small speaker chip. On real hardware the game runs slowly, somewhere around 8 to 15 frames per second, though it runs much faster inside a software emulator built for this console. There is even a feature that lets a player print the current game frame on the console's built in thermal printer.

Building the project from source requires a specific big endian compiler toolchain built for this console's unusual processor, along with the original shareware DOOM data file and a data file from the earlier GBADoom project, neither of which is included in this repository for legal reasons. A Python 3 based build step then bakes those files into the game binary. Running the finished build works either in a software emulator, which needs a BIOS dump the user must supply from their own hardware, or on real hardware using a special flashcart accessory that connects to the console.

Because it inherits code all the way back from the original DOOM engine, LoopyDOOM is released under the GPL version 2 or later license, with individual file copyright notices kept in place from each earlier project in its lineage.

Where it fits