|
|
1.1 root 1: WinDoom - V0.96
2:
3: 14 Mar, 1998
4:
5: CONTENTS:
6:
7: i. foreword
8: 1. What is WinDoom?
9: 2. Program requirements
10: 3. Setting up WinDoom
11: 4. The console
12: 5. Changing your controls
13: 6. Using hi-res mode
14: 7. Playing a network game
15: a. Acknowledgments
16:
17: ---------------------------------------------------------------------
18:
19: i. Foreword - What's new with this version?
20:
21: 1. Fixed bug that kept left alt key from working.
22:
23: 2. Fixed "exit crash" bug.
24:
25: 3. Various memory leaks plugged.
26:
27: 4. Changed bind command to allow for key scancode entry. This was
28: done solely to allow for foreign keyboard (or Dvorak) owners to
29: customize their controls. You still can't change the weapons
30: keys nor can you change the console or menu keys.
31:
32: NOTE: I cannot stress enough that you MUST have DirectX 5 installed
33: and working on your machine for this program to work. If you
34: don't have DirectX 5, IT WILL NOT WORK. And no amount of com-
35: plaining to me about it will change that.
36:
37: ---------------------------------------------------------------------
38:
39: 1. What is WinDoom?
40:
41: Thanks go first to id Software for making a great game then releasing
42: the source code to it so we could have something else to play with.
43:
44: I have changed no gameplay at all. You CAN use some new cheat codes
45: in the console but about all you can do now is get the backpack you
46: couldn't get by cheating before.
47:
48: WinDoom is my version (so far) of a Win32 port of the Linux Doom
49: source code released by id Software. I have gotten most of the
50: features of the original program working but it isn't quite finished
51: yet. It does odd things occasionally.
52:
53: Please DO E-Mail me with problems you've had with this especially if
54: you can't get it working at all. I already know of most of the
55: problems you may encounter and I am already addressing them. But I
56: want feedback about any problems you encounter. There is a file
57: generated in your game directory called windoom.dbg. It contains
58: some data that will probably be helpful to me in debugging whatever
59: problem you've encountered. Screenshots may be helpful, too.
60:
61: I have several very different systems to test this on and a LAN as
62: well but I couldn't possibly duplicate the variety of systems you
63: all have. Running it on your systems is the best testing I can get.
64:
65: I know this is more like a public Beta test but I did want to share
66: what I have done so far, though.
67:
68: Also, please don't send me E-Mails asking for features or changes.
69: There will be time enough for that after the game actually works
70: properly. Please don't ask me to fix bugs in the original game. I'm
71: just trying to make sure that changes I've made haven't introduced
72: new bugs.
73:
74: New revisions will be forthcoming soon.
75:
76: Also, when I've got all the original Doom features working and the
77: program stabilized, I will release my source code for the program.
78:
79: To anyone working on their own Win32 ports of Doom: If you want to
80: share programming information then all you have to do is ask. I'll
81: tell you whatever I know if it will help. I AM going to release my
82: modified source code when I get this stabilized.
83:
84: A few new things have been added along the way.
85:
86: 1. A print screen key is now always available by pressing
87: the (Print Screen/Sys Rq) key on your keyboard. If you
88: aren't playing a game, no message will appear on the
89: screen but a print screen PCX file WILL be generated.
90:
91: 2. I have added a console similar to the Quake/Quake II
92: console. It isn't as fancy and no doubt not as functional
93: as the Quake console but it works and any keyboard command
94: such as the cheats can be entered in the console. Also,
95: all messages that appear on the screen briefly will be
96: displayed in the console. The console key is the "`"
97: key.
98:
99: 3. As you see above, a CD player is now supported. A number
100: of features are planned for this (playlists, directory,
101: naming, song naming, etc.) Trying to play a CD with no
102: CD in the drive will do nothing. Removing the CD from the
103: drive while playing will result in the MIDI song being
104: restarted. The CD player will detect if the CD has been
105: changed and start playing on the first music track (if
106: there is one) and will not play if there are no music
107: tracks.
108:
109: 4. Midi file playing. Currently a single MIDI file will be played
110: (if it exists) in the game directory. The name of this file is
111: doomsong.mid. It can be any valid MIDI file. It will be played
112: ALL the time unless you turn on the CD player.
113:
114: 5. There is now an "always_run" key. I got this idea from Chi
115: Hoang and his DOSDoom. The always_run key is the <CAPS LOCK>
116: key and it toggles between on and off.
117:
118: 6. There is an "mvert" setting and an "mvert" key to toggle it on
119: and off. It is persistent (gets saved and restored).
120:
121: 7. Keyboard bindings have been added.
122:
123: 8. Mouse and joystick bindings have been added.
124:
125: 9. The system uses keyboard scancodes exclusively for system
126: controls. All other values in windoom.ini are true=1 and
127: false=0. true=on, false=off
128:
129: 10.The ability to record, stop and play back demo from the console.
130: This is currently not working properly. You can try it but it
131: probably won't work right.
132:
133: ---------------------------------------------------------------------
134:
135: 2. Program Requirements
136:
137: This program is a Win32 application and REQUIRES DirectX 5
138: (available for NT). It would not have been possible to do
139: what was done with DirectX 3. DirectX 5 will be supported in
140: the 5.0 version of NT. If you have Windows95 and you don't have
141: DirectX 5, you can get it here:
142:
143: http://www.microsoft.com/msdownload/directx5/directx5.htm
144:
145: If you have NT 4.0 and want DirectX 5 you'll have to look around
146: for it. It's there but I don't know a stable place you can
147: download it from.
148:
149: If you want to run ANYTHING under Windows95 you really should
150: have at least 16 Meg of RAM. 32 Meg is MUCH better. NT better
151: have 32 to start with.
152:
153: You must have a functioning TCP/IP connection to play a
154: network game using this program. Internet play is not stable
155: at all and not recommended.
156:
157: You CAN play with just the keyboard but both the mouse and
158: a joystick (or other game controller) are supported.
159:
160: There is a way for people who use NT 4 to run this program.
161: There is a version of DirectX 5 for NT 5 floating around the
162: Internet. I found it at www.op3dfx.com on the 15 Jan, 1998
163: news page. It appears to be the DirectX 5 from the NT 5 beta.
164: I don't know that this is supposed to be distributed but I
165: downloaded it and installed it on my NT 4.0 Server and it
166: works.
167:
168: As far as I can tell, no resolutions below 640x480 are supported
169: by the DirectX 5 for NT drivers.
170:
171:
172: ---------------------------------------------------------------------
173:
174: 3. Setting up WinDoom
175:
176: Create a directory and put the WinDoom.exe program in it
177: along with the Doom IWAD of your choice (I've tested this
178: with all three of the Doom I wads (doom1.wad, doom.wad and
179: doomu.wad) as well as doom2.wad, tnt.wad and plutonia.wad.
180:
181: The order of precedence in looking for an IWAD is this:
182:
183: doom2.wad - retail Doom II wad file
184: plutonia.wad - Another Doom II IWAD from id
185: tnt.wad - Another Doom II IWAD from id
186: doomu.wad - ultimate Doom I retail wad file
187: doom.wad - Doom I registered shareware wad
188: doom1.wad - Doom I unregistered shareware wad
189:
190: When the program is first run, it will create a section in
191: the win.ini file for WINDOOM that stores the location of
192: the WinDoom program. If you move the program or change the
193: name of the directory in which the program is installed you
194: need to update this ini file entry or remove it.
195:
196: An ini file will be created (or updated) in the directory
197: in which WinDoom is run with the configuration information
198: for the program. Modifying this file is currently the only way
199: to change some of the mouse/joystick mappings.
200:
201: A way to change your keyboard mappings and the values for your
202: mouse and joystick has been added to the console in the program.
203:
204: Make sure your shortcut, if you create one, has the directory
205: where you installed the program as the working directory. It
206: probably won't run otherwise.
207:
208: I have not tried some of the original command line options to see
209: if they work or not. I have spent most of my time writing code
210: to get the program working. I will be testing the rest of these soon.
211:
212: I have tested the following and know that they work:
213:
214: -nomonsters
215: -deathmatch
216: -altdeath
217: -net
218: -skill
219: -warp
220: -episode
221: -playdemo
222: -timedemo
223: -record
224: -file
225: -width
226: -height
227:
228: For information on how to use the options other than -net, -width
229: and -height please see the official Doom FAQ.
230:
231: I don't know of any others that are normally usable.
232:
233:
234: ----------------------------------------------------------------
235:
236: 4. The console
237:
238: This program does not currently support the original music from
239: the game. It is stored in a format called "MUS" and is not
240: directly playable by the MCI midi sequencer in Windows.
241:
242: In order to still have music in the game, I wrote some routines
243: to access and control the cd player that is found in most pc's
244: today.
245:
246: I made a vain attempt to map the cd controls into unused keys
247: in the Doom keyboard but no combination I could think of made
248: any sense. So I created a console where cd commands could be
249: entered.
250:
251: While I was testing the code for controlling the cd player from
252: the console, I remembered what an absolute pain it was to try
253: to enter cheat codes without being able to tell if the keys
254: were entered properly. I decided to allow cheat code entry
255: into the console as well so I could see what I was typing.
256:
257: I then decided to add NEW cheat codes that were similar to
258: the ones I had gotten used to in Quake and Quake II. It sort
259: of ballooned from there...
260:
261: The console command key is "`". This key both opens and closes
262: the console. The menu command key <ESC> also closes the console
263: and starts the menu. If the menu is up when you press the console
264: command key, the menu will close and the console will open.
265:
266: Here is a list of the commands you can now enter on the command
267: line of the console:
268:
269: iddqd - god mode
270: idfa - full ammo
271: idkfa - keys full ammo
272: idclev - change level
273: idchoppers - chainsaw and invulnerability
274: idclip - no clipping toggle
275: idspispopd - no clipping toggle
276: idbeholdi - invisibility
277: idbeholdv - invulnerability
278: idbeholds - strength (berserk pack)
279: idbeholdr - radiation/environment suit
280: idbeholdl - light amplification goggles
281: idbeholda - all map cheat
282: cd on - starts your cd player (switches from midi)
283: cd off - stops your cd player (switches to midi)
284: cd pause - pause/resume cd music toggle
285: cd resume - pause/resume cd music toggle
286: cd next - play next song on cd
287: cd + - play next song on cd
288: cd prev - play previous song on cd
289: cd - - play previous song on cd
290: cd XX - plays song number specified in XX 00 to 99
291: midi pause - pauses/resumes the midi playback (toggle)
292: midi resume - pauses/resumes the midi playback (toggle)
293: quit - quits the game (immediately)
294: god - enable god mode (degreelessness?) toggle
295: map - e?m? or map?? (Doom I or Doom II map names)
296: noclip - no clipping toggle
297: give all - gives full ammo,armor,health,weapons,keys
298: give ammo - gives full ammo
299: give armor - gives full armor
300: give health - give 100% health
301: give weapons - gives all weapons
302: give keys - gives all keys
303: give backpack - gives ammo backpack
304: always_run X - toggles always run 0 = off, 1 = on
305: swap_stereo X - toggles swap left/right 0 = off, 1 = on
306: bind - binds a value to a cvar
307: record - records a demo in new demo II format
308: finish - stops recording a demo II format demo
309: play - plays back a demo II format demo
310: cmdlist - lists console commands
311:
312: The map and idclev commands are disabled from the console
313: during a network game. It crashes the machine you do it
314: on and locks up the KEY player's machine. The other players
315: can exit the game but their systems are VERY slow. (You
316: have to hold the keys longer.)
317:
318: All the original cheat codes work EXACTLY as they did
319: originally. No changes have been made to those. The
320: new MAP command works similarly to the MAP command in
321: Quake/QuakeII. If you want to select a Doom 1 or Doom
322: II level you type in MAP then the full name of the
323: map you want to load (E1M7 or MAP19).
324:
325: All the cheats are disabled during network games, also.
326: Note: This does not include the game control commands,
327: just the "cheats".
328:
329: A number of other commands are planned for this. Mostly
330: just game variables that you can set. (like always_run)
331:
332: All game input is dead while the console is active, so
333: be warned! The <ESCAPE> key as well as the "`" key will
334: terminate the console. Any command that you have not
335: pressed <ENTER> to complete will be thrown away. The
336: menu and console shut each other down when you call
337: them up. They are mutually exclusive.
338:
339:
340: ----------------------------------------------------------------
341:
342: 5. Changing your controls
343:
344:
345: With the "bind" command on the console, you can now change
346: your keyboard mappings from the console. Additional mappings
347: and controls will be added later.
348:
349: The bind command works backwards from the Quake bind command.
350: You enter the bind command, the cvar you want a keystroke bound
351: to followed by the key or the keyname.
352:
353: Some keys are not printable and so are accessed through their
354: keyname. Other keys are printable and accessed directly by
355: entering the actual key.
356:
357: The following are the keyboard control cvars that have been
358: implemented so far:
359:
360: key_right - the key to turn right - also used in menu
361: key_left - the key to turn left - also used in menu
362: key_up - the key to move forward - also used in menu
363: key_down - the key to move backward - also used in menu
364: key_strafeleft - key used to slide to the left
365: key_straferight - key used to slide to the right
366: key_fire - key used to fire weapons
367: key_use - key used to open doors and flip switches
368: key_strafe - toggle key used to change turn to strafe
369: key_speed - key used to go faster (straight or turning)
370: joyb1 - joystick button 1
371: joyb2 - joystick button 2
372: joyb3 - joystick button 3
373: joyb4 - joystick button 4
374: mouseb1 - left mouse button
375: mouseb2 - right mouse button
376: mouseb3 - middle mouse button
377:
378: These cvars can be set to any printable character or they
379: can be set to any of the following key names:
380:
381: NULL - do nothing
382: BACK - back-space
383: ENTER - normal enter key (may not function properly)
384: LCTRL - left control key
385: LSHIFT - left shift key
386: RSHIFT - right shift key
387: LALT - left alt key
388: SPACE - space bar
389: CAPS - caps lock key
390: NUMLOCK - numlock lock key
391: SCROLL - scroll lock key
392: PAD7 - 7/home key on keypad
393: PAD8 - 8/up arrow on keypad
394: PAD9 - 9/page up on keypad
395: PAD- - the "-" key on keypad
396: PAD4 - 4/left arrow on keypad
397: PAD5 - 5 key on keypad
398: PAD6 - 6/right arrow on keypad
399: PAD+ - the "+" key on keypad
400: PAD1 - 1/end key on keypad
401: PAD2 - 2/down arrow on keypad
402: PAD3 - 3/page down on keypad
403: PAD0 - 0/insert on keypad
404: PAD. - ./delete on keypad
405: PADENTER - enter key on keypad
406: RCTRL - right control key
407: PAD/ - the "/" key on keypad
408: RALT - right alt key
409: HOME - home key (grey)
410: UP - up key (grey)
411: PAGEUP - page up (grey)
412: LEFT - left arrow (grey)
413: RIGHT - right arrow (grey)
414: END - end key (grey)
415: DOWN - down key (grey)
416: PAGEDOWN - page down (grey)
417: INSERT - insert key (grey)
418: DELETE - delete key (grey)
419:
420: The bind command currently works backward from the bind command
421: in Quake. The Quake bind command binds commands to keys. This
422: bind command binds keys to commands. A subtle but important
423: difference. (and one that may change)
424:
425: Doom was designed with only a few customizable commands. The
426: rest are set and unchangable. Quake was designed with a very
427: different idea about how the controls should work.
428:
429: Doom may, at a later date, be converted to use the type of
430: command control that Quake uses. For now I have stayed with
431: the original command implementation.
432:
433: The commands in Doom are referred to as cvars.
434:
435: The bind command syntax works like this:
436:
437: BIND KEY_USE SPACE
438:
439: Which will bind the space bar to the use cvar. You will get a
440: message if the bind command is successful telling you that the
441: cvar is bound to the key you specified like this:
442:
443: CMD KEY_USE BOUND TO SCANCODE 57
444:
445: In this case the space bar has a keyboard scan code of 57.
446:
447: If the keyboard command you are trying to bind to a command
448: cvar does not exist, you will get this error message:
449:
450: BIND ERROR: INVALID KEY VALUE
451:
452: If the keyboard command cvar you are trying to bind does
453: not exist, you will get this error message:
454:
455: BIND ERROR: INVALID CVAR
456:
457: There is also another type of command you can issue at the
458: console which is not listed above because it is used to
459: set the value of some game control cvars.
460:
461: Control cvars are not the same as command cvars. Command
462: cvars are used to generate program input. Control cvars
463: are used to control the way the program behaves.
464:
465: The currently defined control cvars are:
466:
467: always_run - you always run in the game
468: swap_stereo - reverses stereo sound "panning"
469: usemouse - is mouse input available
470: mousebfire - which mouse button is used to "fire"
471: mousebstrafe - which mouse button toggles "strafe"
472: mousebforward - which mouse button moves you forward
473: usejoystick - is joystick input available
474: joybfire - which joystick button is used to "fire"
475: joybstrafe - which joystick button toggles "strafe"
476: joybuse - which joystick button opens doors/flips switches
477: joybspeed - which joystick button makes you run
478: mvert - 0 = mouse normal, 1 = mouse left/right only
479:
480: The syntax for using these controls is simple. You enter the
481: name of the cvar and the value you wish to assign to it like
482: this:
483:
484: always_run 0
485:
486: If the cvar is valid and the value is within the acceptable
487: limits, you will get a message like this:
488:
489: always_run SET TO 0
490:
491: If you enter an invalid cvar name, you will get this error
492: message:
493:
494: ERROR: INVALID CVAR
495:
496: If you enter a valid cvar name but enter an invalid value for
497: it, you will get this error message:
498:
499: ERROR: INVALID VALUE
500:
501: The usemouse and usejoystick cvars tell the program whether
502: you want to use mouse and/or joystick input if either or both
503: are available.
504:
505: The value of 0 for either of these turns off the support for
506: that device. A value of 1 turns it back on.
507:
508: The button numbers for the mouse and joystick start at 0 rather
509: than 1. So a two button mouse has buttons 0 and 1. The left and
510: right mouse buttons respectively. A joystick with two buttons
511: also has buttons 0 and 1. Which button is which usually depends
512: on the joystick but the trigger is usually button 0 while the
513: the other buttons are numbered starting at 1. Some experimen-
514: tation may be required before you get the buttons to work the
515: way you expect them to.
516:
517: Remember that usemouse must be set to 1 to be able to use a
518: mouse and usejoystick must be set to 1 to be able to use a
519: joystick with the program.
520:
521: The functions defined in the cvars list are ALL the functions
522: that could ever be assigned to mouse and joystick controls in
523: Doom. No other functions have ever been possible.
524:
525: The changes you make to your controls with this are immediate
526: and persistent. (meaning that they are saved in the windoom.ini
527: file and are used the next time you start the WinDoom)
528:
529:
530: ----------------------------------------------------------------
531:
532: 6. Using hi-res mode
533:
534:
535: Part of the reason for porting this code to Win32 was to be
536: able to use high resolution video modes.
537:
538: This program supports all video 8 bit (256) color modes that are
539: available with the DirectDraw drivers on your computer. Some are
540: not recommended. Do NOT try to use video modes where the height
541: value is greater than the width value. (i.e. 320x400) You will
542: NOT be happy with the result and the program will probably die.
543:
544: In order to know what video modes are available to you, you can
545: look in the DirectX applet in your control panel or you can run
546: the program once and look at the contents of the windoom.dbg
547: file created in the directory where you installed the program.
548:
549: Once you have run WinDoom a video mode list will be written to
550: the windoom.dbg file. You can pick a mode from this list as
551: long as the height does not exceed the width and the color bits
552: value is 8.
553:
554: I have had some machines not give a picture when running in some
555: of the high resolution modes even though the program was running.
556: I could press escape, down, enter and "y" to exit the program
557: but I never saw any output from the game. I don't know what
558: causes this. I am investigating it. If you have this problem
559: please notify me and tell me what video setup you have.
560:
561: The syntax for high the resolution modes is:
562:
563: -width xxxx -height yyy
564:
565: where the xxxx is the width you want to use (like 320) and the
566: yyy is the height you want to use (like 240). So to start
567: WinDoom and run the program at 640x480 resolution, you would
568: put the following parameters on the command line of your WinDoom
569: shortcut:
570:
571: -width 640 -height 480
572:
573: You can access the command line for your shortcut by right
574: clicking the mouse on the shortcut then selecting the properties
575: option then clicking on the properties tab in the dialog box.
576:
577:
578: DISCLAIMER
579:
580: I make absolutely NO warrantees of any kind for this
581: program. I am not responsible for any consequences
582: of anyone using this program.
583:
584: id Software owns the rights to Doom and to the source
585: code they distributed. This program was compiled from
586: source code to that game that was modified by me. So
587: don't bug id Software if you've got a problem with
588: this program. I'm the one who screwed up. Tell me.
589:
590:
591: ---------------------------------------------------------------------
592:
593: 7. Playing a network game
594:
595: Okay, this is little different than a DOS Doom network game.
596: It's just like the Linux parameters, though.
597:
598: What you want to do is create a shortcut to your game and
599: then change the parameters of your shortcut to include the
600: network commands on the command line.
601:
602: The parameter to start a network game is "-net" (without the
603: quotes). You then follow the -net command with the player
604: number your machine is going to be (1 to 4) and the IP
605: addresses or hostnames of the OTHER systems you will be
606: playing with. The IP addresses MUST be preceded by a period
607: ".". If you leave off the leading period, the game will
608: think that the IP address is a hostname and try to resolve
609: it into an IP address (and die on you).
610:
611: Sample command lines for two players would look like this:
612:
613: machine 1: (hostname: rimmer IP address: 192.168.1.5)
614: windoom -net 1 holly -deathmatch -nomonsters
615: OR
616: windoom -net 1 .192.168.1.4 -deathmatch -nomonsters
617:
618: machine 2: (hostname: holly IP address: 192.168.1.4)
619: windoom -net 2 rimmer -deathmatch -nomonsters
620: OR
621: windoom -net 2 .192.168.1.5 -deathmatch -nomonsters
622:
623: In order to use hostnames rather than IP addresses you
624: must either have DNS setup or have a valid hosts file.
625:
626: If you add a third or fourth machine to the game you need
627: to add the IP addresses of the OTHER machines to the
628: command line on each machine. You do not put your own
629: machine's IP address on the command line. You also
630: do not put how many machines are in the game after the
631: -net command. Only which player, out of the 4, you are.
632:
633: The player numbers must be contiguous. You can't have
634: players 1,2 and 4. Also, one player MUST be player 1.
635: Player 1 is the KEY player and that machine coordinates
636: all the other systems.
637:
638: The number of players in the game is determined by how
639: many IP addresses you put on the command line plus your
640: machine.
641:
642: The command line on the KEY player's machine in a four
643: player game might look like this:
644:
645: windoom -net 1 .192.168.1.3 .192.168.1.4 .192.168.1.5 -deathmatch -nomonsters
646: OR
647: windoom -net 1 cat holly rimmer -deathmatch -nomonsters
648:
649: The other player's command lines in the same game might
650: look like this:
651:
652: windoom -net 2 lister holly rimmer -deathmatch -nomonsters
653: OR
654: windoom -net 2 .192.168.1.2 .192.168.1.4 .192.168.1.5 -deathmatch -nomonsters
655:
656: windoom -net 3 lister cat rimmer -deathmatch -nomonsters
657: OR
658: windoom -net 3 .192.168.1.2 .192.168.1.3 .192.168.1.5 -deathmatch -nomonsters
659:
660: windoom -net 4 lister cat holly -deathmatch -nomonsters
661: OR
662: windoom -net 4 .192.168.1.2 .192.168.1.3 .192.168.1.4 -deathmatch -nomonsters
663:
664: If you start a network game and the program appears to be
665: "hung" (black screen only), press and hold the escape
666: key for a few seconds. The program will terminate. It
667: generates an error when shutting down but it doesn't
668: affect game play. I should have that error figured out
669: soon.
670:
671: I DO NOT know if the UDP datagrams used are robust enough
672: to allow this to be played over the internet. My assumption
673: is that it would be but I don't know. I haven't tried it.
674:
675: I have started up a four player game on my network and
676: played at all four stations. Response was good and play
677: appeared to be smooth.
678:
679: I'd be interested to know if anyone is able to play this
680: over the Internet with all the problems that entails. I can't
681: because of my router.
682:
683: ---------------------------------------------------------------------
684:
685: a. Acknowledgements
686:
687: Thanks to all of you who have downloaded the program (I'm not
688: calling it a game. The game part comes from id!). Your feedback
689: has been very helpful and has made this a better program.
690:
691: And to those of you who have had problems. I thank you for
692: your patience while I worked out the bugs you've reported.
693:
694: Thanks again to id Software for making Doom.
695:
696: Thanks to Chi Hoang, Andy Bay, and Bernd Kreimeier for the
697: programming ideas.
698:
699: Thanks to the other members of Project Doom for their support
700: and interest.
701:
702: Thanks to John Carmack, John Cash, Michael Abrash, Brian Hook
703: for letting me peek over your shoulder (figuratively speaking)
704: occasionally. It's been very instructive.
705:
706:
707: Microsoft(tm)(c) 1975-1998, Microsoft, Inc., All Rights Reserved.
708: Quake(R)(c) 1996, id Software, Inc. All Rights Reserved.
709: Quake II(R)(c)1997, id Software, Inc. All Rights Reserved.
710: DOOM(R)(c) 1993, id Software, Inc. All Rights Reserved.
711: DOOM(R) and the DOOM image are registered trademarks of
712: id Software, Inc.
713:
714: ---------------------------------------------------------------------
715:
716: WARNINGS!
717:
718: This program is by no means ready for prime time but it does work
719: mostly. The original music was a large part of Doom for some of
720: us and this game isn't complete without it. It IS being worked on.
721: It may not be possible, however, to play against other versions of
722: Doom with this code. I DO have the specifications for the IPX
723: protocol used by the original Doom and I will attempt to make that
724: work as well.
725:
726: Supporting DOS Doom in network games is, therefore, doubtful but
727: it may happen. However if Chi and I can maintain the same message
728: data for the networking, you should be able to play network games
729: between the two.
730:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.