//static STREAM_UPDATE( ym2612_stream_update ) void ym2612_stream_update(UINT8 ChipID, stream_sample_t **outputs, int samples) { //ym2612_state *info = (ym2612_state *)param; ym2612_state *info = &YM2612Data[ChipID]; #ifdef ENABLE_ALL_CORES int i; #endif switch(EMU_CORE) { case EC_MAME: ym2612_update_one(info->chip, outputs, samples); break; #ifdef ENABLE_ALL_CORES case EC_GENS: YM2612_ClearBuffer(GensBuf, samples); YM2612_Update(info->chip, GensBuf, samples); YM2612_DacAndTimers_Update(info->chip, GensBuf, samples); for (i = 0x00; i < samples; i ++) { outputs[0x00][i] = (stream_sample_t)GensBuf[0x00][i]; outputs[0x01][i] = (stream_sample_t)GensBuf[0x01][i]; } break; #endif } }
/* update request from fm.c */ void ym2612_update_request(void *param) { ym2612_state *info = (ym2612_state *)param; //stream_update(info->stream); switch(EMU_CORE) { case EC_MAME: ym2612_update_one(info->chip, DUMMYBUF, 0); break; #ifdef ENABLE_ALL_CORES case EC_GENS: YM2612_Update(info->chip, DUMMYBUF, 0); YM2612_DacAndTimers_Update(info->chip, DUMMYBUF, 0); break; #endif } }
void ym2612_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) { ym2612_update_one(m_chip, outputs, samples); }
static STREAM_UPDATE( ym2612_stream_update ) { ym2612_state *info = (ym2612_state *)param; ym2612_update_one(info->chip, outputs, samples); }