mirror of
https://github.com/holub/mame
synced 2025-05-16 10:52:43 +03:00
[from AtariAce]
Hi mamedev, This patch continues deglobalifying the MAME core, this time targeting sound.c. The first two patches adds running_machine to apis in sound.h that lack it (the first patch is generated by the perl script, the second patch fixes some cases it didn't handle well). The last patch then removes the globals in the traditional way. ~aa
This commit is contained in:
parent
6953873e13
commit
4a80c53a8d
@ -669,7 +669,7 @@ void debug_cpu_instruction_hook(const device_config *device, offs_t curpc)
|
||||
debugger_refresh_display(device->machine);
|
||||
|
||||
/* wait for the debugger; during this time, disable sound output */
|
||||
sound_mute(TRUE);
|
||||
sound_mute(device->machine, TRUE);
|
||||
while (global->execution_state == EXECUTION_STATE_STOPPED)
|
||||
{
|
||||
/* flush any pending updates before waiting again */
|
||||
@ -694,7 +694,7 @@ void debug_cpu_instruction_hook(const device_config *device, offs_t curpc)
|
||||
if (mame_is_scheduled_event_pending(device->machine))
|
||||
global->execution_state = EXECUTION_STATE_RUNNING;
|
||||
}
|
||||
sound_mute(FALSE);
|
||||
sound_mute(device->machine, FALSE);
|
||||
|
||||
/* remember the last visible CPU in the debugger */
|
||||
global->visiblecpu = device;
|
||||
|
@ -335,7 +335,7 @@ int mame_execute(core_options *options)
|
||||
/* load the configuration settings and NVRAM */
|
||||
settingsloaded = config_load_settings(machine);
|
||||
nvram_load(machine);
|
||||
sound_mute(FALSE);
|
||||
sound_mute(machine, FALSE);
|
||||
|
||||
/* display the startup screens */
|
||||
ui_display_startup_screens(machine, firstrun, !settingsloaded);
|
||||
@ -377,7 +377,7 @@ int mame_execute(core_options *options)
|
||||
end_resource_tracking();
|
||||
|
||||
/* save the NVRAM and configuration */
|
||||
sound_mute(TRUE);
|
||||
sound_mute(machine, TRUE);
|
||||
nvram_save(machine);
|
||||
config_save_settings(machine);
|
||||
}
|
||||
|
@ -134,6 +134,7 @@ typedef struct _tilemap_private tilemap_private;
|
||||
typedef struct _streams_private streams_private;
|
||||
typedef struct _devices_private devices_private;
|
||||
typedef struct _romload_private romload_private;
|
||||
typedef struct _sound_private sound_private;
|
||||
typedef struct _input_port_private input_port_private;
|
||||
typedef struct _ui_input_private ui_input_private;
|
||||
typedef struct _cheat_private cheat_private;
|
||||
@ -184,6 +185,7 @@ struct _running_machine
|
||||
streams_private * streams_data; /* internal data from streams.c */
|
||||
devices_private * devices_data; /* internal data from devices.c */
|
||||
romload_private * romload_data; /* internal data from romload.c */
|
||||
sound_private * sound_data; /* internal data from sound.c */
|
||||
input_port_private * input_port_data; /* internal data from inptport.c */
|
||||
ui_input_private * ui_input_data; /* internal data from uiinput.c */
|
||||
cheat_private * cheat_data; /* internal data from cheat.c */
|
||||
|
118
src/emu/sound.c
118
src/emu/sound.c
@ -80,26 +80,24 @@ struct _speaker_info
|
||||
#endif
|
||||
};
|
||||
|
||||
struct _sound_private
|
||||
{
|
||||
emu_timer *update_timer;
|
||||
|
||||
int totalsnd;
|
||||
|
||||
/***************************************************************************
|
||||
GLOBAL VARIABLES
|
||||
***************************************************************************/
|
||||
UINT32 finalmix_leftover;
|
||||
INT16 *finalmix;
|
||||
INT32 *leftmix;
|
||||
INT32 *rightmix;
|
||||
|
||||
static emu_timer *sound_update_timer;
|
||||
int muted;
|
||||
int attenuation;
|
||||
int enabled;
|
||||
int nosound_mode;
|
||||
|
||||
static int totalsnd;
|
||||
|
||||
static INT16 *finalmix;
|
||||
static UINT32 finalmix_leftover;
|
||||
static INT32 *leftmix, *rightmix;
|
||||
|
||||
static int sound_muted;
|
||||
static int sound_attenuation;
|
||||
static int global_sound_enabled;
|
||||
static int nosound_mode;
|
||||
|
||||
static wav_file *wavfile;
|
||||
wav_file *wavfile;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@ -191,24 +189,27 @@ INLINE speaker_info *index_to_input(running_machine *machine, int index, int *in
|
||||
|
||||
void sound_init(running_machine *machine)
|
||||
{
|
||||
sound_private *global;
|
||||
const char *filename;
|
||||
|
||||
machine->sound_data = global = auto_alloc_clear(machine, sound_private);
|
||||
|
||||
/* handle -nosound */
|
||||
nosound_mode = !options_get_bool(mame_options(), OPTION_SOUND);
|
||||
if (nosound_mode)
|
||||
global->nosound_mode = !options_get_bool(mame_options(), OPTION_SOUND);
|
||||
if (global->nosound_mode)
|
||||
machine->sample_rate = 11025;
|
||||
|
||||
/* count the speakers */
|
||||
VPRINTF(("total speakers = %d\n", speaker_output_count(machine->config)));
|
||||
|
||||
/* allocate memory for mix buffers */
|
||||
leftmix = auto_alloc_array(machine, INT32, machine->sample_rate);
|
||||
rightmix = auto_alloc_array(machine, INT32, machine->sample_rate);
|
||||
finalmix = auto_alloc_array(machine, INT16, machine->sample_rate);
|
||||
global->leftmix = auto_alloc_array(machine, INT32, machine->sample_rate);
|
||||
global->rightmix = auto_alloc_array(machine, INT32, machine->sample_rate);
|
||||
global->finalmix = auto_alloc_array(machine, INT16, machine->sample_rate);
|
||||
|
||||
/* allocate a global timer for sound timing */
|
||||
sound_update_timer = timer_alloc(machine, sound_update, NULL);
|
||||
timer_adjust_periodic(sound_update_timer, STREAMS_UPDATE_FREQUENCY, 0, STREAMS_UPDATE_FREQUENCY);
|
||||
global->update_timer = timer_alloc(machine, sound_update, NULL);
|
||||
timer_adjust_periodic(global->update_timer, STREAMS_UPDATE_FREQUENCY, 0, STREAMS_UPDATE_FREQUENCY);
|
||||
|
||||
/* finally, do all the routing */
|
||||
VPRINTF(("route_sound\n"));
|
||||
@ -217,12 +218,12 @@ void sound_init(running_machine *machine)
|
||||
/* open the output WAV file if specified */
|
||||
filename = options_get_string(mame_options(), OPTION_WAVWRITE);
|
||||
if (filename[0] != 0)
|
||||
wavfile = wav_open(filename, machine->sample_rate, 2);
|
||||
global->wavfile = wav_open(filename, machine->sample_rate, 2);
|
||||
|
||||
/* enable sound by default */
|
||||
global_sound_enabled = TRUE;
|
||||
sound_muted = FALSE;
|
||||
sound_set_attenuation(options_get_int(mame_options(), OPTION_VOLUME));
|
||||
global->enabled = TRUE;
|
||||
global->muted = FALSE;
|
||||
sound_set_attenuation(machine, options_get_int(mame_options(), OPTION_VOLUME));
|
||||
|
||||
/* register callbacks */
|
||||
config_register(machine, "mixer", sound_load, sound_save);
|
||||
@ -238,12 +239,15 @@ void sound_init(running_machine *machine)
|
||||
|
||||
static void sound_exit(running_machine *machine)
|
||||
{
|
||||
sound_private *global = machine->sound_data;
|
||||
|
||||
/* close any open WAV file */
|
||||
if (wavfile != NULL)
|
||||
wav_close(wavfile);
|
||||
if (global->wavfile != NULL)
|
||||
wav_close(global->wavfile);
|
||||
global->wavfile = NULL;
|
||||
|
||||
/* reset variables */
|
||||
totalsnd = 0;
|
||||
global->totalsnd = 0;
|
||||
}
|
||||
|
||||
|
||||
@ -541,25 +545,29 @@ static void sound_reset(running_machine *machine)
|
||||
|
||||
static void sound_pause(running_machine *machine, int pause)
|
||||
{
|
||||
sound_private *global = machine->sound_data;
|
||||
|
||||
if (pause)
|
||||
sound_muted |= 0x02;
|
||||
global->muted |= 0x02;
|
||||
else
|
||||
sound_muted &= ~0x02;
|
||||
osd_set_mastervolume(sound_muted ? -32 : sound_attenuation);
|
||||
global->muted &= ~0x02;
|
||||
osd_set_mastervolume(global->muted ? -32 : global->attenuation);
|
||||
}
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
sound_pause - pause sound output
|
||||
sound_mute - mute sound output
|
||||
-------------------------------------------------*/
|
||||
|
||||
void sound_mute(int mute)
|
||||
void sound_mute(running_machine *machine, int mute)
|
||||
{
|
||||
sound_private *global = machine->sound_data;
|
||||
|
||||
if (mute)
|
||||
sound_muted |= 0x01;
|
||||
global->muted |= 0x01;
|
||||
else
|
||||
sound_muted &= ~0x01;
|
||||
osd_set_mastervolume(sound_muted ? -32 : sound_attenuation);
|
||||
global->muted &= ~0x01;
|
||||
osd_set_mastervolume(global->muted ? -32 : global->attenuation);
|
||||
}
|
||||
|
||||
|
||||
@ -567,10 +575,11 @@ void sound_mute(int mute)
|
||||
sound_set_attenuation - set the global volume
|
||||
-------------------------------------------------*/
|
||||
|
||||
void sound_set_attenuation(int attenuation)
|
||||
void sound_set_attenuation(running_machine *machine, int attenuation)
|
||||
{
|
||||
sound_attenuation = attenuation;
|
||||
osd_set_mastervolume(sound_muted ? -32 : sound_attenuation);
|
||||
sound_private *global = machine->sound_data;
|
||||
global->attenuation = attenuation;
|
||||
osd_set_mastervolume(global->muted ? -32 : global->attenuation);
|
||||
}
|
||||
|
||||
|
||||
@ -579,9 +588,10 @@ void sound_set_attenuation(int attenuation)
|
||||
volume
|
||||
-------------------------------------------------*/
|
||||
|
||||
int sound_get_attenuation(void)
|
||||
int sound_get_attenuation(running_machine *machine)
|
||||
{
|
||||
return sound_attenuation;
|
||||
sound_private *global = machine->sound_data;
|
||||
return global->attenuation;
|
||||
}
|
||||
|
||||
|
||||
@ -590,9 +600,10 @@ int sound_get_attenuation(void)
|
||||
globally
|
||||
-------------------------------------------------*/
|
||||
|
||||
void sound_global_enable(int enable)
|
||||
void sound_global_enable(running_machine *machine, int enable)
|
||||
{
|
||||
global_sound_enabled = enable;
|
||||
sound_private *global = machine->sound_data;
|
||||
global->enabled = enable;
|
||||
}
|
||||
|
||||
|
||||
@ -684,11 +695,18 @@ static TIMER_CALLBACK( sound_update )
|
||||
const device_config *curspeak;
|
||||
int samples_this_update = 0;
|
||||
int sample;
|
||||
sound_private *global = machine->sound_data;
|
||||
INT16 *finalmix;
|
||||
INT32 *leftmix, *rightmix;
|
||||
|
||||
VPRINTF(("sound_update\n"));
|
||||
|
||||
profiler_mark_start(PROFILER_SOUND);
|
||||
|
||||
leftmix = global->leftmix;
|
||||
rightmix = global->rightmix;
|
||||
finalmix = global->finalmix;
|
||||
|
||||
/* force all the speaker streams to generate the proper number of samples */
|
||||
for (curspeak = speaker_output_first(machine->config); curspeak != NULL; curspeak = speaker_output_next(curspeak))
|
||||
{
|
||||
@ -729,7 +747,7 @@ static TIMER_CALLBACK( sound_update )
|
||||
#endif
|
||||
|
||||
/* mix if sound is enabled */
|
||||
if (global_sound_enabled && !nosound_mode)
|
||||
if (global->enabled && !global->nosound_mode)
|
||||
{
|
||||
/* if the speaker is centered, send to both left and right */
|
||||
if (spk->speaker->x == 0)
|
||||
@ -755,7 +773,7 @@ static TIMER_CALLBACK( sound_update )
|
||||
/* now downmix the final result */
|
||||
finalmix_step = video_get_speed_factor();
|
||||
finalmix_offset = 0;
|
||||
for (sample = finalmix_leftover; sample < samples_this_update * 100; sample += finalmix_step)
|
||||
for (sample = global->finalmix_leftover; sample < samples_this_update * 100; sample += finalmix_step)
|
||||
{
|
||||
int sampindex = sample / 100;
|
||||
INT32 samp;
|
||||
@ -776,15 +794,15 @@ static TIMER_CALLBACK( sound_update )
|
||||
samp = 32767;
|
||||
finalmix[finalmix_offset++] = samp;
|
||||
}
|
||||
finalmix_leftover = sample - samples_this_update * 100;
|
||||
global->finalmix_leftover = sample - samples_this_update * 100;
|
||||
|
||||
/* play the result */
|
||||
if (finalmix_offset > 0)
|
||||
{
|
||||
osd_update_audio_stream(machine, finalmix, finalmix_offset / 2);
|
||||
video_avi_add_sound(machine, finalmix, finalmix_offset / 2);
|
||||
if (wavfile != NULL)
|
||||
wav_add_data_16(wavfile, finalmix, finalmix_offset);
|
||||
if (global->wavfile != NULL)
|
||||
wav_add_data_16(global->wavfile, finalmix, finalmix_offset);
|
||||
}
|
||||
|
||||
/* update the streamer */
|
||||
|
@ -156,10 +156,10 @@ DEVICE_GET_INFO( sound );
|
||||
|
||||
|
||||
/* global sound controls */
|
||||
void sound_mute(int mute);
|
||||
void sound_set_attenuation(int attenuation);
|
||||
int sound_get_attenuation(void);
|
||||
void sound_global_enable(int enable);
|
||||
void sound_mute(running_machine *machine, int mute);
|
||||
void sound_set_attenuation(running_machine *machine, int attenuation);
|
||||
int sound_get_attenuation(running_machine *machine);
|
||||
void sound_global_enable(running_machine *machine, int enable);
|
||||
|
||||
/* user gain controls on speaker inputs for mixing */
|
||||
int sound_get_user_gain_count(running_machine *machine);
|
||||
|
@ -1999,7 +1999,7 @@ static STREAM_UPDATE( SN76477_update )
|
||||
{
|
||||
recursing = 1;
|
||||
|
||||
sound_global_enable(1);
|
||||
sound_global_enable(device->machine, 1);
|
||||
SN76477_test_enable_w(sn, !sn->enable);
|
||||
}
|
||||
|
||||
|
@ -1576,10 +1576,10 @@ static slider_state *slider_init(running_machine *machine)
|
||||
static INT32 slider_volume(running_machine *machine, void *arg, astring *string, INT32 newval)
|
||||
{
|
||||
if (newval != SLIDER_NOCHANGE)
|
||||
sound_set_attenuation(newval);
|
||||
sound_set_attenuation(machine, newval);
|
||||
if (string != NULL)
|
||||
astring_printf(string, "%3ddB", sound_get_attenuation());
|
||||
return sound_get_attenuation();
|
||||
astring_printf(string, "%3ddB", sound_get_attenuation(machine));
|
||||
return sound_get_attenuation(machine);
|
||||
}
|
||||
|
||||
|
||||
|
@ -52,7 +52,7 @@ WRITE8_HANDLER( invadpt2_sh_port_1_w )
|
||||
|
||||
c8080bw_screen_red_w(data & 0x04);
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(space->machine, data & 0x20);
|
||||
|
||||
port_1_last_extra = data;
|
||||
|
||||
@ -145,7 +145,7 @@ WRITE8_HANDLER( lrescue_sh_port_1_w )
|
||||
if (rising_bits & 0x08) sample_start(samples, 1, 0, 0); /* Alien Hit */
|
||||
if (rising_bits & 0x10) sample_start(samples, 2, 5, 0); /* Bonus Ship (not confirmed) */
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(space->machine, data & 0x20);
|
||||
|
||||
c8080bw_screen_red_w(data & 0x04);
|
||||
|
||||
@ -204,7 +204,7 @@ WRITE8_HANDLER( ballbomb_sh_port_1_w )
|
||||
if (rising_bits & 0x08) sample_start(samples, 1, 7, 0); /* Hit a Bomb */
|
||||
if (rising_bits & 0x10) sample_start(samples, 3, 8, 0); /* Bonus Base at 1500 points */
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(space->machine, data & 0x20);
|
||||
|
||||
c8080bw_screen_red_w(data & 0x04);
|
||||
|
||||
@ -281,7 +281,7 @@ WRITE8_HANDLER( indianbt_sh_port_1_w )
|
||||
if (rising_bits & 0x04) sample_start(samples, 2, 3, 0); /* Move */
|
||||
if (rising_bits & 0x08) sample_start(samples, 3, 2, 0); /* Hit */
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(space->machine, data & 0x20);
|
||||
|
||||
c8080bw_screen_red_w(data & 0x01);
|
||||
|
||||
@ -881,7 +881,7 @@ WRITE8_HANDLER( schaser_sh_port_2_w )
|
||||
discrete_sound_w(discrete, SCHASER_MUSIC_BIT, data & 0x01);
|
||||
|
||||
discrete_sound_w(discrete, SCHASER_SND_EN, data & 0x02);
|
||||
sound_global_enable(data & 0x02);
|
||||
sound_global_enable(space->machine, data & 0x02);
|
||||
|
||||
coin_lockout_global_w(data & 0x04);
|
||||
|
||||
@ -1090,7 +1090,7 @@ WRITE8_HANDLER( schasrcv_sh_port_2_w )
|
||||
|
||||
speaker_level_w(speaker, (data & 0x01) ? 1 : 0); /* End-of-Level */
|
||||
|
||||
sound_global_enable(data & 0x10);
|
||||
sound_global_enable(space->machine, data & 0x10);
|
||||
|
||||
c8080bw_flip_screen_w(space, data & 0x20);
|
||||
}
|
||||
@ -1112,7 +1112,7 @@ WRITE8_HANDLER( yosakdon_sh_port_1_w )
|
||||
if (rising_bits & 0x08) sample_start(samples, 1, 2, 0); /* Man dead */
|
||||
if (rising_bits & 0x10) sample_start(samples, 5, 8, 0); /* Bonus Man? */
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(space->machine, data & 0x20);
|
||||
|
||||
port_1_last_extra = data;
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ WRITE8_HANDLER( astrof_audio_1_w )
|
||||
/* D6 - don't know. Probably something to do with the explosion sounds */
|
||||
|
||||
/* D7 - sound enable bit */
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(space->machine, data & 0x80);
|
||||
|
||||
port_1_last = data;
|
||||
}
|
||||
@ -237,7 +237,7 @@ WRITE8_HANDLER( tomahawk_audio_w )
|
||||
/* D6 - explosion */
|
||||
|
||||
/* D7 - sound enable bit */
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(space->machine, data & 0x80);
|
||||
}
|
||||
|
||||
|
||||
|
@ -64,7 +64,7 @@ WRITE8_HANDLER( bzone_sounds_w )
|
||||
stream_update(channel);
|
||||
latch = data;
|
||||
|
||||
sound_global_enable(latch & 0x20);
|
||||
sound_global_enable(space->machine, latch & 0x20);
|
||||
}
|
||||
|
||||
static STREAM_UPDATE( bzone_sound_update )
|
||||
@ -567,7 +567,7 @@ WRITE8_DEVICE_HANDLER( bzone_sounds_w )
|
||||
discrete_sound_w(device, BZ_INPUT, data);
|
||||
|
||||
output_set_value("startled", (data >> 6) & 1);
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(device->machine, data & 0x20);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1482,7 +1482,7 @@ static WRITE8_DEVICE_HANDLER( sound_portb_w )
|
||||
|
||||
/* bit 2 controls the global mute */
|
||||
if ((data & 4) != (last_portb_write & 4))
|
||||
sound_global_enable(!(data & 4));
|
||||
sound_global_enable(device->machine, !(data & 4));
|
||||
|
||||
/* remember the last value written */
|
||||
last_portb_write = data;
|
||||
|
@ -278,5 +278,5 @@ WRITE8_HANDLER( circus_clown_z_w )
|
||||
}
|
||||
|
||||
/* Bit 7 enables amplifier (0 = on) */
|
||||
sound_global_enable(~data & 0x80);
|
||||
sound_global_enable(space->machine, ~data & 0x80);
|
||||
}
|
||||
|
@ -1058,7 +1058,7 @@ WRITE8_DEVICE_HANDLER( checkmat_audio_w )
|
||||
|
||||
coin_counter_w(0, (data >> 2) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 3) & 0x01);
|
||||
sound_global_enable(device->machine, (data >> 3) & 0x01);
|
||||
|
||||
discrete_sound_w(device, CHECKMAT_TONE_DATA_45, (data >> 4) & 0x03);
|
||||
discrete_sound_w(device, CHECKMAT_TONE_DATA_67, (data >> 6) & 0x03);
|
||||
@ -1653,7 +1653,7 @@ WRITE8_HANDLER( gmissile_audio_1_w )
|
||||
|
||||
coin_counter_w(0, (data >> 2) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 3) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 3) & 0x01);
|
||||
|
||||
/* if (data & 0x10) enable RIGHT MISSILE sound (goes to right speaker) */
|
||||
if (rising_bits & 0x10) sample_start(samples1, 0, 0, 0);
|
||||
@ -1749,7 +1749,7 @@ WRITE8_HANDLER( m4_audio_1_w )
|
||||
|
||||
coin_counter_w(0, (data >> 2) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 3) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 3) & 0x01);
|
||||
|
||||
/* if (data & 0x10) enable LEFT PLAYER SHOT sound (goes to left speaker) */
|
||||
if (rising_bits & 0x10) sample_start(samples0, 0, 0, 0);
|
||||
@ -2052,7 +2052,7 @@ WRITE8_DEVICE_HANDLER( clowns_audio_2_w )
|
||||
|
||||
discrete_sound_w(device, CLOWNS_POP_TOP_EN, (data >> 2) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 3) & 0x01);
|
||||
sound_global_enable(device->machine, (data >> 3) & 0x01);
|
||||
|
||||
discrete_sound_w(device, CLOWNS_SPRINGBOARD_HIT_EN, (data >> 4) & 0x01);
|
||||
|
||||
@ -2109,7 +2109,7 @@ WRITE8_HANDLER( shuffle_audio_1_w )
|
||||
|
||||
/* if (data & 0x02) enable SHUFFLE ROLLOVER sound */
|
||||
|
||||
sound_global_enable((data >> 2) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 2) & 0x01);
|
||||
|
||||
/* set SHUFFLE ROLLING sound((data >> 3) & 0x07) 0, if not rolling,
|
||||
faster rolling = higher number */
|
||||
@ -2198,7 +2198,7 @@ WRITE8_HANDLER( dogpatch_audio_w )
|
||||
|
||||
coin_counter_w(0, (data >> 2) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 3) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 3) & 0x01);
|
||||
|
||||
/* if (data & 0x10) enable LEFT SHOOT sound */
|
||||
|
||||
@ -2742,7 +2742,7 @@ MACHINE_DRIVER_END
|
||||
|
||||
WRITE8_DEVICE_HANDLER( spcenctr_audio_1_w )
|
||||
{
|
||||
sound_global_enable((data >> 0) & 0x01);
|
||||
sound_global_enable(device->machine, (data >> 0) & 0x01);
|
||||
|
||||
/* D1 is marked as 'OPTIONAL SWITCH VIDEO FOR COCKTAIL',
|
||||
but it is never set by the software */
|
||||
@ -2830,7 +2830,7 @@ WRITE8_HANDLER( phantom2_audio_1_w )
|
||||
|
||||
/* if (data & 0x02) enable ENEMY SHOT sound */
|
||||
|
||||
sound_global_enable((data >> 2) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 2) & 0x01);
|
||||
|
||||
coin_counter_w(0, (data >> 3) & 0x01);
|
||||
|
||||
@ -2956,7 +2956,7 @@ WRITE8_DEVICE_HANDLER( bowler_audio_1_w )
|
||||
|
||||
coin_counter_w(0, (data >> 1) & 0x01);
|
||||
|
||||
sound_global_enable((data >> 2) & 0x01);
|
||||
sound_global_enable(device->machine, (data >> 2) & 0x01);
|
||||
|
||||
discrete_sound_w(device, BOWLER_FOWL_EN, (data >> 3) & 0x01);
|
||||
|
||||
@ -3693,7 +3693,7 @@ WRITE8_DEVICE_HANDLER( invaders_audio_1_w )
|
||||
discrete_sound_w(device, INVADERS_NODE(INVADERS_INVADER_HIT_EN, 1), data & 0x08);
|
||||
discrete_sound_w(device, INVADERS_NODE(INVADERS_BONUS_MISSLE_BASE_EN, 1), data & 0x10);
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(device->machine, data & 0x20);
|
||||
|
||||
/* D6 and D7 are not connected */
|
||||
}
|
||||
@ -4075,7 +4075,7 @@ WRITE8_DEVICE_HANDLER( invad2ct_audio_1_w )
|
||||
discrete_sound_w(device, INVADERS_NODE(INVADERS_INVADER_HIT_EN, 1), data & 0x08);
|
||||
discrete_sound_w(device, INVADERS_NODE(INVADERS_BONUS_MISSLE_BASE_EN, 1), data & 0x10);
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(device->machine, data & 0x20);
|
||||
|
||||
/* D6 and D7 are not connected */
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ WRITE8_DEVICE_HANDLER( scramble_sh_irqtrigger_w )
|
||||
TTL7474_update(device->machine, 2);
|
||||
|
||||
/* bit 4 is sound disable */
|
||||
sound_global_enable(~data & 0x10);
|
||||
sound_global_enable(device->machine, ~data & 0x10);
|
||||
}
|
||||
|
||||
WRITE8_DEVICE_HANDLER( mrkougar_sh_irqtrigger_w )
|
||||
|
@ -274,7 +274,7 @@ WRITE8_HANDLER( astrob_sound_w )
|
||||
if ((data & 0x10) && sample_playing(samples, 4)) sample_stop(samples, 4);
|
||||
|
||||
/* MUTE */
|
||||
sound_global_enable(!(data & 0x20));
|
||||
sound_global_enable(space->machine, !(data & 0x20));
|
||||
|
||||
/* REFILL: channel 5 */
|
||||
if (!(data & 0x40) && !sample_playing(samples, 5)) sample_start(samples, 5, 9, FALSE);
|
||||
|
@ -413,7 +413,7 @@ WRITE8_DEVICE_HANDLER( subroc3d_sound_c_w )
|
||||
sample_set_volume(samples, 11, (data & 0x40) ? 0 : 1.0);
|
||||
|
||||
/* /GAME START */
|
||||
sound_global_enable(!(data & 0x80));
|
||||
sound_global_enable(device->machine, !(data & 0x80));
|
||||
}
|
||||
|
||||
|
||||
@ -568,7 +568,7 @@ WRITE8_DEVICE_HANDLER( buckrog_sound_b_w )
|
||||
if ((diff & 0x40) && !(data & 0x40) && sample_playing(samples, 5)) sample_stop(samples, 5);
|
||||
|
||||
/* GAME ON */
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(device->machine, data & 0x80);
|
||||
}
|
||||
|
||||
|
||||
|
@ -267,7 +267,7 @@ static WRITE8_DEVICE_HANDLER( astinvad_sound1_w )
|
||||
if (bits_gone_hi & 0x04) sample_start(samples, 2, SND_BASEHIT, 0);
|
||||
if (bits_gone_hi & 0x08) sample_start(samples, 3, SND_INVADERHIT, 0);
|
||||
|
||||
sound_global_enable(data & 0x20);
|
||||
sound_global_enable(device->machine, data & 0x20);
|
||||
screen_red = data & 0x04;
|
||||
}
|
||||
|
||||
@ -313,7 +313,7 @@ static WRITE8_HANDLER( spaceint_sound2_w )
|
||||
int bits_gone_hi = data & ~sound_state[1];
|
||||
sound_state[1] = data;
|
||||
|
||||
sound_global_enable(data & 0x02);
|
||||
sound_global_enable(space->machine, data & 0x02);
|
||||
|
||||
if (bits_gone_hi & 0x04) sample_start(samples, 3, SND_INVADERHIT, 0);
|
||||
|
||||
|
@ -127,7 +127,7 @@ static WRITE8_HANDLER( nmi_enable_w )
|
||||
|
||||
static WRITE8_HANDLER( sound_enable_w )
|
||||
{
|
||||
sound_global_enable(data & 1);
|
||||
sound_global_enable(space->machine, data & 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -167,7 +167,7 @@ static WRITE8_HANDLER( port_sound_w )
|
||||
crbaloon_set_clear_collision_address((data & 0x01) ? TRUE : FALSE);
|
||||
|
||||
/* D1 - SOUND STOP */
|
||||
sound_global_enable((data & 0x02) ? TRUE : FALSE);
|
||||
sound_global_enable(space->machine, (data & 0x02) ? TRUE : FALSE);
|
||||
|
||||
/* D2 - unlabeled - music enable */
|
||||
crbaloon_audio_set_music_enable(discrete, 0, (data & 0x04) ? TRUE : FALSE);
|
||||
|
@ -1203,7 +1203,7 @@ static MACHINE_RESET( darius )
|
||||
}
|
||||
memory_set_bankptr(machine, 1, RAM);
|
||||
|
||||
sound_global_enable( 1 ); /* mixer enabled */
|
||||
sound_global_enable( machine, 1 ); /* mixer enabled */
|
||||
|
||||
for( i = 0; i < DARIUS_VOL_MAX; i++ ){
|
||||
darius_vol[i] = 0x00; /* min volume */
|
||||
|
@ -373,7 +373,7 @@ static WRITE8_DEVICE_HANDLER( konami_sound_control_w )
|
||||
cputag_set_input_line(device->machine, "audiocpu", 0, HOLD_LINE);
|
||||
|
||||
/* bit 4 is sound disable */
|
||||
sound_global_enable(~data & 0x10);
|
||||
sound_global_enable(device->machine, ~data & 0x10);
|
||||
}
|
||||
|
||||
|
||||
|
@ -239,7 +239,7 @@ static WRITE8_HANDLER( m10_ctrl_w )
|
||||
state->flip = ~data & 0x10;
|
||||
|
||||
if (!(input_port_read(space->machine, "CAB") & 0x02))
|
||||
sound_global_enable(~data & 0x80);
|
||||
sound_global_enable(space->machine, ~data & 0x80);
|
||||
|
||||
/* sound command in lower 4 bytes */
|
||||
switch (data & 0x07)
|
||||
@ -315,7 +315,7 @@ static WRITE8_HANDLER( m11_ctrl_w )
|
||||
state->flip = ~data & 0x10;
|
||||
|
||||
if (!(input_port_read(space->machine, "CAB") & 0x02))
|
||||
sound_global_enable(~data & 0x80);
|
||||
sound_global_enable(space->machine, ~data & 0x80);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -344,7 +344,7 @@ static WRITE8_HANDLER( m15_ctrl_w )
|
||||
if (input_port_read(space->machine, "CAB") & 0x01)
|
||||
state->flip = ~data & 0x04;
|
||||
if (!(input_port_read(space->machine, "CAB") & 0x02))
|
||||
sound_global_enable(~data & 0x08);
|
||||
sound_global_enable(space->machine, ~data & 0x08);
|
||||
}
|
||||
|
||||
|
||||
|
@ -82,7 +82,7 @@ static WRITE8_HANDLER( mcu_portB_w )
|
||||
cputag_set_input_line(space->machine, "mcu", M6805_IRQ_LINE, CLEAR_LINE );
|
||||
|
||||
/* AUDMUTE */
|
||||
sound_global_enable((data >> 5) & 1);
|
||||
sound_global_enable(space->machine, (data >> 5) & 1);
|
||||
|
||||
/* RES600 */
|
||||
if (diff & 0x10)
|
||||
|
@ -1006,7 +1006,7 @@ static MACHINE_START( ninjaw )
|
||||
static MACHINE_RESET( ninjaw )
|
||||
{
|
||||
/**** mixer control enable ****/
|
||||
sound_global_enable( 1 ); /* mixer enabled */
|
||||
sound_global_enable( machine, 1 ); /* mixer enabled */
|
||||
}
|
||||
|
||||
|
||||
|
@ -304,7 +304,7 @@ static WRITE8_DEVICE_HANDLER( tilemap_sound_w )
|
||||
cputag_set_input_line(device->machine, "soundcpu", INPUT_LINE_NMI, (data & 0x80) ? CLEAR_LINE : ASSERT_LINE);
|
||||
segaic16_tilemap_set_colscroll(device->machine, 0, ~data & 0x04);
|
||||
segaic16_tilemap_set_rowscroll(device->machine, 0, ~data & 0x02);
|
||||
sound_global_enable(data & 0x01);
|
||||
sound_global_enable(device->machine, data & 0x01);
|
||||
}
|
||||
|
||||
|
||||
|
@ -412,7 +412,7 @@ static WRITE16_HANDLER( outrun_custom_io_w )
|
||||
D7: /MUTE
|
||||
D6-D0: unknown
|
||||
*/
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(space->machine, data & 0x80);
|
||||
}
|
||||
return;
|
||||
|
||||
|
@ -567,7 +567,7 @@ static WRITE16_HANDLER( iochip_0_w )
|
||||
D7: Amplifier mute control (1= sounding, 0= muted)
|
||||
D6-D0: CN D pin A17-A23 (output level 1= high, 0= low)
|
||||
*/
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(space->machine, data & 0x80);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -653,7 +653,7 @@ static WRITE16_HANDLER( aburner2_iochip_0_D_w )
|
||||
coin_counter_w(0, (data >> 4) & 0x01);
|
||||
output_set_lamp_value(0, (data >> 5) & 0x01); /* lock on lamp */
|
||||
output_set_lamp_value(1, (data >> 6) & 0x01); /* danger lamp */
|
||||
sound_global_enable((data >> 7) & 0x01);
|
||||
sound_global_enable(space->machine, (data >> 7) & 0x01);
|
||||
}
|
||||
|
||||
|
||||
|
@ -332,7 +332,7 @@ static WRITE16_HANDLER( io_chip_w )
|
||||
case 0x0e/2:
|
||||
/* D7 = /MUTE */
|
||||
/* D6-D0 = FLT31-25 */
|
||||
sound_global_enable(data & 0x80);
|
||||
sound_global_enable(space->machine, data & 0x80);
|
||||
break;
|
||||
|
||||
/* CNT register */
|
||||
|
@ -464,7 +464,7 @@ static void dakkochn_custom_w(running_machine *machine, UINT8 data, UINT8 prevda
|
||||
static WRITE8_DEVICE_HANDLER( sound_control_w )
|
||||
{
|
||||
/* bit 0 = MUTE (inverted sense on System 2) */
|
||||
sound_global_enable(~(data ^ mute_xor) & 1);
|
||||
sound_global_enable(device->machine, ~(data ^ mute_xor) & 1);
|
||||
|
||||
/* bit 6 = feedback from sound board that read occurrred */
|
||||
|
||||
|
@ -160,7 +160,7 @@ static READ8_HANDLER( thepit_colorram_r )
|
||||
|
||||
static WRITE8_HANDLER( thepit_sound_enable_w )
|
||||
{
|
||||
sound_global_enable(data);
|
||||
sound_global_enable(space->machine, data);
|
||||
}
|
||||
|
||||
|
||||
|
@ -83,7 +83,7 @@ static WRITE8_HANDLER( tutankhm_bankselect_w )
|
||||
|
||||
static WRITE8_HANDLER( sound_mute_w )
|
||||
{
|
||||
sound_global_enable(~data & 1);
|
||||
sound_global_enable(space->machine, ~data & 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -38,7 +38,7 @@ static WRITE8_HANDLER( jamma_if_control_latch_w )
|
||||
UINT8 diff = data ^ jamma_if_control_latch;
|
||||
jamma_if_control_latch = data;
|
||||
|
||||
sound_global_enable( (data >> 7) & 1 );
|
||||
sound_global_enable( space->machine, (data >> 7) & 1 );
|
||||
|
||||
if ( diff & 0x40 )
|
||||
{
|
||||
|
@ -710,7 +710,7 @@ static MACHINE_RESET( taito_dualscreen )
|
||||
banknum = -1;
|
||||
|
||||
/**** mixer control enable ****/
|
||||
sound_global_enable( 1 ); /* mixer enabled */
|
||||
sound_global_enable( machine, 1 ); /* mixer enabled */
|
||||
}
|
||||
|
||||
|
||||
|
@ -186,7 +186,7 @@ WRITE8_HANDLER( bking_cont3_w )
|
||||
|
||||
palette_bank = (data >> 1) & 0x03;
|
||||
|
||||
sound_global_enable(~data & 0x08);
|
||||
sound_global_enable(space->machine, ~data & 0x08);
|
||||
}
|
||||
|
||||
|
||||
|
@ -299,7 +299,7 @@ WRITE8_HANDLER( dday_control_w )
|
||||
if (!(data & 0x10) && (control & 0x10))
|
||||
devtag_reset(space->machine, "ay");
|
||||
|
||||
sound_global_enable(data & 0x10);
|
||||
sound_global_enable(space->machine, data & 0x10);
|
||||
|
||||
/* bit 6 is search light enable */
|
||||
sl_enable = data & 0x40;
|
||||
|
Loading…
Reference in New Issue
Block a user