Пример #1
0
static WRITE16_HANDLER( audio_volume_w )
{
	relief_state *state = (relief_state *)space->machine->driver_data;
	if (ACCESSING_BITS_0_7)
	{
		state->overall_volume = data & 127;
		atarigen_set_ym2413_vol(space->machine, (state->ym2413_volume * state->overall_volume * 100) / (127 * 15));
		atarigen_set_oki6295_vol(space->machine, state->overall_volume * 100 / 127);
	}
}
Пример #2
0
static WRITE16_HANDLER( audio_control_w )
{
	relief_state *state = (relief_state *)space->machine->driver_data;
	if (ACCESSING_BITS_0_7)
	{
		state->ym2413_volume = (data >> 1) & 15;
		atarigen_set_ym2413_vol(space->machine, (state->ym2413_volume * state->overall_volume * 100) / (127 * 15));
		state->adpcm_bank_base = (0x040000 * ((data >> 6) & 3)) | (state->adpcm_bank_base & 0x100000);
	}
	if (ACCESSING_BITS_8_15)
		state->adpcm_bank_base = (0x100000 * ((data >> 8) & 1)) | (state->adpcm_bank_base & 0x0c0000);

	okim6295_set_bank_base(devtag_get_device(space->machine, "oki"), state->adpcm_bank_base);
}
Пример #3
0
static WRITE16_HANDLER( audio_control_w )
{
	relief_state *state = space->machine().driver_data<relief_state>();
	if (ACCESSING_BITS_0_7)
	{
		state->m_ym2413_volume = (data >> 1) & 15;
		atarigen_set_ym2413_vol(space->machine(), (state->m_ym2413_volume * state->m_overall_volume * 100) / (127 * 15));
		state->m_adpcm_bank_base = (0x040000 * ((data >> 6) & 3)) | (state->m_adpcm_bank_base & 0x100000);
	}
	if (ACCESSING_BITS_8_15)
		state->m_adpcm_bank_base = (0x100000 * ((data >> 8) & 1)) | (state->m_adpcm_bank_base & 0x0c0000);

	okim6295_device *oki = space->machine().device<okim6295_device>("oki");
	oki->set_bank_base(state->m_adpcm_bank_base);
}