SGI DOOM FAQ ************ Version 1.08 September 15, 1994 This FAQ is available at http://cornelius.ucsf.edu/~troyer/sgidoomfaq.html What's New: sgixdoom 1.6 on infant2, 1.666 is out, How to remap your keys Table of Contents ================= o Information for SGI people 1. What is DOOM? 2. Where can I get DOOM for the SGI? 3. I can't get in to the ftp site! 4. Which SGI machines will run DOOM? 5. It doesn't work! 1. It says Error: Demo is from a different game version! 2. It says Unexpected '(' on line 1! 3. It crashes with a broken pipe! 4. It gives an error about incompatible architecture! 5. It gives an X error in X_CreateWindow! 6. It runs for a while and just stops! 7. It throws up a blank screen and won't start! 8. It dumps core! 9. It used to run fast but seems slower now! 6. It only works on the smallest size! 7. The window is too small! 8. I have an R3000 and it's too slow! 9. Why can't I use the mouse? 10. Can I change the keys? 11. Can I run DOOM on one machine and display it on another? 12. Can one SGI host multiple DOOM processes for a deathmatch? 13. Can you play across the internet? 14. Can you play SGI vs PC? 15. Why is there no music? 16. How do I get the other levels? 17. How do I register? 18. I need to ask id Software a question. 19. What are the cheat codes? the secret doors? 20. Where is DOOM information on the net? 21. Are there DOOM utilities for unix? o Information for PC people 1. What is an SGI? 2. Wow, it must scream then, huh? 3. Does it look really cool? 4. Any other differences? o About this FAQ Information for SGI people ========================== 1. What is DOOM? Basically, Doom is an 3D arcade game where you run around in a maze and kill things with shotguns and chainsaws. The 3D action is good enough to make some people nauseous. (If the animated gore wasn't enough.) There is a slim plot, if you care about those things. After you get tired of killing things, you can run it over the net and kill things together with your friends. After you get tired of that, you can kill your friends. DOOM was originally written for the PC. It was tremendously successful because 1. everybody was amazed you could do that on a PC; 2. a playable portion was available as shareware; 3. it was user-extensible; 4. you could play against other people; and 5. it was an extremely fun game. SGI loaned David Taylor of id Software an Indy and he ported it. Dave Taylor says in the README I did this for fun. It doesn't generate revenue. Please don't call or write us with bug reports. They cost us money. Thanks. Besides, the Indy has to go back, so the bugs can't be fixed. The design philosophy of this port was to get something working which was fun. It ain't no opus just because it runs on an SGI so don't get your hopes up. 2. Where can I get DOOM for the SGI? From the README.sgi SGI will be releasing a prettier version of this (icons, standard Indizone install style, etc) on the next Indizone CD they master. Until then, you can get the SGI version via anonymous ftp from ftp://infant2.sphs.indiana.edu/pub/doom/id/sgixdoom.tar.gz ftp://ftp.uwp.edu/pub/sgi/games/id/sgixdoom.tar.Z These ftp sites are usually overloaded and refuse additional anonymous logins. Try at night. (15 Sept 94: both of these files now are the 4 August v1.6ish -mips1 versions. You need this version to play the registered WAD. The mirrors will eventually be updated.) Unpack it in it's own directory. Read the README.sgi. There are two programs, sgixdoom and sndserver. The file doom1.wad is the data for the first episode. 3. I can't get in to the ftp site! infant2 and ftp.uwp are overloaded. Try at night. To take some of the pressure off, infant2 may soon be upload only, with only mirrors available for downloading. See the list of infant2 mirrors from the DOOM Web. (If you're reading the text version of this FAQ, try ftp.cdrom.com, ftp.orst.edu, aurora.bld189.jccbi.gov, or wuarchive.wustl.edu) 4. Which SGI machines will run DOOM? DOOM was recompiled on August 4 without the -mips2 flag. It will now run on both R3000 and R4000 machines. You must be running a version of Irix 5 (usually 5.2) to run DOOM. DOOM will run on machines like a Personal Iris 4D/25 if it is running Irix 5.2, although it will be slow. It will run on an Onyx or Challenge if you move or remove the sndserver program (those machines usually have no sound). 5. It doesn't work! 1. It says 'Error: Demo is from a different game version! You are running the 1.5ish version of sgixdoom with the 1.666 registered doom.wad. Upgrade to the 1.6ish version again. You did pay for the registered wad, right? 2. It says Unexpected '(' on line 1! You are probably running on a machine with Irix 4.0.5 (try uname -a to check if you aren't sure.) You need to be running Irix 5.2. 3. It crashes with a broken pipe! You probably don't have sound on your system. (A $180,000 computer with no sound? Go figure.) Move the sndserver somewhere out of your path and it'll work fine, just with no sound. 4. It gives an error about incompatible architecture! The original version id Software released was compiled with the -mips2 flag, which meant that only R4000 machines could play it. A new version has been released that will work with R3000's; go get a new version off one of the ftp sites. (If you got the version before 5 Aug 94, sndserver was not recompiled and still won't work; go download it again.) 5. It gives an X error in X_CreateWindow! Your Xserver is probably running in TrueColor mode. It should be running in PseudoColor mode. Check /var/X11/xdm/Xserver or use the command xdpyinfo to see. If it is, restart your Xserver in PseudoColor mode. (This logs you out.) Instructions from Kevin Luster, (kluster@goth.engr.sgi.com) and Travis Cobbs (tcobbs@sgi.com): goth 123% cat Xservers.8 :0 secure /usr/bin/X11/X -bs -nobitscale -c -pseudomap 4sight -solidroot sgilightblue -cursorFG red -cursorBG white goth 124% cat Xservers.24 :0 secure /usr/bin/X11/X -bs -c -cc 42 -class TrueColor -depth 24 So when I want to start up in 8 bit mode I su and then do a cp /usr/lib/X11/xdm/Xservers.8 /usr/lib/X11/xdm/Xservers and then use the Vulcan Death Grip (, all pressed at once) to restart X. When I want to go back to 24 bit I copy over the Xservers.24 file and restart X again. 6. It throws up a blank screen and won't start! 7. It runs for a while and just stops! 8. It dumps core! 9. It used to run fast but seems slower now! If DOOM runs for a while and won't run again, or if you notice other memory problems, reboot your machine. Sometimes memory is not recovered if you do not use the "Quit" command from within the game. Always quit using the "Quit Game" menu selection. 6. It only works on the smallest size! If you can run plain sgixdoom, but get a segmentation fault when you run sgixdoom -2 or -3 or -4, it may be because of memory problems: shut down a few processes and try again. If it used to work, but now doesn't, the problem is much more likely to be DOOM's leaky memory management (see above). Reboot your machine. 7. The window is too small! Read the README.sgi file. Start the game with the -2, -3, or -4 flag set. Reports are that r3000 machines run ok with -2, low-end Indys can handle up to -3, most everything else can use -4 (pixel quadrupuling: full screen). 8. I have a R3000 and it's too slow! Use only -2 to get a decent-sized screen, not -3 or -4. Use -turbo XXX (where XXX is a number 0-250) to help the jerkyness. For a truly twisted solution, Bill Lorton (blorton@crl.com) suggests running DOOM with a small window and using snoop to blow it up full-screen. (Use colormap mode to get the colors right; see the snoop man page for details.) [Snoop comes with the demos, I think. -jt] 9. Why can't I use the mouse? Read the README.sgi. No mouse support on the SGI version. Use the arrow keys to move, ALT left/right arrow to sidle left/right, SHIFT arrow to run, CONTROL to fire, TAB to get the map, ESC to pop up the new game menu. (sgixdoom -grabmouse is a mouse-control experiment, but it's not playable.) 10. Can I change the keys? You should be able to do this in your .doomrc file. Anybody? Joachim Hoenig tells us how to do it the hard way, using xmodmap to swap the keys for the Xserver: A to replace Shift_L (speed on) S to replace comma less (strafe left) D to replace period greater (strafe right) F to replace Control_L (fire) Of course, these are just possible examples. After exiting doom, you will want to restore your Xserver to its previous state (Typing is somewhat difficult with some keys swapped). So here is a possible startup script: -------------- CUT HERE --------------- #! /bin/sh cat << ENTER | xmodmap - keycode 13 = a A keycode 18 = Shift_L keycode 52 = s S keycode 19 = comma less keycode 59 = d D keycode 25 = period greater keycode 10 = f F keycode 26 = Control_L ENTER sgixdoom $* cat << EXIT | xmodmap - keycode 18 = a A keycode 13 = Shift_L keycode 19 = s S keycode 52 = comma less keycode 25 = d D keycode 59 = period greater keycode 26 = f F keycode 10 = Control_L EXIT -------------- CUT HERE --------------- note that other vendors than SGI use different keycodes, if you want to use another vendor's machine as display host. A standard keycode map can be printed using `xmodmap -pke'. 11. Can I run DOOM on one machine and display it on another? Yes, but it's slow. Try is small size (no -2, -3, or -4). Warning: the console of the originating machine will thunder with gunfire and screams! (This caused some embarrassment in our office.) Patrick Tufts (zippy@cs.brandeis.edu) writes: With a 1Mbit/sec local network, I can get a reasonable game going with a small screen (i.e., don't use -2, -3, or -4, and go to options and scale down the screen further). DOOM needs to throw a huge amount of pixels to the screen using X, not GL. To do this, it uses a shared memory extension to X. (DOOM shares a portion of memory with your Xserver so all those pixels don't have to be copied between processes.) If the Xserver is on a different machine, it obviously can't do this, and it's slow. 12. Can one SGI host multiple DOOM processes for a deathmatch? Not as far as we know right now. Both because of the speed (see the above question), and because the networking code refuses to talk to itself on the same machine. 13. Can you play across the internet? Yes. Anybody know at what ping time lag becomes annoying and/or impossible? 14. Can you play SGI vs PC? No. So far, nobody's figured out how. Dan Hilebrand (danh@qnx.com) says: Actually, I just browsed the source and discovered that raw C structs are being passed back and forth, with machine-natural byte order. This means that QNX DOOM and Linux DOOM will talk to each other, but not to SGI DOOM. 15. Why is there no music? The simple answer is that although SGIs have speakers, they have no samples or synthesizers built in, unlike PC sound cards which do. A detailed explanation from Gunner Wunner (wunner@nova.tat.physik.uni-tuebingen.de): Well, the music IS in the WAD, but there's another problem: most PC soundcards generate music using the Yamaha OPL-3 chip. This is nothing more than a little synthesizer chip. On other soundcards, General-MIDI is used. This means, that there are WaveTable chips on the soundcard, i.e., ROMs with a bunch of samples. In either case, the PC just has to send the "playdata" to the soundcard (which sample is played at what pitch), but NOT the samples! The only exception I have ever seen are a few graphics & sound demos for PCs which send the music as one large stream of sample data to the soundcard (just like with MOD files, see the tracker.tar.Z program from Marc Espie). In contrast to this, most game developers (incl. ID) just use the synthi/WaveTable chips. As these chips are not built into SGIs, you can't get music. Duh. The only possibility is that the G-MIDI standard is emulated by software. This would mean that you keep 20-30 MB of sample data on your harddisk and spend 95 % of processor time for the G-MIDI emulation. There IS a G-MIDI emulator for SGIs, it is called Midia and was announced on comp.sys.sgi.announce a while ago. Take a look at this one and you'll be watching the processor go up in a huge cloud of smoke! ;-) Also, the Midia stuff doesn't sound that good IMHO. 16. How do I get the other levels? This is alluded to in the README.sgi, but not spelled out. You obviously need a registered version. Buy the DOS version of the DOOM (see below). You'll need version 1.666, which is out now, and a version of sgixdoom based on version 1.6. The originally released version of sgixdoom was based on the never-released 1.5 DOS version. The 4 Aug 94 version of sgixdoom is based on 1.6. You must have this version (now at all sites) to play the registered game. If you have a PC and an older DOS version (1.2), you'll need to patch it. The official patch (dm1666rp.zip) is out and on the ftp sites. Be sure you use a clean, original, nonpatched 1.2, and follow the instructions. Be sure you have the latest version of sgixdoom. The registration magic is inside the new doom.wad file you'll get. The file is 11 Megs. You should be able to just transfer it over from your PC to your SGI and start playing. (If you ftp, remember to use binary mode.) When the DOOM executable sees the doom.wad file, it will automatically use it instead of the shareware doom1.wad file. Once you've bought the commercial DOOM 2 release, you can use the doom2.wad file with the same sgixdoom binary. Having the registered version also enables features like the -file argument to use the incredible variety of homemade wad (PWAD) files. When DOOM runs these wad files, it does so by first loading the registered wad file, and then "overloading" it with the additional components defined by the after-market wad files. 17. How do I register? It costs $40 to register DOOM. From the README To register the entire DOOM trilogy call 1-800-IDGAMES. If you live outside of the USA, or if you wish to purchase DOOM with a check or money order please refer to the text file, (ORDER.FRM) located in your DOOM directory. I don't have an ORDER.FRM, so go download a DOS shareware version to get one. 18. I need to ask id Software a question. Please don't mail them bug reports or ask for help about the SGI verison. From the README.sgi, I did this for fun. It doesn't generate revenue. Please don't call or write us with bug reports. They cost us money. Thanks. Besides, the Indy has to go back, so the bugs can't be fixed. That's why this FAQ exists. If the answer to your question is not here, post to comp.sys.sgi.apps or alt.games.doom . Then email me the answer so I can include it in this file. You can safely assume that no bugs will get fixed in the SGI version. If you want release information, finger help@idsoftware.com. If you must ask them a question about the DOS version, their email address is help@idsoftware.com. They know nothing about SGI's, so don't even bother if that's your question. 19. What are the cheat codes? the secret doors? They are all the same as the PC version. See the FAQ, below. 20. Where is DOOM information on the net? o The DOOMGate ( http://www.cedar.buffalo.edu/~kapis-p/doom/DoomGate.html): Entrance to the DOOMWeb. o finger help@idsoftware.com for the latest on DOOM releases o alt.games.doom, alt.games.doom.newplayers, alt.games.doom.announce, alt.binaries.doom o anonymous ftp. The main ftp site is ftp://infant2.sphs.indiana.edu/pub/doom (also fsp, port 21); infant2 is mirrored at ftp.uwp.edu, ftp.orst.edu, ftp.uni-erlangen.de, and aurora.bld189.jccbi.gov; other sites are ftp.uwp.edu/pub/games/id, ftp.uml.edu/msdos/Games/ID, and wuarchive.wustl.edu/pub/MSDOS_UPLOADS/games/doomstuff (See the list of mirrors from the DOOMWeb) o A huge FAQ is available. (here it is in HTML form.) Excerpted from the FAQ: The "Official" DOOM FAQ can still be requested from me, however. My Internet E-mail address is "ap641@cleveland.freenet.edu." Please make the subject of your E-mail "DOOM FAQ Request." The "Official" DOOM FAQ is posted every two weeks (or earlier if a new version is released) on the following Usenet groups. (1) comp.sys.ibm.pc.games.action (2) comp.sys.ibm.pc.games.announce (3) comp.sys.ibm.pc.games.misc (4) alt.games.doom The "Subject:" line of the post will be "'Official' DOOM FAQ v??.??" where "??.??" is the version number of the FAQ. New releases of the "Official" DOOM FAQ are uploaded to the following Internet FTP sites. (1) ftp.uwp.edu IN /pub/incoming/id IN /pub/msdos/games/id/home-brew/doom (2) infant2.sphs.indiana.edu IN /pub/doom/incoming IN /pub/doom/text (3) wuarchive.wustl.edu IN /pub/MSDOS_UPLOADS/games/doomstuff The file name of the upload will be "doom??.faq" where "??" is the version number of the FAQ. 21. Are there DOOM utilities for unix? Obviously, you can't use any patches for DOS on your SGI executable. You can use people's homemade wad files once you are registered. Since a Linux port of DOOM is out, many of the wad editors, etc., may be ported soon. (The WAD editor DEU has already been ported to Linux.) Look around the ftp sites; some of the utilities may come with code; port them yourself and then announce them! janer@isy.liu.se (Jan Eriksson) says: If anyone is interested I have made a UNIX port of id's BSP node builder. Actually it's a port of Ron Rossbach's port to DOS. It's available via anonymous ftp from ftp.isy.liu.se in /pub/colour/doom/bsp_unix.tar.Z In the same directory there's also wadgc.zip which contains some other UNIX programs for editing DOOM .WAD files (Made by a friend of mine). Information for PC people ========================= 1. What is an SGI? Silicon Graphics, Incorporated. If you don't know, you can't afford one :-). You know, Jurrasic Park, T2, stuff like that. High-end 3D graphics unix workstations. Indvidual models are called things like Indigo, Indy, Crimson, Onyx, Challenge etc. 2. Wow, it must scream then, huh? It does ok. But DOOM is mainly doing a lot of pixmap blitting to the screen. It doesn't take advantage of SGI's special graphics hardware, which is used to do very fast 3D transformations, since DOOM isn't doing "real" 3D. 3. Does it look really cool? It's an exact port. All the bitmaps, sounds, etc. are exactly the same. Even though you can play with quadrupled pixmaps on a 1280 x 1024 screen, the images look good and move fast. I don't have a PC, so I can't compare. From the README The design philosophy of this port was to get something working which was fun. It ain't no opus just because it runs on an SGI so don't get your hopes up. 4. Any other differences? No music. No mouse support. About this FAQ ============== This is a frequently-asked questions file for the SGI version of the game DOOM from id Software. I am putting this together as a service since id is offering no technical support on this port. This is hastily thrown together from net sources. No guarantees on any of the information. I will update it as I become aware of changes, but please mail me, since I don't spend every minute fingering id software and reading alt.games.doom. I am neither a DOOM expert nor an SGI expert, although I play a biochemist on TV. Nor do I plan to get heavily into making .wad files and the like, so I'm not going to be up on the latest poop. If you would like to take over responsibility for this SGI DOOM FAQ, just ask. All this information is from the net. Unfortunately I didn't always save people's names. If you feel you should be credited for some piece of information, or would like to be listed here in the acknowledgements, just email me and I'll add you. Among many others, thanks to Travis Cobbs, Lan Dang, Marcus Gavel, Joachim Hoenig, Dan Hildebrand, Sean Langston, Bill Lorton, Bob Nance, Robert Teller, Patrick Tufts, Guenter Wunner, and T.J. Kelly and all the DOOMWeb guys. You can mail me, John Troyer, at troyer@cgl.ucsf.edu. Corrections and suggestions appreciated. This FAQ is available from http://cornelius.ucsf.edu/~troyer/sgidoomfaq.html john (Thu Sep 15 19:34:52 1994)