mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
updated second half of mame/video devices to use device_add_mconfig insted of device_mconfig_additions (nw)
This commit is contained in:
parent
7c03ae131d
commit
803ee5fddc
@ -877,21 +877,16 @@ k1ge_device::k1ge_device(const machine_config &mconfig, device_type type, const
|
||||
{
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( k1ge )
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_MEMBER( k1ge_device::device_add_mconfig )
|
||||
MCFG_PALETTE_ADD("palette", 8 )
|
||||
MCFG_PALETTE_INIT_OWNER(k1ge_device, k1ge)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor k1ge_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( k1ge );
|
||||
}
|
||||
|
||||
|
||||
DEFINE_DEVICE_TYPE(K2GE, k2ge_device, "k2ge", "K2GE Color Graphics + LCD")
|
||||
|
||||
@ -900,17 +895,11 @@ k2ge_device::k2ge_device(const machine_config &mconfig, const char *tag, device_
|
||||
{
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( k2ge )
|
||||
//-------------------------------------------------
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_MEMBER( k2ge_device::device_add_mconfig )
|
||||
MCFG_PALETTE_ADD("palette", 4096 )
|
||||
MCFG_PALETTE_INIT_OWNER(k2ge_device, k2ge)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor k2ge_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( k2ge );
|
||||
}
|
||||
|
@ -33,8 +33,6 @@ public:
|
||||
DECLARE_READ8_MEMBER( read );
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
|
||||
DECLARE_PALETTE_INIT(k1ge);
|
||||
|
||||
void update( bitmap_ind16 &bitmap, const rectangle &cliprect );
|
||||
|
||||
// Static methods
|
||||
@ -49,7 +47,7 @@ protected:
|
||||
// device-level overrides
|
||||
virtual void device_start() override;
|
||||
virtual void device_reset() override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
devcb_write_line m_vblank_pin_w;
|
||||
devcb_write_line m_hblank_pin_w;
|
||||
@ -67,6 +65,8 @@ protected:
|
||||
TIMER_CALLBACK_MEMBER( hblank_on_timer_callback );
|
||||
TIMER_CALLBACK_MEMBER( timer_callback );
|
||||
|
||||
private:
|
||||
DECLARE_PALETTE_INIT(k1ge);
|
||||
};
|
||||
|
||||
|
||||
@ -75,10 +75,8 @@ class k2ge_device : public k1ge_device
|
||||
public:
|
||||
k2ge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_PALETTE_INIT(k2ge);
|
||||
|
||||
protected:
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
virtual void draw(int line) override;
|
||||
|
||||
@ -87,6 +85,8 @@ protected:
|
||||
void k1ge_draw_scroll_plane( uint16_t *p, uint16_t base, int line, int scroll_x, int scroll_y, uint16_t pal_lut_base, uint16_t k2ge_lut_base );
|
||||
void k1ge_draw_sprite_plane( uint16_t *p, uint16_t priority, int line, int scroll_x, int scroll_y );
|
||||
|
||||
private:
|
||||
DECLARE_PALETTE_INIT(k2ge);
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(K1GE, k1ge_device)
|
||||
|
@ -115,7 +115,7 @@ static ADDRESS_MAP_START(vram_map, AS_0, 8, pcvideo_t1000_device)
|
||||
AM_RANGE(0x20000, 0x3ffff) AM_NOP
|
||||
ADDRESS_MAP_END
|
||||
|
||||
MACHINE_CONFIG_START( pcvideo_t1000 )
|
||||
MACHINE_CONFIG_MEMBER( pcvideo_t1000_device::device_add_mconfig )
|
||||
MCFG_SCREEN_ADD(T1000_SCREEN_NAME, RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL_14_31818MHz,912,0,640,262,0,200)
|
||||
MCFG_SCREEN_UPDATE_DEVICE( T1000_MC6845_NAME, mc6845_device, screen_update )
|
||||
@ -138,14 +138,10 @@ MACHINE_CONFIG_START( pcvideo_t1000 )
|
||||
MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
machine_config_constructor pcvideo_t1000_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( pcvideo_t1000 );
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START( pcvideo_pcjr )
|
||||
MACHINE_CONFIG_MEMBER( pcvideo_pcjr_device::device_add_mconfig )
|
||||
MCFG_SCREEN_ADD(T1000_SCREEN_NAME, RASTER)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL_14_31818MHz,912,0,640,262,0,200)
|
||||
MCFG_SCREEN_RAW_PARAMS(XTAL_14_31818MHz, 912, 0, 640, 262, 0, 200)
|
||||
MCFG_SCREEN_UPDATE_DEVICE( T1000_MC6845_NAME, mc6845_device, screen_update )
|
||||
|
||||
MCFG_PALETTE_ADD( "palette", 32 )
|
||||
@ -165,11 +161,6 @@ MACHINE_CONFIG_START( pcvideo_pcjr )
|
||||
MCFG_ADDRESS_MAP_BANK_STRIDE(0x4000)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
machine_config_constructor pcvideo_pcjr_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( pcvideo_pcjr );
|
||||
}
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
|
||||
|
@ -95,11 +95,10 @@ public:
|
||||
pcvideo_t1000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
DECLARE_WRITE_LINE_MEMBER( t1000_vsync_changed );
|
||||
DECLARE_WRITE_LINE_MEMBER( disable_w );
|
||||
|
||||
protected:
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual void device_start() override;
|
||||
|
||||
private:
|
||||
@ -108,6 +107,8 @@ private:
|
||||
void bank_w(int data);
|
||||
void mode_control_w(int data);
|
||||
bool m_disable;
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( t1000_vsync_changed );
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(PCVIDEO_T1000, pcvideo_t1000_device)
|
||||
@ -122,14 +123,12 @@ public:
|
||||
pcvideo_pcjr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
DECLARE_WRITE_LINE_MEMBER( pcjr_vsync_changed );
|
||||
|
||||
virtual MC6845_UPDATE_ROW( crtc_update_row ) override;
|
||||
MC6845_UPDATE_ROW( pcjx_text_update_row );
|
||||
MC6845_UPDATE_ROW( pcjr_gfx_2bpp_high_update_row );
|
||||
|
||||
protected:
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual void device_start() override;
|
||||
|
||||
uint8_t *m_jxkanji;
|
||||
@ -139,6 +138,10 @@ private:
|
||||
void pc_pcjr_vga_data_w(int data);
|
||||
void pc_pcjr_bank_w(int data);
|
||||
void pc_pcjx_bank_w(int data);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( pcjr_vsync_changed );
|
||||
|
||||
virtual MC6845_UPDATE_ROW( crtc_update_row ) override;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(PCVIDEO_PCJR, pcvideo_pcjr_device)
|
||||
|
@ -99,7 +99,7 @@ ioport_constructor pcd_video_device::device_input_ports() const
|
||||
return INPUT_PORTS_NAME(pcd_mouse);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( pcd_video )
|
||||
MACHINE_CONFIG_MEMBER( pcd_video_device::device_add_mconfig )
|
||||
MCFG_CPU_ADD("graphics", I8741, XTAL_16MHz/2)
|
||||
MCFG_MCS48_PORT_P1_IN_CB(READ8(pcd_video_device, p1_r))
|
||||
MCFG_MCS48_PORT_P2_OUT_CB(WRITE8(pcd_video_device, p2_w))
|
||||
@ -123,11 +123,6 @@ static MACHINE_CONFIG_START( pcd_video )
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("mouse_timer", pcd_video_device, mouse_timer, attotime::from_hz(15000)) // guess
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
machine_config_constructor pcd_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( pcd_video );
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( pcx_vid_map, AS_PROGRAM, 8, pcx_video_device )
|
||||
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_REGION("graphics", 0)
|
||||
ADDRESS_MAP_END
|
||||
@ -145,7 +140,7 @@ static ADDRESS_MAP_START( pcx_vram, AS_0, 8, pcx_video_device )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(vram_r, vram_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static MACHINE_CONFIG_START( pcx_video )
|
||||
MACHINE_CONFIG_MEMBER( pcx_video_device::device_add_mconfig )
|
||||
MCFG_CPU_ADD("graphics", I8031, XTAL_24MHz/2)
|
||||
MCFG_CPU_PROGRAM_MAP(pcx_vid_map)
|
||||
MCFG_CPU_IO_MAP(pcx_vid_io)
|
||||
@ -170,10 +165,6 @@ static MACHINE_CONFIG_START( pcx_video )
|
||||
MCFG_DEVICE_ADDRESS_MAP(AS_0, pcx_vram)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
machine_config_constructor pcx_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( pcx_video );
|
||||
}
|
||||
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(pcd_video_device::display_pixels)
|
||||
{
|
||||
|
@ -38,18 +38,14 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(vram_sw_w);
|
||||
DECLARE_READ8_MEMBER(vram_r);
|
||||
DECLARE_WRITE8_MEMBER(vram_w);
|
||||
DECLARE_READ_LINE_MEMBER(t1_r);
|
||||
DECLARE_READ8_MEMBER(p1_r);
|
||||
DECLARE_WRITE8_MEMBER(p2_w);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(mouse_timer);
|
||||
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(display_pixels);
|
||||
protected:
|
||||
void device_start() override;
|
||||
void device_reset() override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
|
||||
private:
|
||||
required_ioport m_mouse_btn;
|
||||
required_ioport m_mouse_x;
|
||||
@ -71,6 +67,13 @@ private:
|
||||
int ya;
|
||||
int yb;
|
||||
} m_mouse;
|
||||
|
||||
DECLARE_READ_LINE_MEMBER(t1_r);
|
||||
DECLARE_READ8_MEMBER(p1_r);
|
||||
DECLARE_WRITE8_MEMBER(p2_w);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(mouse_timer);
|
||||
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(display_pixels);
|
||||
};
|
||||
|
||||
class pcx_video_device : public pcdx_video_device,
|
||||
@ -85,8 +88,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(term_w);
|
||||
DECLARE_READ8_MEMBER(term_mcu_r);
|
||||
DECLARE_WRITE8_MEMBER(term_mcu_w);
|
||||
DECLARE_READ8_MEMBER(rx_callback);
|
||||
DECLARE_WRITE8_MEMBER(tx_callback);
|
||||
DECLARE_READ8_MEMBER(vram_r);
|
||||
DECLARE_WRITE8_MEMBER(vram_w);
|
||||
DECLARE_READ8_MEMBER(vram_latch_r);
|
||||
@ -94,20 +95,26 @@ public:
|
||||
DECLARE_READ8_MEMBER(unk_r);
|
||||
DECLARE_WRITE8_MEMBER(p1_w);
|
||||
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(display_pixels);
|
||||
protected:
|
||||
void device_start() override;
|
||||
void device_reset() override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
|
||||
void tra_callback() override;
|
||||
void rcv_complete() override;
|
||||
void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
|
||||
|
||||
private:
|
||||
std::vector<uint8_t> m_vram;
|
||||
required_region_ptr<uint8_t> m_charrom;
|
||||
devcb_write_line m_txd_handler;
|
||||
uint8_t m_term_key, m_term_char, m_term_stat, m_vram_latch_r[2], m_vram_latch_w[2], m_p1;
|
||||
|
||||
DECLARE_READ8_MEMBER(rx_callback);
|
||||
DECLARE_WRITE8_MEMBER(tx_callback);
|
||||
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(display_pixels);
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(PCD_VIDEO, pcd_video_device)
|
||||
|
@ -373,21 +373,15 @@ tia_pal_video_device::tia_pal_video_device(const machine_config &mconfig, const
|
||||
{
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( tia_pal )
|
||||
//-------------------------------------------------
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_MEMBER( tia_pal_video_device::device_add_mconfig )
|
||||
MCFG_PALETTE_ADD("palette", TIA_PALETTE_LENGTH)
|
||||
MCFG_PALETTE_INIT_OWNER(tia_pal_video_device, tia_pal)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor tia_pal_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( tia_pal );
|
||||
}
|
||||
|
||||
// device type definition
|
||||
DEFINE_DEVICE_TYPE(TIA_NTSC_VIDEO, tia_ntsc_video_device, "tia_ntsc_video", "TIA Video (NTSC)")
|
||||
|
||||
@ -400,21 +394,15 @@ tia_ntsc_video_device::tia_ntsc_video_device(const machine_config &mconfig, cons
|
||||
{
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( tia_ntsc )
|
||||
//-------------------------------------------------
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_MEMBER( tia_ntsc_video_device::device_add_mconfig )
|
||||
MCFG_PALETTE_ADD("palette", TIA_PALETTE_LENGTH)
|
||||
MCFG_PALETTE_INIT_OWNER(tia_ntsc_video_device, tia_ntsc)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor tia_ntsc_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( tia_ntsc );
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
@ -212,10 +212,11 @@ class tia_pal_video_device : public tia_video_device
|
||||
public:
|
||||
tia_pal_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_PALETTE_INIT(tia_pal);
|
||||
|
||||
protected:
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
private:
|
||||
DECLARE_PALETTE_INIT(tia_pal);
|
||||
};
|
||||
|
||||
class tia_ntsc_video_device : public tia_video_device
|
||||
@ -223,10 +224,11 @@ class tia_ntsc_video_device : public tia_video_device
|
||||
public:
|
||||
tia_ntsc_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
DECLARE_PALETTE_INIT(tia_ntsc);
|
||||
|
||||
protected:
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
private:
|
||||
DECLARE_PALETTE_INIT(tia_ntsc);
|
||||
};
|
||||
|
||||
|
||||
|
@ -880,30 +880,15 @@ TIMER_CALLBACK_MEMBER(vt100_video_device::lba7_change)
|
||||
m_lba7 = (m_lba7) ? 0 : 1;
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START(vt100_video)
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_MEMBER(vt100_video_device::device_add_mconfig)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor vt100_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME(vt100_video);
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START(rainbow_video)
|
||||
MACHINE_CONFIG_MEMBER(rainbow_video_device::device_add_mconfig)
|
||||
MCFG_PALETTE_ADD("palette", 4)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
// machine_config_additions - return a pointer to
|
||||
// the device's machine fragment
|
||||
//-------------------------------------------------
|
||||
|
||||
machine_config_constructor rainbow_video_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME(rainbow_video);
|
||||
}
|
||||
|
@ -32,13 +32,14 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(brightness_w);
|
||||
|
||||
virtual void video_update(bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
|
||||
protected:
|
||||
vt100_video_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
// device-level overrides
|
||||
virtual void device_start() override;
|
||||
virtual void device_reset() override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
// internal state
|
||||
void recompute_parameters();
|
||||
@ -89,10 +90,11 @@ public:
|
||||
int MHFU(int);
|
||||
void palette_select(int choice);
|
||||
void notify_vblank(bool choice);
|
||||
|
||||
protected:
|
||||
virtual void display_char(bitmap_ind16 &bitmap, uint8_t code, int x, int y, uint8_t scroll_region, uint8_t display_type) override;
|
||||
virtual void device_reset() override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(VT100_VIDEO, vt100_video_device)
|
||||
|
@ -18,18 +18,6 @@ DEVICE_ADDRESS_MAP_START( registers, 8, wpc_dmd_device )
|
||||
AM_RANGE(7, 7) AM_WRITE(visible_page_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static MACHINE_CONFIG_START( wpc_dmd )
|
||||
MCFG_SCREEN_ADD("screen", LCD)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
|
||||
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, wpc_dmd_device, screen_update)
|
||||
MCFG_SCREEN_SIZE(128*4, 32*4)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 128*4-1, 0, 32*4-1)
|
||||
MCFG_DEFAULT_LAYOUT(layout_lcd)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("scanline", wpc_dmd_device, scanline_timer, attotime::from_hz(60*4*32))
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
wpc_dmd_device::wpc_dmd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
|
||||
device_t(mconfig, WPC_DMD, tag, owner, clock),
|
||||
@ -47,10 +35,17 @@ wpc_dmd_device::~wpc_dmd_device()
|
||||
{
|
||||
}
|
||||
|
||||
machine_config_constructor wpc_dmd_device::device_mconfig_additions() const
|
||||
{
|
||||
return MACHINE_CONFIG_NAME( wpc_dmd );
|
||||
}
|
||||
MACHINE_CONFIG_MEMBER( wpc_dmd_device::device_add_mconfig )
|
||||
MCFG_SCREEN_ADD("screen", LCD)
|
||||
MCFG_SCREEN_REFRESH_RATE(60)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
|
||||
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, wpc_dmd_device, screen_update)
|
||||
MCFG_SCREEN_SIZE(128*4, 32*4)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 128*4-1, 0, 32*4-1)
|
||||
MCFG_DEFAULT_LAYOUT(layout_lcd)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("scanline", wpc_dmd_device, scanline_timer, attotime::from_hz(60*4*32))
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
void wpc_dmd_device::device_start()
|
||||
{
|
||||
|
@ -29,9 +29,6 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(visible_page_w);
|
||||
DECLARE_WRITE8_MEMBER(firq_scanline_w);
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(scanline_timer);
|
||||
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
|
||||
template <class Object> static devcb_base &set_scanline_cb(device_t &device, Object &&cb) { return downcast<wpc_dmd_device &>(device).scanline_cb.set_callback(std::forward<Object>(cb)); }
|
||||
|
||||
protected:
|
||||
@ -43,7 +40,11 @@ protected:
|
||||
|
||||
virtual void device_start() override;
|
||||
virtual void device_reset() override;
|
||||
virtual machine_config_constructor device_mconfig_additions() const override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
|
||||
private:
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(scanline_timer);
|
||||
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(WPC_DMD, wpc_dmd_device)
|
||||
|
Loading…
Reference in New Issue
Block a user