home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Amiga 3 / MA_Cover_3.iso / amigadoom / doomattack / doomattack.readme < prev    next >
Encoding:
Text File  |  1998-01-08  |  12.9 KB  |  322 lines

  1.  
  2.                   -====> DoomAttack 0.5 by Georg Steger <====-
  3.  
  4.  
  5. DoomAttack is another port of Doom for the Amiga. Creating an Amiga version
  6. was very easy, because ID Software have released the original source code
  7. as public domain and therefore it's also 100% legal.
  8.  
  9.  
  10. What's so special about *this* version:
  11. =======================================
  12.  
  13. o Several routines have been rewritten in assembler
  14.  
  15. o The game is running fast even on my AGA 68030/50 68882/50 and will probably
  16.   fly on 68040/68060 + GFX-Board (if it works :-?)
  17.  
  18. o The low detail mode routines (2 x 1) were fixed and the game is *very*
  19.   playable in full screen on a 68030/50 machine
  20.  
  21. o You can use Keyboard, Mouse and Joystick
  22.  
  23. o You can make a IFF screenshot from inside the game.
  24.  
  25. o Two versions: one for 68030 and one fore 68040/68060 (not tested!)
  26.  
  27. o Network playing does *NOT* work!!!!!!!!!!!!
  28.  
  29.  
  30. System Requirements:
  31. ====================
  32.  
  33.   o Amiga OS 3.0
  34.  
  35.   o 68030 (it's very probably also working on 68020) - FPU is *not* required
  36.   
  37.   o some memory (8 MB FAST is probably the minimum)
  38.   
  39.   o AGA or GfxBoard (not tested)
  40.  
  41.   o There are two versions of the executable. One compiled for computers
  42.     with 68030 and one for computers with 68040/68060, which I hope should
  43.     not contain any of the commands that on these CPUs have to be emulated.
  44.  
  45. In order to use DoomAttack you first of all need a WAD file. I have only
  46. tested DoomAttack with a Shareware WAD (you can get one from the ID Soft-
  47. ware Web site: http://www.idsoftware.com), that's one with the suffix
  48. ".wad". Anyway it will probably work with registered and commercial WAD
  49. files, too.
  50.  
  51. Tip for italian users (and others, too!?):
  52. ==========================================
  53.  
  54. There's a PC Doom Demo archive in many of the CDs of Enigma Amiga Run. Just
  55. have a look at the "ONLYPC" directory. There you should find a file called
  56. "doom1_2.zip". There's a unzip utility for the Amiga on Aminet: "util/arc/
  57. Unzip512x.lha". Simply type: "unzip doom1_2.zip" and the archive will be ex-
  58. tracted to the current directory. After unzipping you will find several
  59. files in the current directory, "DOOM1_2S.1" and "DOOM1_2_S.2" are the ones
  60. containing the WAD file. The format of the two files seems to be ICE, but
  61. inside there is a normal LHA file, therefore you can extract it diretly
  62. with the Amiga. As the ICE file is split you first have to join the two
  63. parts together: "join DOOM1_2S.1 DOOM1_2S.2 to DOOM.LHA". After that you
  64. can use lha: "lha x DOOM.LHA". The warning "skipping extraneous/corrupt
  65. data" can be ignored.
  66.  
  67.  
  68. Installation:
  69. =============
  70.  
  71. Either use the installation script (recommended!!) or do it by hand:
  72.  
  73. 1) Copy the right executable to the directory containing the WAD file. 
  74.  
  75. 2) Create a directory called "c2p" in the same directory and copy the
  76.    chunky2planar routine (which is called "c2p", too) there.
  77.  
  78. 3) DoomAttack needs to have the environment variable DOOMHOME (not HOME!
  79.    I have changed) set to the directory containing the WAD file.
  80.  
  81. 4) In order to speed up disk loading use "AddBuffers <disk:> <buffers>".
  82.    One buffer is about 500 bytes. I suggest you to use a value between
  83.    100 and 500, for example: "AddBuffers WORK: 200"
  84.  
  85. 5) Before starting DoomAttack you should set the stack size to 150000,
  86.    which I guess should be enough.
  87.  
  88. 6) VERY IMPORTANT: If you want DoomAttack to run on GFX Board screen you
  89.    must start it with the option "-rtg" (see below), because I actually
  90.    don't know how to find out, whether a Screen mode is native or not!!!!
  91.    DoomAttack has not been tested on GFX-Boards, so it might not work. In
  92.    this case try a native Amiga mode.
  93.  
  94.  
  95. It's also possible to start DoomAttack from Workbench by double-clicking
  96. the DoomAttack_ClickMe icon, first, which sets DOOMHOME and increases the
  97. buffers. (Don't double-click it more than once per boot!!)
  98.  
  99. Anyway Doom eats a lot of memory and therefore it might be better booting
  100. "with no Startup Sequence". To simplify the starting in this case you can
  101. copy the "DoomAttack_Start" file to S: so that after having booted without
  102. Startup Sequence it will be enough typing "S:DoomAttack_Start" to get the
  103. game running. "DoomAttack_Start" sets the DOOMHOME environment variable,
  104. adds some buffers to "Work:" (change this if the volume containing the Doom
  105. files has another name on your computer!!!!), sets the stack to 100000 and
  106. starts DoomAttack.
  107.  
  108. You can do this from Workbench, too, by simply double-clicking the Doom-
  109. Attack_BootStart icon and resetting the computer when the requester telling
  110. you to do so, appears. If you are interested in how this work: When you
  111. double-click DoomAttack_BootStart the script with the same name will be
  112. executed. The scripts mounts a small RAD disk (called DoomRAD:) and creates
  113. a startup-sequence for it. The RAD disk has the highest boot priority and
  114. therefore autobooting will happen from there, when you reset the computer.
  115. The startup-sequence created by the script (BTW: to set DoomAttack options
  116. edit the "setenv DOOMOPTIONS" line in this script) sets up some assigns,
  117. starts the monitor drivers, sets the environment variable DOOMHOME, in-
  118. creases the stack size, kills the small RAD disk and then starts DoomAttack.
  119.  
  120.  
  121. Options:
  122. ========
  123.  
  124. You can set them with shell arguments (if you use DoomAttack_Start script
  125. you must edit this file) or with tooltypes (only if you start DoomAttack
  126. from Workbench). The '-' char is part of the option and tooltypes must
  127. contain it, too!
  128.  
  129. -rtg               IF you want to use a GFX-Board screenmode you have
  130.                        to specify this option. If you do so DoomAttack will
  131.                        render the framebuffer with either WritePixelArray8
  132.                        or WriteChunkyPixels depending on whether you are
  133.                        running OS3.1 or not.
  134.  
  135.  
  136. -fps                   Displays the frames per seconds in the upper left
  137.                        corner of the screen. Doesn't work very well in
  138.                        "-rtg" (or single buffered) mode - the display
  139.                        flashes ...
  140.  
  141.           
  142. -rendercontrol         Can be used together with "-fps" to see how fast the
  143.                rendering would be, if there was no need to chunky2-
  144.                planar (or copy) from the framebuffer to the screen
  145.                bitmap. You can switch the FrameBuffer-to-Screen
  146.                routine on and off with CAPS LOCK. If CAPS LOCK is
  147.                on, there will no screen update, but you will still
  148.                see the fps.
  149.  
  150.  
  151. -nodoublebuffer        Switches double-buffering off. Double-buffering does
  152.                        actually only work with native screens (i.e. if you
  153.                        don't use the "-rtg" option), because I don't know
  154.                        how to do double-buffering on GFX-Boards.
  155.  
  156.  
  157. -zonesize              By default DoomAttack tries to alloc one block of 6
  158.                        MByte, which will be freed only when you quit Doom.
  159.                        If allocation fails, it decreases the size by 50
  160.                        KByte, again and again, until allocation succeds.
  161.                        With -zonesize you can tell DoomAttack how many
  162.                        KBytes (!!!!! not MBytes) it shall try to alloc
  163.                        first. You should not go under 3000 KByte, although
  164.                        I'm not quite sure as this probably depends on the
  165.                        WAD file (I've only tried one).
  166.  
  167. -displayid           Supply the (numeric) id of the screenmode you want to
  168.                        use. You can specify it in hexadecimal format. For
  169.                        example "0x21000" would be PAL:Lowres. You usually
  170.                        don't have to use this option because you can force
  171.                        a Screenmode requester to pop up by holding down
  172.                        one of the SHIFT keys when starting DoomAttack (the
  173.                        requester will not appear immediately). The screen-
  174.                        mode will then saved to the config file ".doomrc"
  175.                        when quitting Doom. BTW: You can edit ".doomrc" with
  176.                        a normal Editor.
  177.  
  178.  
  179. -c2proutine           Specify an alternative chunky2planar routine. By
  180.                        default DoomAttack tries to load "PROGDIR:c2p/c2p",
  181.                        and that's actually the only one available, so this
  182.                        option can't actually be used.
  183.  
  184.                        BTW: If DoomAttack couldn't load the c2proutine it
  185.                             will automatically switch to "-rtg" more.
  186.                             
  187.                             At the end of all Init-Routines DoomAttack will
  188.                             display in the output window, whether it is
  189.                             running in "-rtg" or in "chunky2planar" mode.
  190.  
  191.  
  192. -forcedemo             Forces to run the demo even if it "is from another
  193.                        game"
  194.  
  195.  
  196. -norangecheck          There are some bugs in the rendering engine (= in the
  197.                        original source code) which sometimes can make it
  198.                        try to  render outside the framebuffer (=> can cause
  199.                        crash). Therefore by default there are range checks
  200.                        in the routines to avoid this. This might slow down
  201.                        overall speed a little bit. With this option you can
  202.                        replace the render routines with faster ones not
  203.                        containing the mentioned range checks, at your own
  204.                        risk!! There will probably be only a very small speed
  205.                        increase, therefore I think it's better not using
  206.                        this option!
  207.  
  208.  
  209. -nosound               Disable sound. Actually only sound effects (no music)
  210.                        are working and this anyway slows down the game a 
  211.                        little bit.
  212.  
  213.  
  214.  
  215. Controls
  216. ========
  217.  
  218. CURSOR LEFT            rotate left
  219. MOUSE LEFT
  220. JOYSTICK LEFT     
  221.  
  222. CURSOR RIGHT           rotate right
  223. MOUSE RIGHT
  224. JOYSTICK RIGHT
  225.  
  226. CURSOR UP              walk
  227. MOUSE UP
  228. JOYSTICK UP
  229. RIGHT MOUSE BUTTON
  230.  
  231. CURSOR DOWN            go back
  232. MOUSE DOWN
  233. JOYSTICK DOWN
  234.  
  235. CONTROL                shoot
  236. JOYSTICK FIRE
  237. LEFT MOUSE BUTTON
  238.  
  239. SHIFT                  run
  240.  
  241. ALT
  242. MIDDLE MOUSE BUTTON    strafe
  243.  
  244. RETURN                 show last message in game/ "enter" in menus
  245.  
  246. SPACE
  247. MMB DOUBLE CLICK       use / open door
  248.  
  249. NUMERICPAD *           gamma correction
  250.  
  251. HELP                   pause game
  252.  
  253. ` (above TAB)          save IFF screenshot - standard name DOOMxx.IFF
  254.  
  255. SHIFT + ` (above TAB)  save IFF screenshot - ask for name with ASL requester
  256.  
  257. F5                     switch low detail (2 x 1 Pixels) on/off
  258.  
  259. +                      increase window size / map zoom
  260.  
  261. -                      decrease window size / map zoom
  262.  
  263.  
  264.  
  265. FINAL NOTES:
  266. ============
  267.  
  268. o The game from time to time crashes at exit. There seem to be a lot of
  269.   bugs in the original source code. I have fixed some but there are
  270.   still crashes. Reboot your computer after quitting DoomAttack. I don't
  271.   take any responsibility for any damage that occures. You have been
  272.   warned!!!
  273.   
  274. o The actual c2p routine is optimized for 020/030 (no blitter) and is based
  275.   on a routine I found in the "rtgmaster" archive. If someone wants to send
  276.   me faster ones, or routines optimized for 68040/60 ...
  277.  
  278.   The c2p routine could be optimized a lot as it actually chunky2planars
  279.   always the whole screen and always in 1 x 1, even if you have shrunk the
  280.   display window to it's minimum size.
  281.   
  282.   BTW: The c2proutine may be destructive
  283.  
  284. o If Joystick control or Mouse control does not work, load ".doomrc" into
  285.   an editor and set "usemouse"/"usejoystick" to 1. You can also disable
  286.   them by setting "usemouse" and/or "usejoystick" to 0, which can speed
  287.   up the game a little bit.
  288.  
  289. o The FPS display ("-fps" option) slows down the game a little bit.
  290.  
  291. o Native Amiga screenmodes with 30 kHz slow down the game considerably. If
  292.   possible use a normal 15 kHz mode.
  293.  
  294. o Expect new and faster versions with even more routines converted to
  295.   assembler, soon!!!
  296.  
  297. o Don't expect networking to be supported in future versions. I don't know
  298.   anything about it.
  299.   
  300. o I could implement MOD playing routines, if someone sends me a cool and
  301.   fast (!) routine and one that, if possible, uses the audio.device (well,
  302.   unless this is too slow).
  303.   
  304. o Can someone tell me how to check whether a certain screenmode is native
  305.   (i.e. planar planes which have to be in chip memory) or from a GFX-
  306.   Board. I've heard that checking the Flag DIPF_IS_FOREIGN is not working
  307.   with all GFX boards.
  308.  
  309. o And how do I do fast double buffering on GFX-Boards? I've heard something
  310.   about ScrollViewPort(). Remember: I don't have a GFX-Board and there does
  311.   not seem to be anyone here in South Tyrol, having one :( Therefore you
  312.   have to explain me *everything*.
  313.  
  314. o I have removed the checks for divison by zero in many places, where I
  315.   think they are not necessary. Anyway I was not always 100% sure, so if
  316.   you get a 80000005 GURU let me know!
  317.  
  318.  
  319. ===========================================================================
  320. Georg Steger, Hochlercher 30, I-39030 St. Johann/Ahrntal
  321. EMail: steger@pass.dnet.it
  322.