summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/fromanc2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/fromanc2.cpp')
-rw-r--r--src/mame/drivers/fromanc2.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/mame/drivers/fromanc2.cpp b/src/mame/drivers/fromanc2.cpp
index 87e843d972d..8f83360fa03 100644
--- a/src/mame/drivers/fromanc2.cpp
+++ b/src/mame/drivers/fromanc2.cpp
@@ -158,6 +158,12 @@ WRITE8_MEMBER(fromanc2_state::fromanc2_subcpu_rombank_w)
membank("bank2")->set_entry((data & 0x0c) >> 2);
}
+// custom handler allowing byte-smeared writes
+WRITE16_MEMBER(fromanc2_state::uart_w)
+{
+ m_uart->ins8250_w(space, offset, data & 0xff);
+}
+
/*************************************
*
@@ -257,8 +263,7 @@ static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16, fromanc2_state )
AM_RANGE(0xe30000, 0xe30013) AM_WRITENOP // ???
AM_RANGE(0xe40000, 0xe40013) AM_WRITENOP // ???
- AM_RANGE(0xe50000, 0xe50009) AM_WRITENOP // EXT-COMM PORT ?
- AM_RANGE(0xe5000c, 0xe5000d) AM_READNOP // EXT-COMM PORT ?
+ AM_RANGE(0xe50000, 0xe5000f) AM_DEVREAD8("uart", ns16550_device, ins8250_r, 0x00ff) AM_WRITE(uart_w) // EXT-COMM PORT ?
ADDRESS_MAP_END
@@ -624,11 +629,11 @@ MACHINE_CONFIG_END
static MACHINE_CONFIG_START( fromanc4 )
/* basic machine hardware */
- MCFG_CPU_ADD("maincpu", M68000,32000000/2) /* 16.00 MHz */
+ MCFG_CPU_ADD("maincpu", M68000, XTAL_32MHz/2) /* 16.00 MHz */
MCFG_CPU_PROGRAM_MAP(fromanc4_main_map)
MCFG_CPU_VBLANK_INT_DRIVER("lscreen", fromanc2_state, fromanc2_interrupt)
- MCFG_CPU_ADD("audiocpu", Z80,32000000/4) /* 8.00 MHz */
+ MCFG_CPU_ADD("audiocpu", Z80, XTAL_32MHz/4) /* 8.00 MHz */
MCFG_CPU_PROGRAM_MAP(fromanc2_sound_map)
MCFG_CPU_IO_MAP(fromanc2_sound_io_map)
@@ -636,6 +641,8 @@ static MACHINE_CONFIG_START( fromanc4 )
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
+ MCFG_DEVICE_ADD("uart", NS16550, 2000000) // actual type is TL16C550CFN; clock unknown
+
/* video hardware */
MCFG_GFXDECODE_ADD("gfxdecode", "lpalette", fromancr)
@@ -812,4 +819,4 @@ DRIVER_INIT_MEMBER(fromanc2_state,fromanc4)
GAME( 1995, fromanc2, 0, fromanc2, fromanc2, fromanc2_state, fromanc2, ROT0, "Video System Co.", "Taisen Idol-Mahjong Final Romance 2 (Japan)", MACHINE_SUPPORTS_SAVE )
GAME( 1995, fromancr, 0, fromancr, fromanc2, fromanc2_state, fromanc2, ROT0, "Video System Co.", "Taisen Mahjong Final Romance R (Japan)", MACHINE_SUPPORTS_SAVE )
-GAME( 1998, fromanc4, 0, fromanc4, fromanc4, fromanc2_state, fromanc4, ROT0, "Video System Co.", "Taisen Mahjong Final Romance 4 (Japan)", MACHINE_SUPPORTS_SAVE )
+GAME( 1998, fromanc4, 0, fromanc4, fromanc4, fromanc2_state, fromanc4, ROT0, "Video System Co.", "Taisen Mahjong Final Romance 4 (Japan)", MACHINE_NODEVICE_LAN | MACHINE_SUPPORTS_SAVE )