diff options
33 files changed, 37 insertions, 73 deletions
diff --git a/.gitattributes b/.gitattributes index 43c2b69a881..18377c5d795 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1332,8 +1332,8 @@ src/emu/machine/pcf8593.c svneol=native#text/plain src/emu/machine/pcf8593.h svneol=native#text/plain src/emu/machine/pci.c svneol=native#text/plain src/emu/machine/pci.h svneol=native#text/plain +src/emu/machine/pckeybrd.c svneol=native#text/plain src/emu/machine/pckeybrd.h svneol=native#text/plain -src/emu/machine/pcshare.h svneol=native#text/plain src/emu/machine/pd4990a.c svneol=native#text/plain src/emu/machine/pd4990a.h svneol=native#text/plain src/emu/machine/pic8259.c svneol=native#text/plain @@ -5001,8 +5001,8 @@ src/mame/machine/opwolf.c svneol=native#text/plain src/mame/machine/pacplus.c svneol=native#text/plain src/mame/machine/pcecommn.c svneol=native#text/plain src/mame/machine/pcecommn.h svneol=native#text/plain -src/mame/machine/pckeybrd.c svneol=native#text/plain src/mame/machine/pcshare.c svneol=native#text/plain +src/mame/machine/pcshare.h svneol=native#text/plain src/mame/machine/pgmcrypt.c svneol=native#text/plain src/mame/machine/pgmcrypt.h svneol=native#text/plain src/mame/machine/pgmprot.c svneol=native#text/plain diff --git a/src/emu/emu.mak b/src/emu/emu.mak index 6121666e4ff..4662f40ef81 100644 --- a/src/emu/emu.mak +++ b/src/emu/emu.mak @@ -250,6 +250,7 @@ EMUMACHINEOBJS = \ $(EMUMACHINE)/pc16552d.o \ $(EMUMACHINE)/pcf8593.o \ $(EMUMACHINE)/pci.o \ + $(EMUMACHINE)/pckeybrd.o \ $(EMUMACHINE)/pd4990a.o \ $(EMUMACHINE)/pic8259.o \ $(EMUMACHINE)/pit8253.o \ diff --git a/src/emu/machine/8042kbdc.c b/src/emu/machine/8042kbdc.c index 39606b1d164..a23597d8445 100644 --- a/src/emu/machine/8042kbdc.c +++ b/src/emu/machine/8042kbdc.c @@ -177,7 +177,6 @@ #include "machine/pckeybrd.h" #include "machine/8042kbdc.h" -#include "machine/pcshare.h" /*************************************************************************** diff --git a/src/mame/machine/pckeybrd.c b/src/emu/machine/pckeybrd.c index 60a7eee12f2..64ad380b20f 100644 --- a/src/mame/machine/pckeybrd.c +++ b/src/emu/machine/pckeybrd.c @@ -17,7 +17,7 @@ */ #include "emu.h" -#include "machine/pckeybrd.h" +#include "pckeybrd.h" /* AT keyboard documentation comes from www.beyondlogic.org and HelpPC documentation */ diff --git a/src/emu/machine/pcshare.h b/src/emu/machine/pcshare.h deleted file mode 100644 index f1b948cb9b7..00000000000 --- a/src/emu/machine/pcshare.h +++ /dev/null @@ -1,3 +0,0 @@ -extern IRQ_CALLBACK(pcat_irq_callback); -ADDRESS_MAP_EXTERN(pcat32_io_common, 32); -MACHINE_CONFIG_EXTERN(pcat_common); diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c index 72d81d315c1..70e07fc315e 100644 --- a/src/mame/drivers/calchase.c +++ b/src/mame/drivers/calchase.c @@ -117,7 +117,6 @@ something wrong in the disk geometry reported by calchase.chd (20,255,63) since #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/funkball.c b/src/mame/drivers/funkball.c index 01ec2b26951..9fa75c54832 100644 --- a/src/mame/drivers/funkball.c +++ b/src/mame/drivers/funkball.c @@ -73,7 +73,6 @@ Notes: #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c index d7e723eb06e..fdf51a9b995 100644 --- a/src/mame/drivers/gamecstl.c +++ b/src/mame/drivers/gamecstl.c @@ -68,7 +68,6 @@ #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/gammagic.c b/src/mame/drivers/gammagic.c index 6d4d2de3f84..05a0120a500 100644 --- a/src/mame/drivers/gammagic.c +++ b/src/mame/drivers/gammagic.c @@ -36,7 +36,6 @@ Additional CD-ROM games: "99 Bottles of Beer" //#include "machine/i82439tx.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/magtouch.c b/src/mame/drivers/magtouch.c index ec821dafb0c..71ff3828225 100644 --- a/src/mame/drivers/magtouch.c +++ b/src/mame/drivers/magtouch.c @@ -84,14 +84,13 @@ video card #include "video/pc_vga.h" -class magtouch_state : public driver_device +class magtouch_state : public pcat_base_state { public: magtouch_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), + : pcat_base_state(mconfig, type, tag), m_uart(*this, "ns16450_0"), - m_microtouch(*this, "microtouch"), - m_maincpu(*this, "maincpu") { } + m_microtouch(*this, "microtouch"){ } required_device<ns16450_device> m_uart; required_device<microtouch_serial_device> m_microtouch; @@ -104,7 +103,6 @@ public: DECLARE_READ8_MEMBER(get_out2); DECLARE_DRIVER_INIT(magtouch); virtual void machine_start(); - required_device<cpu_device> m_maincpu; }; @@ -219,7 +217,7 @@ static const struct kbdc8042_interface at8042 = void magtouch_state::machine_start() { - m_maincpu->set_irq_acknowledge_callback(pcat_irq_callback); + m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(magtouch_state::irq_callback),this)); membank("rombank")->configure_entries(0, 0x80, memregion("game_prg")->base(), 0x8000 ); membank("rombank")->set_entry(0); diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c index 9e802320047..95e0e72582b 100644 --- a/src/mame/drivers/mediagx.c +++ b/src/mame/drivers/mediagx.c @@ -70,7 +70,6 @@ #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/midqslvr.c b/src/mame/drivers/midqslvr.c index db55ebb6e6a..7d0b415af47 100644 --- a/src/mame/drivers/midqslvr.c +++ b/src/mame/drivers/midqslvr.c @@ -28,7 +28,6 @@ #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/pangofun.c b/src/mame/drivers/pangofun.c index cf9f6f093ba..b4006b35bab 100644 --- a/src/mame/drivers/pangofun.c +++ b/src/mame/drivers/pangofun.c @@ -102,17 +102,15 @@ Arcade Version (Coin-Op) by InfoCube (Pisa, Italy) #include "video/pc_vga.h" -class pangofun_state : public driver_device +class pangofun_state : public pcat_base_state { public: pangofun_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu") { } + : pcat_base_state(mconfig, type, tag) { } DECLARE_READ8_MEMBER(get_out2); DECLARE_DRIVER_INIT(pangofun); virtual void machine_start(); - required_device<cpu_device> m_maincpu; }; @@ -191,7 +189,7 @@ static const struct kbdc8042_interface at8042 = void pangofun_state::machine_start() { - m_maincpu->set_irq_acknowledge_callback(pcat_irq_callback); + m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(pangofun_state::irq_callback),this)); } static MACHINE_CONFIG_START( pangofun, pangofun_state ) diff --git a/src/mame/drivers/pcat_dyn.c b/src/mame/drivers/pcat_dyn.c index cb8b01463ee..6d59468209f 100644 --- a/src/mame/drivers/pcat_dyn.c +++ b/src/mame/drivers/pcat_dyn.c @@ -37,17 +37,15 @@ keyboard trick; #include "video/pc_vga.h" -class pcat_dyn_state : public driver_device +class pcat_dyn_state : public pcat_base_state { public: pcat_dyn_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu") { } + : pcat_base_state(mconfig, type, tag) { } DECLARE_READ8_MEMBER(get_out2); DECLARE_DRIVER_INIT(pcat_dyn); virtual void machine_start(); - required_device<cpu_device> m_maincpu; }; @@ -129,7 +127,7 @@ static const struct kbdc8042_interface at8042 = void pcat_dyn_state::machine_start() { - m_maincpu->set_irq_acknowledge_callback(pcat_irq_callback); + m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(pcat_dyn_state::irq_callback),this)); } static MACHINE_CONFIG_START( pcat_dyn, pcat_dyn_state ) diff --git a/src/mame/drivers/pcat_nit.c b/src/mame/drivers/pcat_nit.c index fac90e5f18e..b2e32dc1f76 100644 --- a/src/mame/drivers/pcat_nit.c +++ b/src/mame/drivers/pcat_nit.c @@ -93,14 +93,13 @@ Smitdogg #include "machine/8042kbdc.h" #include "machine/pit8253.h" -class pcat_nit_state : public driver_device +class pcat_nit_state : public pcat_base_state { public: pcat_nit_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), + : pcat_base_state(mconfig, type, tag), m_uart(*this, "ns16450_0"), - m_microtouch(*this, "microtouch"), - m_maincpu(*this, "maincpu") { } + m_microtouch(*this, "microtouch") { } UINT8 *m_banked_nvram; required_device<ns16450_device> m_uart; @@ -113,8 +112,7 @@ public: DECLARE_WRITE_LINE_MEMBER(at_com_interrupt_1); DECLARE_DRIVER_INIT(pcat_nit); DECLARE_READ8_MEMBER(get_out2); - virtual void machine_start(); - required_device<cpu_device> m_maincpu; + virtual void machine_start(); }; WRITE_LINE_MEMBER(pcat_nit_state::microtouch_out) @@ -247,7 +245,7 @@ static const struct kbdc8042_interface at8042 = void pcat_nit_state::machine_start() { - m_maincpu->set_irq_acknowledge_callback(pcat_irq_callback); + m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(pcat_nit_state::irq_callback),this)); membank("rombank")->configure_entries(0, 0x80, memregion("game_prg")->base(), 0x8000 ); membank("rombank")->set_entry(0); diff --git a/src/mame/drivers/photoply.c b/src/mame/drivers/photoply.c index 8acfa3a2e19..5faddf25863 100644 --- a/src/mame/drivers/photoply.c +++ b/src/mame/drivers/photoply.c @@ -15,7 +15,6 @@ TODO: #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/queen.c b/src/mame/drivers/queen.c index 5d45121434a..a5777736ca0 100644 --- a/src/mame/drivers/queen.c +++ b/src/mame/drivers/queen.c @@ -30,7 +30,6 @@ processor speed is 533MHz <- likely to be a Celeron or a Pentium III class CPU - #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/savquest.c b/src/mame/drivers/savquest.c index 8735cc80b05..61098b0094f 100644 --- a/src/mame/drivers/savquest.c +++ b/src/mame/drivers/savquest.c @@ -31,7 +31,6 @@ #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/su2000.c b/src/mame/drivers/su2000.c index 7b1e174d22b..22a513cbce3 100644 --- a/src/mame/drivers/su2000.c +++ b/src/mame/drivers/su2000.c @@ -64,12 +64,11 @@ * *************************************/ -class su2000_state : public driver_device +class su2000_state : public pcat_base_state { public: su2000_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu") { } + : pcat_base_state(mconfig, type, tag){ } device_t *m_pit8254; device_t *m_pic8259_1; @@ -83,8 +82,6 @@ public: DECLARE_READ8_MEMBER(get_slave_ack); virtual void machine_start(); virtual void machine_reset(); - IRQ_CALLBACK_MEMBER(irq_callback); - required_device<cpu_device> m_maincpu; }; @@ -218,19 +215,6 @@ static const struct pit8253_config su2000_pit8254_config = } }; - -/************************************* - * - * Interrupt Generation - * - *************************************/ - -IRQ_CALLBACK_MEMBER(su2000_state::irq_callback) -{ - return pic8259_acknowledge(m_pic8259_1); -} - - /************************************* * * Initialization diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c index beb942172c3..104ebe7a186 100644 --- a/src/mame/drivers/taitowlf.c +++ b/src/mame/drivers/taitowlf.c @@ -31,7 +31,6 @@ clocks 50MHz (near 3DFX) and 14.31818MHz (near RAMDAC) #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/voyager.c b/src/mame/drivers/voyager.c index 17a0ef3cc4f..b1498ea91cf 100644 --- a/src/mame/drivers/voyager.c +++ b/src/mame/drivers/voyager.c @@ -18,7 +18,6 @@ TODO: VIA KT133a chipset support, GeForce 2MX video support, lots of things ;-) #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/drivers/xtom3d.c b/src/mame/drivers/xtom3d.c index da5831489e4..90f67b031d0 100644 --- a/src/mame/drivers/xtom3d.c +++ b/src/mame/drivers/xtom3d.c @@ -44,7 +44,6 @@ MX29F1610MC 16M FlashROM (x7) #include "machine/pic8259.h" #include "machine/pit8253.h" #include "machine/mc146818.h" -#include "machine/pcshare.h" #include "machine/pci.h" #include "machine/8042kbdc.h" #include "machine/pckeybrd.h" diff --git a/src/mame/machine/pcshare.c b/src/mame/machine/pcshare.c index 2ffa0ec7959..02d6ae538ca 100644 --- a/src/mame/machine/pcshare.c +++ b/src/mame/machine/pcshare.c @@ -172,9 +172,9 @@ static const struct pic8259_interface pic8259_2_config = DEVCB_NULL }; -IRQ_CALLBACK(pcat_irq_callback) +IRQ_CALLBACK_MEMBER(pcat_base_state::irq_callback) { - return pic8259_acknowledge(device->machine().device("pic8259_1")); + return pic8259_acknowledge(machine().device("pic8259_1")); } static WRITE_LINE_DEVICE_HANDLER( at_pit8254_out0_changed ) diff --git a/src/mame/machine/pcshare.h b/src/mame/machine/pcshare.h new file mode 100644 index 00000000000..aff54674fd2 --- /dev/null +++ b/src/mame/machine/pcshare.h @@ -0,0 +1,14 @@ +class pcat_base_state : public driver_device +{ +public: + pcat_base_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag), + m_maincpu(*this, "maincpu") { } + + IRQ_CALLBACK_MEMBER(irq_callback); + + required_device<cpu_device> m_maincpu; +}; + +ADDRESS_MAP_EXTERN(pcat32_io_common, 32); +MACHINE_CONFIG_EXTERN(pcat_common); diff --git a/src/mame/mame.mak b/src/mame/mame.mak index b77f8413fcb..66f0ac98a65 100644 --- a/src/mame/mame.mak +++ b/src/mame/mame.mak @@ -374,7 +374,6 @@ DRVLIBS += \ $(MAMEOBJ)/shared.a: \ $(MACHINE)/nmk112.o \ - $(MACHINE)/pckeybrd.o \ $(MACHINE)/pcshare.o \ $(MACHINE)/segacrpt.o \ $(MACHINE)/segacrp2.o \ diff --git a/src/mess/drivers/amstr_pc.c b/src/mess/drivers/amstr_pc.c index e05a5dc2cc4..68721a8d21b 100644 --- a/src/mess/drivers/amstr_pc.c +++ b/src/mess/drivers/amstr_pc.c @@ -47,7 +47,6 @@ More information can be found at http://www.seasip.info/AmstradXT/1640tech/index #include "includes/amstr_pc.h" -#include "machine/pcshare.h" #include "includes/pc.h" #include "imagedev/flopdrv.h" diff --git a/src/mess/drivers/ip22.c b/src/mess/drivers/ip22.c index 6f4778fd12b..22bb8d9716b 100644 --- a/src/mess/drivers/ip22.c +++ b/src/mess/drivers/ip22.c @@ -47,7 +47,6 @@ #include "includes/at.h" #include "machine/8042kbdc.h" #include "machine/pit8253.h" -#include "machine/pcshare.h" #include "video/newport.h" #include "sound/dac.h" #include "machine/nvram.h" diff --git a/src/mess/drivers/pc.c b/src/mess/drivers/pc.c index cf6b3e3b5a2..eb35d1ce136 100644 --- a/src/mess/drivers/pc.c +++ b/src/mess/drivers/pc.c @@ -84,7 +84,6 @@ video HW too. #include "includes/europc.h" #include "includes/tandy1t.h" -#include "machine/pcshare.h" #include "includes/pc.h" #include "imagedev/flopdrv.h" diff --git a/src/mess/machine/amstr_pc.c b/src/mess/machine/amstr_pc.c index 6fc157f3f30..f272512aee9 100644 --- a/src/mess/machine/amstr_pc.c +++ b/src/mess/machine/amstr_pc.c @@ -2,7 +2,6 @@ #include "machine/pit8253.h" #include "machine/pc_lpt.h" -#include "machine/pcshare.h" #include "includes/amstr_pc.h" #include "includes/pc.h" #include "video/pc_vga.h" diff --git a/src/mess/machine/europc.c b/src/mess/machine/europc.c index f7b4e17b7fd..7fed6adae0c 100644 --- a/src/mess/machine/europc.c +++ b/src/mess/machine/europc.c @@ -1,6 +1,5 @@ #include "emu.h" #include "includes/europc.h" -#include "machine/pcshare.h" #include "machine/pit8253.h" #include "coreutil.h" diff --git a/src/mess/machine/pc.c b/src/mess/machine/pc.c index b23c593c007..bba73b8bc52 100644 --- a/src/mess/machine/pc.c +++ b/src/mess/machine/pc.c @@ -30,7 +30,6 @@ #include "machine/pc_fdc.h" #include "machine/upd765.h" #include "includes/amstr_pc.h" -#include "machine/pcshare.h" #include "imagedev/cassette.h" #include "sound/speaker.h" diff --git a/src/mess/machine/tandy1t.c b/src/mess/machine/tandy1t.c index 4cb459f47ad..18ba315e2ae 100644 --- a/src/mess/machine/tandy1t.c +++ b/src/mess/machine/tandy1t.c @@ -1,8 +1,6 @@ #include "emu.h" #include "machine/pckeybrd.h" - -#include "machine/pcshare.h" #include "includes/pc.h" #include "machine/pit8253.h" #include "includes/tandy1t.h" diff --git a/src/mess/mess.mak b/src/mess/mess.mak index 1eb486f2410..70940a2fd86 100644 --- a/src/mess/mess.mak +++ b/src/mess/mess.mak @@ -430,7 +430,6 @@ DRVLIBS += \ #------------------------------------------------- $(MESSOBJ)/mame.a: \ - $(MAME_MACHINE)/pckeybrd.o \ $(MAME_MACHINE)/archimds.o \ $(MAME_VIDEO)/archimds.o \ $(MAME_VIDEO)/amiga.o \ @@ -459,7 +458,6 @@ $(MESSOBJ)/mame.a: \ $(MAME_VIDEO)/rdpblend.o \ $(MAME_VIDEO)/rdptpipe.o \ $(MAME_VIDEO)/rdpspn16.o \ - $(MAME_MACHINE)/pcshare.o \ $(MAME_MACHINE)/megadriv.o \ $(MAME_MACHINE)/megacd.o \ $(MAME_MACHINE)/megacdcd.o \ |