The meager beginning of "The big IO_MAP merge of 2008". (Andrew Gardner)

Since I touch up a couple of things and test each driver after the automated merge, it still takes a few minutes for each file.  More IO_MAP merges will trickle in over the next few days.

It's likely not worth writing every driver in the whatsnew.txt, since there will be ~100.
This commit is contained in:
Andrew Gardner 2008-08-31 16:27:20 +00:00
parent 1071e33c6c
commit 8a5c4544b9
25 changed files with 161 additions and 277 deletions

View File

@ -74,18 +74,15 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xe03f) AM_WRITE(battlex_palette_w) /* probably palette */ AM_RANGE(0xe000, 0xe03f) AM_WRITE(battlex_palette_w) /* probably palette */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM")
AM_RANGE(0x02, 0x02) AM_READ_PORT("INPUTS") AM_RANGE(0x02, 0x02) AM_READ_PORT("INPUTS")
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW2") AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_WRITE(battlex_flipscreen_w) AM_RANGE(0x10, 0x10) AM_WRITE(battlex_flipscreen_w)
/* verify all of these */ /* verify all of these */
AM_RANGE(0x22, 0x22) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x22, 0x22) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x23, 0x23) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x23, 0x23) AM_WRITE(ay8910_control_port_0_w)
@ -210,7 +207,7 @@ static MACHINE_DRIVER_START( battlex )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,10000000/2 ) /* 10 MHz, divided ? (Z80A CPU) */ MDRV_CPU_ADD("main", Z80,10000000/2 ) /* 10 MHz, divided ? (Z80A CPU) */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,8) /* controls game speed? */ MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,8) /* controls game speed? */
/* video hardware */ /* video hardware */
@ -296,3 +293,4 @@ static DRIVER_INIT( battlex )
/*** GAME DRIVERS ************************************************************/ /*** GAME DRIVERS ************************************************************/
GAME( 1982, battlex, 0, battlex, battlex, battlex, ROT180, "Omori Electric", "Battle Cross", GAME_IMPERFECT_GRAPHICS ) GAME( 1982, battlex, 0, battlex, battlex, battlex, ROT180, "Omori Electric", "Battle Cross", GAME_IMPERFECT_GRAPHICS )

View File

@ -235,12 +235,9 @@ static ADDRESS_MAP_START( bwp3_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_ROM) AM_BASE(&bwp3_rombase) AM_SIZE(&bwp3_romsize) AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_ROM) AM_BASE(&bwp3_rombase) AM_SIZE(&bwp3_romsize)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( bwp3_readport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x00) AM_READ_PORT("VBLANK")
ADDRESS_MAP_END
static ADDRESS_MAP_START( bwp3_writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( bwp3_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x00) AM_WRITE(bwp3_u8F_w) AM_RANGE(0x00, 0x00) AM_READ_PORT("VBLANK") AM_WRITE(bwp3_u8F_w)
ADDRESS_MAP_END ADDRESS_MAP_END
//**************************************************************************** //****************************************************************************
@ -399,7 +396,7 @@ static MACHINE_DRIVER_START( bwing )
MDRV_CPU_ADD("audio", DECO16, 2000000) MDRV_CPU_ADD("audio", DECO16, 2000000)
MDRV_CPU_PROGRAM_MAP(bwp3_readmem, bwp3_writemem) MDRV_CPU_PROGRAM_MAP(bwp3_readmem, bwp3_writemem)
MDRV_CPU_IO_MAP(bwp3_readport, bwp3_writeport) MDRV_CPU_IO_MAP(bwp3_io_map,0)
MDRV_CPU_PERIODIC_INT(bwp3_interrupt, 1000) MDRV_CPU_PERIODIC_INT(bwp3_interrupt, 1000)
MDRV_INTERLEAVE(300) // high enough? MDRV_INTERLEAVE(300) // high enough?
@ -628,3 +625,4 @@ GAME( 1984, bwingsa, bwings, bwing, bwing, bwing, ROT90, "Data East Corporation"
GAME( 1984, zaviga, 0, bwing, bwing, bwing, ROT90, "Data East Corporation", "Zaviga", 0 ) GAME( 1984, zaviga, 0, bwing, bwing, bwing, ROT90, "Data East Corporation", "Zaviga", 0 )
GAME( 1984, zavigaj, zaviga, bwing, bwing, bwing, ROT90, "Data East Corporation", "Zaviga (Japan)", 0 ) GAME( 1984, zavigaj, zaviga, bwing, bwing, bwing, ROT90, "Data East Corporation", "Zaviga (Japan)", 0 )

View File

@ -91,18 +91,15 @@ static ADDRESS_MAP_START( carjmbre_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2000, 0x27ff) AM_WRITE(SMH_RAM) AM_RANGE(0x2000, 0x27ff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( carjmbre_sound_readport, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( carjmbre_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r)
AM_RANGE(0x24, 0x24) AM_READ(SMH_NOP) //??
ADDRESS_MAP_END
static ADDRESS_MAP_START( carjmbre_sound_writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_WRITE(SMH_NOP) //?? written on init/0xff sound command reset AM_RANGE(0x10, 0x10) AM_WRITE(SMH_NOP) //?? written on init/0xff sound command reset
AM_RANGE(0x20, 0x20) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x20, 0x20) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x21, 0x21) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x21, 0x21) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x22, 0x22) AM_WRITE(SMH_NOP) //?? written before and after 0x21 with same value AM_RANGE(0x22, 0x22) AM_WRITE(SMH_NOP) //?? written before and after 0x21 with same value
AM_RANGE(0x24, 0x24) AM_READ(SMH_NOP) //??
AM_RANGE(0x30, 0x30) AM_WRITE(ay8910_control_port_1_w) AM_RANGE(0x30, 0x30) AM_WRITE(ay8910_control_port_1_w)
AM_RANGE(0x31, 0x31) AM_WRITE(ay8910_write_port_1_w) AM_RANGE(0x31, 0x31) AM_WRITE(ay8910_write_port_1_w)
AM_RANGE(0x32, 0x32) AM_WRITE(SMH_NOP) //?? written before and after 0x31 with same value AM_RANGE(0x32, 0x32) AM_WRITE(SMH_NOP) //?? written before and after 0x31 with same value
@ -190,7 +187,7 @@ static MACHINE_DRIVER_START( carjmbre )
MDRV_CPU_ADD("audio", Z80, 1500000) MDRV_CPU_ADD("audio", Z80, 1500000)
MDRV_CPU_PROGRAM_MAP(carjmbre_sound_readmem,carjmbre_sound_writemem) MDRV_CPU_PROGRAM_MAP(carjmbre_sound_readmem,carjmbre_sound_writemem)
MDRV_CPU_IO_MAP(carjmbre_sound_readport,carjmbre_sound_writeport) MDRV_CPU_IO_MAP(carjmbre_sound_io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -248,3 +245,4 @@ ROM_START( carjmbre )
ROM_END ROM_END
GAME( 1983, carjmbre, 0, carjmbre, carjmbre, 0, ROT90, "Omori Electric Co., Ltd.", "Car Jamboree", GAME_IMPERFECT_COLORS ) GAME( 1983, carjmbre, 0, carjmbre, carjmbre, 0, ROT90, "Omori Electric Co., Ltd.", "Car Jamboree", GAME_IMPERFECT_COLORS )

View File

@ -63,7 +63,8 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf000, 0xffff) AM_WRITE(SMH_RAM) AM_BASE(&carrera_tileram) AM_RANGE(0xf000, 0xffff) AM_WRITE(SMH_RAM) AM_BASE(&carrera_tileram)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
@ -71,17 +72,11 @@ static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x03, 0x03) AM_READ_PORT("IN3") AM_RANGE(0x03, 0x03) AM_READ_PORT("IN3")
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN4") AM_RANGE(0x04, 0x04) AM_READ_PORT("IN4")
AM_RANGE(0x05, 0x05) AM_READ_PORT("IN5") AM_RANGE(0x05, 0x05) AM_READ_PORT("IN5")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x06, 0x06) AM_WRITE(SMH_NOP) // ? AM_RANGE(0x06, 0x06) AM_WRITE(SMH_NOP) // ?
AM_RANGE(0x08, 0x08) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x08, 0x08) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x09, 0x09) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x09, 0x09) AM_WRITE(ay8910_write_port_0_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( carrera ) static INPUT_PORTS_START( carrera )
PORT_START("IN0") /* Port 0 */ PORT_START("IN0") /* Port 0 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
@ -292,7 +287,7 @@ static MACHINE_DRIVER_START( carrera )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,MASTER_CLOCK/6) MDRV_CPU_ADD("main", Z80,MASTER_CLOCK/6)
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", nmi_line_pulse) MDRV_CPU_VBLANK_INT("main", nmi_line_pulse)
/* video hardware */ /* video hardware */
@ -340,3 +335,4 @@ ROM_END
GAME( 19??, carrera, 0, carrera, carrera,0, ROT0, "BS Electronics", "Carrera (Version 6.7)", GAME_WRONG_COLORS ) GAME( 19??, carrera, 0, carrera, carrera,0, ROT0, "BS Electronics", "Carrera (Version 6.7)", GAME_WRONG_COLORS )

View File

@ -38,17 +38,12 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0x87ff) AM_WRITE(SMH_RAM) AM_BASE(&videoram) AM_SIZE(&videoram_size) AM_RANGE(0x8000, 0x87ff) AM_WRITE(SMH_RAM) AM_BASE(&videoram) AM_SIZE(&videoram_size)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("INPUTS")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(dotrikun_color_w) AM_RANGE(0x00, 0x00) AM_READ_PORT("INPUTS") AM_WRITE(dotrikun_color_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( dotrikun ) static INPUT_PORTS_START( dotrikun )
PORT_START("INPUTS") PORT_START("INPUTS")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
@ -67,7 +62,7 @@ static MACHINE_DRIVER_START( dotrikun )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, 4000000) /* 4 MHz */ MDRV_CPU_ADD("main", Z80, 4000000) /* 4 MHz */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -103,3 +98,4 @@ ROM_END
GAME( 1990, dotrikun, 0, dotrikun, dotrikun, 0, ROT0, "Sega", "Dottori Kun (new version)", GAME_NO_SOUND ) GAME( 1990, dotrikun, 0, dotrikun, dotrikun, 0, ROT0, "Sega", "Dottori Kun (new version)", GAME_NO_SOUND )
GAME( 1990, dotriku2, dotrikun, dotrikun, dotrikun, 0, ROT0, "Sega", "Dottori Kun (old version)", GAME_NO_SOUND ) GAME( 1990, dotriku2, dotrikun, dotrikun, dotrikun, 0, ROT0, "Sega", "Dottori Kun (old version)", GAME_NO_SOUND )

View File

@ -230,15 +230,9 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READ(ioread) AM_RANGE(0x00, 0xff) AM_READWRITE(ioread, iowrite)
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_WRITE(iowrite)
ADDRESS_MAP_END ADDRESS_MAP_END
@ -303,7 +297,7 @@ static MACHINE_DRIVER_START( dribling )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, 5000000) MDRV_CPU_ADD("main", Z80, 5000000)
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", dribling_irq_gen) MDRV_CPU_VBLANK_INT("main", dribling_irq_gen)
MDRV_DEVICE_ADD( "ppi8255_0", PPI8255 ) MDRV_DEVICE_ADD( "ppi8255_0", PPI8255 )
@ -385,3 +379,4 @@ ROM_END
GAME( 1983, dribling, 0, dribling, dribling, 0, ROT0, "Model Racing", "Dribbling", GAME_NO_SOUND ) GAME( 1983, dribling, 0, dribling, dribling, 0, ROT0, "Model Racing", "Dribbling", GAME_NO_SOUND )
GAME( 1983, driblino, dribling, dribling, dribling, 0, ROT0, "Model Racing (Olympia license)", "Dribbling (Olympia)", GAME_NO_SOUND ) GAME( 1983, driblino, dribling, dribling, dribling, 0, ROT0, "Model Racing (Olympia license)", "Dribbling (Olympia)", GAME_NO_SOUND )

View File

@ -87,23 +87,14 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf000, 0xffff) AM_WRITE(SMH_RAM) AM_RANGE(0xf000, 0xffff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_WRITE(sn76496_0_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_WRITE(sn76496_1_w)
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW1")
AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2")
AM_RANGE(0x05, 0x05) AM_READ(SMH_NOP) // unused?
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sn76496_0_w)
AM_RANGE(0x01, 0x01) AM_WRITE(sn76496_1_w)
AM_RANGE(0x02, 0x02) AM_WRITE(sn76496_2_w) AM_RANGE(0x02, 0x02) AM_WRITE(sn76496_2_w)
AM_RANGE(0x03, 0x03) AM_WRITE(pcm_set_w) AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW1") AM_WRITE(pcm_set_w)
AM_RANGE(0x04, 0x04) AM_WRITE(nmi_enable_w) AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2") AM_WRITE(nmi_enable_w)
AM_RANGE(0x05, 0x05) AM_WRITE(SMH_NOP) // watchdog? AM_RANGE(0x05, 0x05) AM_READWRITE(SMH_NOP, SMH_NOP) // unused? / watchdog?
ADDRESS_MAP_END ADDRESS_MAP_END
/****************************************************************************/ /****************************************************************************/
@ -230,7 +221,7 @@ static MACHINE_DRIVER_START( drmicro )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,MCLK/6) /* 3.072MHz? */ MDRV_CPU_ADD("main", Z80,MCLK/6) /* 3.072MHz? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", drmicro_interrupt) MDRV_CPU_VBLANK_INT("main", drmicro_interrupt)
MDRV_INTERLEAVE(1) MDRV_INTERLEAVE(1)
@ -298,3 +289,4 @@ ROM_START( drmicro )
ROM_END ROM_END
GAME( 1983, drmicro, 0, drmicro, drmicro, 0, ROT270, "Sanritsu", "Dr. Micro", 0 ) GAME( 1983, drmicro, 0, drmicro, drmicro, 0, ROT270, "Sanritsu", "Dr. Micro", 0 )

View File

@ -106,25 +106,17 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_RAM) AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(funybubl_vidram_bank_w) // vidram bank
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(funybubl_cpurombank_w) // rom bank?
AM_RANGE(0x02, 0x02) AM_READ_PORT("P2") AM_RANGE(0x02, 0x02) AM_READ_PORT("P2")
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW") AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW") AM_WRITE(funybubl_soundcommand_w)
AM_RANGE(0x06, 0x06) AM_READ(SMH_NOP) /* Nothing is done with the data read */ AM_RANGE(0x06, 0x06) AM_READ(SMH_NOP) /* Nothing is done with the data read */
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(funybubl_vidram_bank_w) // vidram bank
AM_RANGE(0x01, 0x01) AM_WRITE(funybubl_cpurombank_w) // rom bank?
AM_RANGE(0x03, 0x03) AM_WRITE(funybubl_soundcommand_w)
AM_RANGE(0x06, 0x06) AM_WRITE(SMH_NOP) /* Written directly after IO port 0 */ AM_RANGE(0x06, 0x06) AM_WRITE(SMH_NOP) /* Written directly after IO port 0 */
AM_RANGE(0x07, 0x07) AM_WRITE(SMH_NOP) /* Reset something on startup - Sound CPU ?? */ AM_RANGE(0x07, 0x07) AM_WRITE(SMH_NOP) /* Reset something on startup - Sound CPU ?? */
ADDRESS_MAP_END ADDRESS_MAP_END
/* Sound CPU */ /* Sound CPU */
static ADDRESS_MAP_START( soundreadmem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( soundreadmem, ADDRESS_SPACE_PROGRAM, 8 )
@ -246,7 +238,7 @@ static MACHINE_DRIVER_START( funybubl )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,12000000/2) /* 6 MHz?? */ MDRV_CPU_ADD("main", Z80,12000000/2) /* 6 MHz?? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
MDRV_CPU_ADD("audio", Z80,8000000/2) /* 4 MHz?? */ MDRV_CPU_ADD("audio", Z80,8000000/2) /* 4 MHz?? */
@ -342,3 +334,4 @@ ROM_END
GAME( 1999, funybubl, 0, funybubl, funybubl, funybubl, ROT0, "In Chang Electronic Co", "Funny Bubble", 0 ) GAME( 1999, funybubl, 0, funybubl, funybubl, funybubl, ROT0, "In Chang Electronic Co", "Funny Bubble", 0 )
GAME( 1999, funybubc, funybubl, funybubl, funybubl, funybubl, ROT0, "Comad Industry Co Ltd", "Funny Bubble (Comad version)", 0 ) GAME( 1999, funybubc, funybubl, funybubl, funybubl, funybubl, ROT0, "Comad Industry Co Ltd", "Funny Bubble (Comad version)", 0 )

View File

@ -93,21 +93,15 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8800, 0x8bff) AM_WRITE(SMH_RAM) AM_RANGE(0x8800, 0x8bff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(hanaawas_input_port_0_r)
AM_RANGE(0x01, 0x01) AM_READNOP /* it must return 0 */
AM_RANGE(0x10, 0x10) AM_READ(ay8910_read_port_0_r)
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(hanaawas_inputs_mux_w) AM_RANGE(0x00, 0x00) AM_READWRITE(hanaawas_input_port_0_r, hanaawas_inputs_mux_w)
AM_RANGE(0x10, 0x10) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x01, 0x01) AM_READNOP /* it must return 0 */
AM_RANGE(0x10, 0x10) AM_READWRITE(ay8910_read_port_0_r, ay8910_control_port_0_w)
AM_RANGE(0x11, 0x11) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x11, 0x11) AM_WRITE(ay8910_write_port_0_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( hanaawas ) static INPUT_PORTS_START( hanaawas )
PORT_START("IN0") /* IN0 */ PORT_START("IN0") /* IN0 */
PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL )
@ -209,7 +203,7 @@ static MACHINE_DRIVER_START( hanaawas )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,18432000/6) /* 3.072 MHz ??? */ MDRV_CPU_ADD("main", Z80,18432000/6) /* 3.072 MHz ??? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -264,3 +258,4 @@ ROM_END
GAME( 1982, hanaawas, 0, hanaawas, hanaawas, 0, ROT0, "Setakikaku, Ltd.", "Hana Awase", 0 ) GAME( 1982, hanaawas, 0, hanaawas, hanaawas, 0, ROT0, "Setakikaku, Ltd.", "Hana Awase", 0 )

View File

@ -86,20 +86,15 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xf7ff) AM_WRITE(mayumi_videoram_w) AM_RANGE(0xe000, 0xf7ff) AM_WRITE(mayumi_videoram_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x30, 0x30) AM_READ_PORT("IN0")
AM_RANGE(0xc1, 0xc2) AM_READ(key_matrix_r) // 0xc0-c3 8255ppi
AM_RANGE(0xd1, 0xd1) AM_READ(ym2203_read_port_0_r)
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x30, 0x30) AM_WRITE(bank_sel_w) AM_RANGE(0x30, 0x30) AM_READ_PORT("IN0") AM_WRITE(bank_sel_w)
AM_RANGE(0xc0, 0xc0) AM_WRITE(input_sel_w) AM_RANGE(0xc0, 0xc0) AM_WRITE(input_sel_w)
AM_RANGE(0xc1, 0xc2) AM_READ(key_matrix_r) // 0xc0-c3 8255ppi
AM_RANGE(0xc3, 0xc3) AM_WRITE(SMH_NOP) // 0xc0-c3 8255ppi AM_RANGE(0xc3, 0xc3) AM_WRITE(SMH_NOP) // 0xc0-c3 8255ppi
AM_RANGE(0xd0, 0xd0) AM_WRITE(ym2203_control_port_0_w) AM_RANGE(0xd0, 0xd0) AM_WRITE(ym2203_control_port_0_w)
AM_RANGE(0xd1, 0xd1) AM_WRITE(ym2203_write_port_0_w) AM_RANGE(0xd1, 0xd1) AM_READWRITE(ym2203_read_port_0_r, ym2203_write_port_0_w)
ADDRESS_MAP_END ADDRESS_MAP_END
/****************************************************************************/ /****************************************************************************/
@ -284,7 +279,7 @@ static MACHINE_DRIVER_START( mayumi )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, MCLK/2) /* 5.000 MHz ? */ MDRV_CPU_ADD("main", Z80, MCLK/2) /* 5.000 MHz ? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", mayumi_interrupt) MDRV_CPU_VBLANK_INT("main", mayumi_interrupt)
MDRV_MACHINE_RESET( mayumi ) MDRV_MACHINE_RESET( mayumi )
@ -338,3 +333,4 @@ ROM_START( mayumi )
ROM_END ROM_END
GAME( 1988, mayumi, 0, mayumi, mayumi, 0, ROT0, "[Sanritsu] Victory L.L.C.", "Kikiippatsu Mayumi-chan (Japan)", 0 ) GAME( 1988, mayumi, 0, mayumi, mayumi, 0, ROT0, "[Sanritsu] Victory L.L.C.", "Kikiippatsu Mayumi-chan (Japan)", 0 )

View File

@ -173,26 +173,21 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xf7ff) AM_WRITE(mjkjidai_videoram_w) AM_BASE(&mjkjidai_videoram) AM_RANGE(0xe000, 0xf7ff) AM_WRITE(mjkjidai_videoram_w) AM_BASE(&mjkjidai_videoram)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(keyboard_r) AM_RANGE(0x00, 0x00) AM_READ(keyboard_r)
AM_RANGE(0x01, 0x01) AM_READ(SMH_NOP) // ??? AM_RANGE(0x01, 0x01) AM_READ(SMH_NOP) // ???
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2")
AM_RANGE(0x11, 0x11) AM_READ_PORT("IN0")
AM_RANGE(0x12, 0x12) AM_READ_PORT("IN1")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x02) AM_WRITE(keyboard_select_w) AM_RANGE(0x01, 0x02) AM_WRITE(keyboard_select_w)
AM_RANGE(0x10, 0x10) AM_WRITE(mjkjidai_ctrl_w) // rom bank, coin counter, flip screen etc AM_RANGE(0x10, 0x10) AM_WRITE(mjkjidai_ctrl_w) // rom bank, coin counter, flip screen etc
AM_RANGE(0x11, 0x11) AM_READ_PORT("IN0")
AM_RANGE(0x12, 0x12) AM_READ_PORT("IN1")
AM_RANGE(0x20, 0x20) AM_WRITE(sn76496_0_w) AM_RANGE(0x20, 0x20) AM_WRITE(sn76496_0_w)
AM_RANGE(0x30, 0x30) AM_WRITE(sn76496_1_w) AM_RANGE(0x30, 0x30) AM_WRITE(sn76496_1_w)
AM_RANGE(0x40, 0x40) AM_WRITE(adpcm_w) AM_RANGE(0x40, 0x40) AM_WRITE(adpcm_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( mjkjidai ) static INPUT_PORTS_START( mjkjidai )
PORT_START("IN0") PORT_START("IN0")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
@ -357,7 +352,7 @@ static MACHINE_DRIVER_START( mjkjidai )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,10000000/2) /* 5 MHz ??? */ MDRV_CPU_ADD("main", Z80,10000000/2) /* 5 MHz ??? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", nmi_line_pulse) MDRV_CPU_VBLANK_INT("main", nmi_line_pulse)
MDRV_NVRAM_HANDLER(mjkjidai) MDRV_NVRAM_HANDLER(mjkjidai)
@ -425,3 +420,4 @@ ROM_END
GAME( 1986, mjkjidai, 0, mjkjidai, mjkjidai, 0, ROT0, "Sanritsu", "Mahjong Kyou Jidai (Japan)", GAME_IMPERFECT_GRAPHICS ) GAME( 1986, mjkjidai, 0, mjkjidai, mjkjidai, 0, ROT0, "Sanritsu", "Mahjong Kyou Jidai (Japan)", GAME_IMPERFECT_GRAPHICS )

View File

@ -162,18 +162,14 @@ static ADDRESS_MAP_START( mjsister_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8000, 0xffff) AM_WRITE(mjsister_videoram_w) AM_RANGE(0x8000, 0xffff) AM_WRITE(mjsister_videoram_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( mjsister_readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( mjsister_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x11, 0x11) AM_READ(ay8910_read_port_0_r)
AM_RANGE(0x20, 0x20) AM_READ(mjsister_keys_r)
AM_RANGE(0x21, 0x21) AM_READ_PORT("IN0")
ADDRESS_MAP_END
static ADDRESS_MAP_START( mjsister_writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(SMH_NOP) /* HD46505? */ AM_RANGE(0x00, 0x01) AM_WRITE(SMH_NOP) /* HD46505? */
AM_RANGE(0x10, 0x10) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x10, 0x10) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x11, 0x11) AM_READ(ay8910_read_port_0_r)
AM_RANGE(0x12, 0x12) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x12, 0x12) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x20, 0x20) AM_READ(mjsister_keys_r)
AM_RANGE(0x21, 0x21) AM_READ_PORT("IN0")
AM_RANGE(0x30, 0x30) AM_WRITE(mjsister_banksel1_w) AM_RANGE(0x30, 0x30) AM_WRITE(mjsister_banksel1_w)
AM_RANGE(0x31, 0x31) AM_WRITE(mjsister_banksel2_w) AM_RANGE(0x31, 0x31) AM_WRITE(mjsister_banksel2_w)
AM_RANGE(0x32, 0x32) AM_WRITE(mjsister_input_sel1_w) AM_RANGE(0x32, 0x32) AM_WRITE(mjsister_input_sel1_w)
@ -313,7 +309,7 @@ static MACHINE_DRIVER_START( mjsister )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, MCLK/2) /* 6.000 MHz */ MDRV_CPU_ADD("main", Z80, MCLK/2) /* 6.000 MHz */
MDRV_CPU_PROGRAM_MAP(mjsister_readmem,mjsister_writemem) MDRV_CPU_PROGRAM_MAP(mjsister_readmem,mjsister_writemem)
MDRV_CPU_IO_MAP(mjsister_readport,mjsister_writeport) MDRV_CPU_IO_MAP(mjsister_io_map,0)
MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,2) MDRV_CPU_VBLANK_INT_HACK(irq0_line_hold,2)
MDRV_MACHINE_RESET(mjsister) MDRV_MACHINE_RESET(mjsister)
@ -367,3 +363,4 @@ ROM_START( mjsister )
ROM_END ROM_END
GAME( 1986, mjsister, 0, mjsister, mjsister, 0, ROT0, "Toaplan", "Mahjong Sisters (Japan)", 0 ) GAME( 1986, mjsister, 0, mjsister, mjsister, 0, ROT0, "Toaplan", "Mahjong Sisters (Japan)", 0 )

View File

@ -86,28 +86,21 @@ static WRITE8_HANDLER( mogura_tileram_w )
tilemap_mark_tile_dirty(mogura_tilemap,offset&0x7ff); tilemap_mark_tile_dirty(mogura_tilemap,offset&0x7ff);
} }
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0c, 0x0c) AM_READ_PORT("P1")
AM_RANGE(0x0d, 0x0d) AM_READ_PORT("P2")
AM_RANGE(0x0e, 0x0e) AM_READ_PORT("P3")
AM_RANGE(0x0f, 0x0f) AM_READ_PORT("P4")
AM_RANGE(0x10, 0x10) AM_READ_PORT("SERVICE")
ADDRESS_MAP_END
static WRITE8_HANDLER(dac_w) static WRITE8_HANDLER(dac_w)
{ {
dac_0_data_w(machine, 0, data & 0xf0 ); /* left */ dac_0_data_w(machine, 0, data & 0xf0 ); /* left */
dac_1_data_w(machine, 0, (data & 0x0f)<<4 ); /* right */ dac_1_data_w(machine, 0, (data & 0x0f)<<4 ); /* right */
} }
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP) // ?? AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP) // ??
AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0c, 0x0c) AM_READ_PORT("P1")
AM_RANGE(0x0d, 0x0d) AM_READ_PORT("P2")
AM_RANGE(0x0e, 0x0e) AM_READ_PORT("P3")
AM_RANGE(0x0f, 0x0f) AM_READ_PORT("P4")
AM_RANGE(0x10, 0x10) AM_READ_PORT("SERVICE")
AM_RANGE(0x14, 0x14) AM_WRITE(dac_w) /* 4 bit DAC x 2. MSB = left, LSB = right */ AM_RANGE(0x14, 0x14) AM_WRITE(dac_w) /* 4 bit DAC x 2. MSB = left, LSB = right */
ADDRESS_MAP_END ADDRESS_MAP_END
@ -214,7 +207,7 @@ static MACHINE_DRIVER_START( mogura )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,3000000) /* 3 MHz */ MDRV_CPU_ADD("main", Z80,3000000) /* 3 MHz */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
MDRV_GFXDECODE(mogura) MDRV_GFXDECODE(mogura)
@ -252,3 +245,4 @@ ROM_START( mogura )
ROM_END ROM_END
GAME( 1991, mogura, 0, mogura, mogura, 0, ROT0, "Konami", "Mogura Desse", 0 ) GAME( 1991, mogura, 0, mogura, mogura, 0, ROT0, "Konami", "Mogura Desse", 0 )

View File

@ -92,11 +92,7 @@ static ADDRESS_MAP_START( writemem2, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x4000, 0x4000) AM_WRITE(SMH_NOP) /* watchdog? */ AM_RANGE(0x4000, 0x4000) AM_WRITE(SMH_NOP) /* watchdog? */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport2, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map_2, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport2, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x00, 0x00) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x01, 0x01) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x01, 0x01) AM_WRITE(ay8910_control_port_0_w)
@ -206,7 +202,7 @@ static MACHINE_DRIVER_START( mouser )
MDRV_CPU_ADD("audio", Z80, 4000000) /* ??? */ MDRV_CPU_ADD("audio", Z80, 4000000) /* ??? */
MDRV_CPU_PROGRAM_MAP(readmem2,writemem2) MDRV_CPU_PROGRAM_MAP(readmem2,writemem2)
MDRV_CPU_IO_MAP(readport2,writeport2) MDRV_CPU_IO_MAP(io_map_2,0)
MDRV_CPU_VBLANK_INT_HACK(nmi_line_pulse,4) /* ??? This controls the sound tempo */ MDRV_CPU_VBLANK_INT_HACK(nmi_line_pulse,4) /* ??? This controls the sound tempo */
/* video hardware */ /* video hardware */
@ -302,3 +298,4 @@ static DRIVER_INIT( mouser )
GAME( 1983, mouser, 0, mouser, mouser, mouser, ROT90, "UPL", "Mouser", 0 ) GAME( 1983, mouser, 0, mouser, mouser, mouser, ROT90, "UPL", "Mouser", 0 )
GAME( 1983, mouserc, mouser, mouser, mouser, mouser, ROT90, "[UPL] (Cosmos license)", "Mouser (Cosmos)", 0 ) GAME( 1983, mouserc, mouser, mouser, mouser, mouser, ROT90, "[UPL] (Cosmos license)", "Mouser (Cosmos)", 0 )

View File

@ -83,22 +83,15 @@ static READ8_HANDLER( io_0x03_r )
return 0x00; return 0x00;
} }
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") AM_WRITE(io_0x00_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(sn76496_0_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW") AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW") AM_WRITE(sn76496_1_w)
AM_RANGE(0x03, 0x03) AM_READ(io_0x03_r) // Unknown AM_RANGE(0x03, 0x03) AM_READ(io_0x03_r) // Unknown
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(io_0x00_w)
AM_RANGE(0x01, 0x01) AM_WRITE(sn76496_0_w)
AM_RANGE(0x02, 0x02) AM_WRITE(sn76496_1_w)
ADDRESS_MAP_END
static INPUT_PORTS_START( mrjong ) static INPUT_PORTS_START( mrjong )
PORT_START("P2") PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2)
@ -181,7 +174,7 @@ static MACHINE_DRIVER_START( mrjong )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80,15468000/6) /* 2.578 MHz?? */ MDRV_CPU_ADD("main", Z80,15468000/6) /* 2.578 MHz?? */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", nmi_line_pulse) MDRV_CPU_VBLANK_INT("main", nmi_line_pulse)
/* video hardware */ /* video hardware */
@ -267,3 +260,4 @@ ROM_END
GAME( 1983, mrjong, 0, mrjong, mrjong, 0, ROT90, "Kiwako", "Mr. Jong (Japan)", 0 ) GAME( 1983, mrjong, 0, mrjong, mrjong, 0, ROT90, "Kiwako", "Mr. Jong (Japan)", 0 )
GAME( 1983, crazyblk, mrjong, mrjong, mrjong, 0, ROT90, "Kiwako (ECI license)", "Crazy Blocks", 0 ) GAME( 1983, crazyblk, mrjong, mrjong, mrjong, 0, ROT90, "Kiwako (ECI license)", "Crazy Blocks", 0 )
GAME( 1983, blkbustr, mrjong, mrjong, mrjong, 0, ROT90, "Kiwako (ECI license)", "BlockBuster", 0 ) GAME( 1983, blkbustr, mrjong, mrjong, mrjong, 0, ROT90, "Kiwako (ECI license)", "BlockBuster", 0 )

View File

@ -152,22 +152,15 @@ static ADDRESS_MAP_START( pass_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xf800, 0xffff) AM_WRITE(SMH_RAM) AM_RANGE(0xf800, 0xffff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( pass_sound_readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( pass_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r)
AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r) AM_RANGE(0x70, 0x70) AM_READWRITE(ym2203_status_port_0_r, ym2203_control_port_0_w)
AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r) AM_RANGE(0x71, 0x71) AM_READWRITE(ym2203_read_port_0_r, ym2203_write_port_0_w)
ADDRESS_MAP_END
static ADDRESS_MAP_START( pass_sound_writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x70, 0x70) AM_WRITE(ym2203_control_port_0_w)
AM_RANGE(0x71, 0x71) AM_WRITE(ym2203_write_port_0_w)
AM_RANGE(0x80, 0x80) AM_WRITE(okim6295_data_0_w) AM_RANGE(0x80, 0x80) AM_WRITE(okim6295_data_0_w)
AM_RANGE(0xc0, 0xc0) AM_WRITE(soundlatch_clear_w) AM_RANGE(0xc0, 0xc0) AM_WRITE(soundlatch_clear_w)
ADDRESS_MAP_END ADDRESS_MAP_END
/* todo : work out function of unknown but used dsw */ /* todo : work out function of unknown but used dsw */
static INPUT_PORTS_START( pass ) static INPUT_PORTS_START( pass )
PORT_START("DSW") PORT_START("DSW")
@ -277,7 +270,7 @@ static MACHINE_DRIVER_START( pass )
MDRV_CPU_ADD("audio", Z80, 14318180/4 ) MDRV_CPU_ADD("audio", Z80, 14318180/4 )
MDRV_CPU_PROGRAM_MAP(pass_sound_readmem,pass_sound_writemem) MDRV_CPU_PROGRAM_MAP(pass_sound_readmem,pass_sound_writemem)
MDRV_CPU_IO_MAP(pass_sound_readport,pass_sound_writeport) MDRV_CPU_IO_MAP(pass_sound_io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -330,3 +323,4 @@ ROM_END
GAME( 1992, pass, 0, pass, pass, 0, ROT0, "Oksan", "Pass", 0) GAME( 1992, pass, 0, pass, pass, 0, ROT0, "Oksan", "Pass", 0)

View File

@ -68,31 +68,24 @@ static ADDRESS_MAP_START( writemem_pastelg, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport_pastelg, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r)
AM_RANGE(0x81, 0x81) AM_READ(ay8910_read_port_0_r)
AM_RANGE(0x90, 0x90) AM_READ_PORT("SYSTEM")
AM_RANGE(0xa0, 0xa0) AM_READ(nb1413m3_inputport1_r)
AM_RANGE(0xb0, 0xb0) AM_READ(nb1413m3_inputport2_r)
AM_RANGE(0xc0, 0xc0) AM_READ(pastelg_sndrom_r)
AM_RANGE(0xd0, 0xd0) AM_READ(SMH_NOP) // unknown
AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWC")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport_pastelg, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( pastelg_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP) // AM_RANGE(0x00, 0x00) AM_WRITE(SMH_NOP)
AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r)
AM_RANGE(0x81, 0x81) AM_READ(ay8910_read_port_0_r)
AM_RANGE(0x82, 0x82) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x82, 0x82) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x83, 0x83) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x83, 0x83) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x90, 0x90) AM_READ_PORT("SYSTEM")
AM_RANGE(0x90, 0x96) AM_WRITE(pastelg_blitter_w) AM_RANGE(0x90, 0x96) AM_WRITE(pastelg_blitter_w)
AM_RANGE(0xa0, 0xa0) AM_WRITE(nb1413m3_inputportsel_w) AM_RANGE(0xa0, 0xa0) AM_READWRITE(nb1413m3_inputport1_r, nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_WRITE(pastelg_romsel_w) AM_RANGE(0xb0, 0xb0) AM_READWRITE(nb1413m3_inputport2_r, pastelg_romsel_w)
AM_RANGE(0xc0, 0xc0) AM_READ(pastelg_sndrom_r)
AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w) AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w)
AM_RANGE(0xd0, 0xd0) AM_WRITE(DAC_0_WRITE) AM_RANGE(0xd0, 0xd0) AM_READWRITE(SMH_NOP, DAC_0_WRITE) // unknown
AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWC")
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( pastelg ) static INPUT_PORTS_START( pastelg )
PORT_START("DSWA") PORT_START("DSWA")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
@ -197,7 +190,7 @@ static MACHINE_DRIVER_START( pastelg )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, 19968000/8) /* 2.496 MHz ? */ MDRV_CPU_ADD("main", Z80, 19968000/8) /* 2.496 MHz ? */
MDRV_CPU_PROGRAM_MAP(readmem_pastelg, writemem_pastelg) MDRV_CPU_PROGRAM_MAP(readmem_pastelg, writemem_pastelg)
MDRV_CPU_IO_MAP(readport_pastelg, writeport_pastelg) MDRV_CPU_IO_MAP(pastelg_io_map,0)
// MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt,96) // nmiclock not written, chip is 1411M1 instead of 1413M3 // MDRV_CPU_VBLANK_INT_HACK(nb1413m3_interrupt,96) // nmiclock not written, chip is 1411M1 instead of 1413M3
MDRV_CPU_VBLANK_INT("main", nb1413m3_interrupt) MDRV_CPU_VBLANK_INT("main", nb1413m3_interrupt)
@ -255,3 +248,4 @@ ROM_END
GAME( 1985, pastelg, 0, pastelg, pastelg, pastelg, ROT0, "Nichibutsu", "Pastel Gal (Japan 851224)", 0 ) GAME( 1985, pastelg, 0, pastelg, pastelg, pastelg, ROT0, "Nichibutsu", "Pastel Gal (Japan 851224)", 0 )

View File

@ -126,35 +126,30 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc807, 0xc807) AM_WRITE(pitnrun_ha_w) AM_RANGE(0xc807, 0xc807) AM_WRITE(pitnrun_ha_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_writeport, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_clear_w) AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_clear_w)
AM_RANGE(0x8c, 0x8c) AM_WRITE(ay8910_control_port_1_w) AM_RANGE(0x8c, 0x8c) AM_WRITE(ay8910_control_port_1_w)
AM_RANGE(0x8d, 0x8d) AM_WRITE(ay8910_write_port_1_w) AM_RANGE(0x8d, 0x8d) AM_WRITE(ay8910_write_port_1_w)
AM_RANGE(0x8e, 0x8e) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x8e, 0x8e) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x8f, 0x8f) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x8f, 0x8f) AM_READWRITE(ay8910_read_port_0_r, ay8910_write_port_0_w)
AM_RANGE(0x90, 0x96) AM_WRITE(SMH_NOP) AM_RANGE(0x90, 0x96) AM_WRITE(SMH_NOP)
AM_RANGE(0x97, 0x97) AM_WRITE(SMH_NOP) AM_RANGE(0x97, 0x97) AM_WRITE(SMH_NOP)
AM_RANGE(0x98, 0x98) AM_WRITE(SMH_NOP) AM_RANGE(0x98, 0x98) AM_WRITE(SMH_NOP)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x8f, 0x8f) AM_READ(ay8910_read_port_0_r)
ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_READ(SMH_ROM) AM_RANGE(0x0000, 0x2fff) AM_READ(SMH_ROM)
AM_RANGE(0x3800, 0x3bff) AM_READ(SMH_RAM) AM_RANGE(0x3800, 0x3bff) AM_READ(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_WRITE(SMH_ROM) AM_RANGE(0x0000, 0x2fff) AM_WRITE(SMH_ROM)
AM_RANGE(0x3800, 0x3bff) AM_WRITE(SMH_RAM) AM_RANGE(0x3800, 0x3bff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_readmem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( mcu_readmem, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_GLOBAL_MASK(0x7ff) ADDRESS_MAP_GLOBAL_MASK(0x7ff)
AM_RANGE(0x0000, 0x0000) AM_READ(pitnrun_68705_portA_r) AM_RANGE(0x0000, 0x0000) AM_READ(pitnrun_68705_portA_r)
@ -164,7 +159,6 @@ static ADDRESS_MAP_START( mcu_readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0080, 0x07ff) AM_READ(SMH_ROM) AM_RANGE(0x0080, 0x07ff) AM_READ(SMH_ROM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_writemem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( mcu_writemem, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_GLOBAL_MASK(0x7ff) ADDRESS_MAP_GLOBAL_MASK(0x7ff)
AM_RANGE(0x0000, 0x0000) AM_WRITE(pitnrun_68705_portA_w) AM_RANGE(0x0000, 0x0000) AM_WRITE(pitnrun_68705_portA_w)
@ -265,7 +259,7 @@ static MACHINE_DRIVER_START( pitnrun )
MDRV_CPU_ADD("audio", Z80, XTAL_5MHz/2) /* verified on pcb */ MDRV_CPU_ADD("audio", Z80, XTAL_5MHz/2) /* verified on pcb */
MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem) MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
MDRV_CPU_IO_MAP(sound_readport,sound_writeport) MDRV_CPU_IO_MAP(sound_io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
MDRV_CPU_ADD("mcu", M68705,XTAL_18_432MHz/6) /* verified on pcb */ MDRV_CPU_ADD("mcu", M68705,XTAL_18_432MHz/6) /* verified on pcb */
@ -374,3 +368,4 @@ ROM_END
GAME( 1984, pitnrun, 0, pitnrun, pitnrun, 0, ROT90, "Taito Corporation", "Pit & Run (set 1)", GAME_IMPERFECT_SOUND ) GAME( 1984, pitnrun, 0, pitnrun, pitnrun, 0, ROT90, "Taito Corporation", "Pit & Run (set 1)", GAME_IMPERFECT_SOUND )
GAME( 1984, pitnruna, pitnrun, pitnrun, pitnrun, 0, ROT90, "Taito Corporation", "Pit & Run (set 2)", GAME_IMPERFECT_SOUND ) GAME( 1984, pitnruna, pitnrun, pitnrun, pitnrun, 0, ROT90, "Taito Corporation", "Pit & Run (set 2)", GAME_IMPERFECT_SOUND )

View File

@ -76,38 +76,30 @@ static WRITE8_HANDLER(pzlestar_bank_w)
/* Puzzle Star Ports */ /* Puzzle Star Ports */
static ADDRESS_MAP_START (readport_pzlestar, ADDRESS_SPACE_IO, 8) static ADDRESS_MAP_START( pzlestar_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x98, 0x98) AM_READ( v9938_0_vram_r ) AM_RANGE( 0x7c, 0x7c) AM_WRITE( ym2413_register_port_0_w )
AM_RANGE( 0x99, 0x99) AM_READ( v9938_0_status_r ) AM_RANGE( 0x7d, 0x7d) AM_WRITE( ym2413_data_port_0_w )
AM_RANGE( 0x91, 0x91) AM_WRITE( pzlestar_bank_w )
AM_RANGE( 0x98, 0x98) AM_READWRITE( v9938_0_vram_r, v9938_0_vram_w )
AM_RANGE( 0x99, 0x99) AM_READWRITE( v9938_0_status_r, v9938_0_command_w )
AM_RANGE( 0x9a, 0x9a) AM_WRITE( v9938_0_palette_w )
AM_RANGE( 0x9b, 0x9b) AM_WRITE( v9938_0_register_w )
AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1") AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1")
AM_RANGE( 0xa1, 0xa1) AM_READ_PORT("P2") AM_RANGE( 0xa1, 0xa1) AM_READ_PORT("P2")
AM_RANGE( 0xf7, 0xf7) AM_READ_PORT("DSW") AM_RANGE( 0xf7, 0xf7) AM_READ_PORT("DSW")
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START (writeport_pzlestar, ADDRESS_SPACE_IO, 8)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x91, 0x91) AM_WRITE( pzlestar_bank_w )
AM_RANGE( 0x7c, 0x7c) AM_WRITE( ym2413_register_port_0_w )
AM_RANGE( 0x7d, 0x7d) AM_WRITE( ym2413_data_port_0_w )
AM_RANGE( 0x98, 0x98) AM_WRITE( v9938_0_vram_w )
AM_RANGE( 0x99, 0x99) AM_WRITE( v9938_0_command_w )
AM_RANGE( 0x9a, 0x9a) AM_WRITE( v9938_0_palette_w )
AM_RANGE( 0x9b, 0x9b) AM_WRITE( v9938_0_register_w )
ADDRESS_MAP_END
/* Sexy Boom Ports */ /* Sexy Boom Ports */
static ADDRESS_MAP_START (readport_sexyboom, ADDRESS_SPACE_IO, 8) static ADDRESS_MAP_START( sexyboom_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1") AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1")
AM_RANGE( 0xa1, 0xa1) AM_READ_PORT("P2") AM_RANGE( 0xa1, 0xa1) AM_READ_PORT("P2")
AM_RANGE( 0xf7, 0xf7) AM_READ_PORT("DSW") AM_RANGE( 0xf7, 0xf7) AM_READ_PORT("DSW")
AM_RANGE( 0xf0, 0xf0) AM_READ( v9938_0_vram_r ) AM_RANGE( 0xf0, 0xf0) AM_READ( v9938_0_vram_r )
AM_RANGE( 0xf1, 0xf1) AM_READ( v9938_0_status_r ) AM_RANGE( 0xf1, 0xf1) AM_READ( v9938_0_status_r )
ADDRESS_MAP_END
static ADDRESS_MAP_START (writeport_sexyboom, ADDRESS_SPACE_IO, 8)
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x7c, 0x7c) AM_WRITE( ym2413_register_port_0_w ) AM_RANGE( 0x7c, 0x7c) AM_WRITE( ym2413_register_port_0_w )
AM_RANGE( 0x7d, 0x7d) AM_WRITE( ym2413_data_port_0_w ) AM_RANGE( 0x7d, 0x7d) AM_WRITE( ym2413_data_port_0_w )
@ -119,7 +111,6 @@ static ADDRESS_MAP_START (writeport_sexyboom, ADDRESS_SPACE_IO, 8)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( sangho ) static INPUT_PORTS_START( sangho )
PORT_START("P1") PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
@ -235,7 +226,7 @@ static MACHINE_DRIVER_START(pzlestar)
MDRV_CPU_ADD("main", Z80,8000000) // ? MDRV_CPU_ADD("main", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(readmem, 0) MDRV_CPU_PROGRAM_MAP(readmem, 0)
MDRV_CPU_IO_MAP(readport_pzlestar,writeport_pzlestar) MDRV_CPU_IO_MAP(pzlestar_io_map,0)
MDRV_CPU_VBLANK_INT_HACK(sangho_interrupt,262) MDRV_CPU_VBLANK_INT_HACK(sangho_interrupt,262)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
@ -268,7 +259,7 @@ static MACHINE_DRIVER_START(sexyboom )
MDRV_CPU_ADD("main", Z80,8000000) // ? MDRV_CPU_ADD("main", Z80,8000000) // ?
MDRV_CPU_PROGRAM_MAP(readmem, 0) MDRV_CPU_PROGRAM_MAP(readmem, 0)
MDRV_CPU_IO_MAP(readport_sexyboom,writeport_sexyboom) MDRV_CPU_IO_MAP(sexyboom_io_map,0)
MDRV_CPU_VBLANK_INT_HACK(sangho_interrupt,262) MDRV_CPU_VBLANK_INT_HACK(sangho_interrupt,262)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
@ -340,3 +331,4 @@ static DRIVER_INIT(sangho)
GAME( 1991, pzlestar, 0, pzlestar, sangho, sangho, ROT270, "Sang Ho Soft", "Puzzle Star (Sang Ho Soft)", GAME_NOT_WORKING ) GAME( 1991, pzlestar, 0, pzlestar, sangho, sangho, ROT270, "Sang Ho Soft", "Puzzle Star (Sang Ho Soft)", GAME_NOT_WORKING )
GAME( 1992, sexyboom, 0, sexyboom, sangho, sangho, ROT270, "Sang Ho Soft", "Sexy Boom", GAME_NOT_WORKING | GAME_NO_SOUND ) GAME( 1992, sexyboom, 0, sexyboom, sangho, sangho, ROT270, "Sang Ho Soft", "Sexy Boom", GAME_NOT_WORKING | GAME_NO_SOUND )

View File

@ -134,22 +134,15 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xc000, 0xc3ff) AM_WRITE(SMH_RAM) AM_RANGE(0xc000, 0xc3ff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xBE, 0xBE) AM_READ(TMS9928A_vram_r) AM_RANGE(0x7f, 0x7F) AM_WRITE(sn76496_0_w)
AM_RANGE(0xBF, 0xBF) AM_READ(TMS9928A_register_r) AM_RANGE(0xBE, 0xBE) AM_READWRITE(TMS9928A_vram_r, TMS9928A_vram_w)
AM_RANGE(0xBF, 0xBF) AM_READWRITE(TMS9928A_register_r, TMS9928A_register_w)
AM_RANGE(0xDC, 0xDC) AM_READ_PORT("P1") AM_RANGE(0xDC, 0xDC) AM_READ_PORT("P1")
AM_RANGE(0xDD, 0xDD) AM_READ_PORT("P2") AM_RANGE(0xDD, 0xDD) AM_READ_PORT("P2")
AM_RANGE(0xDE, 0xDE) AM_READ_PORT("DSW") AM_RANGE(0xDE, 0xDE) AM_READ_PORT("DSW")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xBE, 0xBE) AM_WRITE(TMS9928A_vram_w)
AM_RANGE(0xBF, 0xBF) AM_WRITE(TMS9928A_register_w)
AM_RANGE(0xDF, 0xDF) AM_WRITE(SMH_NOP) //? 8255 ? AM_RANGE(0xDF, 0xDF) AM_WRITE(SMH_NOP) //? 8255 ?
AM_RANGE(0x7f, 0x7F) AM_WRITE(sn76496_0_w)
ADDRESS_MAP_END ADDRESS_MAP_END
/************************************* /*************************************
@ -268,7 +261,7 @@ static const TMS9928a_interface tms9928a_interface =
static MACHINE_DRIVER_START( sg1000a ) static MACHINE_DRIVER_START( sg1000a )
MDRV_CPU_ADD("main", Z80, 3579545) /* 3.579545 Mhz */ MDRV_CPU_ADD("main", Z80, 3579545) /* 3.579545 Mhz */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", sg100a_interrupt) MDRV_CPU_VBLANK_INT("main", sg100a_interrupt)
/* video hardware */ /* video hardware */
@ -339,3 +332,4 @@ GAME( 1985, chwrestl, 0, sg1000a, chwrestl, chwrestl, ROT0, "Sega", "Champion Pr
GAME( 1985, dokidoki, 0, sg1000a, dokidoki, sg1000a, ROT0, "Sega", "Doki Doki Penguin Land", 0) GAME( 1985, dokidoki, 0, sg1000a, dokidoki, sg1000a, ROT0, "Sega", "Doki Doki Penguin Land", 0)

View File

@ -248,21 +248,18 @@ static GFXDECODE_START( skyarmy )
GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0, 32 ) GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0, 32 )
GFXDECODE_END GFXDECODE_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x06, 0x06) AM_READ(ay8910_read_port_0_r)
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_WRITE(ay8910_control_port_0_w) AM_RANGE(0x04, 0x04) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x05, 0x05) AM_WRITE(ay8910_write_port_0_w) AM_RANGE(0x05, 0x05) AM_WRITE(ay8910_write_port_0_w)
AM_RANGE(0x06, 0x06) AM_READ(ay8910_read_port_0_r)
ADDRESS_MAP_END ADDRESS_MAP_END
static MACHINE_DRIVER_START( skyarmy ) static MACHINE_DRIVER_START( skyarmy )
MDRV_CPU_ADD("main", Z80,4000000) MDRV_CPU_ADD("main", Z80,4000000)
MDRV_CPU_PROGRAM_MAP(skyarmy_readmem,skyarmy_writemem) MDRV_CPU_PROGRAM_MAP(skyarmy_readmem,skyarmy_writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
MDRV_CPU_PERIODIC_INT(skyarmy_nmi_source,650) /* Hz */ MDRV_CPU_PERIODIC_INT(skyarmy_nmi_source,650) /* Hz */
@ -308,3 +305,4 @@ ROM_START( skyarmy )
ROM_END ROM_END
GAME( 1982, skyarmy, 0, skyarmy, skyarmy, 0, ROT90, "Shoei", "Sky Army", GAME_WRONG_COLORS ) GAME( 1982, skyarmy, 0, skyarmy, skyarmy, 0, ROT90, "Shoei", "Sky Army", GAME_WRONG_COLORS )

View File

@ -169,22 +169,17 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb000, 0xb3ff) AM_WRITE(speedatk_colorram_w) AM_BASE(&colorram) AM_RANGE(0xb000, 0xb3ff) AM_WRITE(speedatk_colorram_w) AM_BASE(&colorram)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_READ_PORT("DSW") AM_RANGE(0x01, 0x01) AM_WRITE(speedatk_flip_screen_w)
AM_RANGE(0x40, 0x40) AM_READ_PORT("DSW") AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x41, 0x41) AM_WRITE(ay8910_write_port_0_w)
/* are these not used? after they're read it sets bit 7 */ /* are these not used? after they're read it sets bit 7 */
AM_RANGE(0x60, 0x60) AM_READ(SMH_NOP) AM_RANGE(0x60, 0x60) AM_READ(SMH_NOP)
AM_RANGE(0x61, 0x61) AM_READ(SMH_NOP) AM_RANGE(0x61, 0x61) AM_READ(SMH_NOP)
AM_RANGE(0x68, 0x68) AM_READ(SMH_NOP) AM_RANGE(0x68, 0x68) AM_READ(SMH_NOP)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_WRITE(speedatk_flip_screen_w)
AM_RANGE(0x40, 0x40) AM_WRITE(ay8910_control_port_0_w)
AM_RANGE(0x41, 0x41) AM_WRITE(ay8910_write_port_0_w)
ADDRESS_MAP_END
static INPUT_PORTS_START( speedatk ) static INPUT_PORTS_START( speedatk )
PORT_START("DSW") PORT_START("DSW")
PORT_SERVICE( 0x01, IP_ACTIVE_HIGH ) PORT_SERVICE( 0x01, IP_ACTIVE_HIGH )
@ -269,7 +264,7 @@ GFXDECODE_END
static MACHINE_DRIVER_START( speedatk ) static MACHINE_DRIVER_START( speedatk )
MDRV_CPU_ADD("main", Z80,12000000/2) MDRV_CPU_ADD("main", Z80,12000000/2)
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -316,3 +311,4 @@ ROM_START( speedatk )
ROM_END ROM_END
GAME( 1984, speedatk, 0, speedatk, speedatk, 0, ROT0, "Seta Kikaku Corp.", "Speed Attack!", 0 ) GAME( 1984, speedatk, 0, speedatk, speedatk, 0, ROT0, "Seta Kikaku Corp.", "Speed Attack!", 0 )

View File

@ -108,19 +108,14 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW")
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(sspeedr_sound_w) AM_RANGE(0x00, 0x01) AM_WRITE(sspeedr_sound_w)
AM_RANGE(0x02, 0x02) AM_WRITE(sspeedr_lamp_w) AM_RANGE(0x02, 0x02) AM_WRITE(sspeedr_lamp_w)
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW")
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN2")
AM_RANGE(0x04, 0x05) AM_WRITE(sspeedr_time_w) AM_RANGE(0x04, 0x05) AM_WRITE(sspeedr_time_w)
AM_RANGE(0x06, 0x06) AM_WRITE(watchdog_reset_w) AM_RANGE(0x06, 0x06) AM_WRITE(watchdog_reset_w)
AM_RANGE(0x10, 0x10) AM_WRITE(sspeedr_driver_horz_w) AM_RANGE(0x10, 0x10) AM_WRITE(sspeedr_driver_horz_w)
@ -220,7 +215,7 @@ static MACHINE_DRIVER_START( sspeedr )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", Z80, 19968000 / 8) MDRV_CPU_ADD("main", Z80, 19968000 / 8)
MDRV_CPU_PROGRAM_MAP(readmem, writemem) MDRV_CPU_PROGRAM_MAP(readmem, writemem)
MDRV_CPU_IO_MAP(readport, writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_assert) MDRV_CPU_VBLANK_INT("main", irq0_line_assert)
/* video hardware */ /* video hardware */
@ -260,3 +255,4 @@ ROM_END
GAMEL( 1979, sspeedr, 0, sspeedr, sspeedr, 0, ROT270, "Midway", "Super Speed Race", GAME_NO_SOUND, layout_sspeedr ) GAMEL( 1979, sspeedr, 0, sspeedr, sspeedr, 0, ROT270, "Midway", "Super Speed Race", GAME_NO_SOUND, layout_sspeedr )

View File

@ -44,18 +44,12 @@ static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1000, 0x10ff) AM_WRITE(SMH_RAM) /* RAM */ AM_RANGE(0x1000, 0x10ff) AM_WRITE(SMH_RAM) /* RAM */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
AM_RANGE(0x02, 0x02) AM_READ(starcrus_coll_det_r)
AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x00, 0x00) AM_WRITE(starcrus_s1_x_w) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_WRITE(starcrus_s1_x_w)
AM_RANGE(0x01, 0x01) AM_WRITE(starcrus_s1_y_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_WRITE(starcrus_s1_y_w)
AM_RANGE(0x02, 0x02) AM_WRITE(starcrus_s2_x_w) AM_RANGE(0x02, 0x02) AM_READWRITE(starcrus_coll_det_r, starcrus_s2_x_w)
AM_RANGE(0x03, 0x03) AM_WRITE(starcrus_s2_y_w) AM_RANGE(0x03, 0x03) AM_READ_PORT("DSW") AM_WRITE(starcrus_s2_y_w)
AM_RANGE(0x04, 0x04) AM_WRITE(starcrus_p1_x_w) AM_RANGE(0x04, 0x04) AM_WRITE(starcrus_p1_x_w)
AM_RANGE(0x05, 0x05) AM_WRITE(starcrus_p1_y_w) AM_RANGE(0x05, 0x05) AM_WRITE(starcrus_p1_y_w)
AM_RANGE(0x06, 0x06) AM_WRITE(starcrus_p2_x_w) AM_RANGE(0x06, 0x06) AM_WRITE(starcrus_p2_x_w)
@ -67,7 +61,6 @@ static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( starcrus ) static INPUT_PORTS_START( starcrus )
PORT_START("P1") PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY /* ccw */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY /* ccw */
@ -172,7 +165,7 @@ static MACHINE_DRIVER_START( starcrus )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", 8080,9750000/9) /* 8224 chip is a divide by 9 */ MDRV_CPU_ADD("main", 8080,9750000/9) /* 8224 chip is a divide by 9 */
MDRV_CPU_PROGRAM_MAP(readmem,writemem) MDRV_CPU_PROGRAM_MAP(readmem,writemem)
MDRV_CPU_IO_MAP(readport,writeport) MDRV_CPU_IO_MAP(io_map,0)
MDRV_CPU_VBLANK_INT("main", irq0_line_hold) MDRV_CPU_VBLANK_INT("main", irq0_line_hold)
/* video hardware */ /* video hardware */
@ -228,3 +221,4 @@ ROM_END
GAME( 1977, starcrus, 0, starcrus, starcrus, 0, ROT0, "RamTek", "Star Cruiser", 0 ) GAME( 1977, starcrus, 0, starcrus, starcrus, 0, ROT0, "RamTek", "Star Cruiser", 0 )

View File

@ -183,8 +183,7 @@ static ADDRESS_MAP_START( tiamc1_writemem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_RAM) AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_RAM)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( tiamc1_io_map, ADDRESS_SPACE_IO, 8 )
static ADDRESS_MAP_START( tiamc1_writeport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x4f) AM_WRITE(tiamc1_sprite_y_w) /* sprites Y */ AM_RANGE(0x40, 0x4f) AM_WRITE(tiamc1_sprite_y_w) /* sprites Y */
AM_RANGE(0x50, 0x5f) AM_WRITE(tiamc1_sprite_x_w) /* sprites X */ AM_RANGE(0x50, 0x5f) AM_WRITE(tiamc1_sprite_x_w) /* sprites X */
@ -196,19 +195,15 @@ static ADDRESS_MAP_START( tiamc1_writeport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0xbe, 0xbe) AM_WRITE(tiamc1_bankswitch_w) /* VRAM selector */ AM_RANGE(0xbe, 0xbe) AM_WRITE(tiamc1_bankswitch_w) /* VRAM selector */
AM_RANGE(0xbf, 0xbf) AM_WRITENOP /* charset control */ AM_RANGE(0xbf, 0xbf) AM_WRITENOP /* charset control */
AM_RANGE(0xc0, 0xc3) AM_WRITE(tiamc1_timer0_w) /* timer 0 */ AM_RANGE(0xc0, 0xc3) AM_WRITE(tiamc1_timer0_w) /* timer 0 */
AM_RANGE(0xd0, 0xd0) AM_READ_PORT("IN0")
AM_RANGE(0xd1, 0xd1) AM_READ_PORT("IN1")
AM_RANGE(0xd2, 0xd2) AM_READ_PORT("IN2")
AM_RANGE(0xd2, 0xd2) AM_WRITE(tiamc1_control_w) /* coin counter and lockout */ AM_RANGE(0xd2, 0xd2) AM_WRITE(tiamc1_control_w) /* coin counter and lockout */
AM_RANGE(0xd3, 0xd3) AM_WRITENOP /* 8255 ctrl. Used for i/o ports */ AM_RANGE(0xd3, 0xd3) AM_WRITENOP /* 8255 ctrl. Used for i/o ports */
AM_RANGE(0xd4, 0xd7) AM_WRITE(tiamc1_timer1_w) /* timer 1 */ AM_RANGE(0xd4, 0xd7) AM_WRITE(tiamc1_timer1_w) /* timer 1 */
AM_RANGE(0xda, 0xda) AM_WRITE(tiamc1_timer1_gate_w) /* timer 1 gate control */ AM_RANGE(0xda, 0xda) AM_WRITE(tiamc1_timer1_gate_w) /* timer 1 gate control */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( tiamc1_readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xd0, 0xd0) AM_READ_PORT("IN0")
AM_RANGE(0xd1, 0xd1) AM_READ_PORT("IN1")
AM_RANGE(0xd2, 0xd2) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static INPUT_PORTS_START( tiamc1 ) static INPUT_PORTS_START( tiamc1 )
PORT_START("IN0") PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Player 0 JOYSTICK_RIGHT */ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* Player 0 JOYSTICK_RIGHT */
@ -278,7 +273,7 @@ static MACHINE_DRIVER_START( tiamc1 )
/* basic machine hardware */ /* basic machine hardware */
MDRV_CPU_ADD("main", 8080,16000000/9) /* 16 MHz */ MDRV_CPU_ADD("main", 8080,16000000/9) /* 16 MHz */
MDRV_CPU_PROGRAM_MAP(tiamc1_readmem,tiamc1_writemem) MDRV_CPU_PROGRAM_MAP(tiamc1_readmem,tiamc1_writemem)
MDRV_CPU_IO_MAP(tiamc1_readport,tiamc1_writeport) MDRV_CPU_IO_MAP(tiamc1_io_map,0)
MDRV_CPU_VBLANK_INT("main", irq1_line_hold) MDRV_CPU_VBLANK_INT("main", irq1_line_hold)
@ -353,3 +348,4 @@ ROM_END
GAME( 1988, konek, 0, tiamc1, tiamc1, tiamc1, ROT0, "Terminal", "Konek-Gorbunok", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE ) GAME( 1988, konek, 0, tiamc1, tiamc1, tiamc1, ROT0, "Terminal", "Konek-Gorbunok", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )
GAME( 1988, sosterm, 0, tiamc1, tiamc1, tiamc1, ROT0, "Terminal", "S.O.S.", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE ) GAME( 1988, sosterm, 0, tiamc1, tiamc1, tiamc1, ROT0, "Terminal", "S.O.S.", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE )