This is a patch agains the original sources as released by idsoftware. It gives you a source code ready for compile&run on dec osf alpha (3.2G, but 4.0x should be ok too) If you want to use the execuatable (alphadoom.gz), you may encounter the follwing problems: - libmme.so not found: install the MMS runtime - libmme.so version mismatch (loader message): do a setenv _RLD_ARGS -ignore_all_versions (This may happen if you run the image on a osf 4.0x system Changes made for dec alpha, second version - Sound now available via dec's mme extension api: - SNDSERV no longer defined for OSF - soundsupport gets included, if OSFMME is defined. (Default in Makefile.alpha) most of the changes are in i_sound.c Changes made for dec alpha, first version: - all allocations (using Z_Malloc) have now a sizeof (bla) where needed - pointer to numeric casts have been changed from cast to int to cast to P2NUM - OSF has values.h, but does not define MININT and MINLONG, defined them in doomtype.h - ioctl not defined when using gcc, inserted in i_net.c and i_sound.c - includes of linux/soundcard protected everywhere with #ifdef LINUX - sys/filio.h not available in OSF - usleep not defined in OSF-headers, definition in i_system.c inserted - some XShm... routines not defined in headers, inserted in i_video.c - errnos.h not available in OSF, protected with ifndef OSF in i_video.c - multiply=1 changed to multiply=3 (otherwise microscope required to play) - gcc wants pointers printed with %lx instead of %x (i_video.c) - m_bbox.c needs doomtype.h included for MININT - ifdef __BIG_ENDIAN__ changed to ifndef __BIG_ENDIAN__ in m_swap.c (Not required for the patch to work, but, Hmm, this way it's consistent with the definitions in m_swap.h, and it works. However, I think the name should be __LITTLE_ENDIAN__ ??? (confused, the alpha is big-endian isn't it???)) - changed obsolete columndirectory-element from type void** to int (this struct is read from file, so the void* hurts on the alpha) - ifndef SNDSRV changed to ifndef SNDSERV in s_sound.c - casted alloca to the lhs type where needed Note1: the changes should be compatible to linux, however, I did not test it because I currently dont have a linux box Note2: The source code compiles and runs with gcc (version 2.7.2) and dec cxx (version V5.4-006). It does NOT run when compiled with the dec cc. Both versions were built on an dec alpha running osf 3.2G Note3: No sound-card in my alpha, so I think sound does not work... (second version: meanwhile looked at backpanel and found the soundcard, so soundsupport is available now) Note4: Apply the patch the following way: gzip -d alphadoom.patch cat linuxdoom-1.10.src.tgz|gzip -dc|tar xvf - patch -p0