diff options
author | 2014-03-28 13:18:42 +0000 | |
---|---|---|
committer | 2014-03-28 13:18:42 +0000 | |
commit | a820b91964898ccfee0a296a05aba287c4ec5609 (patch) | |
tree | aea91c894f3d2a777dd0597a93f2e488893ba7b5 /src/mess | |
parent | b4a432d51faa740a3699aea7c66a3cc1d725fb78 (diff) |
hsync and fsync are part of mc6847 so devcb2 conversion was needed there not in gime, this fixes coco3 issue (nw)
Diffstat (limited to 'src/mess')
-rw-r--r-- | src/mess/drivers/apf.c | 3 | ||||
-rw-r--r-- | src/mess/drivers/coco12.c | 4 | ||||
-rw-r--r-- | src/mess/drivers/mc1000.c | 6 | ||||
-rw-r--r-- | src/mess/drivers/phc25.c | 8 | ||||
-rw-r--r-- | src/mess/drivers/spc1000.c | 4 | ||||
-rw-r--r-- | src/mess/drivers/sv8000.c | 2 | ||||
-rw-r--r-- | src/mess/drivers/vtech1.c | 11 | ||||
-rw-r--r-- | src/mess/drivers/z80ne.c | 2 | ||||
-rw-r--r-- | src/mess/includes/coco12.h | 4 | ||||
-rw-r--r-- | src/mess/machine/coco12.c | 4 | ||||
-rw-r--r-- | src/mess/video/gime.c | 4 | ||||
-rw-r--r-- | src/mess/video/gime.h | 10 |
12 files changed, 19 insertions, 43 deletions
diff --git a/src/mess/drivers/apf.c b/src/mess/drivers/apf.c index f8f7a521b5a..60d92fdceeb 100644 --- a/src/mess/drivers/apf.c +++ b/src/mess/drivers/apf.c @@ -513,8 +513,6 @@ static const mc6847_interface apf_mc6847_intf = { "screen", DEVCB_DRIVER_MEMBER(apf_state, videoram_r), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER("pia0", pia6821_device, cb1_w), DEVCB_NULL, /* AG */ DEVCB_LINE_VCC, /* GM2 */ @@ -535,6 +533,7 @@ static MACHINE_CONFIG_START( apfm1000, apf_state ) /* video hardware */ MCFG_SCREEN_MC6847_NTSC_ADD("screen", "mc6847") MCFG_MC6847_ADD("mc6847", MC6847_NTSC, XTAL_3_579545MHz, apf_mc6847_intf) + MCFG_MC6847_FSYNC_CALLBACK(DEVWRITELINE("pia0", pia6821_device, cb1_w)) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") diff --git a/src/mess/drivers/coco12.c b/src/mess/drivers/coco12.c index a63e244316d..f3896028f64 100644 --- a/src/mess/drivers/coco12.c +++ b/src/mess/drivers/coco12.c @@ -299,7 +299,9 @@ static MACHINE_CONFIG_START( coco, coco12_state ) // video hardware MCFG_SCREEN_MC6847_NTSC_ADD(SCREEN_TAG, VDG_TAG) MCFG_MC6847_ADD(VDG_TAG, MC6847_NTSC, XTAL_3_579545MHz, coco12_state::mc6847_config) - + MCFG_MC6847_HSYNC_CALLBACK(WRITELINE(coco12_state, horizontal_sync)) + MCFG_MC6847_FSYNC_CALLBACK(WRITELINE(coco12_state, field_sync)) + // sound hardware MCFG_FRAGMENT_ADD( coco_sound ) diff --git a/src/mess/drivers/mc1000.c b/src/mess/drivers/mc1000.c index 1b849617dcb..96f27d6ad50 100644 --- a/src/mess/drivers/mc1000.c +++ b/src/mess/drivers/mc1000.c @@ -436,9 +436,7 @@ static const cassette_interface mc1000_cassette_interface = static const mc6847_interface mc1000_mc6847_intf = { SCREEN_TAG, - DEVCB_DRIVER_MEMBER(mc1000_state, videoram_r), - DEVCB_DRIVER_LINE_MEMBER(mc1000_state, hs_w), - DEVCB_DRIVER_LINE_MEMBER(mc1000_state, fs_w), + DEVCB_DRIVER_MEMBER(mc1000_state, videoram_r) }; static MACHINE_CONFIG_START( mc1000, mc1000_state ) @@ -459,6 +457,8 @@ static MACHINE_CONFIG_START( mc1000, mc1000_state ) /* video hardware */ MCFG_SCREEN_MC6847_PAL_ADD(SCREEN_TAG, MC6847_TAG) MCFG_MC6847_ADD(MC6847_TAG, MC6847_NTSC, XTAL_3_579545MHz, mc1000_mc6847_intf) + MCFG_MC6847_HSYNC_CALLBACK(WRITELINE(mc1000_state, hs_w)) + MCFG_MC6847_FSYNC_CALLBACK(WRITELINE(mc1000_state, fs_w)) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") diff --git a/src/mess/drivers/phc25.c b/src/mess/drivers/phc25.c index 685182e5273..8d6542a8521 100644 --- a/src/mess/drivers/phc25.c +++ b/src/mess/drivers/phc25.c @@ -302,9 +302,6 @@ static const mc6847_interface ntsc_vdg_intf = SCREEN_TAG, DEVCB_DRIVER_MEMBER(phc25_state, video_ram_r), - DEVCB_NULL, /* horizontal sync */ - DEVCB_DRIVER_LINE_MEMBER(phc25_state, irq_w), /* field sync */ - DEVCB_NULL, /* AG */ DEVCB_LINE_VCC, /* GM2 */ DEVCB_LINE_VCC, /* GM1 */ @@ -322,9 +319,6 @@ static const mc6847_interface pal_vdg_intf = SCREEN_TAG, DEVCB_DRIVER_MEMBER(phc25_state, video_ram_r), - DEVCB_NULL, /* horizontal sync */ - DEVCB_DRIVER_LINE_MEMBER(phc25_state, irq_w), /* field sync */ - DEVCB_NULL, /* AG */ DEVCB_LINE_VCC, /* GM2 */ DEVCB_LINE_VCC, /* GM1 */ @@ -400,12 +394,14 @@ static MACHINE_CONFIG_DERIVED( pal, phc25 ) /* video hardware */ MCFG_SCREEN_MC6847_PAL_ADD(SCREEN_TAG, MC6847_TAG) MCFG_MC6847_ADD(MC6847_TAG, MC6847_PAL, XTAL_4_433619MHz, pal_vdg_intf) + MCFG_MC6847_FSYNC_CALLBACK(WRITELINE(phc25_state, irq_w)) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( ntsc, phc25 ) /* video hardware */ MCFG_SCREEN_MC6847_NTSC_ADD(SCREEN_TAG, MC6847_TAG) MCFG_MC6847_ADD(MC6847_TAG, MC6847_NTSC, XTAL_3_579545MHz, ntsc_vdg_intf) + MCFG_MC6847_FSYNC_CALLBACK(WRITELINE(phc25_state, irq_w)) MACHINE_CONFIG_END /* ROMs */ diff --git a/src/mess/drivers/spc1000.c b/src/mess/drivers/spc1000.c index 1075957d15f..21ad4f2cb6e 100644 --- a/src/mess/drivers/spc1000.c +++ b/src/mess/drivers/spc1000.c @@ -316,8 +316,6 @@ static const mc6847_interface spc1000_mc6847_intf = { "screen", DEVCB_DRIVER_MEMBER(spc1000_state,spc1000_mc6847_videoram_r), // data fetch - DEVCB_NULL, - DEVCB_DRIVER_LINE_MEMBER(spc1000_state, irq_w), /* field sync */ DEVCB_NULL, /* AG */ DEVCB_LINE_VCC, /* GM2 */ @@ -340,7 +338,7 @@ static MACHINE_CONFIG_START( spc1000, spc1000_state ) /* video hardware */ MCFG_SCREEN_MC6847_NTSC_ADD("screen", "mc6847") MCFG_MC6847_ADD("mc6847", MC6847_NTSC, XTAL_3_579545MHz, spc1000_mc6847_intf) - + MCFG_MC6847_FSYNC_CALLBACK(WRITELINE(spc1000_state, irq_w)) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_SOUND_ADD("ay8910", AY8910, XTAL_4MHz / 1) diff --git a/src/mess/drivers/sv8000.c b/src/mess/drivers/sv8000.c index 8e13c6d8cd7..ab6d81a03b6 100644 --- a/src/mess/drivers/sv8000.c +++ b/src/mess/drivers/sv8000.c @@ -400,8 +400,6 @@ static const mc6847_interface sv8000_mc6847_interface = { "screen", DEVCB_DRIVER_MEMBER(sv8000_state,mc6847_videoram_r), // data fetch - DEVCB_NULL, - DEVCB_NULL, DEVCB_NULL, /* AG */ DEVCB_NULL, /* GM2 */ diff --git a/src/mess/drivers/vtech1.c b/src/mess/drivers/vtech1.c index 69bd5648d53..5bb0f676869 100644 --- a/src/mess/drivers/vtech1.c +++ b/src/mess/drivers/vtech1.c @@ -906,8 +906,6 @@ static const mc6847_interface vtech1_mc6847_bw_intf = { "screen", DEVCB_DRIVER_MEMBER(vtech1_state,vtech1_mc6847_videoram_r), - DEVCB_NULL, /* horz sync */ - DEVCB_CPU_INPUT_LINE("maincpu", 0), /* field sync */ DEVCB_NULL, /* AG */ DEVCB_LINE_GND, /* GM2 */ @@ -925,9 +923,7 @@ static const mc6847_interface vtech1_mc6847_bw_intf = static const mc6847_interface vtech1_mc6847_intf = { "screen", - DEVCB_DRIVER_MEMBER(vtech1_state,vtech1_mc6847_videoram_r), - DEVCB_NULL, /* horz sync */ - DEVCB_CPU_INPUT_LINE("maincpu", 0), /* field sync */ + DEVCB_DRIVER_MEMBER(vtech1_state,vtech1_mc6847_videoram_r), DEVCB_NULL, /* AG */ DEVCB_LINE_GND, /* GM2 */ @@ -946,8 +942,6 @@ static const mc6847_interface vtech1_shrg_mc6847_intf = { "screen", DEVCB_DRIVER_MEMBER(vtech1_state,vtech1_mc6847_videoram_r), - DEVCB_NULL, /* horz sync */ - DEVCB_CPU_INPUT_LINE("maincpu", 0), /* field sync */ DEVCB_NULL, /* AG */ DEVCB_NULL, /* GM2 */ @@ -969,6 +963,7 @@ static MACHINE_CONFIG_START( laser110, vtech1_state ) /* video hardware */ MCFG_SCREEN_MC6847_PAL_ADD("screen", "mc6847") MCFG_MC6847_ADD("mc6847", MC6847_PAL, XTAL_4_433619MHz, vtech1_mc6847_bw_intf) + MCFG_MC6847_FSYNC_CALLBACK(INPUTLINE("maincpu", 0)) /* sound hardware */ MCFG_SPEAKER_STANDARD_MONO("mono") @@ -1004,6 +999,7 @@ MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( laser200, laser110 ) MCFG_DEVICE_REMOVE("mc6847") MCFG_MC6847_ADD("mc6847", MC6847_PAL, XTAL_4_433619MHz, vtech1_mc6847_intf) + MCFG_MC6847_FSYNC_CALLBACK(INPUTLINE("maincpu", 0)) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( laser210, laser200 ) @@ -1032,6 +1028,7 @@ static MACHINE_CONFIG_DERIVED( laser310h, laser310 ) MCFG_CPU_IO_MAP(vtech1_shrg_io) MCFG_DEVICE_REMOVE("mc6847") MCFG_MC6847_ADD("mc6847", MC6847_PAL, XTAL_4_433619MHz, vtech1_shrg_mc6847_intf) + MCFG_MC6847_FSYNC_CALLBACK(INPUTLINE("maincpu", 0)) MACHINE_CONFIG_END diff --git a/src/mess/drivers/z80ne.c b/src/mess/drivers/z80ne.c index bb41741bbb9..68f2aabf6af 100644 --- a/src/mess/drivers/z80ne.c +++ b/src/mess/drivers/z80ne.c @@ -444,8 +444,6 @@ static const mc6847_interface z80net_mc6847_intf = { "lx388", DEVCB_DRIVER_MEMBER(z80ne_state, lx388_mc6847_videoram_r), - DEVCB_NULL, - DEVCB_NULL, DEVCB_LINE_GND, /* AG */ DEVCB_LINE_GND, /* GM2 */ diff --git a/src/mess/includes/coco12.h b/src/mess/includes/coco12.h index a1b3e36495a..a25a74f2caa 100644 --- a/src/mess/includes/coco12.h +++ b/src/mess/includes/coco12.h @@ -50,6 +50,8 @@ public: DECLARE_READ8_MEMBER( sam_read ); + DECLARE_WRITE_LINE_MEMBER( horizontal_sync ); + DECLARE_WRITE_LINE_MEMBER( field_sync ); protected: virtual void device_start(); virtual void update_cart_base(UINT8 *cart_base); @@ -58,8 +60,6 @@ protected: virtual void pia1_pb_changed(void); private: - DECLARE_WRITE_LINE_MEMBER( horizontal_sync ); - DECLARE_WRITE_LINE_MEMBER( field_sync ); void configure_sam(void); }; diff --git a/src/mess/machine/coco12.c b/src/mess/machine/coco12.c index 299ae5e10c8..9691c6cf000 100644 --- a/src/mess/machine/coco12.c +++ b/src/mess/machine/coco12.c @@ -126,9 +126,7 @@ void coco12_state::update_cart_base(UINT8 *cart_base) const mc6847_interface coco12_state::mc6847_config = { SCREEN_TAG, - DEVCB_DEVICE_MEMBER(SAM_TAG, sam6883_device, display_read), - DEVCB_DRIVER_LINE_MEMBER(coco12_state, horizontal_sync), - DEVCB_DRIVER_LINE_MEMBER(coco12_state, field_sync) + DEVCB_DEVICE_MEMBER(SAM_TAG, sam6883_device, display_read) }; diff --git a/src/mess/video/gime.c b/src/mess/video/gime.c index 45e3cdbb7cf..2bd9d60deea 100644 --- a/src/mess/video/gime.c +++ b/src/mess/video/gime.c @@ -108,8 +108,6 @@ gime_base_device::gime_base_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const UINT8 *fontdata, const char *shortname, const char *source) : mc6847_friend_device(mconfig, type, name, tag, owner, clock, fontdata, true, 263, 25+192+26+3, false, shortname, source), - m_write_hsync(*this), - m_write_fsync(*this), m_write_irq(*this), m_write_firq(*this), m_read_floating_bus(*this) @@ -167,8 +165,6 @@ void gime_base_device::device_start(void) } // resolve callbacks - m_write_hsync.resolve_safe(); - m_write_fsync.resolve_safe(); m_write_irq.resolve_safe(); m_write_firq.resolve_safe(); m_read_floating_bus.resolve_safe(0); diff --git a/src/mess/video/gime.h b/src/mess/video/gime.h index 2ef3313b6ad..e1fc02a07b8 100644 --- a/src/mess/video/gime.h +++ b/src/mess/video/gime.h @@ -21,11 +21,9 @@ // GIME CONFIG/INTERFACE //************************************************************************** -#define MCFG_GIME_HSYNC_CALLBACK(_write) \ - devcb = &gime_base_device::set_hsync_wr_callback(*device, DEVCB2_##_write); +#define MCFG_GIME_HSYNC_CALLBACK MCFG_MC6847_HSYNC_CALLBACK -#define MCFG_GIME_FSYNC_CALLBACK(_write) \ - devcb = &gime_base_device::set_fsync_wr_callback(*device, DEVCB2_##_write); +#define MCFG_GIME_FSYNC_CALLBACK MCFG_MC6847_FSYNC_CALLBACK #define MCFG_GIME_IRQ_CALLBACK(_write) \ devcb = &gime_base_device::set_irq_wr_callback(*device, DEVCB2_##_write); @@ -56,8 +54,6 @@ class cococart_slot_device; class gime_base_device : public mc6847_friend_device, public sam6883_friend_device { public: - template<class _Object> static devcb2_base &set_hsync_wr_callback(device_t &device, _Object object) { return downcast<gime_base_device &>(device).m_write_hsync.set_callback(object); } - template<class _Object> static devcb2_base &set_fsync_wr_callback(device_t &device, _Object object) { return downcast<gime_base_device &>(device).m_write_fsync.set_callback(object); } template<class _Object> static devcb2_base &set_irq_wr_callback(device_t &device, _Object object) { return downcast<gime_base_device &>(device).m_write_irq.set_callback(object); } template<class _Object> static devcb2_base &set_firq_wr_callback(device_t &device, _Object object) { return downcast<gime_base_device &>(device).m_write_firq.set_callback(object); } template<class _Object> static devcb2_base &set_floating_bus_rd_callback(device_t &device, _Object object) { return downcast<gime_base_device &>(device).m_read_floating_bus.set_callback(object); } @@ -162,8 +158,6 @@ private: static const UINT8 hires_font[128][12]; // callbacks - devcb2_write_line m_write_hsync; - devcb2_write_line m_write_fsync; devcb2_write_line m_write_irq; devcb2_write_line m_write_firq; devcb2_read8 m_read_floating_bus; |