Short: WarpOS Quake port source Author: Jarmo Laakkonen (jami.laakkonen@kolumbus.fi) Uploader: Jarmo Laakkonen (jami laakkonen kolumbus fi) Type: game/shoot Architecture: generic WarpQuake 0.7 22-05-2000 WarpQuake is a port of Quake based on Awinquake by Peter McGavin. Requirements: PPC board with WarpOS installed. AGA or GFX board. TCP/IP stack for network games. lowlevel.library for joypad support. chunkyppc.library. (included) The networking code has only been tested by running two Quake executables on the same machine. This worked fine. Amiga specific commandline options: -ahi: Use AHI. Not recommended as this is slower than using audio.device. -ahiunit: Use this to specify the AHI unit used. The default is 0. -noaspectadjust: Always use 1:1 aspect. -width: -height: Use these to specify display width and height when using chunkyppc.library. Otherwise you only get 320x200 play area although the screen is bigger. Note that this isn't needed on AGA. -bat: Change to BAT MMU setup. This should give a slight speed increase, but may cause problems on some setups. This does the same thing as the changemmu tool supplied with WarpOS. -wpa8: Use WritePixelArray8(). Use this if chunkyppc support doesn't work. -force: chunkyppc.library saves the last used screenmode in ENV: and ENVARC:. Next time you start WarpQuake the screenmode will be read from there. Use this switch if you want to override this. -mouse: Enables mouse. -mem: Sets the heapsize. Default is 8MB, but some Total Conversions may require more than this. BTW If you are looking for a good TC, try After the fall. You'll never want to play basic Quake again. -joypad: Enables CD32 joypad. You need to bind the buttons yourself. The buttons are located in AUX1 - AUX11. AUX1 = left AUX2 = right AUX3 = up AUX4 = down AUX5 = red AUX6 = green AUX7 = yellow AUX8 = blue AUX9 = play AUX10 = forward AUX11 = reverse Binding example: In Quake console type, BIND AUX5 "+ATTACK" Additinally chunkyppc.library supports the following enviroment variables: WarpQuake/dbuf: Use Doublebuffering. WarpQuake/oldstyle: If this is set, ScrollVPort will be used, else Triple Buffering using ScreenBuffers. WarpQuake/rtgmaster: Use rtgmaster Screenmode Requester instead of ASL one. rtgmaster.library will only be opened when this option is set, so that rtgmaster.library does not need to be installed to be able to use chunkyppc.library. Other chunkyppc.library variables are not supported anymore. History: 0.7: - Recompiled with gcc 2.95.2. - Native AGA code removed. chunkyppc.library is now required on AGA systems. - Faster chunkyppc support. It's about 3 FPS faster than -wpa8 on my 603e-240MHz+BVision. Unfortunately this means that the window mode doesn't work anymore. - asl.library was opened twice. - Added AHI support from awinquake. Very big thanks goes to Peter McGavin as I couldn't get my own code to work properly. - Aspect adjust can be disabled now. - New command timedemo2. This works exactly the same as regular timedemo, but the display isn't updated at all. Now you can test how much AGA or your GFX card slows the game down. - More optimizations from awinquake. - Now handles CTRL-C properly. - New commandline options: -noaspectadjust, -ahi and -ahiunit. - Some other changes not visible to user. 0.6: - I released 0.5 too fast. The game would hang on exit if not using joypad. 0.5: - Removed a small bug in the joypad code. - It should be possible to use screens bigger than 320x200 with chunkyppc.library now, but you have to use the -width and -height parameters. - Added some asm optimizations from awinquake. - Recompiled with gcc 2.95.1. - Thanks to elf2exe2, the executable is now only 600KB. - Some other minor changes. 0.4: - Changed -memory back to -mem ;) - Removed the cd audio code as it doesn't work currently. 0.3: - Changed -mem to -memory as requested by Chris De Maeyer - Small fix in the mouse handling. - Some other minor changes. 0.2: - Added -bat option. - ChunkyPPC double/triplebuffering actually works now ;) - File access is MUCH faster now. - Game hanged if no .pak files could be found. 0.1: - First release. Small FAQ: Q: Why another PPC Quake port? A: Well it started when I found a bug in the -mem option of Awinquake and decided to look at the source. After fixing that, my friend suggested that I should learn to play with the mouse instead of the keyboard. But the mouse support in Awinquake sucked, so I fixed that too. Then I got fed up with the crappy PowerUP software which kept measuring my bus speed incorrectly, (okay it's the pll calculation that is buggy, but a bug is a bug) so I ported it to WarpOS and added chunkyppc and joypad support. This is also a good way to sharpen my programming skills. Until now I have mainly done/ported some CLI programs. I know that Frank Wille and Steffen Haeuser are working on a port too, and when finished it will probably be much better than this. In it's current state it's too buggy for my taste. Q: Why does the game crash? Maybe your stack is too low. Try setting it to 500000 bytes. Also try without the -bat parameter. Q: Why doesn't the game work on my GFX card? A: Try to use -wpa8. If that doesn't help, contact me. Q: Why does mouse slow down the game so much? A: Because there's much contextswitches needed for this. If you are using the keyboard at the same time the slowdown is even worse. This is cured by setting the key repeat from input prefs to slowest possible. This reduces contextswitches to minimium. If you are running on AGA and don't mind the slight flicker, you can also try disabling multibuffering. Q: Why doesn't the middle mouse button work? A: You probably have some commodity running that uses the button. Disable all commodities and try again. Q: Any other speed tips? A: Use the -bat option to change to BAT MMU setup. This should be faster, but it may lead to crashes. After getting my BVision, this option made my machine crash, but it worked just fine with AGA. Q: Will there be an PowerUP version? A: No. Q: Is the source available? A: Yes, as required by the GPL license. Q: Why does the game run in 320x200 although I select a bigger screen? A: This happens only on GFX cards when using chunkyppc.library. Use the -width and -height parameters or -wpa8. Q: Where can I get updates to WarpQuake? A: http://www.kolumbus.fi/jami.laakkonen/ppc/index.html or aminet. There's also other PPC programs on my homepage. Q: You're the crapiest coder I've ever seen. Why don't you do something useful with your life like collect stamps or something? A: I know, but I'm learning more everyday. Q: I have some questions that are not answered in this doc. How can I reach you? A: Email to jami.laakkonen@kolumbus.fi