3
Quake Arcade Tournament
5
This is unknown PC hardware, only the HDD is dumped. The HDD is stickered 'Release Beta 2'
7
I've also seen CDs of this for sale, so maybe there should be a CD too, for the music?
13
Quake Arcade Tournament by Lazer-Tron
15
PC running Windows 95 with a Dongle on the parallel port
17
Created .chd with version 0.125
19
It found the following disk paramaters...
27
Logical size 2,1163,248,864
30
The "backup" directory on hard disk was created by the dumper.
33
-- Hardware info found in the following press release:
34
http://www.quantum3d.com/press/HTMLarchive/4-20-98.html
36
QUANTUM3D'S HEAVY METAL SYSTEM - HM233G
37
NLX form factor system that is based on the Intel 440LX chipset
38
233MHz Intel Pentium II processor with 512KB of L2 cache
40
Microsoft Windows 95 OSR2.5
41
shock-mounted 3.1GB Ultra DMA-33 hard drive
44
16-bit per sample 3D audio
46
built-in 10/100 Ethernet
47
Obsidian2 90-4440 AGP Voodoo2-based realtime 3D graphics accelerator
48
Quantum3D's GCI (Game Control Interface) - a unique, low-cost subsystem
49
designed to interface coin-op and industrial input/output control devices to a PC
51
===============================================================================
53
* Add BIOS dump (custom 440LX motherboard or standard?)
55
* Hook up the GCI (details? ROMs?)
56
* What's the dongle do?
57
===============================================================================
61
#include "cpu/i386/i386.h"
62
#include "machine/pic8259.h"
63
/* Insert IBM PC includes here */
65
static VIDEO_START(quake)
69
static VIDEO_UPDATE(quake)
75
const device_config *pic8259_1;
76
const device_config *pic8259_2;
79
static ADDRESS_MAP_START( quake_map, ADDRESS_SPACE_PROGRAM, 32 )
80
AM_RANGE(0x00000000, 0x0000ffff) AM_ROM AM_REGION("pc_bios", 0) /* BIOS */
83
static ADDRESS_MAP_START( quake_io, ADDRESS_SPACE_IO, 32 )
84
// AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", dma8237_r, dma8237_w, 0xffffffff)
85
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff)
86
// AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff)
87
// AM_RANGE(0x0060, 0x006f) AM_READWRITE(kbdc8042_32le_r, kbdc8042_32le_w)
88
// AM_RANGE(0x0070, 0x007f) AM_READWRITE(mc146818_port32le_r, mc146818_port32le_w)
89
// AM_RANGE(0x0080, 0x009f) AM_READWRITE(at_page32_r, at_page32_w)
90
AM_RANGE(0x00a0, 0x00bf) AM_DEVREADWRITE8("pic8259_2", pic8259_r, pic8259_w, 0xffffffff)
91
// AM_RANGE(0x00c0, 0x00df) AM_DEVREADWRITE("dma8237_2", at32_dma8237_2_r, at32_dma8237_2_w)
92
AM_RANGE(0x00e8, 0x00eb) AM_NOP
93
// AM_RANGE(0x01f0, 0x01f7) AM_DEVREADWRITE("ide", ide_r, ide_w)
94
AM_RANGE(0x0300, 0x03af) AM_NOP
95
AM_RANGE(0x03b0, 0x03df) AM_NOP
96
// AM_RANGE(0x0278, 0x027b) AM_WRITE(pnp_config_w)
97
// AM_RANGE(0x03f0, 0x03ff) AM_DEVREADWRITE("ide", fdc_r, fdc_w)
98
// AM_RANGE(0x0a78, 0x0a7b) AM_WRITE(pnp_data_w)
99
// AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_32le_r, pci_32le_w)
102
/*************************************************************
104
* pic8259 configuration
106
*************************************************************/
108
static PIC8259_SET_INT_LINE( quakeat_pic8259_1_set_int_line )
110
cputag_set_input_line(device->machine, "maincpu", 0, interrupt ? HOLD_LINE : CLEAR_LINE);
114
static PIC8259_SET_INT_LINE( quakeat_pic8259_2_set_int_line )
116
pic8259_set_irq_line( quakeat_devices.pic8259_1, 2, interrupt);
120
static const struct pic8259_interface quakeat_pic8259_1_config = {
121
quakeat_pic8259_1_set_int_line
125
static const struct pic8259_interface quakeat_pic8259_2_config = {
126
quakeat_pic8259_2_set_int_line
129
/*************************************************************/
131
static INPUT_PORTS_START( quake )
134
/*************************************************************/
136
static IRQ_CALLBACK(irq_callback)
139
r = pic8259_acknowledge( quakeat_devices.pic8259_2);
142
r = pic8259_acknowledge( quakeat_devices.pic8259_1);
147
static MACHINE_START(quakeat)
149
cpu_set_irq_callback(cputag_get_cpu(machine, "maincpu"), irq_callback);
151
quakeat_devices.pic8259_1 = devtag_get_device( machine, "pic8259_1" );
152
quakeat_devices.pic8259_2 = devtag_get_device( machine, "pic8259_2" );
154
/*************************************************************/
156
static MACHINE_DRIVER_START( quake )
157
/* basic machine hardware */
158
MDRV_CPU_ADD("maincpu", PENTIUM, 233000000) /* Pentium II, 233MHz */
159
MDRV_CPU_PROGRAM_MAP(quake_map)
160
MDRV_CPU_IO_MAP(quake_io)
162
MDRV_MACHINE_START(quakeat)
164
MDRV_PIC8259_ADD( "pic8259_1", quakeat_pic8259_1_config )
165
MDRV_PIC8259_ADD( "pic8259_2", quakeat_pic8259_2_config )
168
MDRV_SCREEN_ADD("screen", RASTER)
169
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
170
MDRV_SCREEN_REFRESH_RATE(60)
171
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
172
MDRV_SCREEN_SIZE(64*8, 32*8)
173
MDRV_SCREEN_VISIBLE_AREA(0*8, 64*8-1, 0*8, 32*8-1)
175
MDRV_PALETTE_LENGTH(0x100)
177
MDRV_VIDEO_START(quake)
178
MDRV_VIDEO_UPDATE(quake)
183
ROM_REGION32_LE(0x20000, "pc_bios", 0) /* motherboard bios */
184
ROM_LOAD("quakearcadetournament.pcbios", 0x000000, 0x10000, NO_DUMP )
186
DISK_REGION( "disks" )
187
DISK_IMAGE( "quakeat", 0, SHA1(c44695b9d521273c9d3c0e18c88f0dca0185bd7b) )
191
GAME( 1998, quake, 0, quake, quake, 0, ROT0, "Lazer-Tron / iD Software", "Quake Arcade Tournament (Release Beta 2)", GAME_NOT_WORKING|GAME_NO_SOUND )