a last couple of drivers updated. no whatsnew.

the remaining drivers using 8255ppi.c (legacy implementation) are: a few games on galaxian/scramble/scobra hw and a few sega system16 games. I think I will have time to convert these too before the weekend, but if anyone wants to do it earlier, be my guest...
This commit is contained in:
Fabio Priuli 2012-05-14 16:14:52 +00:00
parent b356181d69
commit 89ab3c9b68
3 changed files with 48 additions and 49 deletions

View File

@ -10,7 +10,7 @@
#include "emu.h"
#include "cpu/mcs48/mcs48.h"
#include "includes/segag80r.h"
#include "machine/8255ppi.h"
#include "machine/i8255.h"
#include "machine/i8243.h"
#include "sound/samples.h"
#include "sound/tms36xx.h"
@ -402,20 +402,20 @@ static const samples_interface sega005_samples_interface =
};
static const ppi8255_interface ppi8255_005_intf =
static I8255A_INTERFACE( ppi8255_005_intf )
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_HANDLER(sega005_sound_a_w),
DEVCB_HANDLER(sega005_sound_b_w),
DEVCB_NULL
DEVCB_NULL, /* Port A read */
DEVCB_HANDLER(sega005_sound_a_w), /* Port A write */
DEVCB_NULL, /* Port B read */
DEVCB_HANDLER(sega005_sound_b_w), /* Port B write */
DEVCB_NULL, /* Port C read */
DEVCB_NULL /* Port C write */
};
MACHINE_CONFIG_FRAGMENT( 005_sound_board )
MCFG_PPI8255_ADD( "ppi8255", ppi8255_005_intf )
MCFG_I8255A_ADD( "ppi8255", ppi8255_005_intf )
/* sound hardware */
MCFG_SOUND_START(sega005)
@ -812,20 +812,20 @@ ADDRESS_MAP_END
*
*************************************/
static const ppi8255_interface monsterb_ppi_intf =
static I8255A_INTERFACE( monsterb_ppi_intf )
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_HANDLER(n7751_status_r),
DEVCB_HANDLER(monsterb_sound_a_w),
DEVCB_HANDLER(monsterb_sound_b_w),
DEVCB_HANDLER(n7751_command_w)
DEVCB_NULL, /* Port A read */
DEVCB_HANDLER(monsterb_sound_a_w), /* Port A write */
DEVCB_NULL, /* Port B read */
DEVCB_HANDLER(monsterb_sound_b_w), /* Port B write */
DEVCB_HANDLER(n7751_status_r), /* Port C read */
DEVCB_HANDLER(n7751_command_w) /* Port C write */
};
MACHINE_CONFIG_FRAGMENT( monsterb_sound_board )
MCFG_PPI8255_ADD( "ppi8255", monsterb_ppi_intf )
MCFG_I8255A_ADD( "ppi8255", monsterb_ppi_intf )
/* basic machine hardware */
MCFG_CPU_ADD("audiocpu", N7751, 6000000)

View File

@ -111,7 +111,7 @@
#include "sound/samples.h"
#include "sound/sp0250.h"
#include "audio/segasnd.h"
#include "machine/8255ppi.h"
#include "machine/i8255.h"
#include "machine/segacrpt.h"
#include "machine/segag80.h"
#include "includes/segag80r.h"
@ -314,18 +314,17 @@ static WRITE8_DEVICE_HANDLER( sindbadm_SN76496_w )
*
*************************************/
static const ppi8255_interface sindbadm_ppi_intf =
static I8255A_INTERFACE( sindbadm_ppi_intf )
{
DEVCB_NULL,
DEVCB_INPUT_PORT("FC"),
DEVCB_NULL,
DEVCB_HANDLER(sindbadm_soundport_w),
DEVCB_NULL,
DEVCB_HANDLER(sindbadm_misc_w)
DEVCB_NULL, /* Port A read */
DEVCB_HANDLER(sindbadm_soundport_w), /* Port A write */
DEVCB_INPUT_PORT("FC"), /* Port B read */
DEVCB_NULL, /* Port B write */
DEVCB_NULL, /* Port C read */
DEVCB_HANDLER(sindbadm_misc_w) /* Port C write */
};
/*************************************
*
* Main CPU memory handlers
@ -354,7 +353,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8, segag80r_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE_LEGACY("ppi8255", ppi8255_r, ppi8255_w)
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0xbe, 0xbf) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w)
AM_RANGE(0xf9, 0xf9) AM_MIRROR(0x04) AM_WRITE(coin_count_w)
AM_RANGE(0xf8, 0xfb) AM_READ(mangled_ports_r)
@ -365,7 +364,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sindbadm_portmap, AS_IO, 8, segag80r_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x42, 0x43) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE_LEGACY("ppi8255", ppi8255_r, ppi8255_w)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0xf8, 0xfb) AM_READ(mangled_ports_r)
ADDRESS_MAP_END
@ -918,7 +917,7 @@ static MACHINE_CONFIG_DERIVED( sindbadm, g80r_base )
MCFG_CPU_IO_MAP(sindbadm_portmap)
MCFG_CPU_VBLANK_INT("screen", sindbadm_vblank_start)
MCFG_PPI8255_ADD( "ppi8255", sindbadm_ppi_intf )
MCFG_I8255A_ADD( "ppi8255", sindbadm_ppi_intf )
/* video hardware */
MCFG_GFXDECODE(monsterb)

View File

@ -256,7 +256,7 @@
#include "sound/sn76496.h"
#include "sound/samples.h"
#include "machine/segacrpt.h"
#include "machine/8255ppi.h"
#include "machine/i8255.h"
#include "audio/segasnd.h"
#include "includes/zaxxon.h"
@ -436,7 +436,7 @@ static ADDRESS_MAP_START( zaxxon_map, AS_PROGRAM, 8, zaxxon_state )
AM_RANGE(0xc000, 0xc002) AM_MIRROR(0x18f8) AM_WRITE(zaxxon_coin_enable_w)
AM_RANGE(0xc003, 0xc004) AM_MIRROR(0x18f8) AM_WRITE(zaxxon_coin_counter_w)
AM_RANGE(0xc006, 0xc006) AM_MIRROR(0x18f8) AM_WRITE(zaxxon_flipscreen_w)
AM_RANGE(0xe03c, 0xe03f) AM_MIRROR(0x1f00) AM_DEVREADWRITE_LEGACY("ppi8255", ppi8255_r, ppi8255_w)
AM_RANGE(0xe03c, 0xe03f) AM_MIRROR(0x1f00) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0xe0f0, 0xe0f0) AM_MIRROR(0x1f00) AM_WRITE(int_enable_w)
AM_RANGE(0xe0f1, 0xe0f1) AM_MIRROR(0x1f00) AM_WRITE(zaxxon_fg_color_w)
AM_RANGE(0xe0f8, 0xe0f9) AM_MIRROR(0x1f00) AM_WRITE(zaxxon_bg_position_w)
@ -476,7 +476,7 @@ static ADDRESS_MAP_START( congo_sound_map, AS_PROGRAM, 8, zaxxon_state )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
AM_RANGE(0x8000, 0x8003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE_LEGACY("ppi8255", ppi8255_r, ppi8255_w)
AM_RANGE(0x8000, 0x8003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
ADDRESS_MAP_END
@ -860,25 +860,24 @@ INPUT_PORTS_END
*
*************************************/
static const ppi8255_interface zaxxon_ppi_intf =
static I8255A_INTERFACE( zaxxon_ppi_intf )
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_HANDLER(zaxxon_sound_a_w),
DEVCB_HANDLER(zaxxon_sound_b_w),
DEVCB_HANDLER(zaxxon_sound_c_w)
DEVCB_NULL, /* Port A read */
DEVCB_HANDLER(zaxxon_sound_a_w), /* Port A write */
DEVCB_NULL, /* Port B read */
DEVCB_HANDLER(zaxxon_sound_b_w), /* Port B write */
DEVCB_NULL, /* Port C read */
DEVCB_HANDLER(zaxxon_sound_c_w) /* Port C write */
};
static const ppi8255_interface congo_ppi_intf =
static I8255A_INTERFACE( congo_ppi_intf )
{
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r),
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
DEVCB_HANDLER(congo_sound_b_w),
DEVCB_HANDLER(congo_sound_c_w)
DEVCB_DRIVER_MEMBER(driver_device, soundlatch_byte_r), /* Port A read */
DEVCB_NULL, /* Port A write */
DEVCB_NULL, /* Port B read */
DEVCB_HANDLER(congo_sound_b_w), /* Port B write */
DEVCB_NULL, /* Port C read */
DEVCB_HANDLER(congo_sound_c_w) /* Port C write */
};
@ -928,7 +927,7 @@ static MACHINE_CONFIG_START( root, zaxxon_state )
MCFG_MACHINE_START(zaxxon)
MCFG_PPI8255_ADD( "ppi8255", zaxxon_ppi_intf )
MCFG_I8255A_ADD( "ppi8255", zaxxon_ppi_intf )
/* video hardware */
MCFG_GFXDECODE(zaxxon)
@ -981,7 +980,8 @@ static MACHINE_CONFIG_DERIVED( congo, root )
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(congo_map)
MCFG_PPI8255_RECONFIG( "ppi8255", congo_ppi_intf )
MCFG_DEVICE_REMOVE("ppi8255")
MCFG_I8255A_ADD( "ppi8255", congo_ppi_intf )
MCFG_CPU_ADD("audiocpu", Z80, SOUND_CLOCK)
MCFG_CPU_PROGRAM_MAP(congo_sound_map)