@database zhadoom.guide @$VER:ZhaDoom.guide V0.2 @wordwrap @node Main "ZhaDoom - The Doom for WarpOS" @{b} ZhaDoom - The Doom for WarpOS @{ub} @{u} Table of Contents @{uu} Part A : @{"Introduction " link intro} Part B : @{"Installation " link install} Part C : @{"Authors " link authors} Part D : @{"History " link history} Part E : @{"Future " link future} Part F : @{"Speed " link speed} @endnode @node intro "Introduction" @{b} Introduction @{ub} ZhaDoom is a port of ID Software's famous Game Doom. This is 100% legal, as ID Software released the Sources of Doom. You still need a WAD-File (Doom Data File) from ID Software, though. You can also take the Shareware WAD from ftp.cdrom.com. AFAIK ZhaDoom takes all WAD Files, DOOM 1, Doom 2, Ultimate Doom, Final Doom and WAD Files from people on the net. Why the silly name ZhaDoom ? Well, ZhaDoom is named after Z'Ha'Dum, the planet of the Shadows in the series Babylon 5 :) Have fun. Note: This is only a First Beta Version. It will be much enhanced later. @endnode @node install "Installation" @{b} Installation @{ub} ZhaDoom needs rtgmaster at least version V32 (PPC-Version) installed. The 68k-version also runs with V27. I included the binaries of rtgmaster V32 to this archive, but they are also on Aminet. Simply do copy libs/#? libs: to install them, if you don't have rtgmaster V32 already installed. rtgmaster V32 runs on both PPC and 68k. Of course the PPC Version also needs WarpOS installed, the PPC Software from Haage&Partner. Note that the 68k Version of ZhaDoom is quite slow. This was intended to be a PPC-only version, the 68k is just a plain recompile of the PPC one for 68k. To run it, just start the Executable from the Shell. You don't need to change the stack, it does this itself. You should change to the Directory of the Executable, where the WAD File should also be put. Did not yet try, if it runs from Workbench. I will look after this, when it is a bit more complete. Future versions will also need AHI for the sound. @endnode @node authors "Authors" @{b} Authors @{ub} - First we have those guys at ID Software, of course, without whom this fine game would never exist. Thanks to them, and thanks also for releasing the Sources :))))))))))))))))) Without this Doom would never have appeared on Amiga. - The main author of the Amiga PPC Port is me (MagicSN@Birdland.es.bawue.de). I used the Sources of AmigaDoom V0.3 from trance@master.echo.ch for this Port. Thanks to him also. I myself adapted the thing to StormC and PPC and also did some enhancements of the PPC Version. - Another author would be Michael Rock, who removed the Unix I/O for me, and helped with some other StormC Adaptions. - Sam Jordan fixed the FixedMul bug in the original Doom Sources for me, and he said he will optimize my Doom Source with PPC ASM in the future. @endnode @node history "History" @{b} History @{ub} V0.1 Compiled AmigaDoom for StormC. This is the base version, so i did not list the changes made. Does not yet run. V0.11 Base Source changed by Michael Rock to eliminate usage of Unix I/O. Compiles, but runs very instable. V0.12 Made it running on 68k. The problem was the RANGECHECK. Most RANGECHECK-problems only produced a warning (which slowed down the frame-rate a bit). I used stuff like: #ifndef SNHACK #ifdef RANGECHECK ... #endif #endif here. At one specific place the Doom swapped to parameters "start" and "stop", though, so i checked for startLittle Endian Conversion OR the m_fixed.c OR the r_*.c are the problem... Did not yet find out what is going wrong. This only happens on PPC, on 68k it just runs fine. V0.17 Removed NETWORK. Currently NETWORK is automatically enabled with 68k, and automatically disabled with PPC. 68k runs quite slow for some reasons (maybe optimization level, maybe Network stuff... will have a look at this later... for now PPC Support is most important...) Well, at least 68k runs again now (with V0.16 it did not work). And a price for the person who finds out what is causing those problems with the Dungeon display in PPC... :) V0.18 Added Network Support to PPC Version. Now that silly "singletic"-hack could be removed. (The line singletics=1; is no longer needed in d_main.c). Note, that this stubfile for bsdsocket.library does not cover all function of bsdsocket.library - but all that are needed for Doom :) The PPC Version still has a confused display. V0.20 Sam Jordan fixed the FixMul bug, and now it runs. I did some minor changes to i_video.c to make the PPC Version run on AGA also. @endnode @node future "Future" @{b} Future@{ub} - I will include support for Sound, Mouse, Joystick and Workbench Window - Trance said he would be working for Music Support - Sam Jordan said he will do PPC ASM Optimizations of the Engine @endnode @node Speed "Speed" @{b} Speed @{ub} Spped comparisions: All comparisions are done on my A4000: PowerUP 50 MHz 060/150 MHz PPC 604e Cybervision/3D 24 MB FastRam ZhaDoom 68k on CV/3D : 14 fps ZhaDoom PPC on CV/3D : 35 fps ZhaDoom PPC on AGA : 32 fps Doom 2 on Pentium 180: 39 fps Note: The engine is still ABSOLUTELY unoptimized (no ASM parts). This will be done in the future, so hopefully ZhaDoom will still enhance its already (at least on PPC) fast speed. @endnode