mirror of
https://github.com/holub/mame
synced 2025-04-25 17:56:43 +03:00
Continuing new device implementation for SN76496 and clones - mrdo.c, pachifev.c, tp84.c [Osso]
This commit is contained in:
parent
7d5c6e5664
commit
e1cd97408c
@ -46,8 +46,8 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mrdo_state )
|
||||
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(mrdo_fgvideoram_w) AM_SHARE("fgvideoram")
|
||||
AM_RANGE(0x9000, 0x90ff) AM_WRITEONLY AM_SHARE("spriteram")
|
||||
AM_RANGE(0x9800, 0x9800) AM_WRITE(mrdo_flipscreen_w) /* screen flip + playfield priority */
|
||||
AM_RANGE(0x9801, 0x9801) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x9802, 0x9802) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0x9801, 0x9801) AM_DEVWRITE("u8106_1", u8106_new_device, write)
|
||||
AM_RANGE(0x9802, 0x9802) AM_DEVWRITE("u8106_2", u8106_new_device, write)
|
||||
AM_RANGE(0x9803, 0x9803) AM_READ(mrdo_SECRE_r)
|
||||
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1")
|
||||
AM_RANGE(0xa001, 0xa001) AM_READ_PORT("P2")
|
||||
@ -164,6 +164,22 @@ static GFXDECODE_START( mrdo )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( mrdo, mrdo_state )
|
||||
|
||||
@ -186,11 +202,13 @@ static MACHINE_CONFIG_START( mrdo, mrdo_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", U8106, MAIN_CLOCK/2) /* sn76489-equivalent?, Verified */
|
||||
MCFG_SOUND_ADD("u8106_1", U8106_NEW, MAIN_CLOCK/2) /* sn76489-equivalent?, Verified */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", U8106, MAIN_CLOCK/2) /* sn76489-equivalent?, Verified */
|
||||
MCFG_SOUND_ADD("u8106_2", U8106_NEW, MAIN_CLOCK/2) /* sn76489-equivalent?, Verified */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -143,8 +143,8 @@ static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8, pachifev_state )
|
||||
AM_RANGE(0xff08, 0xff08) AM_READ_PORT("DSW3")
|
||||
AM_RANGE(0xff10, 0xff10) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
|
||||
AM_RANGE(0xff12, 0xff12) AM_DEVREADWRITE("tms9928a", tms9928a_device, register_read, register_write)
|
||||
AM_RANGE(0xff20, 0xff20) AM_DEVWRITE_LEGACY("sn76_1", sn76496_w)
|
||||
AM_RANGE(0xff30, 0xff30) AM_DEVWRITE_LEGACY("sn76_2", sn76496_w)
|
||||
AM_RANGE(0xff20, 0xff20) AM_DEVWRITE("y2404_1", y2404_new_device, write)
|
||||
AM_RANGE(0xff30, 0xff30) AM_DEVWRITE("y2404_2", y2404_new_device, write)
|
||||
AM_RANGE(0xff40, 0xff40) AM_WRITE(controls_w)
|
||||
AM_RANGE(0xff50, 0xff50) AM_WRITENOP /* unknown */
|
||||
AM_RANGE(0xfffa, 0xfffb) AM_NOP /* decrementer */
|
||||
@ -246,6 +246,23 @@ static INPUT_PORTS_START( pachifev )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
#if USE_MSM
|
||||
|
||||
|
||||
@ -378,10 +395,12 @@ static MACHINE_CONFIG_START( pachifev, pachifev_state )
|
||||
MCFG_SOUND_CONFIG(msm5205_config)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
#endif
|
||||
MCFG_SOUND_ADD("sn76_1", Y2404, XTAL_10_738635MHz/3) /* guess */
|
||||
MCFG_SOUND_ADD("y2404_1", Y2404_NEW, XTAL_10_738635MHz/3) /* guess */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MCFG_SOUND_ADD("sn76_2", Y2404, XTAL_10_738635MHz/3) /* guess */
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MCFG_SOUND_ADD("y2404_2", Y2404_NEW, XTAL_10_738635MHz/3) /* guess */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
ROM_START( pachifev )
|
||||
|
@ -193,9 +193,9 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, tp84_state )
|
||||
AM_RANGE(0x8000, 0x8000) AM_READ(tp84_sh_timer_r)
|
||||
AM_RANGE(0xa000, 0xa1ff) AM_WRITE(tp84_filter_w)
|
||||
AM_RANGE(0xc000, 0xc000) AM_WRITENOP
|
||||
AM_RANGE(0xc001, 0xc001) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0xc003, 0xc003) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0xc004, 0xc004) AM_DEVWRITE_LEGACY("sn3", sn76496_w)
|
||||
AM_RANGE(0xc001, 0xc001) AM_DEVWRITE("y2404_1", y2404_new_device, write)
|
||||
AM_RANGE(0xc003, 0xc003) AM_DEVWRITE("y2404_2", y2404_new_device, write)
|
||||
AM_RANGE(0xc004, 0xc004) AM_DEVWRITE("y2404_3", y2404_new_device, write)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -288,6 +288,23 @@ static INTERRUPT_GEN( sub_vblank_irq )
|
||||
}
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( tp84, tp84_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -324,14 +341,17 @@ static MACHINE_CONFIG_START( tp84, tp84_state )
|
||||
/* audio hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", Y2404, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ADD("y2404_1", Y2404_NEW, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter1", 0.75)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", Y2404, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ADD("y2404_2", Y2404_NEW, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter2", 0.75)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn3", Y2404, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ADD("y2404_3", Y2404_NEW, XTAL_14_31818MHz/8) /* verified on pcb */
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter3", 0.75)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("filter1", FILTER_RC, 0)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
Loading…
Reference in New Issue
Block a user