=========================================================================== Title : Doom utilities source Filename : dmutils.zip Release date : March 1998? (estimate) Author : Id Software uploaded by Simon Howard Email Address : Don't contact Id about these. Description : This is the source code to various utilities written by Id Software and used during the development of Doom. I found this file available for download on AtomicGamer.com, and from the timestamps in the zip it seems it was probably released in March 1998, several months after the Doom source code release. =========================================================================== * What is included * There is a mixture of different utilities in here: dcolors: Generates PLAYPAL and COLORMAP lumps, taking the base palette from an LBM file. lumpy: Looks like a program for generating IWAD files from a script. None of the scripts seem to be included, but it looks like this was used in development of the SNES and Jaguar ports. mapcomp: Combines several WAD files containing levels into a single WAD file containing all of these and a texture lump. Purpose unknown? multigen: Generates the state tables used in the Doom source code (info.c). The script file used to build Doom's state tables is included (multigen.txt). spitwad: Dumps the directory of a WAD file, listing the contents and metadata about lumps. wadlink: Builds the game IWAD files, based on a script file. No example script file is included, but you can examples in the Heretic and Hexen source codes (wadlink.wl). * Leftover sources * infogen.c: Builds mobjinfo_t tables. Obsoleted by multigen? statescr.c: Builds state_t tables. Obsoleted by multigen? jwadlink.c: Earlier version of wadlink, looks like it includes hacks for building the Jaguar IWAD. * Misc. utilities * cmpfile: Compares two files byte-for-byte and prints the differences. Purpose unknown. cmpfiles: csh script that compares the contents of two directories using cmpfile. removectrlm: Removes ^M (\r) characters from .c and .h source files. Presumably used to convert DOS source files to Unix ones. unfuck: "Unfucks file permissions". lz77: Compress a file using LZ77 compression. ulz77: Uncompress a file compressed using lz77. * Commentary * Some of the WAD building tools include the ability to compress lumps; these were used for Jaguar Doom, which stores lumps compressed to save space (see Kaiser's Doomworld thread, "The Console Doom hacking project / Console specs"). It looks like John Carmack probably experimented with several different compression algorithms (LZSS, LZ77, and there are references to "lzssodd" and "lzssmars"). There are old versions of some of the programs in a subdirectory named "backup"; a few of these have minor differences to the main versions. * Copyright / Permissions * No license statement is attached to these files, but I'm assuming Id considers them GPL, or at the very least freely redistributable. * Where to get the file that this text file describes * The Usual: ftp://archives.gamers.org/pub/idgames/ and mirrors