mirror of
https://github.com/holub/mame
synced 2025-10-05 00:38:58 +03:00
modernised the AY8910 [smf]
This commit is contained in:
parent
013e759424
commit
1c415f340a
@ -194,21 +194,6 @@ struct ay8910_context
|
||||
devcb_resolved_write8 portBwrite;
|
||||
};
|
||||
|
||||
INLINE ay8910_context *get_safe_token(device_t *device)
|
||||
{
|
||||
assert(device != NULL);
|
||||
assert(device->type() == AY8910 ||
|
||||
device->type() == AY8912 ||
|
||||
device->type() == AY8913 ||
|
||||
device->type() == AY8914 ||
|
||||
device->type() == AY8930 ||
|
||||
device->type() == YM2149 ||
|
||||
device->type() == YM3439 ||
|
||||
device->type() == YMZ284 ||
|
||||
device->type() == YMZ294);
|
||||
return (ay8910_context *)downcast<ay8910_device *>(device)->token();
|
||||
}
|
||||
|
||||
|
||||
/*************************************
|
||||
*
|
||||
@ -843,9 +828,9 @@ void ay8910_reset_ym(void *chip)
|
||||
#endif
|
||||
}
|
||||
|
||||
void ay8910_set_volume(device_t *device,int channel,int volume)
|
||||
void ay8910_set_volume(void *chip,int channel,int volume)
|
||||
{
|
||||
ay8910_context *psg = get_safe_token(device);
|
||||
ay8910_context *psg = (ay8910_context *)chip;
|
||||
int ch;
|
||||
|
||||
for (ch = 0; ch < psg->streams; ch++)
|
||||
@ -939,38 +924,67 @@ int ay8910_read_ym(void *chip)
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static DEVICE_START( ay8910 )
|
||||
void ay8910_device::set_volume(int channel,int volume)
|
||||
{
|
||||
static const ay8910_interface generic_ay8910 =
|
||||
ay8910_set_volume(m_psg, channel, volume);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_start()
|
||||
{
|
||||
m_ay8910_config = (const ay8910_interface *) static_config();
|
||||
|
||||
static const ay8910_interface default_ay8910_config =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT,
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
};
|
||||
const ay8910_interface *intf = (device->static_config() ? (const ay8910_interface *)device->static_config() : &generic_ay8910);
|
||||
ay8910_start_ym(get_safe_token(device), AY8910, device, device->clock(), intf);
|
||||
|
||||
const ay8910_interface *ay8910_config = m_ay8910_config != NULL ? m_ay8910_config : &default_ay8910_config;
|
||||
|
||||
m_psg = ay8910_start_ym(NULL, type(), this, clock(), ay8910_config);
|
||||
}
|
||||
|
||||
static DEVICE_START( ym2149 )
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void ym2149_device::device_start()
|
||||
{
|
||||
static const ay8910_interface generic_ay8910 =
|
||||
m_ay8910_config = (const ay8910_interface *) static_config();
|
||||
|
||||
static const ay8910_interface default_ay8910_config =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT,
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
};
|
||||
const ay8910_interface *intf = (device->static_config() ? (const ay8910_interface *)device->static_config() : &generic_ay8910);
|
||||
ay8910_start_ym(get_safe_token(device), YM2149, device, device->clock(), intf);
|
||||
|
||||
const ay8910_interface *ay8910_config = m_ay8910_config != NULL ? m_ay8910_config : &default_ay8910_config;
|
||||
|
||||
m_psg = ay8910_start_ym(NULL, type(), this, clock(), ay8910_config);
|
||||
}
|
||||
|
||||
static DEVICE_STOP( ay8910 )
|
||||
//-------------------------------------------------
|
||||
// device_stop - device-specific stop
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_stop()
|
||||
{
|
||||
ay8910_stop_ym(get_safe_token(device));
|
||||
ay8910_stop_ym(m_psg);
|
||||
}
|
||||
|
||||
static DEVICE_RESET( ay8910 )
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_reset()
|
||||
{
|
||||
ay8910_reset_ym(get_safe_token(device));
|
||||
ay8910_reset_ym(m_psg);
|
||||
}
|
||||
|
||||
/*************************************
|
||||
@ -979,59 +993,59 @@ static DEVICE_RESET( ay8910 )
|
||||
*
|
||||
*************************************/
|
||||
|
||||
READ8_DEVICE_HANDLER( ay8910_r )
|
||||
READ8_MEMBER( ay8910_device::data_r )
|
||||
{
|
||||
return ay8910_read_ym(get_safe_token(device));
|
||||
return ay8910_read_ym(m_psg);
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8910_data_address_w )
|
||||
WRITE8_MEMBER( ay8910_device::data_address_w )
|
||||
{
|
||||
/* note that directly connecting BC1 to A0 puts data on 0 and address on 1 */
|
||||
ay8910_write_ym(get_safe_token(device), ~offset & 1, data);
|
||||
ay8910_write_ym(m_psg, ~offset & 1, data);
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8910_address_data_w )
|
||||
WRITE8_MEMBER( ay8910_device::address_data_w )
|
||||
{
|
||||
ay8910_write_ym(get_safe_token(device), offset & 1, data);
|
||||
ay8910_write_ym(m_psg, offset & 1, data);
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8910_address_w )
|
||||
WRITE8_MEMBER( ay8910_device::address_w )
|
||||
{
|
||||
#if ENABLE_REGISTER_TEST
|
||||
return;
|
||||
#else
|
||||
ay8910_data_address_w(device, space, 1, data);
|
||||
data_address_w(space, 1, data);
|
||||
#endif
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8910_data_w )
|
||||
WRITE8_MEMBER( ay8910_device::data_w )
|
||||
{
|
||||
#if ENABLE_REGISTER_TEST
|
||||
return;
|
||||
#else
|
||||
ay8910_data_address_w(device, space, 0, data);
|
||||
data_address_w(space, 0, data);
|
||||
#endif
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8910_reset_w )
|
||||
WRITE8_MEMBER( ay8910_device::reset_w )
|
||||
{
|
||||
ay8910_reset_ym(get_safe_token(device));
|
||||
ay8910_reset_ym(m_psg);
|
||||
}
|
||||
|
||||
static const int mapping8914to8910[16] = { 0, 2, 4, 11, 1, 3, 5, 12, 7, 6, 13, 8, 9, 10, 14, 15 };
|
||||
|
||||
READ8_DEVICE_HANDLER( ay8914_r )
|
||||
READ8_MEMBER( ay8914_device::read )
|
||||
{
|
||||
UINT16 rv;
|
||||
ay8910_address_w(device, space, 0, mapping8914to8910[offset & 0xff]);
|
||||
rv = (UINT16)ay8910_r(device, space, 0);
|
||||
address_w(space, 0, mapping8914to8910[offset & 0xf]);
|
||||
rv = (UINT16) data_r(space, 0);
|
||||
return rv;
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( ay8914_w )
|
||||
WRITE8_MEMBER( ay8914_device::write )
|
||||
{
|
||||
ay8910_address_w(device, space, 0, mapping8914to8910[offset & 0xff]);
|
||||
ay8910_data_w(device, space, 0, data & 0xff);
|
||||
address_w(space, 0, mapping8914to8910[offset & 0xf]);
|
||||
data_w(space, 0, data & 0xff);
|
||||
}
|
||||
|
||||
|
||||
@ -1042,13 +1056,11 @@ ay8910_device::ay8910_device(const machine_config &mconfig, const char *tag, dev
|
||||
: device_t(mconfig, AY8910, "AY-3-8910A", tag, owner, clock),
|
||||
device_sound_interface(mconfig, *this)
|
||||
{
|
||||
m_token = global_alloc_clear(ay8910_context);
|
||||
}
|
||||
ay8910_device::ay8910_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, type, name, tag, owner, clock),
|
||||
device_sound_interface(mconfig, *this)
|
||||
{
|
||||
m_token = global_alloc_clear(ay8910_context);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -1061,32 +1073,6 @@ void ay8910_device::device_config_complete()
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_start()
|
||||
{
|
||||
DEVICE_START_NAME( ay8910 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_reset - device-specific reset
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_reset()
|
||||
{
|
||||
DEVICE_RESET_NAME( ay8910 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_stop - device-specific stop
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8910_device::device_stop()
|
||||
{
|
||||
DEVICE_STOP_NAME( ay8910 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
@ -1106,16 +1092,6 @@ ay8912_device::ay8912_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8912_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type AY8913 = &device_creator<ay8913_device>;
|
||||
|
||||
@ -1124,16 +1100,6 @@ ay8913_device::ay8913_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8913_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type AY8914 = &device_creator<ay8914_device>;
|
||||
|
||||
@ -1142,16 +1108,6 @@ ay8914_device::ay8914_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8914_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type AY8930 = &device_creator<ay8930_device>;
|
||||
|
||||
@ -1160,16 +1116,6 @@ ay8930_device::ay8930_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ay8930_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type YM2149 = &device_creator<ym2149_device>;
|
||||
|
||||
@ -1182,25 +1128,6 @@ ym2149_device::ym2149_device(const machine_config &mconfig, device_type type, co
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void ym2149_device::device_start()
|
||||
{
|
||||
DEVICE_START_NAME( ym2149 )(this);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ym2149_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type YM3439 = &device_creator<ym3439_device>;
|
||||
|
||||
@ -1209,16 +1136,6 @@ ym3439_device::ym3439_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ym3439_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type YMZ284 = &device_creator<ymz284_device>;
|
||||
|
||||
@ -1227,16 +1144,6 @@ ymz284_device::ymz284_device(const machine_config &mconfig, const char *tag, dev
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ymz284_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
||||
|
||||
const device_type YMZ294 = &device_creator<ymz294_device>;
|
||||
|
||||
@ -1244,13 +1151,3 @@ ymz294_device::ymz294_device(const machine_config &mconfig, const char *tag, dev
|
||||
: ym2149_device(mconfig, YMZ294, "YMZ294", tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// sound_stream_update - handle a stream update
|
||||
//-------------------------------------------------
|
||||
|
||||
void ymz294_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
|
||||
{
|
||||
// should never get here
|
||||
fatalerror("sound_stream_update called; not applicable to legacy sound devices\n");
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
#ifndef __AY8910_H__
|
||||
#define __AY8910_H__
|
||||
|
||||
#include "devlegcy.h"
|
||||
#include "emu.h"
|
||||
|
||||
/*
|
||||
AY-3-8910A: 2 I/O ports
|
||||
@ -74,9 +74,6 @@ YMZ294: 0 I/O port
|
||||
#define YM2149_PIN26_LOW (0x10)
|
||||
|
||||
|
||||
#define AY8910_INTERFACE(name) \
|
||||
const ay8910_interface (name) =
|
||||
|
||||
struct ay8910_interface
|
||||
{
|
||||
int flags; /* Flags */
|
||||
@ -87,27 +84,6 @@ struct ay8910_interface
|
||||
devcb_write8 portBwrite;
|
||||
};
|
||||
|
||||
|
||||
void ay8910_set_volume(device_t *device,int channel,int volume);
|
||||
|
||||
DECLARE_READ8_DEVICE_HANDLER( ay8910_r );
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8910_address_w );
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8910_data_w );
|
||||
|
||||
/* /RES */
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8910_reset_w );
|
||||
|
||||
/* use this when BC1 == A0; here, BC1=0 selects 'data' and BC1=1 selects 'latch address' */
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8910_data_address_w );
|
||||
|
||||
/* use this when BC1 == !A0; here, BC1=0 selects 'latch address' and BC1=1 selects 'data' */
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8910_address_data_w );
|
||||
|
||||
/* AY8914 handlers needed due to different register map */
|
||||
DECLARE_READ8_DEVICE_HANDLER( ay8914_r );
|
||||
DECLARE_WRITE8_DEVICE_HANDLER( ay8914_w );
|
||||
|
||||
|
||||
/*********** An interface for SSG of YM2203 ***********/
|
||||
|
||||
void *ay8910_start_ym(void *infoptr, device_type chip_type, device_t *device, int clock, const ay8910_interface *intf);
|
||||
@ -115,6 +91,7 @@ void *ay8910_start_ym(void *infoptr, device_type chip_type, device_t *device, in
|
||||
void ay8910_stop_ym(void *chip);
|
||||
void ay8910_reset_ym(void *chip);
|
||||
void ay8910_set_clock_ym(void *chip, int clock);
|
||||
void ay8910_set_volume(void *chip ,int channel, int volume);
|
||||
void ay8910_write_ym(void *chip, int addr, int data);
|
||||
int ay8910_read_ym(void *chip);
|
||||
|
||||
@ -124,10 +101,22 @@ class ay8910_device : public device_t,
|
||||
public:
|
||||
ay8910_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
ay8910_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock);
|
||||
~ay8910_device() { global_free(m_token); }
|
||||
|
||||
// access to legacy token
|
||||
void *token() const { assert(m_token != NULL); return m_token; }
|
||||
DECLARE_READ8_MEMBER( data_r );
|
||||
DECLARE_WRITE8_MEMBER( address_w );
|
||||
DECLARE_WRITE8_MEMBER( data_w );
|
||||
|
||||
/* /RES */
|
||||
DECLARE_WRITE8_MEMBER( reset_w );
|
||||
|
||||
/* use this when BC1 == A0; here, BC1=0 selects 'data' and BC1=1 selects 'latch address' */
|
||||
DECLARE_WRITE8_MEMBER( data_address_w );
|
||||
|
||||
/* use this when BC1 == !A0; here, BC1=0 selects 'latch address' and BC1=1 selects 'data' */
|
||||
DECLARE_WRITE8_MEMBER( address_data_w );
|
||||
|
||||
void set_volume(int channel,int volume);
|
||||
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_config_complete();
|
||||
@ -137,9 +126,10 @@ protected:
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
private:
|
||||
|
||||
// internal state
|
||||
void *m_token;
|
||||
const ay8910_interface *m_ay8910_config;
|
||||
void *m_psg;
|
||||
};
|
||||
|
||||
extern const device_type AY8910;
|
||||
@ -148,9 +138,6 @@ class ay8912_device : public ay8910_device
|
||||
{
|
||||
public:
|
||||
ay8912_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type AY8912;
|
||||
@ -159,9 +146,6 @@ class ay8913_device : public ay8910_device
|
||||
{
|
||||
public:
|
||||
ay8913_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type AY8913;
|
||||
@ -171,8 +155,9 @@ class ay8914_device : public ay8910_device
|
||||
public:
|
||||
ay8914_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
/* AY8914 handlers needed due to different register map */
|
||||
DECLARE_READ8_MEMBER( read );
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
};
|
||||
|
||||
extern const device_type AY8914;
|
||||
@ -181,9 +166,6 @@ class ay8930_device : public ay8910_device
|
||||
{
|
||||
public:
|
||||
ay8930_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type AY8930;
|
||||
@ -196,9 +178,6 @@ public:
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_start();
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type YM2149;
|
||||
@ -207,9 +186,6 @@ class ym3439_device : public ym2149_device
|
||||
{
|
||||
public:
|
||||
ym3439_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type YM3439;
|
||||
@ -218,9 +194,6 @@ class ymz284_device : public ym2149_device
|
||||
{
|
||||
public:
|
||||
ymz284_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type YMZ284;
|
||||
@ -229,9 +202,6 @@ class ymz294_device : public ym2149_device
|
||||
{
|
||||
public:
|
||||
ymz294_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
// sound stream update overrides
|
||||
virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples);
|
||||
};
|
||||
|
||||
extern const device_type YMZ294;
|
||||
|
@ -255,6 +255,7 @@ static WRITE8_HANDLER( carnival_music_port_1_w )
|
||||
|
||||
static WRITE8_DEVICE_HANDLER( carnival_music_port_2_w )
|
||||
{
|
||||
ay8910_device *ay8910 = (ay8910_device *) device;
|
||||
static int psgSelect = 0;
|
||||
int newSelect;
|
||||
|
||||
@ -274,11 +275,11 @@ static WRITE8_DEVICE_HANDLER( carnival_music_port_2_w )
|
||||
break;
|
||||
|
||||
case PSG_BC_WRITE:
|
||||
ay8910_data_w( device, space, 0, psgData );
|
||||
ay8910->data_w(space, 0, psgData);
|
||||
break;
|
||||
|
||||
case PSG_BC_LATCH_ADDRESS:
|
||||
ay8910_address_w( device, space, 0, psgData );
|
||||
ay8910->address_w(space, 0, psgData);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1417,12 +1417,12 @@ static SOUND_RESET( demon_sound )
|
||||
static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8, driver_device )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x3000, 0x33ff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x4002, 0x4003) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0x5000, 0x5001) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x5002, 0x5003) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVREAD_LEGACY("ay3", ay8910_r)
|
||||
AM_RANGE(0x6002, 0x6003) AM_DEVWRITE_LEGACY("ay3", ay8910_data_address_w)
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x4002, 0x4003) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x5000, 0x5001) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
AM_RANGE(0x5002, 0x5003) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVREAD("ay3", ay8910_device, data_r)
|
||||
AM_RANGE(0x6002, 0x6003) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_WRITENOP /* watchdog? */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -814,9 +814,9 @@ WRITE8_MEMBER( gottlieb_sound_r2_device::speech_control_w )
|
||||
// bit 3 selects which of the two 8913 to enable
|
||||
// bit 4 goes to the 8913 BC1 pin
|
||||
if ((data & 0x08) != 0)
|
||||
ay8910_data_address_w(m_ay1, space, data >> 4, m_psg_latch);
|
||||
m_ay1->data_address_w(space, data >> 4, m_psg_latch);
|
||||
else
|
||||
ay8910_data_address_w(m_ay2, space, data >> 4, m_psg_latch);
|
||||
m_ay2->data_address_w(space, data >> 4, m_psg_latch);
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -828,8 +828,8 @@ WRITE8_MEMBER( gottlieb_sound_r2_device::speech_control_w )
|
||||
else
|
||||
{
|
||||
ay8913_device *ay = (data & 0x08) ? m_ay1 : m_ay2;
|
||||
ay8910_address_w(ay, space, 0, m_psg_latch);
|
||||
ay8910_data_w(ay, space, 0, m_psg_data_latch);
|
||||
ay->address_w(space, 0, m_psg_latch);
|
||||
ay->data_w(space, 0, m_psg_data_latch);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -16,8 +16,8 @@ struct irem_audio_state
|
||||
UINT8 m_port1;
|
||||
UINT8 m_port2;
|
||||
|
||||
device_t *m_ay1;
|
||||
device_t *m_ay2;
|
||||
ay8910_device *m_ay1;
|
||||
ay8910_device *m_ay2;
|
||||
device_t *m_adpcm1;
|
||||
device_t *m_adpcm2;
|
||||
};
|
||||
@ -45,8 +45,8 @@ static DEVICE_START( irem_audio )
|
||||
|
||||
state->m_adpcm1 = machine.device("msm1");
|
||||
state->m_adpcm2 = machine.device("msm2");
|
||||
state->m_ay1 = machine.device("ay1");
|
||||
state->m_ay2 = machine.device("ay2");
|
||||
state->m_ay1 = machine.device<ay8910_device>("ay1");
|
||||
state->m_ay2 = machine.device<ay8910_device>("ay2");
|
||||
|
||||
device->save_item(NAME(state->m_port1));
|
||||
device->save_item(NAME(state->m_port2));
|
||||
@ -98,17 +98,17 @@ static WRITE8_DEVICE_HANDLER( m6803_port2_w )
|
||||
{
|
||||
/* PSG 0 or 1? */
|
||||
if (state->m_port2 & 0x08)
|
||||
ay8910_address_w(state->m_ay1, space, 0, state->m_port1);
|
||||
state->m_ay1->address_w(space, 0, state->m_port1);
|
||||
if (state->m_port2 & 0x10)
|
||||
ay8910_address_w(state->m_ay2, space, 0, state->m_port1);
|
||||
state->m_ay2->address_w(space, 0, state->m_port1);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* PSG 0 or 1? */
|
||||
if (state->m_port2 & 0x08)
|
||||
ay8910_data_w(state->m_ay1, space, 0, state->m_port1);
|
||||
state->m_ay1->data_w(space, 0, state->m_port1);
|
||||
if (state->m_port2 & 0x10)
|
||||
ay8910_data_w(state->m_ay2, space, 0, state->m_port1);
|
||||
state->m_ay2->data_w(space, 0, state->m_port1);
|
||||
}
|
||||
}
|
||||
state->m_port2 = data;
|
||||
@ -128,9 +128,9 @@ static READ8_DEVICE_HANDLER( m6803_port1_r )
|
||||
|
||||
/* PSG 0 or 1? */
|
||||
if (state->m_port2 & 0x08)
|
||||
return ay8910_r(state->m_ay1, space, 0);
|
||||
return state->m_ay1->data_r(space, 0);
|
||||
if (state->m_port2 & 0x10)
|
||||
return ay8910_r(state->m_ay2, space, 0);
|
||||
return state->m_ay2->data_r(space, 0);
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
|
@ -601,8 +601,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( masao_sound_map, AS_PROGRAM, 8, mario_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_ROM
|
||||
AM_RANGE(0x2000, 0x23ff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/*************************************
|
||||
|
@ -416,12 +416,12 @@ static ADDRESS_MAP_START( ssio_map, AS_PROGRAM, 8, midway_ssio_device )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x0c00) AM_RAM
|
||||
AM_RANGE(0x9000, 0x9003) AM_MIRROR(0x0ffc) AM_READ(data_r)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x0ffc) AM_DEVWRITE_LEGACY("ay0", ay8910_address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x0ffc) AM_DEVREAD_LEGACY("ay0", ay8910_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x0ffc) AM_DEVWRITE_LEGACY("ay0", ay8910_data_w)
|
||||
AM_RANGE(0xb000, 0xb000) AM_MIRROR(0x0ffc) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0xb001, 0xb001) AM_MIRROR(0x0ffc) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0xb002, 0xb002) AM_MIRROR(0x0ffc) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x0ffc) AM_DEVWRITE("ay0", ay8910_device, address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x0ffc) AM_DEVREAD("ay0", ay8910_device, data_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x0ffc) AM_DEVWRITE("ay0", ay8910_device, data_w)
|
||||
AM_RANGE(0xb000, 0xb000) AM_MIRROR(0x0ffc) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0xb001, 0xb001) AM_MIRROR(0x0ffc) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0xb002, 0xb002) AM_MIRROR(0x0ffc) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0xc000, 0xcfff) AM_READNOP AM_WRITE(status_w)
|
||||
AM_RANGE(0xd000, 0xdfff) AM_WRITENOP // low bit controls yellow LED
|
||||
AM_RANGE(0xe000, 0xefff) AM_READ(irq_clear)
|
||||
|
@ -76,7 +76,7 @@ WRITE8_MEMBER(redalert_state::redalert_audio_command_w)
|
||||
|
||||
WRITE8_MEMBER(redalert_state::redalert_AY8910_w)
|
||||
{
|
||||
device_t *device = machine().device("aysnd");
|
||||
ay8910_device *ay8910 = machine().device<ay8910_device>("aysnd");
|
||||
/* BC2 is connected to a pull-up resistor, so BC2=1 always */
|
||||
switch (data & 0x03)
|
||||
{
|
||||
@ -86,7 +86,7 @@ WRITE8_MEMBER(redalert_state::redalert_AY8910_w)
|
||||
|
||||
/* BC1=1, BDIR=0 : read from PSG */
|
||||
case 0x01:
|
||||
m_ay8910_latch_1 = ay8910_r(device, space, 0);
|
||||
m_ay8910_latch_1 = ay8910->data_r(space, 0);
|
||||
break;
|
||||
|
||||
/* BC1=0, BDIR=1 : write to PSG */
|
||||
@ -94,7 +94,7 @@ WRITE8_MEMBER(redalert_state::redalert_AY8910_w)
|
||||
case 0x02:
|
||||
case 0x03:
|
||||
default:
|
||||
ay8910_data_address_w(device, space, data, m_ay8910_latch_2);
|
||||
ay8910->data_address_w(space, data, m_ay8910_latch_2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -300,35 +300,35 @@ READ8_MEMBER(redalert_state::demoneye_ay8910_latch_2_r)
|
||||
|
||||
WRITE8_MEMBER(redalert_state::demoneye_ay8910_data_w)
|
||||
{
|
||||
device_t *ay1 = machine().device("ay1");
|
||||
device_t *ay2 = machine().device("ay2");
|
||||
ay8910_device *ay1 = machine().device<ay8910_device>("ay1");
|
||||
ay8910_device *ay2 = machine().device<ay8910_device>("ay2");
|
||||
|
||||
switch (m_ay8910_latch_1 & 0x03)
|
||||
{
|
||||
case 0x00:
|
||||
if (m_ay8910_latch_1 & 0x10)
|
||||
ay8910_data_w(ay1, space, 0, data);
|
||||
ay1->data_w(space, 0, data);
|
||||
|
||||
if (m_ay8910_latch_1 & 0x20)
|
||||
ay8910_data_w(ay2, space, 0, data);
|
||||
ay2->data_w(space, 0, data);
|
||||
|
||||
break;
|
||||
|
||||
case 0x01:
|
||||
if (m_ay8910_latch_1 & 0x10)
|
||||
m_ay8910_latch_2 = ay8910_r(ay1, space, 0);
|
||||
m_ay8910_latch_2 = ay1->data_r(space, 0);
|
||||
|
||||
if (m_ay8910_latch_1 & 0x20)
|
||||
m_ay8910_latch_2 = ay8910_r(ay2, space, 0);
|
||||
m_ay8910_latch_2 = ay2->data_r(space, 0);
|
||||
|
||||
break;
|
||||
|
||||
case 0x03:
|
||||
if (m_ay8910_latch_1 & 0x10)
|
||||
ay8910_address_w(ay1, space, 0, data);
|
||||
ay1->address_w(space, 0, data);
|
||||
|
||||
if (m_ay8910_latch_1 & 0x20)
|
||||
ay8910_address_w(ay2, space, 0, data);
|
||||
ay2->address_w(space, 0, data);
|
||||
|
||||
break;
|
||||
|
||||
|
@ -311,10 +311,10 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( ad2083_sound_io_map, AS_IO, 8, driver_device )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVWRITE_LEGACY("tmsprom", ad2083_tms5110_ctrl_w)
|
||||
AM_RANGE(0x10, 0x10) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x80, 0x80) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x80, 0x80) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static SOUND_START( ad2083 )
|
||||
|
@ -167,10 +167,10 @@ WRITE8_HANDLER( timeplt_sh_irqtrigger_w )
|
||||
static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8, driver_device )
|
||||
AM_RANGE(0x0000, 0x2fff) AM_ROM
|
||||
AM_RANGE(0x3000, 0x33ff) AM_MIRROR(0x0c00) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0fff) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0x8000, 0xffff) AM_DEVWRITE_LEGACY("timeplt_audio", timeplt_filter_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -179,10 +179,10 @@ static ADDRESS_MAP_START( locomotn_sound_map, AS_PROGRAM, 8, driver_device )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x0c00) AM_RAM
|
||||
AM_RANGE(0x3000, 0x3fff) AM_DEVWRITE_LEGACY("timeplt_audio", timeplt_filter_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0fff) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -109,8 +109,8 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _1942_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x47ff) AM_RAM
|
||||
AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -738,7 +738,7 @@ WRITE8_MEMBER(fortyl_state::sound_control_3_w)/* unknown */
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fortyl_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xca00, 0xca0d) AM_DEVWRITE_LEGACY("msm", msm5232_w)
|
||||
AM_RANGE(0xcc00, 0xcc00) AM_WRITE(sound_control_0_w)
|
||||
AM_RANGE(0xce00, 0xce00) AM_WRITE(sound_control_1_w)
|
||||
|
@ -69,7 +69,7 @@ WRITE8_MEMBER(_4enraya_state::sound_data_w)
|
||||
WRITE8_MEMBER(_4enraya_state::sound_control_w)
|
||||
{
|
||||
if ((m_last_snd_ctrl & m_snd_latch_bit ) == m_snd_latch_bit && (data & m_snd_latch_bit) == 0x00)
|
||||
ay8910_data_address_w(m_ay, space, m_last_snd_ctrl, m_soundlatch);
|
||||
m_ay->data_address_w(space, m_last_snd_ctrl, m_soundlatch);
|
||||
|
||||
m_last_snd_ctrl = data;
|
||||
}
|
||||
|
@ -459,13 +459,15 @@ public:
|
||||
m_videoram(*this, "videoram"),
|
||||
m_colorram(*this, "colorram"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu") { }
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_ay8910(*this, "ay8910")
|
||||
{
|
||||
}
|
||||
|
||||
UINT8 m_main_latch_d800;
|
||||
UINT8 m_snd_latch_0800;
|
||||
UINT8 m_snd_latch_0a02;
|
||||
UINT8 m_ay8910_addr;
|
||||
device_t *m_ay8910;
|
||||
required_shared_ptr<UINT8> m_videoram;
|
||||
required_shared_ptr<UINT8> m_colorram;
|
||||
tilemap_t *m_bg_tilemap;
|
||||
@ -491,6 +493,7 @@ public:
|
||||
UINT32 screen_update_fclown(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<cpu_device> m_audiocpu;
|
||||
required_device<ay8910_device> m_ay8910;
|
||||
};
|
||||
|
||||
|
||||
@ -689,8 +692,8 @@ WRITE8_MEMBER(_5clown_state::cpu_d800_w)
|
||||
|
||||
WRITE8_MEMBER(_5clown_state::fclown_ay8910_w)
|
||||
{
|
||||
ay8910_address_w(m_ay8910, space, 0, offset);
|
||||
ay8910_data_w(m_ay8910, space, 0, data);
|
||||
m_ay8910->address_w(space, 0, offset);
|
||||
m_ay8910->data_w(space, 0, data);
|
||||
}
|
||||
|
||||
|
||||
@ -1258,11 +1261,6 @@ DRIVER_INIT_MEMBER(_5clown_state,fclown)
|
||||
samples_src[x] = samples_src[x] ^ 0x12; /* Otherwise bit 1 & 5 XOR'ed */
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Assigning AY-3-8910 sound device */
|
||||
|
||||
m_ay8910 = machine().device("ay8910");
|
||||
}
|
||||
|
||||
|
||||
|
@ -183,7 +183,7 @@ void aces1_state::machine_reset()
|
||||
static ADDRESS_MAP_START( aces1_map, AS_PROGRAM, 8, aces1_state )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x8fff) AM_RAM
|
||||
AM_RANGE(0xadf0, 0xadf3) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_address_data_w) // Dips, Sound
|
||||
AM_RANGE(0xadf0, 0xadf3) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, address_data_w) // Dips, Sound
|
||||
AM_RANGE(0xafb0, 0xafb3) AM_DEVREADWRITE("ppi8255_ic24", i8255_device, read, write) // IC24 - lamps, 7segs
|
||||
AM_RANGE(0xafd0, 0xafd3) AM_DEVREADWRITE("ppi8255_ic25", i8255_device, read, write) // IC25 - lamps, meters, reel comms (writes)
|
||||
AM_RANGE(0xafe0, 0xafe3) AM_DEVREADWRITE("ppi8255_ic37", i8255_device, read, write)// IC37 - doors, coins, reel optics (reads)
|
||||
|
@ -449,7 +449,7 @@ static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16, adp_state )
|
||||
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("h63484", h63484_device, status_r, address_w)
|
||||
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("h63484", h63484_device, data_r, data_w)
|
||||
AM_RANGE(0x800100, 0x800101) AM_READWRITE(test_r,wh2_w) //related to input
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8_LEGACY("aysnd", ay8910_r, ay8910_address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8("aysnd", ay8910_device, data_r, address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800180, 0x80019f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff )
|
||||
AM_RANGE(0xffc000, 0xffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -459,7 +459,7 @@ static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16, adp_state )
|
||||
// AM_RANGE(0x400000, 0x40001f) ?
|
||||
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("h63484", h63484_device, status_r, address_w) // bad
|
||||
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("h63484", h63484_device, data_r, data_w) // bad
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8_LEGACY("aysnd", ay8910_r, ay8910_address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8("aysnd", ay8910_device, data_r, address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800180, 0x80019f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff )
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -514,7 +514,7 @@ static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16, adp_state )
|
||||
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("h63484", h63484_device, data_r, data_w)
|
||||
AM_RANGE(0x800088, 0x80008d) AM_WRITE8(ramdac_io_w, 0x00ff)
|
||||
AM_RANGE(0x800100, 0x800101) AM_RAM //???
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8_LEGACY("aysnd", ay8910_r, ay8910_address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8("aysnd", ay8910_device, data_r, address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800180, 0x80019f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff )
|
||||
AM_RANGE(0xfc0000, 0xffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -525,7 +525,7 @@ static ADDRESS_MAP_START( fstation_mem, AS_PROGRAM, 16, adp_state )
|
||||
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("h63484", h63484_device, status_r, address_w)
|
||||
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("h63484", h63484_device, data_r, data_w)
|
||||
AM_RANGE(0x800100, 0x800101) AM_RAM //???
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8_LEGACY("aysnd", ay8910_r, ay8910_address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800140, 0x800143) AM_DEVREADWRITE8("aysnd", ay8910_device, data_r, address_data_w, 0x00ff) //18b too
|
||||
AM_RANGE(0x800180, 0x80019f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff )
|
||||
AM_RANGE(0xfc0000, 0xffffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
|
@ -91,10 +91,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aeroboto_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_RAM
|
||||
AM_RANGE(0x9000, 0x9001) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x9002, 0x9002) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x9000, 0x9001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x9002, 0x9002) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
AM_RANGE(0xf000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -170,8 +170,8 @@ static ADDRESS_MAP_START( hanaroku_map, AS_PROGRAM, 8, albazc_state )
|
||||
AM_RANGE(0xb000, 0xb000) AM_WRITENOP // ??? always 0x40
|
||||
AM_RANGE(0xc000, 0xc3ff) AM_RAM // main ram
|
||||
AM_RANGE(0xc400, 0xc4ff) AM_RAM // ???
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xe000, 0xe000) AM_READ_PORT("IN0") AM_WRITE(hanaroku_out_0_w)
|
||||
AM_RANGE(0xe001, 0xe001) AM_READ_PORT("IN1")
|
||||
AM_RANGE(0xe002, 0xe002) AM_READ_PORT("IN2") AM_WRITE(hanaroku_out_1_w)
|
||||
|
@ -253,8 +253,8 @@ static ADDRESS_MAP_START( port_map, AS_IO, 8, albazg_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVWRITE("crtc", mc6845_device, register_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
|
||||
AM_RANGE(0xc0, 0xc0) AM_WRITE(watchdog_reset_w)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -807,8 +807,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8, alpha68k_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_WRITE(soundlatch_clear_byte_w)
|
||||
AM_RANGE(0x06, 0x06) AM_WRITENOP
|
||||
ADDRESS_MAP_END
|
||||
|
@ -81,10 +81,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( main_portmap, AS_IO, 8, ambush_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_address_w)
|
||||
AM_RANGE(0x81, 0x81) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("ay2", ay8910_device, data_r, address_w)
|
||||
AM_RANGE(0x81, 0x81) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -628,8 +628,8 @@ static ADDRESS_MAP_START( ampoker2_io_map, AS_IO, 8, ampoker2_state )
|
||||
AM_RANGE(0x35, 0x35) AM_WRITE(ampoker2_port35_w) /* see write handlers */
|
||||
AM_RANGE(0x36, 0x36) AM_WRITE(ampoker2_port36_w) /* see write handlers */
|
||||
AM_RANGE(0x37, 0x37) AM_WRITE(ampoker2_watchdog_reset_w)
|
||||
AM_RANGE(0x38, 0x39) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x3A, 0x3A) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x38, 0x39) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x3A, 0x3A) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/*
|
||||
|
@ -191,8 +191,8 @@ ADDRESS_MAP_END
|
||||
*************************************/
|
||||
|
||||
static ADDRESS_MAP_START( main_io_map, AS_IO, 8, arabian_state )
|
||||
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0x01ff) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xca00, 0xca00) AM_MIRROR(0x01ff) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xca00, 0xca00) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -656,13 +656,13 @@ READ8_MEMBER(aristmk4_state::via_a_r)
|
||||
|
||||
if (m_ay8910_1&0x03) // SW1 read.
|
||||
{
|
||||
psg_ret = ay8910_r(machine().device("ay1"), space, 0);
|
||||
//logerror("PSG porta ay1 returned %02X\n",psg_ret);
|
||||
psg_ret = machine().device<ay8910_device>("ay1")->data_r(space, 0);
|
||||
//logerror("PSG porta ay1 returned %02X\n",psg_ret);
|
||||
}
|
||||
|
||||
else if (m_ay8910_2&0x03) //i don't think we read anything from Port A on ay2, Can be removed once game works ok.
|
||||
{
|
||||
psg_ret = ay8910_r(machine().device("ay2"), space, 0);
|
||||
psg_ret = machine().device<ay8910_device>("ay2")->data_r(space, 0);
|
||||
//logerror("PSG porta ay2 returned %02X\n",psg_ret);
|
||||
}
|
||||
return psg_ret;
|
||||
@ -755,13 +755,13 @@ WRITE8_MEMBER(aristmk4_state::via_b_w)
|
||||
break;
|
||||
case 0x06: //WRITE
|
||||
{
|
||||
ay8910_data_w( machine().device("ay1"), space, 0 , m_psg_data );
|
||||
machine().device<ay8910_device>("ay1")->data_w(space, 0 , m_psg_data);
|
||||
//logerror("VIA Port A write data ay1: %02X\n",m_psg_data);
|
||||
break;
|
||||
}
|
||||
case 0x07: //LATCH Address (set register)
|
||||
{
|
||||
ay8910_address_w( machine().device("ay1"), space, 0 , m_psg_data );
|
||||
machine().device<ay8910_device>("ay1")->address_w(space, 0 , m_psg_data);
|
||||
//logerror("VIA Port B write register ay1: %02X\n",m_psg_data);
|
||||
break;
|
||||
}
|
||||
@ -782,13 +782,13 @@ WRITE8_MEMBER(aristmk4_state::via_b_w)
|
||||
break;
|
||||
case 0x06: //WRITE
|
||||
{
|
||||
ay8910_data_w( machine().device("ay2"), space, 0 , m_psg_data );
|
||||
machine().device<ay8910_device>("ay2")->data_w(space, 0, m_psg_data);
|
||||
//logerror("VIA Port A write data ay2: %02X\n",m_psg_data);
|
||||
break;
|
||||
}
|
||||
case 0x07: //LATCH Address (set register)
|
||||
{
|
||||
ay8910_address_w( machine().device("ay2"), space, 0 , m_psg_data );
|
||||
machine().device<ay8910_device>("ay2")->address_w(space, 0, m_psg_data);
|
||||
//logerror("VIA Port B write register ay2: %02X\n",m_psg_data);
|
||||
break;
|
||||
}
|
||||
|
@ -557,8 +557,8 @@ DIP locations verified for:
|
||||
static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8, arkanoid_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xd008, 0xd008) AM_WRITE(arkanoid_d008_w) /* gfx bank, flip screen etc. */
|
||||
AM_RANGE(0xd00c, 0xd00c) AM_READ_PORT("SYSTEM") /* 2 bits from the 68705 */
|
||||
AM_RANGE(0xd010, 0xd010) AM_READ_PORT("BUTTONS") AM_WRITE(watchdog_reset_w)
|
||||
@ -572,8 +572,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, arkanoid_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0xd008, 0xd008) AM_WRITE(arkanoid_d008_w) /* gfx bank, flip screen etc. */
|
||||
AM_RANGE(0xd00c, 0xd00c) AM_READ_PORT("SYSTEM")
|
||||
AM_RANGE(0xd010, 0xd010) AM_READ_PORT("BUTTONS") AM_WRITE(watchdog_reset_w)
|
||||
@ -588,8 +588,8 @@ static ADDRESS_MAP_START( hexa_map, AS_PROGRAM, 8, arkanoid_state )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xd008, 0xd008) AM_WRITE(hexa_d008_w)
|
||||
AM_RANGE(0xd010, 0xd010) AM_WRITE(watchdog_reset_w) /* or IRQ acknowledge, or both */
|
||||
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(arkanoid_videoram_w) AM_SHARE("videoram")
|
||||
@ -598,8 +598,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( brixian_map, AS_PROGRAM, 8, arkanoid_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("protram")
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0xd008, 0xd008) AM_WRITE(brixian_d008_w) /* gfx bank, flip screen etc. */
|
||||
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(arkanoid_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0xe800, 0xe83f) AM_RAM AM_SHARE("spriteram")
|
||||
|
@ -686,9 +686,9 @@ static ADDRESS_MAP_START( tenpin_sub_io_map, AS_IO, 8, astrocde_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x90, 0x93) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
|
||||
AM_RANGE(0x97, 0x97) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x98, 0x98) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x98, 0x98) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x9a, 0x9a) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x98, 0x98) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x98, 0x98) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x9a, 0x9a) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -632,8 +632,8 @@ static ADDRESS_MAP_START( avt_portmap, AS_IO, 8, avt_state )
|
||||
// AM_RANGE(0x08, 0x0b) unk, maybe IO
|
||||
// AM_RANGE(0x08, 0x08) AM_READ_PORT("IN2")
|
||||
// AM_RANGE(0x09, 0x09) AM_READ_PORT("IN3")
|
||||
AM_RANGE(0x21, 0x21) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) /* AY8910 data */
|
||||
AM_RANGE(0x23, 0x23) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) /* AY8910 control */
|
||||
AM_RANGE(0x21, 0x21) AM_DEVWRITE("aysnd", ay8910_device, data_w) /* AY8910 data */
|
||||
AM_RANGE(0x23, 0x23) AM_DEVWRITE("aysnd", ay8910_device, address_w) /* AY8910 control */
|
||||
AM_RANGE(0x28, 0x28) AM_WRITE(avt_6845_address_w)
|
||||
AM_RANGE(0x29, 0x29) AM_READWRITE(avt_6845_data_r,avt_6845_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -100,10 +100,10 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aztarac_state )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM
|
||||
AM_RANGE(0x8800, 0x8800) AM_READ(aztarac_snd_command_r)
|
||||
AM_RANGE(0x8c00, 0x8c01) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_address_w)
|
||||
AM_RANGE(0x8c02, 0x8c03) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_address_w)
|
||||
AM_RANGE(0x8c04, 0x8c05) AM_DEVREADWRITE_LEGACY("ay3", ay8910_r, ay8910_data_address_w)
|
||||
AM_RANGE(0x8c06, 0x8c07) AM_DEVREADWRITE_LEGACY("ay4", ay8910_r, ay8910_data_address_w)
|
||||
AM_RANGE(0x8c00, 0x8c01) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_address_w)
|
||||
AM_RANGE(0x8c02, 0x8c03) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_address_w)
|
||||
AM_RANGE(0x8c04, 0x8c05) AM_DEVREADWRITE("ay3", ay8910_device, data_r, data_address_w)
|
||||
AM_RANGE(0x8c06, 0x8c07) AM_DEVREADWRITE("ay4", ay8910_device, data_r, data_address_w)
|
||||
AM_RANGE(0x9000, 0x9000) AM_READWRITE(aztarac_snd_status_r, aztarac_snd_status_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -156,14 +156,14 @@ static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8, bagman_state )
|
||||
AM_RANGE(0xa007, 0xa007) AM_WRITENOP /* ???? */
|
||||
|
||||
/* guess */
|
||||
AM_RANGE(0xb000, 0xb000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0xb800, 0xb800) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0xb000, 0xb000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xb800, 0xb800) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( main_portmap, AS_IO, 8, bagman_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
//AM_RANGE(0x56, 0x56) AM_WRITENOP
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -91,7 +91,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, battlex_state )
|
||||
AM_RANGE(0x10, 0x10) AM_WRITE(battlex_flipscreen_w)
|
||||
|
||||
/* verify all of these */
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x30, 0x30) AM_WRITE(battlex_scroll_starfield_w)
|
||||
AM_RANGE(0x32, 0x32) AM_WRITE(battlex_scroll_x_lsb_w)
|
||||
AM_RANGE(0x33, 0x33) AM_WRITE(battlex_scroll_x_msb_w)
|
||||
|
@ -1485,8 +1485,8 @@ static ADDRESS_MAP_START( m6809_prog_map, AS_PROGRAM, 8, bfcobra_state )
|
||||
AM_RANGE(0x2800, 0x2800) AM_RAM // W
|
||||
AM_RANGE(0x2A00, 0x2A02) AM_READWRITE(latch_r, latch_w)
|
||||
AM_RANGE(0x2E00, 0x2E00) AM_READ(int_latch_r)
|
||||
AM_RANGE(0x3001, 0x3001) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x3201, 0x3201) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x3001, 0x3001) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x3201, 0x3201) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x3404, 0x3404) AM_DEVREADWRITE("acia6850_1", acia6850_device, status_read, control_write)
|
||||
AM_RANGE(0x3405, 0x3405) AM_DEVREADWRITE("acia6850_1", acia6850_device, data_read, data_write)
|
||||
AM_RANGE(0x3406, 0x3406) AM_DEVREADWRITE("acia6850_2", acia6850_device, status_read, control_write)
|
||||
|
@ -715,8 +715,8 @@ static ADDRESS_MAP_START( sc1_base, AS_PROGRAM, 8, bfm_sc1_state )
|
||||
AM_RANGE(0x2E00, 0x2E00) AM_READ(irqlatch_r) // irq latch
|
||||
|
||||
AM_RANGE(0x3001, 0x3001) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x3001, 0x3001) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x3101, 0x3201) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x3001, 0x3001) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x3101, 0x3201) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
|
||||
AM_RANGE(0x3406, 0x3406) AM_READWRITE(aciastat_r,aciactrl_w) // MC6850 status register
|
||||
AM_RANGE(0x3407, 0x3407) AM_READWRITE(aciadata_r,aciadata_w) // MC6850 data register
|
||||
|
@ -394,9 +394,9 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, bfmsys85_state )
|
||||
AM_RANGE(0x2A01, 0x2A01) AM_READWRITE(mux_ctrl_r,mux_ctrl_w)// mux status register
|
||||
AM_RANGE(0x2E00, 0x2E00) AM_READ(irqlatch_r) // irq latch ( MC6850 / timer )
|
||||
|
||||
AM_RANGE(0x3000, 0x3000) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x3001, 0x3001) AM_READNOP //sound latch
|
||||
AM_RANGE(0x3200, 0x3200) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x3200, 0x3200) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
|
||||
AM_RANGE(0x3402, 0x3402) AM_DEVWRITE("acia6850_0", acia6850_device, control_write)
|
||||
AM_RANGE(0x3403, 0x3403) AM_DEVWRITE("acia6850_0", acia6850_device, data_write)
|
||||
|
@ -147,8 +147,8 @@ static ADDRESS_MAP_START( main_io, AS_IO, 8, big10_state )
|
||||
AM_RANGE(0x00, 0x00) AM_READ(mux_r) /* present in test mode */
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("SYSTEM") /* coins and service */
|
||||
AM_RANGE(0x98, 0x9b) AM_DEVREADWRITE("v9938", v9938_device, read, write)
|
||||
AM_RANGE(0xa0, 0xa1) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xa2, 0xa2) AM_DEVREAD_LEGACY("aysnd", ay8910_r) /* Dip-Switches routes here. */
|
||||
AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xa2, 0xa2) AM_DEVREAD("aysnd", ay8910_device, data_r) /* Dip-Switches routes here. */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -363,7 +363,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bigevglf_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xca00, 0xca0d) AM_DEVWRITE_LEGACY("msm", msm5232_w)
|
||||
AM_RANGE(0xcc00, 0xcc00) AM_WRITENOP
|
||||
AM_RANGE(0xce00, 0xce00) AM_WRITENOP
|
||||
|
@ -129,10 +129,10 @@ static ADDRESS_MAP_START( bking_audio_map, AS_PROGRAM, 8, bking_state )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x2000, 0x2fff) AM_ROM //only bking3
|
||||
AM_RANGE(0x4000, 0x43ff) AM_RAM
|
||||
AM_RANGE(0x4400, 0x4401) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x4401, 0x4401) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x4402, 0x4403) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x4403, 0x4403) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x4400, 0x4401) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4401, 0x4401) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x4402, 0x4403) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4403, 0x4403) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
AM_RANGE(0x4800, 0x4800) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x4802, 0x4802) AM_READWRITE(bking_sndnmi_disable_r, bking_sndnmi_enable_w)
|
||||
AM_RANGE(0xe000, 0xefff) AM_ROM /* Space for diagnostic ROM */
|
||||
|
@ -117,10 +117,10 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, blueprnt_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_MIRROR(0x1000)
|
||||
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_MIRROR(0x1000)
|
||||
AM_RANGE(0x4000, 0x43ff) AM_RAM
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x6002, 0x6002) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x8002, 0x8002) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6002, 0x6002) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x8002, 0x8002) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sound_io, AS_IO, 8, blueprnt_state )
|
||||
|
@ -340,8 +340,8 @@ static ADDRESS_MAP_START( bmcbowl_mem, AS_PROGRAM, 16, bmcbowl_state )
|
||||
AM_RANGE(0x092000, 0x09201f) AM_DEVREADWRITE8("via6522_0", via6522_device, read, write, 0x00ff)
|
||||
|
||||
AM_RANGE(0x093000, 0x093003) AM_WRITENOP // related to music
|
||||
AM_RANGE(0x092800, 0x092803) AM_DEVWRITE8_LEGACY("aysnd", ay8910_data_address_w, 0xff00)
|
||||
AM_RANGE(0x092802, 0x092803) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0xff00)
|
||||
AM_RANGE(0x092800, 0x092803) AM_DEVWRITE8("aysnd", ay8910_device, data_address_w, 0xff00)
|
||||
AM_RANGE(0x092802, 0x092803) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0xff00)
|
||||
AM_RANGE(0x093802, 0x093803) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0x095000, 0x095fff) AM_RAM AM_SHARE("nvram") /* 8 bit */
|
||||
AM_RANGE(0x097000, 0x097001) AM_READNOP
|
||||
|
@ -33,11 +33,11 @@ WRITE8_MEMBER(bogeyman_state::bogeyman_8910_control_w)
|
||||
|
||||
// bit 5 goes to 8910 #0 BDIR pin
|
||||
if ((m_last_write & 0x20) == 0x20 && (data & 0x20) == 0x00)
|
||||
ay8910_data_address_w(machine().device("ay1"), space, m_last_write >> 4, m_psg_latch);
|
||||
machine().device<ay8910_device>("ay1")->data_address_w(space, m_last_write >> 4, m_psg_latch);
|
||||
|
||||
// bit 7 goes to 8910 #1 BDIR pin
|
||||
if ((m_last_write & 0x80) == 0x80 && (data & 0x80) == 0x00)
|
||||
ay8910_data_address_w(machine().device("ay2"), space, m_last_write >> 6, m_psg_latch);
|
||||
machine().device<ay8910_device>("ay2")->data_address_w(space, m_last_write >> 6, m_psg_latch);
|
||||
|
||||
m_last_write = data;
|
||||
}
|
||||
|
@ -162,9 +162,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, bombjack_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x10, 0x11) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x80, 0x81) AM_DEVWRITE_LEGACY("ay3", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay3", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -325,10 +325,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, btime_state )
|
||||
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_SHARE("audio_rambase")
|
||||
AM_RANGE(0x2000, 0x3fff) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x7fff) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x8000, 0x9fff) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x2000, 0x3fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x7fff) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x8000, 0x9fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xa000, 0xbfff) AM_READ(audio_command_r)
|
||||
AM_RANGE(0xc000, 0xdfff) AM_WRITE(audio_nmi_enable_w)
|
||||
AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM
|
||||
@ -336,10 +336,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( disco_audio_map, AS_PROGRAM, 8, btime_state )
|
||||
AM_RANGE(0x0000, 0x03ff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6fff) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x7000, 0x7fff) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6fff) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x7000, 0x7fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0x8000, 0x8fff) AM_READ(soundlatch_byte_r) AM_WRITENOP /* ack ? */
|
||||
AM_RANGE(0xf000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
@ -162,8 +162,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, buggychl_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x47ff) AM_RAM
|
||||
AM_RANGE(0x4800, 0x4801) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x4802, 0x4803) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4802, 0x4803) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4810, 0x481d) AM_DEVWRITE_LEGACY("msm", msm5232_w)
|
||||
AM_RANGE(0x4820, 0x4820) AM_RAM /* VOL/BAL for the 7630 on the MSM5232 output */
|
||||
AM_RANGE(0x4830, 0x4830) AM_RAM /* TRBL/BASS for the 7630 on the MSM5232 output */
|
||||
|
@ -170,10 +170,10 @@ static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8, bwing_state )
|
||||
AM_RANGE(0x0000, 0x01ff) AM_RAM
|
||||
AM_RANGE(0x0200, 0x0200) AM_DEVWRITE("dac", dac_device, write_signed8)
|
||||
AM_RANGE(0x1000, 0x1000) AM_WRITE(bwp3_nmiack_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0xd000, 0xd000) AM_WRITE(bwp3_nmimask_w)
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM AM_SHARE("bwp3_rombase")
|
||||
|
@ -835,7 +835,7 @@ WRITE8_MEMBER(calomega_state::lamps_905_w)
|
||||
static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8, calomega_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE_LEGACY("ay8912", ay8910_address_data_w)
|
||||
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0880, 0x0880) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0881, 0x0881) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x08c4, 0x08c7) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
@ -850,7 +850,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8, calomega_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE_LEGACY("ay8912", ay8910_address_data_w)
|
||||
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0880, 0x0880) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0881, 0x0881) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x08c4, 0x08c7) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
@ -863,7 +863,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8, calomega_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x1040, 0x1041) AM_DEVWRITE_LEGACY("ay8912", ay8910_address_data_w)
|
||||
AM_RANGE(0x1040, 0x1041) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x1080, 0x1080) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x1081, 0x1081) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x10c4, 0x10c7) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
@ -879,7 +879,7 @@ static ADDRESS_MAP_START( sys906_map, AS_PROGRAM, 8, calomega_state )
|
||||
AM_RANGE(0x2824, 0x2827) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x2c04, 0x2c04) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x2c05, 0x2c05) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x2c08, 0x2c09) AM_DEVREADWRITE_LEGACY("ay8912", ay8910_r, ay8910_address_data_w)
|
||||
AM_RANGE(0x2c08, 0x2c09) AM_DEVREADWRITE("ay8912", ay8910_device, data_r, address_data_w)
|
||||
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(calomega_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0x2400, 0x27ff) AM_RAM_WRITE(calomega_colorram_w) AM_SHARE("colorram")
|
||||
AM_RANGE(0x6000, 0xffff) AM_ROM
|
||||
|
@ -272,10 +272,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( calorie_sound_io_map, AS_IO, 8, calorie_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x10, 0x11) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x11, 0x11) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x11, 0x11) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
// 3rd ?
|
||||
AM_RANGE(0x00, 0xff) AM_WRITE(bogus_w)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -83,10 +83,10 @@ static ADDRESS_MAP_START( carjmbre_sound_io_map, AS_IO, 8, carjmbre_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x10, 0x10) AM_WRITENOP //?? written on init/0xff sound command reset
|
||||
AM_RANGE(0x20, 0x21) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x22, 0x22) AM_WRITENOP //?? written before and after 0x21 with same value
|
||||
AM_RANGE(0x24, 0x24) AM_READNOP //??
|
||||
AM_RANGE(0x30, 0x31) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x30, 0x31) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x32, 0x32) AM_WRITENOP //?? written before and after 0x31 with same value
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -85,7 +85,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, carrera_state )
|
||||
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN4")
|
||||
AM_RANGE(0x05, 0x05) AM_READ_PORT("IN5")
|
||||
AM_RANGE(0x06, 0x06) AM_WRITENOP // ?
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( carrera )
|
||||
|
@ -193,8 +193,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( vvillage_io, AS_IO, 8, caswin_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x01,0x01) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x02,0x03) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x10,0x10) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0x11,0x11) AM_READ_PORT("IN1")
|
||||
AM_RANGE(0x10,0x10) AM_WRITE(vvillage_scroll_w)
|
||||
|
@ -570,8 +570,8 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( cb2001_io, AS_IO, 16, cb2001_state )
|
||||
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE8("ppi8255_0", i8255_device, read, write, 0xffff) /* Input Ports */
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE8("ppi8255_1", i8255_device, read, write, 0xffff) /* DIP switches */
|
||||
AM_RANGE(0x20, 0x21) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0xff00)
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE8_LEGACY("aysnd", ay8910_data_address_w, 0xffff)
|
||||
AM_RANGE(0x20, 0x21) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0xff00)
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE8("aysnd", ay8910_device, data_address_w, 0xffff)
|
||||
|
||||
AM_RANGE(0x30, 0x31) AM_WRITE(cb2001_vidctrl_w)
|
||||
AM_RANGE(0x32, 0x33) AM_WRITE(cb2001_vidctrl2_w)
|
||||
|
@ -89,8 +89,8 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cchance_state )
|
||||
AM_RANGE(0xf000, 0xf000) AM_READNOP AM_WRITENOP //???
|
||||
AM_RANGE(0xf001, 0xf001) AM_READ(input_1_r) AM_WRITE(output_0_w)
|
||||
AM_RANGE(0xf002, 0xf002) AM_READ_PORT("IN0") AM_WRITE(output_1_w)
|
||||
AM_RANGE(0xf800, 0xf801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xf801, 0xf801) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xf800, 0xf801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xf801, 0xf801) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -51,11 +51,11 @@ static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8, cchasm_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x43ff) AM_RAM
|
||||
AM_RANGE(0x5000, 0x53ff) AM_RAM
|
||||
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0xf9e) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0xf9e) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0xf9e) AM_READ(cchasm_coin_sound_r)
|
||||
AM_RANGE(0x6001, 0x6001) AM_MIRROR(0xf9e) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x6020, 0x6021) AM_MIRROR(0xf9e) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x6021, 0x6021) AM_MIRROR(0xf9e) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0x6001, 0x6001) AM_MIRROR(0xf9e) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x6020, 0x6021) AM_MIRROR(0xf9e) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6021, 0x6021) AM_MIRROR(0xf9e) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
AM_RANGE(0x6040, 0x6040) AM_MIRROR(0xf9e) AM_READWRITE(soundlatch_byte_r, soundlatch3_byte_w)
|
||||
AM_RANGE(0x6041, 0x6041) AM_MIRROR(0xf9e) AM_READWRITE(cchasm_soundlatch2_r, cchasm_soundlatch4_w)
|
||||
AM_RANGE(0x6061, 0x6061) AM_MIRROR(0xf9e) AM_WRITE(cchasm_reset_coin_flag_w)
|
||||
|
@ -382,8 +382,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( cclimber_portmap, AS_IO, 8, cclimber_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( yamato_portmap, AS_IO, 8, cclimber_state )
|
||||
@ -408,14 +408,14 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( swimmer_audio_portmap, AS_IO, 8, cclimber_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0x80, 0x81) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( yamato_audio_portmap, AS_IO, 8, cclimber_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x04, 0x04) AM_READ(yamato_p0_r) /* ??? */
|
||||
AM_RANGE(0x08, 0x08) AM_READ(yamato_p1_r) /* ??? */
|
||||
ADDRESS_MAP_END
|
||||
|
@ -700,8 +700,8 @@ static ADDRESS_MAP_START( centipdb_map, AS_PROGRAM, 8, centiped_state )
|
||||
AM_RANGE(0x0c01, 0x0c01) AM_MIRROR(0x4000) AM_READ_PORT("IN1") /* IN1 */
|
||||
AM_RANGE(0x0c02, 0x0c02) AM_MIRROR(0x4000) AM_READ(centiped_IN2_r) /* IN2 */
|
||||
AM_RANGE(0x0c03, 0x0c03) AM_MIRROR(0x4000) AM_READ_PORT("IN3") /* IN3 */
|
||||
AM_RANGE(0x1000, 0x1001) AM_MIRROR(0x4000) AM_DEVWRITE_LEGACY("pokey", ay8910_data_address_w)
|
||||
AM_RANGE(0x1001, 0x1001) AM_MIRROR(0x4000) AM_DEVREAD_LEGACY("pokey", ay8910_r)
|
||||
AM_RANGE(0x1000, 0x1001) AM_MIRROR(0x4000) AM_DEVWRITE("pokey", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x1001, 0x1001) AM_MIRROR(0x4000) AM_DEVREAD("pokey", ay8910_device, data_r)
|
||||
AM_RANGE(0x1400, 0x140f) AM_MIRROR(0x4000) AM_WRITE(centiped_paletteram_w) AM_SHARE("paletteram")
|
||||
AM_RANGE(0x1600, 0x163f) AM_MIRROR(0x4000) AM_DEVWRITE("earom", atari_vg_earom_device, write)
|
||||
AM_RANGE(0x1680, 0x1680) AM_MIRROR(0x4000) AM_DEVWRITE("earom", atari_vg_earom_device, ctrl_w)
|
||||
@ -718,8 +718,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( magworm_map, AS_PROGRAM, 8, centiped_state )
|
||||
AM_IMPORT_FROM(centiped_base_map)
|
||||
AM_RANGE(0x1001, 0x1001) AM_DEVWRITE_LEGACY("pokey", ay8910_address_w)
|
||||
AM_RANGE(0x1003, 0x1003) AM_DEVREADWRITE_LEGACY("pokey", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x1001, 0x1001) AM_DEVWRITE("pokey", ay8910_device, address_w)
|
||||
AM_RANGE(0x1003, 0x1003) AM_DEVREADWRITE("pokey", ay8910_device, data_r, data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -731,16 +731,16 @@ ADDRESS_MAP_END
|
||||
|
||||
WRITE8_MEMBER(centiped_state::caterplr_AY8910_w)
|
||||
{
|
||||
device_t *device = machine().device("pokey");
|
||||
ay8910_address_w(device, space, 0, offset);
|
||||
ay8910_data_w(device, space, 0, data);
|
||||
ay8910_device *ay8910 = machine().device<ay8910_device>("pokey");
|
||||
ay8910->address_w(space, 0, offset);
|
||||
ay8910->data_w(space, 0, data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(centiped_state::caterplr_AY8910_r)
|
||||
{
|
||||
device_t *device = machine().device("pokey");
|
||||
ay8910_address_w(device, space, 0, offset);
|
||||
return ay8910_r(device, space, 0);
|
||||
ay8910_device *ay8910 = machine().device<ay8910_device>("pokey");
|
||||
ay8910->address_w(space, 0, offset);
|
||||
return ay8910->data_r(space, 0);
|
||||
}
|
||||
|
||||
|
||||
|
@ -146,8 +146,8 @@ static ADDRESS_MAP_START( chaknpop_map, AS_PROGRAM, 8, chaknpop_state )
|
||||
AM_RANGE(0x8800, 0x8800) AM_READWRITE(chaknpop_mcu_port_a_r, chaknpop_mcu_port_a_w)
|
||||
AM_RANGE(0x8801, 0x8801) AM_READWRITE(chaknpop_mcu_port_b_r, chaknpop_mcu_port_b_w)
|
||||
AM_RANGE(0x8802, 0x8802) AM_READWRITE(chaknpop_mcu_port_c_r, chaknpop_mcu_port_c_w)
|
||||
AM_RANGE(0x8804, 0x8805) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_address_data_w)
|
||||
AM_RANGE(0x8806, 0x8807) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_address_data_w)
|
||||
AM_RANGE(0x8804, 0x8805) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_data_w)
|
||||
AM_RANGE(0x8806, 0x8807) AM_DEVREADWRITE("ay2", ay8910_device, data_r, address_data_w)
|
||||
AM_RANGE(0x8808, 0x8808) AM_READ_PORT("DSWC")
|
||||
AM_RANGE(0x8809, 0x8809) AM_READ_PORT("P1")
|
||||
AM_RANGE(0x880a, 0x880a) AM_READ_PORT("SYSTEM")
|
||||
|
@ -221,7 +221,7 @@ READ8_MEMBER(champbas_state::champbja_alt_protection_r)
|
||||
static ADDRESS_MAP_START( talbot_map, AS_PROGRAM, 8, champbas_state )
|
||||
AM_RANGE(0x0000, 0x5fff) AM_ROM
|
||||
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") /* MCU shared RAM */
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_SHARE("bg_videoram")
|
||||
AM_RANGE(0x8800, 0x8fef) AM_RAM
|
||||
AM_RANGE(0x8ff0, 0x8fff) AM_RAM AM_SHARE("spriteram")
|
||||
@ -248,7 +248,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( champbas_main_map, AS_PROGRAM, 8, champbas_state )
|
||||
AM_RANGE(0x0000, 0x5fff) AM_ROM
|
||||
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1")
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x7800, 0x7fff) AM_ROM // champbb2 only
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_SHARE("bg_videoram")
|
||||
AM_RANGE(0x8800, 0x8fef) AM_RAM
|
||||
@ -280,7 +280,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( exctsccrb_main_map, AS_PROGRAM, 8, champbas_state )
|
||||
AM_RANGE(0x0000, 0x5fff) AM_ROM
|
||||
// AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // MCU not used (though it's present on the board)
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
// AM_RANGE(0x7800, 0x7fff) AM_ROM // champbb2 only
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(champbas_bg_videoram_w) AM_SHARE("bg_videoram")
|
||||
AM_RANGE(0x8800, 0x8fff) AM_RAM AM_SHARE("spriteram_2") /* ??? */
|
||||
@ -351,10 +351,10 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( exctsccr_sound_io_map, AS_IO, 8, champbas_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK( 0x00ff )
|
||||
AM_RANGE(0x82, 0x83) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE_LEGACY("ay3", ay8910_data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE_LEGACY("ay4", ay8910_data_address_w)
|
||||
AM_RANGE(0x82, 0x83) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE("ay4", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -215,8 +215,8 @@ static ADDRESS_MAP_START( changela_map, AS_PROGRAM, 8, changela_state )
|
||||
AM_RANGE(0xca00, 0xca00) AM_WRITE(changela_slope_rom_addr_hi_w)
|
||||
AM_RANGE(0xcb00, 0xcb00) AM_WRITE(changela_slope_rom_addr_lo_w)
|
||||
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_address_data_w)
|
||||
AM_RANGE(0xd010, 0xd011) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_address_data_w)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_data_w)
|
||||
AM_RANGE(0xd010, 0xd011) AM_DEVREADWRITE("ay2", ay8910_device, data_r, address_data_w)
|
||||
|
||||
/* LS259 - U44 */
|
||||
AM_RANGE(0xd020, 0xd020) AM_WRITE(changela_collision_reset_0)
|
||||
|
@ -64,15 +64,15 @@ WRITE8_MEMBER( draco_state::sound_g_w )
|
||||
switch (data)
|
||||
{
|
||||
case 0x01:
|
||||
ay8910_data_w(m_psg, space, 0, m_psg_latch);
|
||||
m_psg->data_w(space, 0, m_psg_latch);
|
||||
break;
|
||||
|
||||
case 0x02:
|
||||
m_psg_latch = ay8910_r(m_psg, space, 0);
|
||||
m_psg_latch = m_psg->data_r(space, 0);
|
||||
break;
|
||||
|
||||
case 0x03:
|
||||
ay8910_address_w(m_psg, space, 0, m_psg_latch);
|
||||
m_psg->address_w(space, 0, m_psg_latch);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -43,8 +43,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, citycon_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
// AM_RANGE(0x4002, 0x4002) AM_DEVREAD_LEGACY("aysnd", ay8910_r) /* ?? */
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
// AM_RANGE(0x4002, 0x4002) AM_DEVREAD("aysnd", ay8910_device, data_r) /* ?? */
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
|
||||
AM_RANGE(0x8000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
@ -607,10 +607,10 @@ INTERRUPT_GEN_MEMBER(cntsteer_state::sound_interrupt)
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cntsteer_state )
|
||||
AM_RANGE(0x0000, 0x01ff) AM_RAM
|
||||
// AM_RANGE(0x1000, 0x1000) AM_WRITE(nmiack_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0xd000, 0xd000) AM_WRITE(nmimask_w)
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM
|
||||
|
@ -225,8 +225,8 @@ static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8, coinmstr_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(question_r)
|
||||
AM_RANGE(0x00, 0x03) AM_WRITE(question_w)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x41, 0x41) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x41, 0x41) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x48, 0x4b) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x50, 0x53) AM_READNOP
|
||||
AM_RANGE(0x50, 0x53) AM_WRITENOP
|
||||
@ -243,8 +243,8 @@ static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8, coinmstr_state )
|
||||
AM_RANGE(0x00, 0x03) AM_WRITE(question_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x41, 0x41) AM_DEVWRITE("crtc", mc6845_device, register_w)
|
||||
AM_RANGE(0x48, 0x49) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x49, 0x49) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x48, 0x49) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x49, 0x49) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x50, 0x53) AM_DEVREADWRITE("pia0", pia6821_device, read, write) //?
|
||||
AM_RANGE(0x60, 0x63) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x70, 0x73) AM_DEVREADWRITE("pia2", pia6821_device, read, write)
|
||||
@ -267,8 +267,8 @@ static ADDRESS_MAP_START( supnudg2_io_map, AS_IO, 8, coinmstr_state )
|
||||
AM_RANGE(0x68, 0x69) AM_READNOP
|
||||
AM_RANGE(0x68, 0x6b) AM_WRITENOP
|
||||
AM_RANGE(0x6b, 0x6b) AM_READNOP
|
||||
AM_RANGE(0x78, 0x79) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x79, 0x79) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x78, 0x79) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x79, 0x79) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xc0, 0xc1) AM_READNOP
|
||||
AM_RANGE(0xc0, 0xc3) AM_WRITENOP
|
||||
ADDRESS_MAP_END
|
||||
@ -277,8 +277,8 @@ static ADDRESS_MAP_START( pokeroul_io_map, AS_IO, 8, coinmstr_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x41, 0x41) AM_DEVWRITE("crtc", mc6845_device, register_w)
|
||||
AM_RANGE(0x48, 0x49) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x49, 0x49) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x48, 0x49) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x49, 0x49) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x58, 0x5b) AM_DEVREADWRITE("pia0", pia6821_device, read, write) /* confirmed */
|
||||
AM_RANGE(0x68, 0x6b) AM_DEVREADWRITE("pia1", pia6821_device, read, write) /* confirmed */
|
||||
AM_RANGE(0x78, 0x7b) AM_DEVREADWRITE("pia2", pia6821_device, read, write) /* confirmed */
|
||||
|
@ -158,9 +158,9 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, cop01_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE_LEGACY("ay3", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE("ay3", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x06, 0x06) AM_READ(cop01_sound_command_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -646,7 +646,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( winner81_sound_cpu_io_map, AS_IO, 8, corona_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/* Winners Circle 1982
|
||||
@ -700,7 +700,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( winner82_sound_cpu_io_map, AS_IO, 8, corona_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x02, 0x03) AM_WRITENOP /* socket for another ay, inited but never played */
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -761,7 +761,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( re800_sound_cpu_io_map, AS_IO, 8, corona_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -821,7 +821,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( luckyrlt_sound_cpu_io_map, AS_IO, 8, corona_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -278,7 +278,7 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, crgolf_state )
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM
|
||||
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xc002, 0xc002) AM_WRITENOP
|
||||
AM_RANGE(0xe000, 0xe000) AM_READWRITE(switch_input_r, switch_input_select_w)
|
||||
AM_RANGE(0xe001, 0xe001) AM_READWRITE(analog_input_r, unknown_w)
|
||||
|
@ -297,17 +297,17 @@ static ADDRESS_MAP_START( snd_io_map, AS_IO, 8, dacholer_state )
|
||||
AM_RANGE(0x08, 0x08) AM_WRITE(snd_irq_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_WRITE(snd_ack_w)
|
||||
AM_RANGE(0x80, 0x80) AM_WRITE(adpcm_w)
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE_LEGACY("ay3", ay8910_data_address_w)
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( itaten_snd_io_map, AS_IO, 8, dacholer_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_byte_r, soundlatch_clear_byte_w )
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE_LEGACY("ay3", ay8910_data_address_w)
|
||||
AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8a, 0x8b) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -322,7 +322,7 @@ static ADDRESS_MAP_START( dblcrown_io, AS_IO, 8, dblcrown_state )
|
||||
AM_RANGE(0x10, 0x10) AM_READWRITE(lamps_r,lamps_w)
|
||||
AM_RANGE(0x11, 0x11) AM_READWRITE(bank_r,bank_w)
|
||||
AM_RANGE(0x12, 0x12) AM_READWRITE(mux_r,mux_w)
|
||||
AM_RANGE(0x20, 0x21) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x20, 0x21) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
// AM_RANGE(0x30, 0x30) always 1?
|
||||
AM_RANGE(0x40, 0x40) AM_WRITE(output_w)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -63,8 +63,8 @@ static ADDRESS_MAP_START( dday_map, AS_PROGRAM, 8, dday_state )
|
||||
AM_RANGE(0x5800, 0x5bff) AM_RAM_WRITE(dday_bgvideoram_w) AM_SHARE("bgvideoram")
|
||||
AM_RANGE(0x5c00, 0x5fff) AM_READWRITE(dday_colorram_r, dday_colorram_w) AM_SHARE("colorram")
|
||||
AM_RANGE(0x6000, 0x63ff) AM_RAM
|
||||
AM_RANGE(0x6400, 0x6401) AM_MIRROR(0x000e) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x6800, 0x6801) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0x6400, 0x6401) AM_MIRROR(0x000e) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6800, 0x6801) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6c00, 0x6c00) AM_READ_PORT("BUTTONS")
|
||||
AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW0")
|
||||
AM_RANGE(0x7400, 0x7400) AM_READ_PORT("DSW1")
|
||||
|
@ -280,10 +280,10 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, ddayjlc_state )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x2000, 0x23ff) AM_RAM
|
||||
AM_RANGE(0x3000, 0x3000) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x3000, 0x3000) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x5000, 0x5000) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_WRITE(sound_nmi_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -1918,8 +1918,8 @@ static ADDRESS_MAP_START( quiz365_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
AM_RANGE(0x3002c0, 0x3002c1) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)// Sound
|
||||
AM_RANGE(0x300300, 0x300303) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0x300340, 0x30035f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0x300380, 0x300383) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300384, 0x300385) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0x300380, 0x300383) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300384, 0x300385) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
|
||||
AM_RANGE(0x3003c2, 0x3003c3) AM_WRITE(quiz365_oki_bank1_w)
|
||||
AM_RANGE(0x3003ca, 0x3003cb) AM_WRITE(ddenlovr_blitter_irq_ack_w) // Blitter irq acknowledge
|
||||
AM_RANGE(0x3003cc, 0x3003cd) AM_WRITE(quiz365_oki_bank2_w)
|
||||
@ -1970,7 +1970,7 @@ static ADDRESS_MAP_START( ddenlovj_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
AM_RANGE(0x300086, 0x300087) AM_READ(ddenlovr_gfxrom_r) // Video Chip
|
||||
AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0x300100, 0x30011f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300180, 0x300181) AM_READ_PORT("P1")
|
||||
AM_RANGE(0x300182, 0x300183) AM_READ_PORT("P2")
|
||||
AM_RANGE(0x300184, 0x300185) AM_READ_PORT("SYSTEM")
|
||||
@ -2037,8 +2037,8 @@ static ADDRESS_MAP_START( ddenlovrk_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
|
||||
AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
|
||||
AM_RANGE(0xe00700, 0xe00701) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) // Sound
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -2075,8 +2075,8 @@ static ADDRESS_MAP_START( ddenlovr_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
|
||||
AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
|
||||
AM_RANGE(0xe00700, 0xe00701) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) // Sound
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -2149,7 +2149,7 @@ static ADDRESS_MAP_START( nettoqc_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
AM_RANGE(0x300086, 0x300087) AM_READ(ddenlovr_gfxrom_r) // Video Chip
|
||||
AM_RANGE(0x3000c0, 0x3000c3) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0x300100, 0x30011f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300140, 0x300143) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0x300180, 0x300181) AM_READ_PORT("P1")
|
||||
AM_RANGE(0x300182, 0x300183) AM_READ_PORT("P2")
|
||||
AM_RANGE(0x300184, 0x300185) AM_READ_PORT("SYSTEM")
|
||||
@ -2212,8 +2212,8 @@ static ADDRESS_MAP_START( ultrchmp_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
|
||||
AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write,0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
|
||||
AM_RANGE(0xe00700, 0xe00701) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) // Sound
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("nvram") // RAM (Battey-backed)
|
||||
ADDRESS_MAP_END
|
||||
@ -2458,8 +2458,8 @@ static ADDRESS_MAP_START( mmpanic_sound_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x04, 0x04) AM_NOP // read only once at the start
|
||||
AM_RANGE(0x06, 0x06) AM_WRITENOP // almost always 1, sometimes 0
|
||||
AM_RANGE(0x08, 0x09) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x0e, 0x0e) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x0c, 0x0c) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x0e, 0x0e) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -2971,7 +2971,7 @@ static ADDRESS_MAP_START( mjchuuka_portmap, AS_IO, 8, ddenlovr_state ) // 16
|
||||
AM_RANGE(0x80, 0x80) AM_MIRROR(0xff00) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0xa0, 0xa1) AM_MIRROR(0xff00) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0xc0, 0xcf) AM_MIRROR(0xff00) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
|
||||
AM_RANGE(0xe0, 0xe1) AM_MIRROR(0xff00) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xe0, 0xe1) AM_MIRROR(0xff00) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -3079,9 +3079,9 @@ static ADDRESS_MAP_START( mjmyster_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x23, 0x23) AM_READ(mjmyster_keyb_r)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x42, 0x43) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x44, 0x44) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x46, 0x46) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x48, 0x48) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x44, 0x44) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x46, 0x46) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x48, 0x48) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x60, 0x6f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
|
||||
AM_RANGE(0x80, 0x83) AM_WRITE(ddenlovr_palette_base_w)
|
||||
AM_RANGE(0x84, 0x87) AM_WRITE(ddenlovr_palette_mask_w)
|
||||
@ -3244,9 +3244,9 @@ static ADDRESS_MAP_START( hginga_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(mjmyster_rambank_w)
|
||||
AM_RANGE(0x1e, 0x1e) AM_WRITE(hginga_rombank_w)
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x24, 0x24) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x26, 0x26) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x28, 0x28) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x24, 0x24) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x26, 0x26) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x28, 0x28) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x40, 0x40) AM_WRITE(hginga_input_w)
|
||||
AM_RANGE(0x41, 0x41) AM_WRITE(hginga_coins_w)
|
||||
AM_RANGE(0x42, 0x42) AM_READ(hginga_coins_r)
|
||||
@ -3367,9 +3367,9 @@ static ADDRESS_MAP_START( hgokou_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x62, 0x62) AM_READ(hgokou_input_r)
|
||||
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x82, 0x83) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x84, 0x84) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x86, 0x86) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x88, 0x88) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x84, 0x84) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x86, 0x86) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x88, 0x88) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xb0, 0xb0) AM_READ(hanakanz_rand_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -3410,9 +3410,9 @@ static ADDRESS_MAP_START( hgokbang_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x1e, 0x1e) AM_WRITE(hginga_rombank_w)
|
||||
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x22, 0x23) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x24, 0x24) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x26, 0x26) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x28, 0x28) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x24, 0x24) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x26, 0x26) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x28, 0x28) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x40, 0x40) AM_WRITE(hgokou_dsw_sel_w)
|
||||
AM_RANGE(0x41, 0x41) AM_WRITE(hgokou_input_w)
|
||||
AM_RANGE(0x42, 0x42) AM_READ(hgokou_input_r)
|
||||
@ -3547,9 +3547,9 @@ static ADDRESS_MAP_START( mjmywrld_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x23, 0x23) AM_READ(mjmyster_keyb_r)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x42, 0x43) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x44, 0x44) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x46, 0x46) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x48, 0x48) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x44, 0x44) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x46, 0x46) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x48, 0x48) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x60, 0x6f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
|
||||
AM_RANGE(0x80, 0x83) AM_WRITE(ddenlovr_palette_base_w)
|
||||
AM_RANGE(0x84, 0x87) AM_WRITE(ddenlovr_palette_mask_w)
|
||||
@ -3648,8 +3648,8 @@ static ADDRESS_MAP_START( akamaru_map, AS_PROGRAM, 16, ddenlovr_state )
|
||||
|
||||
AM_RANGE(0xe00400, 0xe00403) AM_DEVWRITE8_LEGACY("ymsnd", ym2413_w, 0x00ff)
|
||||
AM_RANGE(0xe00500, 0xe0051f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8_LEGACY("aysnd", ay8910_address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8_LEGACY("aysnd", ay8910_r, 0x00ff)
|
||||
AM_RANGE(0xe00600, 0xe00603) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
|
||||
AM_RANGE(0xe00604, 0xe00605) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
|
||||
AM_RANGE(0xe00700, 0xe00701) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) // Sound
|
||||
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
|
||||
ADDRESS_MAP_END
|
||||
@ -3739,7 +3739,7 @@ static ADDRESS_MAP_START( mjflove_portmap, AS_IO, 8, ddenlovr_state ) // 16 bit
|
||||
AM_RANGE(0x0184, 0x0184) AM_WRITE(mjflove_coincounter_w)
|
||||
AM_RANGE(0x0200, 0x0201) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x0280, 0x028f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
|
||||
AM_RANGE(0x0300, 0x0301) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x0300, 0x0301) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0380, 0x0380) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -3842,7 +3842,7 @@ static ADDRESS_MAP_START( sryudens_portmap, AS_IO, 8, ddenlovr_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(sryudens_rambank_w) // ? ack on RTC int
|
||||
AM_RANGE(0x1e, 0x1e) AM_WRITE(mjflove_rombank_w)
|
||||
AM_RANGE(0x20, 0x23) AM_WRITE(ddenlovr_palette_base_w)
|
||||
@ -3929,7 +3929,7 @@ static ADDRESS_MAP_START( janshinp_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x80, 0x80) AM_RAM
|
||||
AM_RANGE(0x90, 0x90) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x92, 0x93) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x94, 0x95) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x94, 0x95) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -4002,8 +4002,8 @@ static ADDRESS_MAP_START( seljan2_portmap, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE(0x43, 0x43) AM_READ(rongrong_gfxrom_r)
|
||||
AM_RANGE(0x50, 0x51) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w)
|
||||
AM_RANGE(0x54, 0x54) AM_DEVREADWRITE("oki", okim6295_device, read, write)
|
||||
AM_RANGE(0x58, 0x58) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x5c, 0x5c) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w) // dsw
|
||||
AM_RANGE(0x58, 0x58) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x5c, 0x5c) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w) // dsw
|
||||
AM_RANGE(0x60, 0x60) AM_READNOP AM_WRITE(sryudens_rambank_w) // ? ack on RTC int
|
||||
AM_RANGE(0x70, 0x70) AM_WRITE(seljan2_rombank_w)
|
||||
AM_RANGE(0x80, 0x80) AM_READ_PORT("SYSTEM") AM_WRITE(seljan2_palette_enab_w) // writes: 1 = palette RAM at b000, 0 = ROM
|
||||
@ -4151,9 +4151,9 @@ static ADDRESS_MAP_START( htengoku_io_map, AS_IO, 8, ddenlovr_state )
|
||||
AM_RANGE( 0x21, 0x21 ) AM_WRITE(htengoku_coin_w) //
|
||||
AM_RANGE( 0x22, 0x22 ) AM_READ(htengoku_coin_r) //
|
||||
AM_RANGE( 0x23, 0x23 ) AM_READ(htengoku_input_r) //
|
||||
AM_RANGE( 0x40, 0x40 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) // AY8910
|
||||
AM_RANGE( 0x42, 0x42 ) AM_DEVREAD_LEGACY("aysnd", ay8910_r) //
|
||||
AM_RANGE( 0x44, 0x44 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) //
|
||||
AM_RANGE( 0x40, 0x40 ) AM_DEVWRITE("aysnd", ay8910_device, address_w) // AY8910
|
||||
AM_RANGE( 0x42, 0x42 ) AM_DEVREAD("aysnd", ay8910_device, data_r) //
|
||||
AM_RANGE( 0x44, 0x44 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) //
|
||||
AM_RANGE( 0x46, 0x47 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x80, 0x8f ) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
|
||||
AM_RANGE( 0xa0, 0xa3 ) AM_WRITE(ddenlovr_palette_base_w) // ddenlovr mixer chip
|
||||
|
@ -305,10 +305,10 @@ INTERRUPT_GEN_MEMBER(deco_ld_state::sound_interrupt)
|
||||
|
||||
static ADDRESS_MAP_START( rblaster_sound_map, AS_PROGRAM, 8, deco_ld_state )
|
||||
AM_RANGE(0x0000, 0x01ff) AM_RAM
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_READWRITE(soundlatch_byte_r,soundlatch2_byte_w)
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
@ -113,10 +113,10 @@ static ADDRESS_MAP_START( decocass_sound_map, AS_PROGRAM, 8, decocass_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_RAM
|
||||
AM_RANGE(0x1000, 0x17ff) AM_READWRITE(decocass_sound_nmi_enable_r, decocass_sound_nmi_enable_w)
|
||||
AM_RANGE(0x1800, 0x1fff) AM_READWRITE(decocass_sound_data_ack_reset_r, decocass_sound_data_ack_reset_w)
|
||||
AM_RANGE(0x2000, 0x2fff) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
|
||||
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x6000, 0x6fff) AM_DEVWRITE_LEGACY("ay2", ay8910_data_w)
|
||||
AM_RANGE(0x8000, 0x8fff) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x2000, 0x2fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
|
||||
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6fff) AM_DEVWRITE("ay2", ay8910_device, data_w)
|
||||
AM_RANGE(0x8000, 0x8fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0xa000, 0xafff) AM_READ(decocass_sound_command_r)
|
||||
AM_RANGE(0xc000, 0xcfff) AM_WRITE(decocass_sound_data_w)
|
||||
AM_RANGE(0xf800, 0xffff) AM_ROM
|
||||
|
@ -408,13 +408,13 @@ WRITE8_MEMBER(dlair_state::laserdisc_w)
|
||||
static ADDRESS_MAP_START( dlus_map, AS_PROGRAM, 8, dlair_state )
|
||||
AM_RANGE(0x0000, 0x9fff) AM_ROM
|
||||
AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_RAM
|
||||
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fc7) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fc7) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xc008, 0xc008) AM_MIRROR(0x1fc7) AM_READ_PORT("CONTROLS")
|
||||
AM_RANGE(0xc010, 0xc010) AM_MIRROR(0x1fc7) AM_READ_PORT("SERVICE")
|
||||
AM_RANGE(0xc020, 0xc020) AM_MIRROR(0x1fc7) AM_READ(laserdisc_r)
|
||||
AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1fc7) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1fc7) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0xe008, 0xe008) AM_MIRROR(0x1fc7) AM_WRITE(misc_w)
|
||||
AM_RANGE(0xe010, 0xe010) AM_MIRROR(0x1fc7) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xe010, 0xe010) AM_MIRROR(0x1fc7) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xe020, 0xe020) AM_MIRROR(0x1fc7) AM_WRITE(laserdisc_w)
|
||||
AM_RANGE(0xe030, 0xe037) AM_MIRROR(0x1fc0) AM_WRITE(led_den2_w)
|
||||
AM_RANGE(0xe038, 0xe03f) AM_MIRROR(0x1fc0) AM_WRITE(led_den1_w)
|
||||
|
@ -151,9 +151,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( dderby_sound_map, AS_PROGRAM, 8, dmndrby_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_ROM
|
||||
AM_RANGE(0x1000, 0x1000) AM_RAM //???
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x4001, 0x4001) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x4001, 0x4001) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x6000, 0x67ff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -45,11 +45,11 @@ WRITE8_MEMBER(dogfgt_state::dogfgt_soundcontrol_w)
|
||||
{
|
||||
/* bit 5 goes to 8910 #0 BDIR pin */
|
||||
if ((m_last_snd_ctrl & 0x20) == 0x20 && (data & 0x20) == 0x00)
|
||||
ay8910_data_address_w(machine().device("ay1"), space, m_last_snd_ctrl >> 4, m_soundlatch);
|
||||
machine().device<ay8910_device>("ay1")->data_address_w(space, m_last_snd_ctrl >> 4, m_soundlatch);
|
||||
|
||||
/* bit 7 goes to 8910 #1 BDIR pin */
|
||||
if ((m_last_snd_ctrl & 0x80) == 0x80 && (data & 0x80) == 0x00)
|
||||
ay8910_data_address_w(machine().device("ay2"), space, m_last_snd_ctrl >> 6, m_soundlatch);
|
||||
machine().device<ay8910_device>("ay2")->data_address_w(space, m_last_snd_ctrl >> 6, m_soundlatch);
|
||||
|
||||
m_last_snd_ctrl = data;
|
||||
}
|
||||
|
@ -175,8 +175,8 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dominob_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_WRITENOP // there are some garbage writes to ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xd001, 0xd001) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xd008, 0xd008) AM_WRITE(dominob_d008_w)
|
||||
AM_RANGE(0xd00c, 0xd00c) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0xd010, 0xd010) AM_READ_PORT("IN1") AM_WRITENOP
|
||||
|
@ -198,11 +198,11 @@ WRITE8_MEMBER(drw80pkr_state::drw80pkr_io_w)
|
||||
|
||||
// ay8910 control port
|
||||
if (m_p1 == 0xfc)
|
||||
ay8910_address_w(machine().device("aysnd"), space, 0, data);
|
||||
machine().device<ay8910_device>("aysnd")->address_w(space, 0, data);
|
||||
|
||||
// ay8910_write_port_0_w
|
||||
if (m_p1 == 0xfe)
|
||||
ay8910_data_w(machine().device("aysnd"), space, 0, data);
|
||||
machine().device<ay8910_device>("aysnd")->data_w(space, 0, data);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -522,9 +522,9 @@ static ADDRESS_MAP_START( dunhuang_io_map, AS_IO, 8, dunhuang_state )
|
||||
AM_RANGE( 0x0086, 0x0086 ) AM_WRITE(dunhuang_rombank_w )
|
||||
AM_RANGE( 0x0087, 0x0087 ) AM_WRITE(dunhuang_layers_w )
|
||||
|
||||
AM_RANGE( 0x0088, 0x0088 ) AM_DEVREAD_LEGACY("ay8910", ay8910_r )
|
||||
AM_RANGE( 0x0090, 0x0090 ) AM_DEVWRITE_LEGACY("ay8910", ay8910_data_w )
|
||||
AM_RANGE( 0x0098, 0x0098 ) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_w )
|
||||
AM_RANGE( 0x0088, 0x0088 ) AM_DEVREAD("ay8910", ay8910_device, data_r )
|
||||
AM_RANGE( 0x0090, 0x0090 ) AM_DEVWRITE("ay8910", ay8910_device, data_w )
|
||||
AM_RANGE( 0x0098, 0x0098 ) AM_DEVWRITE("ay8910", ay8910_device, address_w )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -614,8 +614,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( io_map, AS_IO, 8, dwarfd_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
|
||||
AM_RANGE(0x20, 0x20) AM_READWRITE(i8275_preg_r, i8275_preg_w)
|
||||
AM_RANGE(0x21, 0x21) AM_READWRITE(i8275_sreg_r, i8275_creg_w)
|
||||
|
@ -85,7 +85,7 @@ WRITE8_MEMBER(dynadice_state::sound_data_w)
|
||||
|
||||
WRITE8_MEMBER(dynadice_state::sound_control_w)
|
||||
{
|
||||
device_t *device = machine().device("aysnd");
|
||||
ay8910_device *ay8910 = machine().device<ay8910_device>("aysnd");
|
||||
/*
|
||||
AY 3-8910 :
|
||||
|
||||
@ -96,10 +96,10 @@ WRITE8_MEMBER(dynadice_state::sound_control_w)
|
||||
|
||||
*/
|
||||
if ((data & 7) == 7)
|
||||
ay8910_address_w(device, space, 0, m_ay_data);
|
||||
ay8910->address_w(space, 0, m_ay_data);
|
||||
|
||||
if ((data & 7) == 6)
|
||||
ay8910_data_w(device, space, 0, m_ay_data);
|
||||
ay8910->data_w(space, 0, m_ay_data);
|
||||
}
|
||||
|
||||
|
||||
|
@ -532,7 +532,7 @@ static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x76, 0x76 ) AM_WRITE(dynax_blit_palbank_w) // Layers Palettes (High Bit)
|
||||
AM_RANGE( 0x77, 0x77 ) AM_WRITE(hanamai_layer_half_w) // half of the interleaved layer to write to
|
||||
AM_RANGE( 0x78, 0x79 ) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) // 2 x DSW
|
||||
AM_RANGE( 0x7a, 0x7b ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w) // AY8910
|
||||
AM_RANGE( 0x7a, 0x7b ) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) // AY8910
|
||||
// AM_RANGE( 0x7c, 0x7c ) AM_WRITENOP // CRT Controller
|
||||
// AM_RANGE( 0x7d, 0x7d ) AM_WRITENOP //
|
||||
AM_RANGE( 0x7e, 0x7e ) AM_WRITE(dynax_blit_romregion_w) // Blitter ROM bank
|
||||
@ -554,9 +554,9 @@ static ADDRESS_MAP_START( hnoridur_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x30, 0x30 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x32, 0x32 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x34, 0x35 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x36, 0x36 ) AM_DEVREAD_LEGACY("aysnd", ay8910_r) // AY8910, DSW1
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x36, 0x36 ) AM_DEVREAD("aysnd", ay8910_device, data_r) // AY8910, DSW1
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x40, 0x40 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen
|
||||
AM_RANGE( 0x41, 0x41 ) AM_WRITE(dynax_blit_dest_w) // Destination Layer
|
||||
AM_RANGE( 0x42, 0x42 ) AM_WRITE(dynax_blit_palette01_w) // Layers Palettes
|
||||
@ -640,9 +640,9 @@ static ADDRESS_MAP_START( hjingi_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x32, 0x32 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x34, 0x35 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
|
||||
AM_RANGE( 0x36, 0x36 ) AM_DEVREAD_LEGACY("aysnd", ay8910_r) // AY8910, DSW1
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x36, 0x36 ) AM_DEVREAD("aysnd", ay8910_device, data_r) // AY8910, DSW1
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
|
||||
AM_RANGE( 0x40, 0x40 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen
|
||||
AM_RANGE( 0x41, 0x41 ) AM_WRITE(dynax_blit_dest_w) // Destination Layer
|
||||
@ -779,8 +779,8 @@ static ADDRESS_MAP_START( yarunara_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x20, 0x20 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x22, 0x22 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x24, 0x25 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x28, 0x28 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x2a, 0x2a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x28, 0x28 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x2a, 0x2a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x48, 0x48 ) AM_WRITE(dynax_extra_scrollx_w) // screen scroll X
|
||||
AM_RANGE( 0x49, 0x49 ) AM_WRITE(dynax_extra_scrolly_w) // screen scroll Y
|
||||
AM_RANGE( 0x4a, 0x4a ) AM_WRITE(yarunara_rombank_w) // BANK ROM Select
|
||||
@ -818,8 +818,8 @@ static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x30, 0x30 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x32, 0x32 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x34, 0x35 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x38, 0x38 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x3a, 0x3a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x40, 0x40 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen
|
||||
AM_RANGE( 0x41, 0x41 ) AM_WRITE(dynax_blit_dest_w) // Destination Layer
|
||||
AM_RANGE( 0x42, 0x42 ) AM_WRITE(dynax_blit_palette01_w) // Layers Palettes
|
||||
@ -901,8 +901,8 @@ static ADDRESS_MAP_START( nanajign_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x00, 0x00 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x02, 0x02 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x04, 0x05 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x08, 0x08 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x0a, 0x0a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x08, 0x08 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x0a, 0x0a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x10, 0x10 ) AM_WRITE(hanamai_keyboard_w) // keyboard row select
|
||||
AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("COINS") // Coins
|
||||
AM_RANGE( 0x12, 0x12 ) AM_READ(hanamai_keyboard_1_r) // P2
|
||||
@ -1020,8 +1020,8 @@ static ADDRESS_MAP_START( jantouki_sound_io_map, AS_IO, 8, dynax_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE( 0x00, 0x00 ) AM_WRITE(jantouki_sound_rombank_w) // BANK ROM Select
|
||||
AM_RANGE( 0x10, 0x10 ) AM_WRITE(jantouki_sound_vblank_ack_w) // VBlank IRQ Ack
|
||||
AM_RANGE( 0x21, 0x21 ) AM_DEVREAD_LEGACY("aysnd", ay8910_r) // AY8910
|
||||
AM_RANGE( 0x22, 0x23 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w) //
|
||||
AM_RANGE( 0x21, 0x21 ) AM_DEVREAD("aysnd", ay8910_device, data_r) // AY8910
|
||||
AM_RANGE( 0x22, 0x23 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w) //
|
||||
AM_RANGE( 0x28, 0x29 ) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) //
|
||||
AM_RANGE( 0x30, 0x30 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x40, 0x40 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
@ -1059,8 +1059,8 @@ static ADDRESS_MAP_START( mjelctrn_io_map, AS_IO, 8, dynax_state )
|
||||
AM_RANGE( 0x00, 0x00 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
|
||||
AM_RANGE( 0x02, 0x02 ) AM_WRITE(adpcm_data_w) // MSM5205 data
|
||||
AM_RANGE( 0x04, 0x05 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x08, 0x08 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) // AY8910
|
||||
AM_RANGE( 0x0a, 0x0a ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x08, 0x08 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) // AY8910
|
||||
AM_RANGE( 0x0a, 0x0a ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x11, 0x12 ) AM_WRITE(mjelctrn_blitter_ack_w) //?
|
||||
// AM_RANGE( 0x20, 0x20 ) AM_WRITENOP // CRT Controller
|
||||
// AM_RANGE( 0x21, 0x21 ) AM_WRITENOP // CRT Controller
|
||||
@ -1339,9 +1339,9 @@ static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8, dynax_state )
|
||||
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
|
||||
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE( 0x8000, 0xffff ) AM_READWRITE(tenkai_8000_r, tenkai_8000_w)
|
||||
AM_RANGE( 0x10000, 0x10000 ) AM_DEVREAD_LEGACY("aysnd", ay8910_r) // AY8910
|
||||
AM_RANGE( 0x10008, 0x10008 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w) //
|
||||
AM_RANGE( 0x10010, 0x10010 ) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w) //
|
||||
AM_RANGE( 0x10000, 0x10000 ) AM_DEVREAD("aysnd", ay8910_device, data_r) // AY8910
|
||||
AM_RANGE( 0x10008, 0x10008 ) AM_DEVWRITE("aysnd", ay8910_device, data_w) //
|
||||
AM_RANGE( 0x10010, 0x10010 ) AM_DEVWRITE("aysnd", ay8910_device, address_w) //
|
||||
AM_RANGE( 0x10020, 0x10021 ) AM_DEVWRITE_LEGACY("ymsnd", ym2413_w) //
|
||||
AM_RANGE( 0x10040, 0x10040 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen
|
||||
AM_RANGE( 0x10044, 0x10044 ) AM_WRITE(tenkai_blit_dest_w) // Destination Layer
|
||||
|
@ -490,8 +490,8 @@ static ADDRESS_MAP_START( engima2_audio_cpu_map, AS_PROGRAM, 8, enigma2_state )
|
||||
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_WRITENOP
|
||||
AM_RANGE(0x2000, 0x7fff) AM_NOP
|
||||
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM
|
||||
AM_RANGE(0xa000, 0xa001) AM_MIRROR(0x1ffc) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xa000, 0xa001) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xa003, 0xa003) AM_MIRROR(0x1ffc) AM_NOP
|
||||
AM_RANGE(0xc000, 0xffff) AM_NOP
|
||||
ADDRESS_MAP_END
|
||||
|
@ -79,18 +79,18 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, epos_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW") AM_WRITE(watchdog_reset_w)
|
||||
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(epos_port_1_w)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("INPUTS") AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_READ_PORT("INPUTS") AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x03, 0x03) AM_READ_PORT("UNK")
|
||||
AM_RANGE(0x06, 0x06) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x06, 0x06) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( dealer_io_map, AS_IO, 8, epos_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
|
||||
AM_RANGE(0x20, 0x24) AM_WRITE(dealer_decrypt_rom)
|
||||
AM_RANGE(0x34, 0x34) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x34, 0x34) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x38, 0x38) AM_READ_PORT("DSW")
|
||||
AM_RANGE(0x3C, 0x3C) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x3C, 0x3C) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x40, 0x40) AM_WRITE(watchdog_reset_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -741,7 +741,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, equites_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0xc080, 0xc08d) AM_DEVWRITE_LEGACY("msm", msm5232_w)
|
||||
AM_RANGE(0xc0a0, 0xc0a1) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0xc0a0, 0xc0a1) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
AM_RANGE(0xc0b0, 0xc0b0) AM_WRITENOP // n.c.
|
||||
AM_RANGE(0xc0c0, 0xc0c0) AM_WRITE(equites_cymbal_ctrl_w)
|
||||
AM_RANGE(0xc0d0, 0xc0d0) AM_WRITE(equites_dac_latch_w) // followed by 1 (and usually 0) on 8155 port B
|
||||
|
@ -151,7 +151,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( espial_sound_io_map, AS_IO, 8, espial_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -120,20 +120,20 @@ WRITE8_MEMBER(ettrivia_state::b800_w)
|
||||
/* special case to return the value written to 0xb000 */
|
||||
/* does it reset the chips too ? */
|
||||
case 0: break;
|
||||
case 0xc4: m_b000_ret = ay8910_r(machine().device("ay1"), space, 0); break;
|
||||
case 0x94: m_b000_ret = ay8910_r(machine().device("ay2"), space, 0); break;
|
||||
case 0x86: m_b000_ret = ay8910_r(machine().device("ay3"), space, 0); break;
|
||||
case 0xc4: m_b000_ret = machine().device<ay8910_device>("ay1")->data_r(space, 0); break;
|
||||
case 0x94: m_b000_ret = machine().device<ay8910_device>("ay2")->data_r(space, 0); break;
|
||||
case 0x86: m_b000_ret = machine().device<ay8910_device>("ay3")->data_r(space, 0); break;
|
||||
|
||||
case 0x80:
|
||||
switch(m_b800_prev)
|
||||
{
|
||||
case 0xe0: ay8910_address_w(machine().device("ay1"),space,0,m_b000_val); break;
|
||||
case 0x98: ay8910_address_w(machine().device("ay2"),space,0,m_b000_val); break;
|
||||
case 0x83: ay8910_address_w(machine().device("ay3"),space,0,m_b000_val); break;
|
||||
case 0xe0: machine().device<ay8910_device>("ay1")->address_w(space,0,m_b000_val); break;
|
||||
case 0x98: machine().device<ay8910_device>("ay2")->address_w(space,0,m_b000_val); break;
|
||||
case 0x83: machine().device<ay8910_device>("ay3")->address_w(space,0,m_b000_val); break;
|
||||
|
||||
case 0xa0: ay8910_data_w(machine().device("ay1"),space,0,m_b000_val); break;
|
||||
case 0x88: ay8910_data_w(machine().device("ay2"),space,0,m_b000_val); break;
|
||||
case 0x81: ay8910_data_w(machine().device("ay3"),space,0,m_b000_val); break;
|
||||
case 0xa0: machine().device<ay8910_device>("ay1")->data_w(space,0,m_b000_val); break;
|
||||
case 0x88: machine().device<ay8910_device>("ay2")->data_w(space,0,m_b000_val); break;
|
||||
case 0x81: machine().device<ay8910_device>("ay3")->data_w(space,0,m_b000_val); break;
|
||||
|
||||
}
|
||||
break;
|
||||
|
@ -54,7 +54,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exedexes_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x47ff) AM_RAM
|
||||
AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x8002, 0x8002) AM_DEVWRITE("sn1", sn76489_device, write)
|
||||
AM_RANGE(0x8003, 0x8003) AM_DEVWRITE("sn2", sn76489_device, write)
|
||||
ADDRESS_MAP_END
|
||||
|
@ -198,9 +198,9 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, exerion_state )
|
||||
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0xc000, 0xc000) AM_WRITE(exerion_videoreg_w)
|
||||
AM_RANGE(0xc800, 0xc800) AM_WRITE(soundlatch_byte_w)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE_LEGACY("ay1", ay8910_address_data_w)
|
||||
AM_RANGE(0xd800, 0xd801) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w)
|
||||
AM_RANGE(0xd802, 0xd802) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xd800, 0xd801) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xd802, 0xd802) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -216,7 +216,7 @@ static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8, fastfred_state )
|
||||
AM_RANGE(0xf116, 0xf116) AM_WRITE(fastfred_flip_screen_x_w)
|
||||
AM_RANGE(0xf117, 0xf117) AM_WRITE(fastfred_flip_screen_y_w)
|
||||
//AM_RANGE(0xf800, 0xf800) AM_READ(watchdog_reset_r) // Why doesn't this work???
|
||||
AM_RANGE(0xf800, 0xf801) AM_READNOP AM_DEVWRITE_LEGACY("ay8910.1", ay8910_address_data_w)
|
||||
AM_RANGE(0xf800, 0xf801) AM_READNOP AM_DEVWRITE("ay8910.1", ay8910_device, address_data_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -252,8 +252,8 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fastfred_state )
|
||||
AM_RANGE(0x2000, 0x23ff) AM_RAM
|
||||
AM_RANGE(0x3000, 0x3000) AM_READ(soundlatch_byte_r) AM_WRITE(sound_nmi_mask_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_WRITEONLY // Reset PSG's
|
||||
AM_RANGE(0x5000, 0x5001) AM_DEVWRITE_LEGACY("ay8910.1", ay8910_address_data_w)
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVWRITE_LEGACY("ay8910.2", ay8910_address_data_w)
|
||||
AM_RANGE(0x5000, 0x5001) AM_DEVWRITE("ay8910.1", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x6000, 0x6001) AM_DEVWRITE("ay8910.2", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_READNOP // only for Imago, read but not used
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -131,12 +131,12 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, fcombat_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_ROM
|
||||
AM_RANGE(0x4000, 0x47ff) AM_RAM
|
||||
AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x8001, 0x8001) AM_DEVREAD_LEGACY("ay1", ay8910_r)
|
||||
AM_RANGE(0x8002, 0x8003) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_DEVREAD_LEGACY("ay2", ay8910_r)
|
||||
AM_RANGE(0xa002, 0xa003) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
|
||||
AM_RANGE(0xc001, 0xc001) AM_DEVREAD_LEGACY("ay3", ay8910_r)
|
||||
AM_RANGE(0xc002, 0xc003) AM_DEVWRITE_LEGACY("ay3", ay8910_data_address_w)
|
||||
AM_RANGE(0x8001, 0x8001) AM_DEVREAD("ay1", ay8910_device, data_r)
|
||||
AM_RANGE(0x8002, 0x8003) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_DEVREAD("ay2", ay8910_device, data_r)
|
||||
AM_RANGE(0xa002, 0xa003) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
|
||||
AM_RANGE(0xc001, 0xc001) AM_DEVREAD("ay3", ay8910_device, data_r)
|
||||
AM_RANGE(0xc002, 0xc003) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -315,10 +315,10 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( flipjack_sound_map, AS_PROGRAM, 8, flipjack_state )
|
||||
AM_RANGE(0x0000, 0x1fff) AM_ROM
|
||||
AM_RANGE(0x2000, 0x27ff) AM_RAM
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE_LEGACY("ay2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("ay2", ay8910_address_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVREADWRITE_LEGACY("ay1", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
|
||||
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0x8000, 0x8000) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( flipjack_sound_io_map, AS_IO, 8, flipjack_state )
|
||||
@ -407,7 +407,7 @@ static I8255A_INTERFACE( ppi8255_intf )
|
||||
};
|
||||
|
||||
|
||||
static AY8910_INTERFACE( ay8910_config_1 )
|
||||
static const ay8910_interface ay8910_config_1 =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT, /* Flags */
|
||||
AY8910_DEFAULT_LOADS, /* Load on channel in ohms */
|
||||
@ -417,7 +417,7 @@ static AY8910_INTERFACE( ay8910_config_1 )
|
||||
DEVCB_NULL /* Port B write */
|
||||
};
|
||||
|
||||
static AY8910_INTERFACE( ay8910_config_2 )
|
||||
static const ay8910_interface ay8910_config_2 =
|
||||
{
|
||||
AY8910_LEGACY_OUTPUT, /* Flags */
|
||||
AY8910_DEFAULT_LOADS, /* Load on channel in ohms */
|
||||
|
@ -428,7 +428,7 @@ WRITE8_MEMBER(flstory_state::sound_control_3_w)/* unknown */
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, flstory_state )
|
||||
AM_RANGE(0x0000, 0xbfff) AM_ROM
|
||||
AM_RANGE(0xc000, 0xc7ff) AM_RAM
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xca00, 0xca0d) AM_DEVWRITE_LEGACY("msm", msm5232_w)
|
||||
AM_RANGE(0xcc00, 0xcc00) AM_WRITE(sound_control_0_w)
|
||||
AM_RANGE(0xce00, 0xce00) AM_WRITE(sound_control_1_w)
|
||||
|
@ -55,8 +55,8 @@ static ADDRESS_MAP_START( io_mem, AS_IO, 8, forte2_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x98, 0x98) AM_DEVREADWRITE( "tms9928a", tms9928a_device, vram_read, vram_write )
|
||||
AM_RANGE(0x99, 0x99) AM_DEVREADWRITE( "tms9928a", tms9928a_device, register_read, register_write )
|
||||
AM_RANGE(0xa0, 0xa1) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xa2, 0xa2) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xa0, 0xa1) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xa2, 0xa2) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
|
||||
/* Ports a8-ab are originally for communicating with the i8255 PPI on MSX.
|
||||
Since this arcade board doesn't have one, those ports should be unmapped. */
|
||||
|
@ -575,8 +575,8 @@ static ADDRESS_MAP_START( fortecar_ports, AS_IO, 8, fortecar_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x20, 0x20) AM_DEVWRITE("crtc", mc6845_device, address_w) // pc=444
|
||||
AM_RANGE(0x21, 0x21) AM_DEVWRITE("crtc", mc6845_device, register_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x40, 0x40) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x60, 0x63) AM_DEVREADWRITE("fcppi0", i8255_device, read, write)//M5L8255AP
|
||||
// AM_RANGE(0x80, 0x81) //8251A UART
|
||||
AM_RANGE(0xa0, 0xa0) AM_DEVREADWRITE("rtc", v3021_device, read, write)
|
||||
|
@ -274,7 +274,7 @@ static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8, fromance_state )
|
||||
AM_RANGE(0xe6, 0xe6) AM_READWRITE(fromance_commanddata_r, fromance_busycheck_sub_w)
|
||||
AM_RANGE(0xe7, 0xe7) AM_WRITE(fromance_adpcm_reset_w)
|
||||
AM_RANGE(0xe8, 0xe8) AM_WRITE(fromance_adpcm_w)
|
||||
AM_RANGE(0xe9, 0xea) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0xe9, 0xea) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8, fromance_state )
|
||||
@ -288,7 +288,7 @@ static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8, fromance_state )
|
||||
AM_RANGE(0x26, 0x26) AM_READWRITE(fromance_commanddata_r, fromance_busycheck_sub_w)
|
||||
AM_RANGE(0x27, 0x27) AM_WRITE(fromance_adpcm_reset_w)
|
||||
AM_RANGE(0x28, 0x28) AM_WRITE(fromance_adpcm_w)
|
||||
AM_RANGE(0x29, 0x2a) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x29, 0x2a) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( fromance_sub_io_map, AS_IO, 8, fromance_state )
|
||||
|
@ -105,8 +105,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( io_map, AS_IO, 8, funkybee_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -925,8 +925,8 @@ static ADDRESS_MAP_START( funworld_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0e00, 0x0e00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0e01, 0x0e01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(funworld_videoram_w) AM_SHARE("videoram")
|
||||
@ -959,8 +959,8 @@ static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0e00, 0x0e00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0e01, 0x0e01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
|
||||
@ -977,8 +977,8 @@ static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0e00, 0x0e00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0e01, 0x0e01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x2c00, 0x2cff) AM_RAM /* range for protection */
|
||||
@ -993,8 +993,8 @@ static ADDRESS_MAP_START( cuoreuno_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0e00, 0x0e00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0e01, 0x0e01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x2000, 0x2000) AM_READNOP /* some unknown reads */
|
||||
@ -1011,8 +1011,8 @@ static ADDRESS_MAP_START( saloon_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x081c, 0x081c) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x081d, 0x081d) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("IN2")
|
||||
AM_RANGE(0x1800, 0x1800) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x1800, 0x1801) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x1800, 0x1800) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x1800, 0x1801) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
// AM_RANGE(0x2000, 0x2000) AM_READNOP /* some unknown reads... maybe a DSW */
|
||||
AM_RANGE(0x6000, 0x6fff) AM_RAM_WRITE(funworld_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0x7000, 0x7fff) AM_RAM_WRITE(funworld_colorram_w) AM_SHARE("colorram")
|
||||
@ -1036,8 +1036,8 @@ static ADDRESS_MAP_START( witchryl_map, AS_PROGRAM, 8, funworld_state )
|
||||
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
|
||||
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
|
||||
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD_LEGACY("ay8910", ay8910_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE_LEGACY("ay8910", ay8910_address_data_w)
|
||||
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r)
|
||||
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x0e00, 0x0e00) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x0e01, 0x0e01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
|
||||
AM_RANGE(0x4000, 0x4fff) AM_RAM_WRITE(funworld_videoram_w) AM_SHARE("videoram")
|
||||
|
@ -505,8 +505,8 @@ READ8_MEMBER(galaxian_state::konami_ay8910_r)
|
||||
{
|
||||
/* the decoding here is very simplistic, and you can address both simultaneously */
|
||||
UINT8 result = 0xff;
|
||||
if (offset & 0x20) result &= ay8910_r(machine().device("8910.1"), space, 0);
|
||||
if (offset & 0x80) result &= ay8910_r(machine().device("8910.0"), space, 0);
|
||||
if (offset & 0x20) result &= machine().device<ay8910_device>("8910.1")->data_r(space, 0);
|
||||
if (offset & 0x80) result &= machine().device<ay8910_device>("8910.0")->data_r(space, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -516,14 +516,14 @@ WRITE8_MEMBER(galaxian_state::konami_ay8910_w)
|
||||
/* AV 4,5 ==> AY8910 #2 */
|
||||
/* the decoding here is very simplistic, and you can address two simultaneously */
|
||||
if (offset & 0x10)
|
||||
ay8910_address_w(machine().device("8910.1"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.1")->address_w(space, 0, data);
|
||||
else if (offset & 0x20)
|
||||
ay8910_data_w(machine().device("8910.1"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.1")->data_w(space, 0, data);
|
||||
/* AV6,7 ==> AY8910 #1 */
|
||||
if (offset & 0x40)
|
||||
ay8910_address_w(machine().device("8910.0"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.0")->address_w(space, 0, data);
|
||||
else if (offset & 0x80)
|
||||
ay8910_data_w(machine().device("8910.0"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.0")->data_w(space, 0, data);
|
||||
}
|
||||
|
||||
|
||||
@ -893,7 +893,7 @@ READ8_MEMBER(galaxian_state::frogger_ay8910_r)
|
||||
{
|
||||
/* the decoding here is very simplistic */
|
||||
UINT8 result = 0xff;
|
||||
if (offset & 0x40) result &= ay8910_r(machine().device("8910.0"), space, 0);
|
||||
if (offset & 0x40) result &= machine().device<ay8910_device>("8910.0")->data_r(space, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -903,9 +903,9 @@ WRITE8_MEMBER(galaxian_state::frogger_ay8910_w)
|
||||
/* the decoding here is very simplistic */
|
||||
/* AV6,7 ==> AY8910 #1 */
|
||||
if (offset & 0x40)
|
||||
ay8910_data_w(machine().device("8910.0"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.0")->data_w(space, 0, data);
|
||||
else if (offset & 0x80)
|
||||
ay8910_address_w(machine().device("8910.0"), space, 0, data);
|
||||
machine().device<ay8910_device>("8910.0")->address_w(space, 0, data);
|
||||
}
|
||||
|
||||
|
||||
@ -972,9 +972,9 @@ READ8_MEMBER(galaxian_state::scorpion_ay8910_r)
|
||||
{
|
||||
/* the decoding here is very simplistic, and you can address both simultaneously */
|
||||
UINT8 result = 0xff;
|
||||
if (offset & 0x08) result &= ay8910_r(machine().device("8910.2"), space, 0);
|
||||
if (offset & 0x20) result &= ay8910_r(machine().device("8910.1"), space, 0);
|
||||
if (offset & 0x80) result &= ay8910_r(machine().device("8910.0"), space, 0);
|
||||
if (offset & 0x08) result &= machine().device<ay8910_device>("8910.2")->data_r(space, 0);
|
||||
if (offset & 0x20) result &= machine().device<ay8910_device>("8910.1")->data_r(space, 0);
|
||||
if (offset & 0x80) result &= machine().device<ay8910_device>("8910.0")->data_r(space, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -982,12 +982,12 @@ READ8_MEMBER(galaxian_state::scorpion_ay8910_r)
|
||||
WRITE8_MEMBER(galaxian_state::scorpion_ay8910_w)
|
||||
{
|
||||
/* the decoding here is very simplistic, and you can address all six simultaneously */
|
||||
if (offset & 0x04) ay8910_address_w(machine().device("8910.2"), space, 0, data);
|
||||
if (offset & 0x08) ay8910_data_w(machine().device("8910.2"), space, 0, data);
|
||||
if (offset & 0x10) ay8910_address_w(machine().device("8910.1"), space, 0, data);
|
||||
if (offset & 0x20) ay8910_data_w(machine().device("8910.1"), space, 0, data);
|
||||
if (offset & 0x40) ay8910_address_w(machine().device("8910.0"), space, 0, data);
|
||||
if (offset & 0x80) ay8910_data_w(machine().device("8910.0"), space, 0, data);
|
||||
if (offset & 0x04) machine().device<ay8910_device>("8910.2")->address_w(space, 0, data);
|
||||
if (offset & 0x08) machine().device<ay8910_device>("8910.2")->data_w(space, 0, data);
|
||||
if (offset & 0x10) machine().device<ay8910_device>("8910.1")->address_w(space, 0, data);
|
||||
if (offset & 0x20) machine().device<ay8910_device>("8910.1")->data_w(space, 0, data);
|
||||
if (offset & 0x40) machine().device<ay8910_device>("8910.0")->address_w(space, 0, data);
|
||||
if (offset & 0x80) machine().device<ay8910_device>("8910.0")->data_w(space, 0, data);
|
||||
}
|
||||
|
||||
|
||||
@ -1102,7 +1102,7 @@ WRITE8_MEMBER(galaxian_state::zigzag_ay8910_w)
|
||||
/* bit 0 = WRITE */
|
||||
/* bit 1 = C/D */
|
||||
if ((offset & 1) != 0)
|
||||
ay8910_data_address_w(machine().device("aysnd"), space, offset >> 1, m_zigzag_ay8910_latch);
|
||||
machine().device<ay8910_device>("aysnd")->data_address_w(space, offset >> 1, m_zigzag_ay8910_latch);
|
||||
break;
|
||||
|
||||
case 0x100:
|
||||
@ -1194,21 +1194,21 @@ WRITE8_MEMBER(galaxian_state::mshuttle_ay8910_cs_w)
|
||||
WRITE8_MEMBER(galaxian_state::mshuttle_ay8910_control_w)
|
||||
{
|
||||
if (!m_mshuttle_ay8910_cs)
|
||||
ay8910_address_w(machine().device("aysnd"), space, offset, data);
|
||||
machine().device<ay8910_device>("aysnd")->address_w(space, offset, data);
|
||||
}
|
||||
|
||||
|
||||
WRITE8_MEMBER(galaxian_state::mshuttle_ay8910_data_w)
|
||||
{
|
||||
if (!m_mshuttle_ay8910_cs)
|
||||
ay8910_data_w(machine().device("aysnd"), space, offset, data);
|
||||
machine().device<ay8910_device>("aysnd")->data_w(space, offset, data);
|
||||
}
|
||||
|
||||
|
||||
READ8_MEMBER(galaxian_state::mshuttle_ay8910_data_r)
|
||||
{
|
||||
if (!m_mshuttle_ay8910_cs)
|
||||
return ay8910_r(machine().device("aysnd"), space, offset);
|
||||
return machine().device<ay8910_device>("aysnd")->data_r(space, offset);
|
||||
return 0xff;
|
||||
}
|
||||
|
||||
@ -1455,10 +1455,10 @@ static ADDRESS_MAP_START( fantastc_map, AS_PROGRAM, 8, galaxian_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM
|
||||
AM_RANGE(0x8803, 0x8803) AM_DEVWRITE_LEGACY("8910.0", ay8910_address_w)
|
||||
AM_RANGE(0x880b, 0x880b) AM_DEVWRITE_LEGACY("8910.0", ay8910_data_w)
|
||||
AM_RANGE(0x880c, 0x880c) AM_DEVWRITE_LEGACY("8910.1", ay8910_address_w)
|
||||
AM_RANGE(0x880e, 0x880e) AM_DEVWRITE_LEGACY("8910.1", ay8910_data_w)
|
||||
AM_RANGE(0x8803, 0x8803) AM_DEVWRITE("8910.0", ay8910_device, address_w)
|
||||
AM_RANGE(0x880b, 0x880b) AM_DEVWRITE("8910.0", ay8910_device, data_w)
|
||||
AM_RANGE(0x880c, 0x880c) AM_DEVWRITE("8910.1", ay8910_device, address_w)
|
||||
AM_RANGE(0x880e, 0x880e) AM_DEVWRITE("8910.1", ay8910_device, data_w)
|
||||
AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0x9800, 0x98ff) AM_MIRROR(0x0700) AM_RAM_WRITE(galaxian_objram_w) AM_SHARE("spriteram")
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x07ff) AM_READ_PORT("IN0")
|
||||
@ -1473,10 +1473,10 @@ static ADDRESS_MAP_START( timefgtr_map, AS_PROGRAM, 8, galaxian_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x0000, 0x7fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x87ff) AM_RAM
|
||||
AM_RANGE(0x8803, 0x8803) AM_DEVWRITE_LEGACY("8910.0", ay8910_address_w)
|
||||
AM_RANGE(0x880b, 0x880b) AM_DEVWRITE_LEGACY("8910.0", ay8910_data_w)
|
||||
AM_RANGE(0x880c, 0x880c) AM_DEVWRITE_LEGACY("8910.1", ay8910_address_w)
|
||||
AM_RANGE(0x880e, 0x880e) AM_DEVWRITE_LEGACY("8910.1", ay8910_data_w)
|
||||
AM_RANGE(0x8803, 0x8803) AM_DEVWRITE("8910.0", ay8910_device, address_w)
|
||||
AM_RANGE(0x880b, 0x880b) AM_DEVWRITE("8910.0", ay8910_device, data_w)
|
||||
AM_RANGE(0x880c, 0x880c) AM_DEVWRITE("8910.1", ay8910_device, address_w)
|
||||
AM_RANGE(0x880e, 0x880e) AM_DEVWRITE("8910.1", ay8910_device, data_w)
|
||||
AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0x9800, 0x9bff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_objram_w) AM_SHARE("spriteram")
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x07ff) AM_READ_PORT("IN0")
|
||||
@ -1689,8 +1689,8 @@ static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8, galaxian_state )
|
||||
AM_RANGE(0x4000, 0x47ff) AM_RAM
|
||||
AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram")
|
||||
AM_RANGE(0x5000, 0x50ff) AM_MIRROR(0x0700) AM_RAM_WRITE(galaxian_objram_w) AM_SHARE("spriteram")
|
||||
AM_RANGE(0x5800, 0x5800) AM_MIRROR(0x00ff) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0x5900, 0x5900) AM_MIRROR(0x00ff) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0x5800, 0x5800) AM_MIRROR(0x00ff) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0x5900, 0x5900) AM_MIRROR(0x00ff) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x07ff) AM_READ_PORT("IN0")
|
||||
AM_RANGE(0x6002, 0x6006) AM_MIRROR(0x07f8) AM_WRITE(galaxian_gfxbank_w)
|
||||
AM_RANGE(0x6800, 0x6800) AM_MIRROR(0x07ff) AM_READ_PORT("IN1")
|
||||
@ -1821,8 +1821,8 @@ static ADDRESS_MAP_START( checkman_sound_portmap, AS_IO, 8, galaxian_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x03, 0x03) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x06, 0x06) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x04, 0x05) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x06, 0x06) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -1831,8 +1831,8 @@ static ADDRESS_MAP_START( checkmaj_sound_map, AS_PROGRAM, 8, galaxian_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x0000, 0x0fff) AM_ROM
|
||||
AM_RANGE(0x8000, 0x83ff) AM_RAM
|
||||
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0xa002, 0xa002) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -734,8 +734,8 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( bongo_io, AS_IO, 8, galaxold_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -759,7 +759,7 @@ ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( ozon1_io_map, AS_IO, 8, galaxold_state )
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
|
||||
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
|
@ -225,9 +225,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( gameplan_audio_map, AS_PROGRAM, 8, gameplan_state )
|
||||
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */
|
||||
AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_device, read, write)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x1ffc) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x1ffc) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0xe000, 0xe7ff) AM_MIRROR(0x1800) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -236,9 +236,9 @@ ADDRESS_MAP_END
|
||||
static ADDRESS_MAP_START( leprechn_audio_map, AS_PROGRAM, 8, gameplan_state )
|
||||
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */
|
||||
AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_device, read, write)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x1ffc) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_w)
|
||||
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_w)
|
||||
AM_RANGE(0xa001, 0xa001) AM_MIRROR(0x1ffc) AM_DEVREAD("aysnd", ay8910_device, data_r)
|
||||
AM_RANGE(0xa002, 0xa002) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, data_w)
|
||||
AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
@ -95,7 +95,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ginganin_state )
|
||||
AM_RANGE(0x0800, 0x0807) AM_DEVREADWRITE("6840ptm", ptm6840_device, read, write)
|
||||
AM_RANGE(0x1800, 0x1800) AM_READ(soundlatch_byte_r)
|
||||
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE_LEGACY("ymsnd", y8950_w)
|
||||
AM_RANGE(0x2800, 0x2801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
|
||||
AM_RANGE(0x2800, 0x2801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
|
||||
AM_RANGE(0x4000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user