summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/pasopia7.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/pasopia7.cpp')
-rw-r--r--src/mame/drivers/pasopia7.cpp69
1 files changed, 33 insertions, 36 deletions
diff --git a/src/mame/drivers/pasopia7.cpp b/src/mame/drivers/pasopia7.cpp
index 96ba59b0c1c..ce1d0834d02 100644
--- a/src/mame/drivers/pasopia7.cpp
+++ b/src/mame/drivers/pasopia7.cpp
@@ -535,7 +535,7 @@ WRITE8_MEMBER( pasopia7_state::pasopia7_6845_w )
if(offset == 0)
{
m_addr_latch = data;
- m_crtc->address_w(data);
+ m_crtc->address_w(space, offset, data);
}
else
{
@@ -547,7 +547,7 @@ WRITE8_MEMBER( pasopia7_state::pasopia7_6845_w )
else if(m_addr_latch == 0x0f)
m_cursor_addr = (m_cursor_addr & 0x3f00) | (data & 0xff);
- m_crtc->register_w(data);
+ m_crtc->register_w(space, offset, data);
/* double pump the pixel clock if we are in 640 x 200 mode */
if(m_screen_type == 1) // raster
@@ -572,8 +572,8 @@ READ8_MEMBER( pasopia7_state::pasopia7_fdc_r )
{
switch(offset)
{
- case 4: return m_fdc->msr_r();
- case 5: return m_fdc->fifo_r();
+ case 4: return m_fdc->msr_r(space, 0, 0xff);
+ case 5: return m_fdc->fifo_r(space, 0, 0xff);
//case 6: bit 7 interrupt bit
}
@@ -586,7 +586,7 @@ WRITE8_MEMBER( pasopia7_state::pasopia7_fdc_w )
{
case 0: m_fdc->tc_w(false); break;
case 2: m_fdc->tc_w(true); break;
- case 5: m_fdc->fifo_w(data); break;
+ case 5: m_fdc->fifo_w(space, 0, data, 0xff); break;
case 6:
if(data & 0x80)
m_fdc->reset();
@@ -919,8 +919,7 @@ static void pasopia7_floppies(device_slot_interface &device)
device.option_add("525hd", FLOPPY_525_HD);
}
-void pasopia7_state::p7_base(machine_config &config)
-{
+MACHINE_CONFIG_START(pasopia7_state::p7_base)
/* basic machine hardware */
Z80(config, m_maincpu, XTAL(4'000'000));
m_maincpu->set_addrmap(AS_PROGRAM, &pasopia7_state::pasopia7_mem);
@@ -930,9 +929,11 @@ void pasopia7_state::p7_base(machine_config &config)
/* Audio */
SPEAKER(config, "mono").front_center();
- SN76489A(config, m_sn1, 1996800).add_route(ALL_OUTPUTS, "mono", 0.50); // unknown clock / divider
+ MCFG_DEVICE_ADD("sn1", SN76489A, 1996800) // unknown clock / divider
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- SN76489A(config, m_sn2, 1996800).add_route(ALL_OUTPUTS, "mono", 0.50); // unknown clock / divider
+ MCFG_DEVICE_ADD("sn2", SN76489A, 1996800) // unknown clock / divider
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* Devices */
Z80CTC(config, m_ctc, XTAL(4'000'000));
@@ -964,54 +965,50 @@ void pasopia7_state::p7_base(machine_config &config)
m_ppi2->out_pc_callback().set(FUNC(pasopia7_state::nmi_reg_w));
UPD765A(config, m_fdc, 8'000'000, true, true);
- FLOPPY_CONNECTOR(config, "fdc:0", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats);
- FLOPPY_CONNECTOR(config, "fdc:1", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats);
-}
+ MCFG_FLOPPY_DRIVE_ADD("fdc:0", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats)
+ MCFG_FLOPPY_DRIVE_ADD("fdc:1", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats)
+MACHINE_CONFIG_END
-void pasopia7_state::p7_raster(machine_config &config)
-{
+MACHINE_CONFIG_START(pasopia7_state::p7_raster)
p7_base(config);
- SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
- m_screen->set_refresh_hz(60);
- m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
- m_screen->set_size(640, 480);
- m_screen->set_visarea(0, 640-1, 0, 32-1);
- m_screen->set_palette(m_palette);
- m_screen->set_screen_update(FUNC(pasopia7_state::screen_update_pasopia7));
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_SIZE(640, 480)
+ MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 32-1)
+ MCFG_SCREEN_PALETTE(m_palette)
MCFG_VIDEO_START_OVERRIDE(pasopia7_state,pasopia7)
-
+ MCFG_SCREEN_UPDATE_DRIVER(pasopia7_state, screen_update_pasopia7)
PALETTE(config, m_palette, palette_device::BRG_3BIT);
GFXDECODE(config, "gfxdecode", m_palette, gfx_pasopia7);
H46505(config, m_crtc, VDP_CLOCK); /* unknown clock, hand tuned to get ~60 fps */
- m_crtc->set_screen(m_screen);
+ m_crtc->set_screen("screen");
m_crtc->set_show_border_area(false);
m_crtc->set_char_width(8);
-}
+MACHINE_CONFIG_END
-void pasopia7_state::p7_lcd(machine_config &config)
-{
+MACHINE_CONFIG_START(pasopia7_state::p7_lcd)
p7_base(config);
- SCREEN(config, m_screen, SCREEN_TYPE_LCD);
- m_screen->set_refresh_hz(60);
- m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */
- m_screen->set_size(640, 480);
- m_screen->set_visarea(0, 640-1, 0, 200-1);
- m_screen->set_screen_update(FUNC(pasopia7_state::screen_update_pasopia7));
- m_screen->set_palette(m_palette);
-
+ MCFG_SCREEN_ADD("screen", LCD)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
+ MCFG_SCREEN_SIZE(640, 480)
+ MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1)
MCFG_VIDEO_START_OVERRIDE(pasopia7_state,pasopia7)
+ MCFG_SCREEN_UPDATE_DRIVER(pasopia7_state, screen_update_pasopia7)
+ MCFG_SCREEN_PALETTE(m_palette)
PALETTE(config, m_palette, FUNC(pasopia7_state::p7_lcd_palette), 8);
GFXDECODE(config, "gfxdecode", m_palette, gfx_pasopia7);
H46505(config, m_crtc, LCD_CLOCK); /* unknown clock, hand tuned to get ~60 fps */
- m_crtc->set_screen(m_screen);
+ m_crtc->set_screen("screen");
m_crtc->set_show_border_area(false);
m_crtc->set_char_width(8);
-}
+MACHINE_CONFIG_END
/* ROM definition */
ROM_START( pasopia7 )