Previous 199869 Revisions Next

r33471 Thursday 20th November, 2014 at 21:30:41 UTC by Olivier Galibert
lpc: skeleton acpi [O. Galibert]
[src/emu/machine]i6300esb.c i6300esb.h lpc-acpi.c* lpc-acpi.h* lpc.c* lpc.h* machine.mak
[src/mame/drivers]lindbergh.c

trunk/src/emu/machine/i6300esb.c
r241982r241983
8383
8484
8585i6300esb_lpc_device::i6300esb_lpc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
86   : pci_device(mconfig, I6300ESB_LPC, "i6300ESB southbridge ISA/LPC bridge", tag, owner, clock, "i6300esb_lpc", __FILE__)
86   : pci_device(mconfig, I6300ESB_LPC, "i6300ESB southbridge ISA/LPC bridge", tag, owner, clock, "i6300esb_lpc", __FILE__),
87     acpi(*this, "acpi")
8788{
8889}
8990
r241982r241983
569570
570571WRITE32_MEMBER(i6300esb_lpc_device::etr1_w)
571572{
572   logerror("%s: etr1 = %08x\n", tag(), data);
573   COMBINE_DATA(&etr1);
574   logerror("%s: etr1 = %08x\n", tag(), etr1);
573575}
574576
575577READ32_MEMBER (i6300esb_lpc_device::mfid_r)
r241982r241983
684686   io_space->install_device(0, 0xffff, *this, &i6300esb_lpc_device::internal_io_map);
685687
686688   if(acpi_cntl & 0x10)
687      logerror("%s: Warning: acpi range enabled at %04x-%04x\n", tag(), pmbase, pmbase+127);
689      acpi->map_device(memory_window_start, memory_window_end, 0, memory_space, io_window_start, io_window_end, pmbase, io_space);
688690   if(gpio_cntl & 0x10)
689691      logerror("%s: Warning: gpio range enabled at %04x-%04x\n", tag(), gpio_base, gpio_base+63);
690692
trunk/src/emu/machine/i6300esb.h
r241982r241983
44#define I6300ESB_H
55
66#include "pci.h"
7#include "lpc-acpi.h"
78
89#define MCFG_I6300ESB_LPC_ADD(_tag) \
910   MCFG_PCI_DEVICE_ADD(_tag, I6300ESB_LPC, 0x808625a1, 0x02, 0x060100, 0x00000000)
r241982r241983
2728   virtual void device_reset();
2829
2930private:
31   required_device<lpc_acpi_device> acpi;
32
3033   DECLARE_ADDRESS_MAP(internal_io_map, 32);
3134
3235   UINT32 pmbase, gpio_base, fwh_sel1, gen_cntl, etr1, rst_cnt2, gpi_rout;
trunk/src/emu/machine/lpc-acpi.c
r0r241983
1#include "lpc-acpi.h"
2
3const device_type LPC_ACPI = &device_creator<lpc_acpi_device>;
4
5DEVICE_ADDRESS_MAP_START(map, 32, lpc_acpi_device)
6   AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_sts_r,        pm1_sts_w,        0x0000ffff)
7   AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_en_r,         pm1_en_w,         0xffff0000)
8   AM_RANGE(0x04, 0x07) AM_READWRITE  (pm1_cnt_r,        pm1_cnt_w)
9   AM_RANGE(0x08, 0x0b) AM_READ       (pm1_tmr_r)
10   AM_RANGE(0x10, 0x13) AM_READWRITE  (proc_cnt_r,       proc_cnt_w)
11   AM_RANGE(0x14, 0x17) AM_READ8      (lv2_r,                              0x000000ff)
12   AM_RANGE(0x28, 0x2b) AM_READWRITE  (gpe0_sts_r,       gpe0_sts_w)
13   AM_RANGE(0x2c, 0x2f) AM_READWRITE  (gpe0_en_r,        gpe0_en_w)
14   AM_RANGE(0x30, 0x33) AM_READWRITE  (smi_en_r,         smi_en_w)
15   AM_RANGE(0x34, 0x37) AM_READWRITE  (smi_sts_r,        smi_sts_w)
16   AM_RANGE(0x38, 0x3b) AM_READWRITE16(alt_gp_smi_en_r,  alt_gp_smi_en_w,  0x0000ffff)
17   AM_RANGE(0x38, 0x3b) AM_READWRITE16(alt_gp_smi_sts_r, alt_gp_smi_sts_w, 0xffff0000)
18   AM_RANGE(0x44, 0x47) AM_READWRITE16(devact_sts_r,     devact_sts_w,     0x0000ffff)
19   AM_RANGE(0x48, 0x4b) AM_READWRITE16(devtrap_en_r,     devtrap_en_w,     0x0000ffff)
20   AM_RANGE(0x4c, 0x4f) AM_READ16     (bus_addr_track_r,                   0x0000ffff)
21   AM_RANGE(0x4c, 0x4f) AM_READ8      (bus_cyc_track_r,                    0x00ff0000)
22
23   AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_rld_r,        tco_rld_w,        0x000000ff)
24   AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_tmr_r,        tco_tmr_w,        0x0000ff00)
25   AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_dat_in_r,     tco_dat_in_w,     0x00ff0000)
26   AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_dat_out_r,    tco_dat_out_w,    0xff000000)
27   AM_RANGE(0x64, 0x67) AM_READWRITE16(tco1_sts_r,       tco1_sts_w,       0x0000ffff)
28   AM_RANGE(0x64, 0x67) AM_READWRITE16(tco2_sts_r,       tco2_sts_w,       0xffff0000)
29   AM_RANGE(0x68, 0x6b) AM_READWRITE16(tco1_cnt_r,       tco1_cnt_w,       0x0000ffff)
30   AM_RANGE(0x68, 0x6b) AM_READWRITE16(tco2_cnt_r,       tco2_cnt_w,       0xffff0000)
31   AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_message1_r,   tco_message1_w,   0x000000ff)
32   AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_message2_r,   tco_message2_w,   0x0000ff00)
33   AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_wdstatus_r,   tco_wdstatus_w,   0x00ff0000)
34   AM_RANGE(0x70, 0x73) AM_READWRITE8 (sw_irq_gen_r,     sw_irq_gen_w,     0x000000ff)
35ADDRESS_MAP_END
36
37lpc_acpi_device::lpc_acpi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
38   : lpc_device(mconfig, LPC_ACPI, "LPC ACPI", tag, owner, clock, "lpc_acpi", __FILE__)
39{
40}
41
42void lpc_acpi_device::map_device(UINT64 memory_window_start, UINT64 memory_window_end, UINT64 memory_offset, address_space *memory_space,
43                         UINT64 io_window_start, UINT64 io_window_end, UINT64 io_offset, address_space *io_space)
44{
45   io_space->install_device(io_offset, io_window_end, *this, &lpc_acpi_device::map);
46}
47
48void lpc_acpi_device::device_start()
49{
50}
51
52void lpc_acpi_device::device_reset()
53{
54   pm1_sts = 0;
55   pm1_en = 0;
56   pm1_cnt = 0;
57   proc_cnt = 0;
58   gpe0_sts = 0;
59   gpe0_en = 0;
60   smi_en = 0;
61   smi_sts = 0;
62   alt_gp_smi_en = 0;
63   alt_gp_smi_sts = 0;
64   devact_sts = 0;
65   devtrap_en = 0;
66
67   tco_rld = 0;
68   tco_tmr = 0;
69   tco_dat_in = 0;
70   tco_dat_out = 0;
71   tco1_sts = 0;
72   tco2_sts = 0;
73   tco1_cnt = 0;
74   tco2_cnt = 0;
75   tco_message1 = 0;
76   tco_message2 = 0;
77   tco_wdstatus = 0;
78   sw_irq_gen = 0;
79}
80
81READ16_MEMBER( lpc_acpi_device::pm1_sts_r)
82{
83   return pm1_sts;
84}
85
86WRITE16_MEMBER(lpc_acpi_device::pm1_sts_w)
87{
88   pm1_sts &= ~data;
89   logerror("%s: pm1_sts = %04x\n", tag(), pm1_sts);
90}
91
92READ16_MEMBER( lpc_acpi_device::pm1_en_r)
93{
94   return pm1_en;
95}
96
97WRITE16_MEMBER(lpc_acpi_device::pm1_en_w)
98{
99   COMBINE_DATA(&pm1_en);
100   logerror("%s: pm1_en = %04x\n", tag(), pm1_en);
101}
102
103READ32_MEMBER( lpc_acpi_device::pm1_cnt_r)
104{
105   return pm1_cnt;
106}
107
108WRITE32_MEMBER(lpc_acpi_device::pm1_cnt_w)
109{
110   COMBINE_DATA(&pm1_cnt);
111   logerror("%s: pm1_cnt = %08x\n", tag(), pm1_cnt);
112}
113
114READ32_MEMBER(lpc_acpi_device::pm1_tmr_r)
115{
116   return machine().time().as_ticks(3579545) & 0xffffff;
117}
118
119READ32_MEMBER( lpc_acpi_device::proc_cnt_r)
120{
121   return proc_cnt;
122}
123
124WRITE32_MEMBER(lpc_acpi_device::proc_cnt_w)
125{
126   COMBINE_DATA(&proc_cnt);
127   logerror("%s: proc_cnt = %08x\n", tag(), proc_cnt);
128}
129
130READ8_MEMBER(  lpc_acpi_device::lv2_r)
131{
132   return 0x00;
133}
134
135READ32_MEMBER( lpc_acpi_device::gpe0_sts_r)
136{
137   return gpe0_sts;
138}
139
140WRITE32_MEMBER(lpc_acpi_device::gpe0_sts_w)
141{
142   COMBINE_DATA(&gpe0_sts);
143   logerror("%s: gpe0_sts = %08x\n", tag(), gpe0_sts);
144}
145
146READ32_MEMBER( lpc_acpi_device::gpe0_en_r)
147{
148   return gpe0_en;
149}
150
151WRITE32_MEMBER(lpc_acpi_device::gpe0_en_w)
152{
153   COMBINE_DATA(&gpe0_en);
154   logerror("%s: gpe0_en = %08x\n", tag(), gpe0_en);
155}
156
157READ32_MEMBER( lpc_acpi_device::smi_en_r)
158{
159   return smi_en;
160}
161
162WRITE32_MEMBER(lpc_acpi_device::smi_en_w)
163{
164   COMBINE_DATA(&smi_en);
165   logerror("%s: smi_en = %08x\n", tag(), smi_en);
166}
167
168READ32_MEMBER( lpc_acpi_device::smi_sts_r)
169{
170   return smi_sts;
171}
172
173WRITE32_MEMBER(lpc_acpi_device::smi_sts_w)
174{
175   COMBINE_DATA(&smi_sts);
176   logerror("%s: smi_sts = %08x\n", tag(), smi_sts);
177}
178
179READ16_MEMBER( lpc_acpi_device::alt_gp_smi_en_r)
180{
181   return alt_gp_smi_en;
182}
183
184WRITE16_MEMBER(lpc_acpi_device::alt_gp_smi_en_w)
185{
186   COMBINE_DATA(&alt_gp_smi_en);
187   logerror("%s: alt_gp_smi_en = %04x\n", tag(), alt_gp_smi_en);
188}
189
190READ16_MEMBER( lpc_acpi_device::alt_gp_smi_sts_r)
191{
192   return alt_gp_smi_sts;
193}
194
195WRITE16_MEMBER(lpc_acpi_device::alt_gp_smi_sts_w)
196{
197   COMBINE_DATA(&alt_gp_smi_sts);
198   logerror("%s: alt_gp_smi_sts = %04x\n", tag(), alt_gp_smi_sts);
199}
200
201READ16_MEMBER( lpc_acpi_device::devact_sts_r)
202{
203   return devact_sts;
204}
205
206WRITE16_MEMBER(lpc_acpi_device::devact_sts_w)
207{
208   COMBINE_DATA(&devact_sts);
209   logerror("%s: devact_sts = %04x\n", tag(), devact_sts);
210}
211
212READ16_MEMBER( lpc_acpi_device::devtrap_en_r)
213{
214   return devtrap_en;
215}
216
217WRITE16_MEMBER(lpc_acpi_device::devtrap_en_w)
218{
219   COMBINE_DATA(&devtrap_en);
220   logerror("%s: devtrap_en = %04x\n", tag(), devtrap_en);
221}
222
223READ16_MEMBER( lpc_acpi_device::bus_addr_track_r)
224{
225   logerror("%s: read bus_addr_track\n", tag());
226   return 0;
227}
228
229READ8_MEMBER(  lpc_acpi_device::bus_cyc_track_r)
230{
231   logerror("%s: read bus_cyc_track\n", tag());
232   return 0;
233}
234
235
236READ8_MEMBER(  lpc_acpi_device::tco_rld_r)
237{
238   return tco_rld;
239}
240
241WRITE8_MEMBER( lpc_acpi_device::tco_rld_w)
242{
243   tco_rld = data;
244   logerror("%s: tco_rld = %02x\n", tag(), tco_rld);
245}
246
247READ8_MEMBER(  lpc_acpi_device::tco_tmr_r)
248{
249   return tco_tmr;
250}
251
252WRITE8_MEMBER( lpc_acpi_device::tco_tmr_w)
253{
254   tco_tmr = data;
255   logerror("%s: tco_tmr = %02x\n", tag(), tco_tmr);
256}
257
258READ8_MEMBER(  lpc_acpi_device::tco_dat_in_r)
259{
260   return tco_dat_in;
261}
262
263WRITE8_MEMBER( lpc_acpi_device::tco_dat_in_w)
264{
265   tco_dat_in = data;
266   logerror("%s: tco_dat_in = %02x\n", tag(), tco_dat_in);
267}
268
269READ8_MEMBER(  lpc_acpi_device::tco_dat_out_r)
270{
271   return tco_dat_out;
272}
273
274WRITE8_MEMBER( lpc_acpi_device::tco_dat_out_w)
275{
276   tco_dat_out = data;
277   logerror("%s: tco_dat_out = %02x\n", tag(), tco_dat_out);
278}
279
280READ16_MEMBER( lpc_acpi_device::tco1_sts_r)
281{
282   return tco1_sts;
283}
284
285WRITE16_MEMBER(lpc_acpi_device::tco1_sts_w)
286{
287   COMBINE_DATA(&tco1_sts);
288   logerror("%s: tco1_sts = %04x\n", tag(), tco1_sts);
289}
290
291READ16_MEMBER( lpc_acpi_device::tco2_sts_r)
292{
293   return tco2_sts;
294}
295
296WRITE16_MEMBER(lpc_acpi_device::tco2_sts_w)
297{
298   COMBINE_DATA(&tco2_sts);
299   logerror("%s: tco2_sts = %04x\n", tag(), tco2_sts);
300}
301
302READ16_MEMBER( lpc_acpi_device::tco1_cnt_r)
303{
304   return tco1_cnt;
305}
306
307WRITE16_MEMBER(lpc_acpi_device::tco1_cnt_w)
308{
309   COMBINE_DATA(&tco1_cnt);
310   logerror("%s: tco1_cnt = %04x\n", tag(), tco1_cnt);
311}
312
313READ16_MEMBER( lpc_acpi_device::tco2_cnt_r)
314{
315   return tco2_cnt;
316}
317
318WRITE16_MEMBER(lpc_acpi_device::tco2_cnt_w)
319{
320   COMBINE_DATA(&tco2_cnt);
321   logerror("%s: tco2_cnt = %04x\n", tag(), tco2_cnt);
322}
323
324READ8_MEMBER(  lpc_acpi_device::tco_message1_r)
325{
326   return tco_message1;
327}
328
329WRITE8_MEMBER( lpc_acpi_device::tco_message1_w)
330{
331   tco_message1 = data;
332   logerror("%s: tco_message1 = %02x\n", tag(), tco_message1);
333}
334
335READ8_MEMBER(  lpc_acpi_device::tco_message2_r)
336{
337   return tco_message2;
338}
339
340WRITE8_MEMBER( lpc_acpi_device::tco_message2_w)
341{
342   tco_message2 = data;
343   logerror("%s: tco_message2 = %02x\n", tag(), tco_message2);
344}
345
346READ8_MEMBER(  lpc_acpi_device::tco_wdstatus_r)
347{
348   return tco_wdstatus;
349}
350
351WRITE8_MEMBER( lpc_acpi_device::tco_wdstatus_w)
352{
353   tco_wdstatus = data;
354   logerror("%s: tco_wdstatus = %02x\n", tag(), tco_wdstatus);
355}
356
357READ8_MEMBER(  lpc_acpi_device::sw_irq_gen_r)
358{
359   return sw_irq_gen;
360}
361
362WRITE8_MEMBER( lpc_acpi_device::sw_irq_gen_w)
363{
364   sw_irq_gen = data;
365   logerror("%s: sw_irq_gen = %02x\n", tag(), sw_irq_gen);
366}
trunk/src/emu/machine/lpc-acpi.h
r0r241983
1#ifndef LPC_ACPI_H
2#define LPC_ACPI_H
3
4#include "lpc.h"
5
6#define MCFG_LPC_ACPI_ADD(_tag) \
7   MCFG_DEVICE_ADD(_tag, LPC_ACPI, 0)
8
9class lpc_acpi_device : public lpc_device {
10public:
11   lpc_acpi_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
12
13   virtual void map_device(UINT64 memory_window_start, UINT64 memory_window_end, UINT64 memory_offset, address_space *memory_space,
14                     UINT64 io_window_start, UINT64 io_window_end, UINT64 io_offset, address_space *io_space);
15
16   DECLARE_READ16_MEMBER( pm1_sts_r);
17   DECLARE_WRITE16_MEMBER(pm1_sts_w);
18   DECLARE_READ16_MEMBER( pm1_en_r);
19   DECLARE_WRITE16_MEMBER(pm1_en_w);
20   DECLARE_READ32_MEMBER( pm1_cnt_r);
21   DECLARE_WRITE32_MEMBER(pm1_cnt_w);
22   DECLARE_READ32_MEMBER( pm1_tmr_r);
23   DECLARE_READ32_MEMBER( proc_cnt_r);
24   DECLARE_WRITE32_MEMBER(proc_cnt_w);
25   DECLARE_READ8_MEMBER(  lv2_r);
26   DECLARE_READ32_MEMBER( gpe0_sts_r);
27   DECLARE_WRITE32_MEMBER(gpe0_sts_w);
28   DECLARE_READ32_MEMBER( gpe0_en_r);
29   DECLARE_WRITE32_MEMBER(gpe0_en_w);
30   DECLARE_READ32_MEMBER( smi_en_r);
31   DECLARE_WRITE32_MEMBER(smi_en_w);
32   DECLARE_READ32_MEMBER( smi_sts_r);
33   DECLARE_WRITE32_MEMBER(smi_sts_w);
34   DECLARE_READ16_MEMBER( alt_gp_smi_en_r);
35   DECLARE_WRITE16_MEMBER(alt_gp_smi_en_w);
36   DECLARE_READ16_MEMBER( alt_gp_smi_sts_r);
37   DECLARE_WRITE16_MEMBER(alt_gp_smi_sts_w);
38   DECLARE_READ16_MEMBER( devact_sts_r);
39   DECLARE_WRITE16_MEMBER(devact_sts_w);
40   DECLARE_READ16_MEMBER( devtrap_en_r);
41   DECLARE_WRITE16_MEMBER(devtrap_en_w);
42   DECLARE_READ16_MEMBER( bus_addr_track_r);
43   DECLARE_READ8_MEMBER(  bus_cyc_track_r);
44
45   DECLARE_READ8_MEMBER(  tco_rld_r);
46   DECLARE_WRITE8_MEMBER( tco_rld_w);
47   DECLARE_READ8_MEMBER(  tco_tmr_r);
48   DECLARE_WRITE8_MEMBER( tco_tmr_w);
49   DECLARE_READ8_MEMBER(  tco_dat_in_r);
50   DECLARE_WRITE8_MEMBER( tco_dat_in_w);
51   DECLARE_READ8_MEMBER(  tco_dat_out_r);
52   DECLARE_WRITE8_MEMBER( tco_dat_out_w);
53   DECLARE_READ16_MEMBER( tco1_sts_r);
54   DECLARE_WRITE16_MEMBER(tco1_sts_w);
55   DECLARE_READ16_MEMBER( tco2_sts_r);
56   DECLARE_WRITE16_MEMBER(tco2_sts_w);
57   DECLARE_READ16_MEMBER( tco1_cnt_r);
58   DECLARE_WRITE16_MEMBER(tco1_cnt_w);
59   DECLARE_READ16_MEMBER( tco2_cnt_r);
60   DECLARE_WRITE16_MEMBER(tco2_cnt_w);
61   DECLARE_READ8_MEMBER(  tco_message1_r);
62   DECLARE_WRITE8_MEMBER( tco_message1_w);
63   DECLARE_READ8_MEMBER(  tco_message2_r);
64   DECLARE_WRITE8_MEMBER( tco_message2_w);
65   DECLARE_READ8_MEMBER(  tco_wdstatus_r);
66   DECLARE_WRITE8_MEMBER( tco_wdstatus_w);
67   DECLARE_READ8_MEMBER(  sw_irq_gen_r);
68   DECLARE_WRITE8_MEMBER( sw_irq_gen_w);
69
70protected:
71   void device_start();
72   void device_reset();
73
74private:
75   UINT32 pm1_cnt, proc_cnt, gpe0_sts, gpe0_en, smi_en, smi_sts;
76   UINT16 pm1_sts, pm1_en, alt_gp_smi_en, alt_gp_smi_sts, devact_sts, devtrap_en;
77   UINT16 tco1_sts, tco2_sts, tco1_cnt, tco2_cnt;
78   UINT8  tco_rld, tco_tmr, tco_dat_in, tco_dat_out, tco_message1, tco_message2;
79   UINT8  tco_wdstatus, sw_irq_gen;
80
81   DECLARE_ADDRESS_MAP(map, 32);
82};
83
84extern const device_type LPC_ACPI;
85
86#endif
trunk/src/emu/machine/lpc.c
r0r241983
1#include "lpc.h"
2
3lpc_device::lpc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) :
4   device_t(mconfig, type, name, tag, owner, clock, shortname, source)
5{
6}
7
trunk/src/emu/machine/lpc.h
r0r241983
1#ifndef LPC_H
2#define LPC_H
3
4#include "emu.h"
5
6class lpc_device : public device_t {
7public:
8   lpc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source);
9
10   virtual void map_device(UINT64 memory_window_start, UINT64 memory_window_end, UINT64 memory_offset, address_space *memory_space,
11                     UINT64 io_window_start, UINT64 io_window_end, UINT64 io_offset, address_space *io_space) = 0;
12};
13
14#endif
15
trunk/src/emu/machine/machine.mak
r241982r241983
12601260MACHINEOBJS += $(MACHINEOBJ)/i82541.o
12611261MACHINEOBJS += $(MACHINEOBJ)/i82875p.o
12621262MACHINEOBJS += $(MACHINEOBJ)/i6300esb.o
1263MACHINEOBJS += $(MACHINEOBJ)/lpc.o
1264MACHINEOBJS += $(MACHINEOBJ)/lpc-acpi.o
12631265endif
12641266
12651267#-------------------------------------------------
trunk/src/mame/drivers/lindbergh.c
r241982r241983
301301   MCFG_SB0400_ADD(                  ":pci:1e.0:02.0",                   0x11021101)
302302   MCFG_SEGA_LINDBERGH_BASEBOARD_ADD(":pci:1e.0:03.0")
303303   MCFG_I6300ESB_LPC_ADD(            ":pci:1f.0")
304   MCFG_LPC_ACPI_ADD(                ":pci:1f.0:acpi")
304305   MCFG_SATA_ADD(                    ":pci:1f.2",      0x808625a3, 0x02, 0x103382c0)
305306   MCFG_SMBUS_ADD(                   ":pci:1f.3",      0x808625a4, 0x02, 0x103382c0)
306307   MCFG_AC97_ADD(                    ":pci:1f.5",      0x808625a6, 0x02, 0x103382c0)


Previous 199869 Revisions Next


© 1997-2024 The MAME Team