This is an old revision of the document!


Quake Arcade Tournament Edition

You probably heard of the Quake - Arcade Tournament Edition. An arcade machine with Quake built by LBE Systems/Lazer-Tron in 1998.

Supposedly only twenty of these prototypes were manufactured. When the game was first introduced, Lazer-Tron was bought out and due to problems with the contracted programmer, the game was never further developed.

Just recently I understood what MAME is all about and eventually I knew how to get nearer to this thing. And yes, to my gratitude there actually is a harddisk image of this machine floating around in torrents. The file is named quakeat.chd (225 Megabytes) and you might find it in some huge romsets (CHD/LD are terms you will want to look for).

That quakeat.chd is the image of the harddisk from the arcade machine. You cannot run it through MAME at the time of writing because at least the BIOS image is missing. But you can mount the disk image and take a peek inside. Following is how I managed to do that (on Linux, have fun on Windows…) and some of what I found.

Extraction

$ file quakeat.chd 
quakeat.chd: MAME CHD compressed hard disk image, version 4

So let's uncompress that image. MAME comes with a tool for that job, chdman (do get the latest official binaries, if you get an error about a wrong format, that's what you did not do). I used Wine below because I could not be arsed to hunt for a Linux binary.

$ wine chdman.exe -extract quakeat.chd quakeat.img
[Output stripped]
$ file quakeat.img 
quakeat.img: x86 boot sector, Microsoft Windows XP mbr,Serial 0x31f533a1; partition 1: ID=0xb, active, starthead 1, startsector 63, 4225473 sectors, code offset 0x33

Now you cannot simply mount that image, it contains a mbr. Checking the file with fdisk shows where the actual data partition starts.

$ fdisk -l -u quakeat.img 
You must set cylinders.
You can do this from the extra functions menu.

Disk quakeat.img: 0 MB, 0 bytes
128 heads, 63 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x31f533a1

      Device Boot      Start         End      Blocks   Id  System
quakeat.img1   *          63     4225535     2112736+   b  W95 FAT32

So the size of a sector is 512 bytes and the partition we want starts at sector 63. 63*512 = 32256. Thankfully you can tell mount where to start.

$ mount -o loop,offset=32256 quakeat.img /where/ever/you/want/

Examination

Now, what's inside and can you run it? It looks like a (almost) normal Quake installation. The pak files in id1 are extracted. There is a glquake.exe but sadly it will tell you "E020C – Security key not found". Seems like one would need a dongle. The engine also seems to have been modified to display AVI movies. There is a directory with movies inside that are referenced in quake.rc alternating with normal demos. They show instructions, credits and company logos.

There are some files related to accounting and prizes. 6 progs (progs.dat, progshipnotic.dat, Progsreaper.dat, progsqtv.dat (clanring something), progsrogue.dat, progszeus.dat). I could not figure out how to run the "Arcade Tournament" game though. Maybe someone more into QC and hacking will shed more light onto it.

The default.cfg says Quake - Arcade Tournament Edition 1.30 r3, it also contains a password (could that be related to the engine?) and suggests that opus.exe is related to the Joystick. There are many variables prefixed with a_ which suggests "arcade_".

It seems like the two official missionpacks are included. Also a qdqstart.bsp (which is quite a weird modified start map, most probably not related to Quake done Quick). There are also modified player models showing the current weapon (like vweps in some QW configurations nowadays).

The file C:\WIN386.SWP contains a lot of Quake related strings.

There are two Quake directories in the image: C:\Quake and C:\backup\Quake . The timestamps in the backup directory are from 2008 while most of the ones in the root are from 1998. The files ID1/config.cfg and id1/config.old.cfg are different where C:\backup-Quake\ID1\config.cfg is identical to C:\Quake\ID1\config.old.cfg . C:\Quake has two additional log files from 2008 in ID1/accting/ .

The quake.rc remaps CD tracks and in a comment to this it says "remap tracks based on new MOD sound track". This might hint at Methods of Destruction. It might also hint at .mod files.

Many files have a copyright note: "Copyright © 1997-98 by David R. Foley, All Rights Reserved". Random links: http://vpforums.org/index.php?showtopic=159 https://twitter.com/#!/davidrfoley http://www.nanotechent.com/team-3.php http://www.gamasutra.com/php-bin/news_index.php?story=24691 http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2009/07/10/BA6L18LLG3.DTL

The quake.rc has a changelog. First entry is 05/19/98, last one on 08/25/98.

Comparing the Quake directory to id1, hipnotic and rogue

Comparing the game directory to stock id1, rogue and hipnotic (extracted in that order, overwriting existing files).

Apart from the new directories AVIs/, Demos/, accting/, glquake/ (meshes…) and tickets/ there are:

new (many cfg files, some backups, tailored quake.rc)
new PROGSQTV.DAT
new Progsreaper.dat (progs.dat from reaprb81.zip)
changed gfx.wad (not identical to any of id1, hipnotic or rogue)
changed progs.dat (identical to id1/progs.dat)
new progshipnotic.dat (identical to hipnotic/progs.dat)
new progsrogue.dat (identical to rogue/progs.dat)
new progszeus.dat
new tim.wad (timfixed.zip)
new gfx/ARCADEMM.LMP
gfx/conback.lmp (identical to hipnotic/gfx/conback.lmp)
new gfx/conback-id.lmp (identical to id1/gfx/conback.lmp)
new gfx/conback-r.lmp (identical to rogue/gfx/conback.lmp)
new maps/dm7.bsp (not checked against the official original dm7.bsp)
changed maps/e1m6.bsp
changed maps/hip2m4.bsp
changed maps/hip3m3.bsp
new maps/hipstart.bsp (identical to hipnotic/maps/start.bsp)
new maps/qdqstart.bsp
new maps/rstart.bsp (identical to rogue/maps/start.bsp)
changed maps/start.bsp
changed progs/backpack.mdl
new progs/backpackorg.mdl (identical to id1/progs/backpack.mdl)
new progs/backpackquestion.mdl
new progs/hud_box.spr (from Zeus bot, zeus2042.zip)
new progs/hud_stat.spr (from Zeus bot, zeus2042.zip)
new progs/hud_tag.spr (from Zeus bot, zeus2042.zip)
new progs/player-orig.mdl (identical to id1/progs/player.mdl)
changed progs/player.mdl
new progs/playergr.mdl
new progs/playernl.mdl
new progs/playerrl.mdl
new progs/playersg.mdl
new progs/playersn.mdl
new progs/playerss.mdl
new progs/s_plasma.spr
new progs/s_plasmax.spr (progs/s_plasma.spr from zeus2042.zip)
new sound/demon/dland2-arc.wav (identical to id1/sound/demon/dland2.wav)
changed sound/demon/dland2.wav (from Zeus bot, zeus2042.zip)
new sound/misc/boing.wav
new sound/misc/gloria.wav
changed sound/misc/talk.wav
new sound/plasma/plasexpl.wav (from Zeus bot, zeus2042.zip)
new sound/plasma/plasma.wav (from Zeus bot, zeus2042.zip)
new sound/player/deepbrth.wav
new sound/player/dmalarm.wav
new sound/player/sucker.wav (from Zeus bot, zeus2042.zip)
new sound/prize/instaprz.wav
new sound/prize/sparkles.wav