summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/vt220.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/vt220.cpp')
-rw-r--r--src/mame/drivers/vt220.cpp35
1 files changed, 18 insertions, 17 deletions
diff --git a/src/mame/drivers/vt220.cpp b/src/mame/drivers/vt220.cpp
index 3d9939755cf..a1060367aa7 100644
--- a/src/mame/drivers/vt220.cpp
+++ b/src/mame/drivers/vt220.cpp
@@ -57,7 +57,7 @@ private:
virtual void machine_reset() override;
virtual void video_start() override;
uint32_t screen_update_vt220(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
- required_device<cpu_device> m_maincpu;
+ required_device<i8051_device> m_maincpu;
required_device<ram_device> m_ram;
void vt220_io(address_map &map);
void vt220_mem(address_map &map);
@@ -107,30 +107,31 @@ uint32_t vt220_state::screen_update_vt220(screen_device &screen, bitmap_ind16 &b
}
-MACHINE_CONFIG_START(vt220_state::vt220)
+void vt220_state::vt220(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", I8051, XTAL(11'059'200)) // from schematic for earlier version
- MCFG_DEVICE_PROGRAM_MAP(vt220_mem)
- MCFG_DEVICE_IO_MAP(vt220_io)
- MCFG_MCS51_PORT_P1_IN_CB(CONSTANT(0)) // ???
+ I8051(config, m_maincpu, XTAL(11'059'200)); // from schematic for earlier version
+ m_maincpu->set_addrmap(AS_PROGRAM, &vt220_state::vt220_mem);
+ m_maincpu->set_addrmap(AS_IO, &vt220_state::vt220_io);
+ m_maincpu->port_in_cb<1>().set_constant(0); // ???
- MCFG_DEVICE_ADD("duart", SCN2681, XTAL(3'686'400))
- MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", MCS51_INT1_LINE))
+ scn2681_device &duart(SCN2681(config, "duart", XTAL(3'686'400)));
+ duart.irq_cb().set_inputline("maincpu", MCS51_INT1_LINE);
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(50)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
- MCFG_SCREEN_SIZE(640, 480)
- MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
- MCFG_SCREEN_UPDATE_DRIVER(vt220_state, screen_update_vt220)
- MCFG_SCREEN_PALETTE("palette")
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_refresh_hz(50);
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
+ screen.set_size(640, 480);
+ screen.set_visarea(0, 640-1, 0, 480-1);
+ screen.set_screen_update(FUNC(vt220_state::screen_update_vt220));
+ screen.set_palette("palette");
- MCFG_PALETTE_ADD_MONOCHROME("palette")
+ PALETTE(config, "palette", 2).set_init("palette", FUNC(palette_device::palette_init_monochrome));
/* internal ram */
RAM(config, RAM_TAG).set_default_size("16K");
-MACHINE_CONFIG_END
+}
MACHINE_CONFIG_START(vt220_state::vt220a)
vt220(config);