mirror of
https://github.com/holub/mame
synced 2025-04-23 08:49:55 +03:00
Continuing new device implementation for SN76496 and clones - sbugger.c, finalizr.c, pingpong.c, galaxold.c, spaceg.c, sg1000a.c, zaxxon.c, retofinv.c, senjyo.c, mrjong.c, sprcros2.c [Osso]
This commit is contained in:
parent
f3d21ad0c5
commit
ca6ce00018
@ -106,7 +106,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state )
|
||||
AM_RANGE(0x0813, 0x0813) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0x0818, 0x0818) AM_WRITE(watchdog_reset_w)
|
||||
AM_RANGE(0x0819, 0x0819) AM_WRITE(finalizr_coin_w)
|
||||
AM_RANGE(0x081a, 0x081a) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* This address triggers the SN chip to read the data port. */
|
||||
AM_RANGE(0x081a, 0x081a) AM_DEVWRITE("snsnd", sn76489a_new_device, write) /* This address triggers the SN chip to read the data port. */
|
||||
AM_RANGE(0x081b, 0x081b) AM_WRITENOP /* Loads the snd command into the snd latch */
|
||||
AM_RANGE(0x081c, 0x081c) AM_WRITE(finalizr_i8039_irq_w) /* custom sound chip */
|
||||
AM_RANGE(0x081d, 0x081d) AM_WRITE(soundlatch_byte_w) /* custom sound chip */
|
||||
@ -235,6 +235,22 @@ static GFXDECODE_START( finalizr )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_START( finalizr )
|
||||
{
|
||||
@ -291,8 +307,9 @@ static MACHINE_CONFIG_START( finalizr, finalizr_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("snsnd", SN76489A, XTAL_18_432MHz/12)
|
||||
MCFG_SOUND_ADD("snsnd", SN76489A_NEW, XTAL_18_432MHz/12)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_DAC_ADD("dac")
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
|
||||
|
@ -886,9 +886,9 @@ static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8, galaxold_state )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( racknrol_io, AS_IO, 8, galaxold_state )
|
||||
AM_RANGE(0x1d, 0x1d) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x1e, 0x1e) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0x1f, 0x1f) AM_DEVWRITE_LEGACY("sn3", sn76496_w)
|
||||
AM_RANGE(0x1d, 0x1d) AM_DEVWRITE("sn1", sn76496_new_device, write)
|
||||
AM_RANGE(0x1e, 0x1e) AM_DEVWRITE("sn2", sn76496_new_device, write)
|
||||
AM_RANGE(0x1f, 0x1f) AM_DEVWRITE("sn3", sn76496_new_device, write)
|
||||
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_SHARE("racknrol_tbank")
|
||||
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
|
||||
ADDRESS_MAP_END
|
||||
@ -910,7 +910,7 @@ READ8_MEMBER(galaxold_state::hexpoola_data_port_r)
|
||||
static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8, galaxold_state )
|
||||
AM_RANGE(0x00, 0x00) AM_READNOP
|
||||
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_SHARE("racknrol_tbank")
|
||||
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE_LEGACY("snsnd", sn76496_w)
|
||||
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE("snsnd", sn76496_new_device, write)
|
||||
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -938,7 +938,7 @@ READ8_MEMBER(galaxold_state::bullsdrtg_data_port_r)
|
||||
static ADDRESS_MAP_START( bullsdrtg_io_map, AS_IO, 8, galaxold_state )
|
||||
AM_RANGE(0x00, 0x00) AM_READNOP
|
||||
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_SHARE("racknrol_tbank")
|
||||
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrtg_data_port_r) AM_DEVWRITE_LEGACY("snsnd", sn76496_w)
|
||||
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrtg_data_port_r) AM_DEVWRITE("snsnd", sn76496_new_device, write)
|
||||
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -2139,6 +2139,24 @@ static GFXDECODE_START( _4in1 )
|
||||
GFXDECODE_ENTRY( "gfx1", 0x4000, _4in1_spritelayout, 0, 8 )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static const ay8910_interface bongo_ay8910_interface =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT,
|
||||
@ -2429,14 +2447,17 @@ static MACHINE_CONFIG_START( racknrol, galaxold_state )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("sn1", SN76496, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ADD("sn1", SN76496_NEW, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ADD("sn2", SN76496_NEW, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn3", SN76496, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ADD("sn3", SN76496_NEW, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( ckongg, galaxian )
|
||||
@ -2484,8 +2505,9 @@ static MACHINE_CONFIG_START( hexpoola, galaxold_state )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("snsnd", SN76496, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ADD("snsnd", SN76496_NEW, PIXEL_CLOCK/2)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( bullsdrtg, hexpoola )
|
||||
|
@ -146,6 +146,24 @@ static const tms9902_interface tms9902_uart2_ic5_params =
|
||||
#define SOUND_CLOCK 2000000
|
||||
#define DUART_CLOCK 2000000
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( jpmmps, jpmmps_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -164,8 +182,9 @@ static MACHINE_CONFIG_START( jpmmps, jpmmps_state )
|
||||
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn", SN76489, SOUND_CLOCK)
|
||||
MCFG_SOUND_ADD("sn", SN76489_NEW, SOUND_CLOCK)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -78,8 +78,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( mrjong_io_map, AS_IO, 8, mrjong_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") AM_WRITE(mrjong_flipscreen_w)
|
||||
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW") AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489_new_device, write)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW") AM_DEVWRITE("sn2", sn76489_new_device, write)
|
||||
AM_RANGE(0x03, 0x03) AM_READ(io_0x03_r) // Unknown
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -172,6 +172,23 @@ static GFXDECODE_START( mrjong )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -203,11 +220,13 @@ static MACHINE_CONFIG_START( mrjong, mrjong_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", SN76489, 15468000/6)
|
||||
MCFG_SOUND_ADD("sn1", SN76489_NEW, 15468000/6)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76489, 15468000/6)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76489_NEW, 15468000/6)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -98,7 +98,7 @@ static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8, pingpong_state )
|
||||
AM_RANGE(0xa980, 0xa980) AM_READ_PORT("DSW2")
|
||||
AM_RANGE(0xa000, 0xa000) AM_WRITE(coin_w) /* coin counters + irq enables */
|
||||
AM_RANGE(0xa200, 0xa200) AM_WRITENOP /* SN76496 data latch */
|
||||
AM_RANGE(0xa400, 0xa400) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* trigger read */
|
||||
AM_RANGE(0xa400, 0xa400) AM_DEVWRITE("snsnd", sn76496_new_device, write) /* trigger read */
|
||||
AM_RANGE(0xa600, 0xa600) AM_WRITE(watchdog_reset_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -119,7 +119,7 @@ static ADDRESS_MAP_START( merlinmm_map, AS_PROGRAM, 8, pingpong_state )
|
||||
AM_RANGE(0xa100, 0xa100) AM_READ_PORT("IN2")
|
||||
AM_RANGE(0xa180, 0xa180) AM_READ_PORT("IN3")
|
||||
AM_RANGE(0xa200, 0xa200) AM_WRITENOP /* SN76496 data latch */
|
||||
AM_RANGE(0xa400, 0xa400) AM_DEVWRITE_LEGACY("snsnd", sn76496_w) /* trigger read */
|
||||
AM_RANGE(0xa400, 0xa400) AM_DEVWRITE("snsnd", sn76496_new_device, write) /* trigger read */
|
||||
AM_RANGE(0xa600, 0xa600) AM_WRITE(watchdog_reset_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -442,6 +442,22 @@ static GFXDECODE_START( pingpong )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( pingpong, pingpong_state )
|
||||
|
||||
@ -467,8 +483,9 @@ static MACHINE_CONFIG_START( pingpong, pingpong_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("snsnd", SN76496, 18432000/8)
|
||||
MCFG_SOUND_ADD("snsnd", SN76496_NEW, 18432000/8)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* too fast! */
|
||||
|
@ -137,8 +137,8 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, retofinv_state )
|
||||
AM_RANGE(0x2000, 0x27ff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x6000, 0x6000) AM_WRITE(cpu2_m6000_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_new_device, write)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn2", sn76496_new_device, write)
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM /* space for diagnostic ROM */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -344,6 +344,24 @@ static INTERRUPT_GEN( sub_vblank_irq )
|
||||
device_set_input_line(device, 0, ASSERT_LINE);
|
||||
}
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( retofinv, retofinv_state )
|
||||
|
||||
/* basic machine hardware */
|
||||
@ -381,11 +399,13 @@ static MACHINE_CONFIG_START( retofinv, retofinv_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", SN76496, 18432000/6)
|
||||
MCFG_SOUND_ADD("sn1", SN76496_NEW, 18432000/6)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496, 18432000/6)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496_NEW, 18432000/6)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -116,8 +116,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sbugger_io_map, AS_IO, 8, sbugger_state )
|
||||
AM_RANGE(0xe0, 0xe7) AM_DEVREADWRITE("i8156", i8155_device, io_r, io_w)
|
||||
AM_RANGE(0xe8, 0xe8) AM_DEVWRITE_LEGACY("sn76489.1", sn76496_w)
|
||||
AM_RANGE(0xe9, 0xe9) AM_DEVWRITE_LEGACY("sn76489.2", sn76496_w)
|
||||
AM_RANGE(0xe8, 0xe8) AM_DEVWRITE("sn76489.1", sn76489_new_device, write)
|
||||
AM_RANGE(0xe9, 0xe9) AM_DEVWRITE("sn76489.2", sn76489_new_device, write)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -223,6 +223,23 @@ static I8156_INTERFACE(i8156_intf)
|
||||
DEVCB_DRIVER_LINE_MEMBER(sbugger_state,sbugger_interrupt)
|
||||
};
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( sbugger, sbugger_state )
|
||||
|
||||
MCFG_CPU_ADD("maincpu", I8085A, 6000000) /* 3.00 MHz??? */
|
||||
@ -247,12 +264,13 @@ static MACHINE_CONFIG_START( sbugger, sbugger_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn76489.1", SN76489, 3000000)
|
||||
MCFG_SOUND_ADD("sn76489.1", SN76489_NEW, 3000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("sn76489.2", SN76489, 3000000)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn76489.2", SN76489_NEW, 3000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
@ -162,9 +162,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8, senjyo_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x43ff) AM_RAM
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("sn3", sn76496_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_new_device, write)
|
||||
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("sn2", sn76496_new_device, write)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn3", sn76496_new_device, write)
|
||||
AM_RANGE(0xd000, 0xd000) AM_WRITE(senjyo_volume_w)
|
||||
#if 0
|
||||
AM_RANGE(0xe000, 0xe000) AM_WRITE_LEGACY(unknown)
|
||||
@ -230,9 +230,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( starforb_sound_map, AS_PROGRAM, 8, senjyo_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x43ff) AM_RAM
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("sn3", sn76496_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_new_device, write)
|
||||
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("sn2", sn76496_new_device, write)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn3", sn76496_new_device, write)
|
||||
AM_RANGE(0xd000, 0xd000) AM_WRITE(senjyo_volume_w)
|
||||
#if 0
|
||||
AM_RANGE(0xe000, 0xe000) AM_WRITE_LEGACY(unknown)
|
||||
@ -551,6 +551,22 @@ static GFXDECODE_START( senjyo )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( senjyo, senjyo_state )
|
||||
|
||||
@ -585,14 +601,17 @@ static MACHINE_CONFIG_START( senjyo, senjyo_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", SN76496, 2000000)
|
||||
MCFG_SOUND_ADD("sn1", SN76496_NEW, 2000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496, 2000000)
|
||||
MCFG_SOUND_ADD("sn2", SN76496_NEW, 2000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn3", SN76496, 2000000)
|
||||
MCFG_SOUND_ADD("sn3", SN76496_NEW, 2000000)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_DAC_ADD("dac")
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.05)
|
||||
|
@ -146,7 +146,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( io_map, AS_IO, 8, sg1000a_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE_LEGACY("snsnd", sn76496_w)
|
||||
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("snsnd", sn76489_new_device, write)
|
||||
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
|
||||
AM_RANGE(0xbf, 0xbf) AM_DEVREADWRITE("tms9928a", tms9928a_device, register_read, register_write)
|
||||
AM_RANGE(0xdc, 0xdf) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
|
||||
@ -265,6 +265,24 @@ static I8255_INTERFACE( ppi8255_intf )
|
||||
DEVCB_DRIVER_MEMBER(sg1000a_state,sg1000a_coin_counter_w)
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine drivers
|
||||
@ -287,8 +305,9 @@ static MACHINE_CONFIG_START( sg1000a, sg1000a_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("snsnd", SN76489, XTAL_3_579545MHz)
|
||||
MCFG_SOUND_ADD("snsnd", SN76489_NEW, XTAL_3_579545MHz)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/*************************************
|
||||
|
@ -399,6 +399,23 @@ static INPUT_PORTS_START( spaceg )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
//static const sn76496_config psg_intf =
|
||||
//{
|
||||
// DEVCB_NULL
|
||||
//};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine config
|
||||
@ -426,14 +443,17 @@ static MACHINE_CONFIG_START( spaceg, spaceg_state )
|
||||
/* sound hardware */
|
||||
// MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
// MCFG_SOUND_ADD("sn1", SN76496, 15468480/4)
|
||||
// MCFG_SOUND_ADD("sn1", SN76496_NEW, 15468480/4)
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
// MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
// MCFG_SOUND_ADD("sn2", SN76496, 15468480/4)
|
||||
// MCFG_SOUND_ADD("sn2", SN76496_NEW, 15468480/4)
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
// MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
// MCFG_SOUND_ADD("sn3", SN76496, 15468480/4)
|
||||
// MCFG_SOUND_ADD("sn3", SN76496_NEW, 15468480/4)
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
// MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
// MCFG_DAC_ADD("dac")
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
@ -112,9 +112,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sprcros2_master_io_map, AS_IO, 8, sprcros2_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE_LEGACY("sn1", sn76496_w)
|
||||
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE_LEGACY("sn2", sn76496_w)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("EXTRA") AM_DEVWRITE_LEGACY("sn3", sn76496_w)
|
||||
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489_new_device, write)
|
||||
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76489_new_device, write)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("EXTRA") AM_DEVWRITE("sn3", sn76489_new_device, write)
|
||||
AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0x05, 0x05) AM_READ_PORT("DSW2")
|
||||
AM_RANGE(0x07, 0x07) AM_WRITE(sprcros2_m_port7_w)
|
||||
@ -228,6 +228,23 @@ static GFXDECODE_START( sprcros2 )
|
||||
GFXDECODE_ENTRY( "gfx3", 0, sprcros2_fglayout, 512, 64 )
|
||||
GFXDECODE_END
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
static TIMER_DEVICE_CALLBACK( sprcros2_m_interrupt )
|
||||
{
|
||||
sprcros2_state *state = timer.machine().driver_data<sprcros2_state>();
|
||||
@ -293,14 +310,17 @@ static MACHINE_CONFIG_START( sprcros2, sprcros2_state )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", SN76489, 10000000/4)
|
||||
MCFG_SOUND_ADD("sn1", SN76489_NEW, 10000000/4)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76489, 10000000/4)
|
||||
MCFG_SOUND_ADD("sn2", SN76489_NEW, 10000000/4)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn3", SN76489, 10000000/4)
|
||||
MCFG_SOUND_ADD("sn3", SN76489_NEW, 10000000/4)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
ROM_START( sprcros2 )
|
||||
|
@ -498,9 +498,9 @@ ADDRESS_MAP_END
|
||||
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(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVWRITE("sn1", sn76496_new_device, write)
|
||||
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)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_DEVWRITE("sn2", sn76496_new_device, write)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -935,6 +935,23 @@ static GFXDECODE_START( zaxxon )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Sound interface
|
||||
*
|
||||
*************************************/
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
// sn76496_config psg_intf
|
||||
//-------------------------------------------------
|
||||
|
||||
static const sn76496_config psg_intf =
|
||||
{
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
* Machine driver
|
||||
@ -1024,11 +1041,13 @@ static MACHINE_CONFIG_DERIVED( congo, root )
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("sn1", SN76496, SOUND_CLOCK)
|
||||
MCFG_SOUND_ADD("sn1", SN76496_NEW, SOUND_CLOCK)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496, SOUND_CLOCK/4)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_SOUND_ADD("sn2", SN76496_NEW, SOUND_CLOCK/4)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MCFG_SOUND_CONFIG(psg_intf)
|
||||
|
||||
MCFG_FRAGMENT_ADD(congo_samples)
|
||||
MACHINE_CONFIG_END
|
||||
|
Loading…
Reference in New Issue
Block a user