SGI DOOM FAQ

Version 1.19
May 27, 1995

This FAQ is available at http://www.cmpharm.ucsf.edu/~troyer/sgidoomfaq.html

I just managed to erase my new version of this. I'm working on it. believe me, I'm far more pissed off than you are. jmt 1/23/96.

Table of Contents


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

  2. Where can I get DOOM for the SGI?

    From the README.sgi

    Until then, you can get the SGI version via anonymous ftp from ftp://ftp.cdrom.com//pub/idgames/idstuff/SGI/sgixdoom.tar.gz ftp.cdrom.com is currently the official DOOM ftp site. The ftp sites are usually overloaded and refuse additional anonymous logins. Try at night.

    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!

    The ftp sites are overloaded. Try at night. See the DOOM information on the net below for ftp site mirrors.

  4. Which SGI machines will run DOOM?

    You must be running a version of Irix 5 (usually 5.2 or 5.3) to run DOOM. (uname -r tells you which IRIX you are using.) DOOM will run on both R3000 and R4000 machines. DOOM will not, and never will, run under IRIX 4.0.x. Time to upgrade your machine.

    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. Has it been ported to any other machines?

    finger help@idsoftware.com to find out available ports. There are Linux and Solaris ports.

  6. How did you get to port it? Do you have the code?

    John Troyer just makes up the FAQ. I had nothing to do with the port. Dave Taylor of id software did the port. Of course the code isn't available. Do you think they're crazy?

  7. 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 beta. 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. sgixdoom prints the version number at startup.

    If you have a PC and an older DOS version of DOOM (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.

    Having the registered version also enables features like the -file argument to use the incredible variety of homemade "patch" 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. PWAD files are available at the ftp sites.

  8. How do I register?

    It costs $40 to register DOOM. From the README

    I don't have an ORDER.FRM, so go download a DOS shareware version to get one.

    The registered version comes on disks. You must have access to a networked PC to first construct the 11 Meg doom.wad file and then transfer it to your SGI.

  9. Does it work with DOOM ][?

    Feb 1: I know that the IndiZone 2 CDs are out, but I haven't seen the new 1.8 version of DOOM yet.

    Not yet. It is based on version 1.6, not 1.666, and if you try it is missing some resources necessary for DOOM ][.

    Several people have leaked/pre-announced that there will be a sgixdoom v1.7a on the upcoming IndiZone2 CD that will be DOOM ][ compatible. I assume it will be available from archive sites at that point as well. No word yet on the release date.

    In the meantime, jim@accelr8.com (Jim Reiss) has a patch file that will allow your sgixdoom to play part of DOOM ][. It is available from ftp://ftp.cmpharm.ucsf.edu/pub/troyer/sgipatch.tar.Z

  10. I need to ask id Software a question.

    Please don't mail them bug reports or ask for help about the SGI verison. From finger help@idsoftware.com: Do not send us mail about this. We will delete it. From the README.sgi,

    That's why this FAQ exists. If the answer to your question is not here, post to comp.sys.sgi.apps or rec.games.doom.{announce, help, misc, playing, editing}. 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.

  11. It doesn't work!
    1. It says 'Error: Demo is from a different game version!'

      You are running the 1.5 beta version of sgixdoom with the 1.666 registered doom.wad. The version information is printed when sgixdoom starts up. Download the 1.6 beta version of sgixdoom again from the ftp sites. You did pay for the registered wad, right?

      Alternatively, you've got the 1.6 sgixdoom version and you the 1.2 registered wad. You need to upgrade the registered wad to 1.666 with the patch file dm1666rp.zip found at all the archive sites.

      A third possibility is that you have the 1.6 sgixdoom, the 1.666 doom.wad, and you're running an old PWAD. Solution: quickly start the game before the demo begins.

    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. There are no plans to support Irix 4.0.5.

    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 (<Ctrl><Shift><F12><KeyPad />,
      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!
    10. It only works on the smallest size!
    11. Net games won't work!

      If DOOM runs for a while and won't run again, or if you notice other memory problems (like a huge Xsgi process), reboot your machine or restart your X server (using the Vulcan Death Grip described above). 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.

      Some people have also had similar problems because of their .doomrc file. Throwing it out and starting over again seems to solve the problem.

  12. 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).

  13. 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.

    You can also lie to your machine about your screen size. For 1280x1024 screens, you tell IRIX you have a 1024x768 screen. The regular or -2 screen is then big enough to be usable with no additional CPU cycles. Credit goes to Kevin P. Smith of SGI. This may only work with some graphics types. To make the screen 1024x768, do /usr/gfx/setmon IRIS3K To restore it afterwards, do /usr/gfx/setmon 72HZ

    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]

  14. 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.)

  15. Can I change the keys?

    Matthew T. Nelson <nelsonm@ctron.com> remapped his doom keys based on the old game Lode Runner:

    i - forward (key_up)
    k - backward (key_down)
    j - turn left (key_left)
    l - turn right (key_right)
    u - strafe left (key_strafeleft)
    o - strafe right (key_straferight)
           
    You can do it too by editing the following entries in your .doomrc file:
    key_right               108
    key_left                106
    key_up                  105
    key_down                107
    key_strafeleft          117
    key_straferight         111
    key_fire                157
    key_use                  32
    key_strafe              184
    key_speed               182
           
    The numbers are the ascii decimal values of the (lowercase) letters you want to use. Fire, Strafe, and Speed work as advertised with the new keymappings.

  16. 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.)

    To get a larger screen at no CPU/network cost, see how to use setmon above.

    Patrick Tufts (zippy@cs.brandeis.edu) writes:

    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.

  17. 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.

  18. Can you play across the internet?

    Yes. I just played a cross-continental 100ms-lag game that was jerky but very playable.

  19. Can you play SGI vs PC?

    No. So far, nobody's figured out how. Dan Hilebrand (danh@qnx.com) says:

  20. 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.

  21. Can I change the sounds with a PWAD?

    The program sndserver only looks at the main WAD file for sounds. It doesn't look at the PWAD files you add with the -file command-line argument. You must generate a new main WAD file with the new sounds. (but make sure you keep the original!) The PC WAD editor DEU can do this, and Rob Kowalchuk <kowalc@cs.uregina.ca> has ported (but not yet released it) to the SGI.

    Dan Boardman <boardman@jerry.sal.wisc.edu> has written a small program to rewrite your main WAD file with the new sounds. It is available at http://www.sal.wisc.edu/~boardman/xdmaud.c

  22. What are the cheat codes? the secret doors?

    They are all the same as the PC version. See the FAQ, below.

  23. Where is DOOM information on the net?
    DOOMGate
    ( http://doomgate.gamers.org/ Entrance to the DOOMWeb, source of all things DOOM on the Web.

    finger help@idsoftware.com
    Gives the latest on DOOM ports and releases.

    new newsgroups
    rec.games.computer.doom.announce, rec.games.computer.doom.misc, rec.games.computer.doom.help, rec.games.computer.doom.playing, rec.games.computer.doom.editing

    I highly recommend browsing rec.games.computer.doom.announce to find more information.

    ftp sites
    The official ftp site is ftp.cdrom.com. There is a list of cdrom mirrors from the DOOMWeb. Or get the file "DOOM-related FTP sites" or "How to get DOOM-related files via E-mail" from the newsgroup rec.games.computer.doom.announce

    (If you're reading the text version of this FAQ, mirrors of ftp.cdrom.com are at ftp.orst.edu, nctuccca.edu.tw, ftp.sun.ac.za, flinux.tu-graz.ac.at, ftp.uni-erlangen.de, ftp.sls.wau.nl,n ftp.luth.se, and ftp.dungeon.com)

    Frequently-Asked Questions
    A huge FAQ is available. It is in HTML form or at any of the ftp sites.

    The DOOMWeb also provides a quick tipsheet on DOOM cheat codes

  24. 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:

    There is a small C program to change sound effects in the WAD file.

    From Ken Russell (kbrussel@media.mit.edu): wadtoiv is a Doom wadfile to Open Inventor converter. This program reads in a Doom wadfile, and optionally a patchwad, and outputs a scene graph with faces and textures corresponding to the walls and ceilings in a specified level (episode and mission). Available from http://www-white.media.mit.edu/~kbrussel/wadtoiv.html.

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

  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 rec.games.computer.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 Dan Boardman, Travis Cobbs, Lan Dang, Marcus Gavel, Joachim Hoenig, Dan Hildebrand, Michael Klepikov, Rob Kowalchuk, Sean Langston, Bill Lorton, Matt Nelson, Bob Nance, Jim Reiss, Craig Ruff, Robert Teller, Patrick Tufts, Guenter Wunner, and T.J. Kelly, Piotr Kapiszewski, 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://www.cmpharm.ucsf.edu/~troyer/sgidoomfaq.html

john <troyer@cgl.ucsf.edu>
(Tue Jan 23 02:27:18 1996)