mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
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:
parent
b356181d69
commit
89ab3c9b68
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user