DeciMatrix 8086
DeciMatrix is a program designed to decode the Matrix into
decimal. It’s a spin-off of the
Terminal Matrix 8086’s DCMATRIX
command,
built into a standalone executable sharing the same metamorphic
property of run-within-OS-or-bootstrap-itself-without-OS provided by
the QDot language and its standard library. It works
with CGA, EGA and VGA graphic adapters and it runs on any IBM-PC
compatible, being the minimum requirement an 8086 processor with 16Kb
of RAM. Its binary sums up to just a couple kilobytes and very
surprisingly is simultaneously a valid DOS executable and a bootable
disk image, meaning that it can run even on machines with no operating
system at all!
It is based on the premise that it’s easier for people to become proficient in interpreting the Matrix code if instead of dealing with very cryptic symbols rolling down in the screen, they could deal with static and familiar symbols. It’s still quite hard to learn how to see through the code, though; but don’t worry — if you happen to never see the woman in red, at least you’ll have used a very cool DOS screen-saver.
Download
You can download the DeciMatrix binary below.
DeciMatrix is free software under GPLv3+ and you can obtain its source code here. It requires NASM, The Netwide Assembler, in order to be built, and GNU Make to automate that process.
Run
DeciMatrix can run directly on real hardware or inside a virtual machine — under DOS, or bootstrapping itself. To use it under DOS on bare metal, just copy its binary to the respective machine and run it as usual:
C:\>DCMATRIX.COM
I recommend you use FreeDOS, the free software implementation of DOS, for best results. To run DeciMatrix without operating system support you need to write it to a storage medium that your computer can boot from; it may be a floppy disk, a hard drive, an optical disk or even an USB mass storage device. Using this method requires that you afford a dedicated media only for DeciMatrix, so make sure to backup any existing data, and to reformat the media when re-purposing it.
You can use RAWWRITE
to make a bootable floppy disk under DOS. Just run RAWWRITE and
follow the prompts inputting the program’s binary name
(eg. dcmatrix.com
) and the destination floppy drive letter
(eg. a:
). Under GNU you can use the command-line utility dd
, of
the GNU coreutils package, to
make a bootable floppy disk, hard disk or USB mass storage device. If
you are logged in as root, the incantation is as simple as:
# dd if=dcmatrix.com of=<device-node>
Where the variable device-node
is the device node of the respective
drive. In GNU you can also make a bootable optical disk by using
the command-line utility genisoimage
, from the cdrkit package, in
the following way:
$ mkdir dcmatrix $ mv dcmatrix.com dcmatrix $ genisoimage -no-emul-boot -b dcmatrix.com -o dcmatrix.iso dcmatrix
This generates the dcmatrix.iso
file that is a bootable optical disk
image that you can burn using wodim
(from the same package as
genisoimage
) or similar software.
If you’d like to run DeciMatrix on a virtual machine under DOS your best bet is probably DOSBox, but DOSEMU also does the job. For any of them, just run the program as you would in a real DOS machine. To run it in a virtual machine without any operating system installed you can use QEMU instead — just invoke it like this:
$ qemu-system-i386 -fda dcmatrix.com
Use
To get a feel of how DeciMatrix looks like, a video of a session recorded in DOSBox, specifically for this purpose, has been made available. Enjoy!