void board26k_reset(const NP2CFG *pConfig) { opngen_setcfg(&g_opngen, 3, 0); fmtimer_reset(pConfig->snd26opt & 0xc0); soundrom_loadex(pConfig->snd26opt & 7, OEMTEXT("26")); g_opn.base = (pConfig->snd26opt & 0x10)?0x000:0x100; }
void board26k_reset(void) { opngen_setcfg(3, 0); fmtimer_reset(np2cfg.snd26opt & 0xc0); soundrom_loadex(np2cfg.snd26opt & 7, OEMTEXT("26")); opn.base = (np2cfg.snd26opt & 0x10)?0x000:0x100; }
/** * Reset * @param[in] pConfig A pointer to a configure structure */ void boardpx2_reset(const NP2CFG *pConfig) { UINT nIrq1; UINT nIrq2; nIrq1 = (pConfig->spbopt & 0xc0) | 0x10; nIrq2 = (nIrq1 == 0xd0) ? 0x90 : 0xd0; opna_reset(&g_opna[0], OPNA_MODE_2608 | OPNA_HAS_TIMER | OPNA_HAS_ADPCM | OPNA_S98); opna_timer(&g_opna[0], nIrq1, NEVENT_FMTIMERA, NEVENT_FMTIMERB); opna_reset(&g_opna[1], OPNA_MODE_2608 | OPNA_HAS_TIMER | OPNA_HAS_ADPCM); opna_timer(&g_opna[1], nIrq2, NEVENT_FMTIMER2A, NEVENT_FMTIMER2B); opna_reset(&g_opna[2], OPNA_MODE_3438); opna_reset(&g_opna[3], OPNA_MODE_3438); opna_reset(&g_opna[4], OPNA_MODE_2608 | OPNA_HAS_ADPCM); opngen_setcfg(&g_opna[0].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[1].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[2].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[3].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[4].opngen, 3, OPN_STEREO | 0x38); soundrom_loadex(pConfig->spbopt & 7, OEMTEXT("SPB")); g_opna[0].s.base = (pConfig->spbopt & 0x10) ? 0x000 : 0x100; fmboard_extreg(extendchannelx2); pcm86io_setopt(0x00); }
void boardspb_reset(void) { fmtimer_reset(np2cfg.spbopt & 0xc0); opn.channels = 6; opngen_setcfg(6, OPN_STEREO | 0x03f); soundrom_loadex(np2cfg.spbopt & 7, OEMTEXT("SPB")); opn.base = ((np2cfg.spbopt & 0x10)?0x000:0x100); }
void boardspr_reset(void) { fmtimer_reset(np2cfg.spbopt & 0xc0); opn.reg[0x2ff] = 0; opn.channels = 12; opngen_setcfg(12, OPN_STEREO | 0x03f); soundrom_loadex(np2cfg.spbopt & 7, OEMTEXT("SPB")); opn.base = (np2cfg.spbopt & 0x10)?0x000:0x100; }
void boardpx1_reset(const NP2CFG *pConfig) { fmtimer_reset(pConfig->spbopt & 0xc0); g_opn.reg[0x2ff] = 0; g_opn.channels = 12; g_opn2.reg[0x2ff] = 0; g_opn2.channels = 12; opngen_setcfg(&g_opngen, 24, OPN_STEREO | 0x00ffffff); soundrom_loadex(pConfig->spbopt & 7, OEMTEXT("SPB")); g_opn.base = (pConfig->spbopt & 0x10)?0x000:0x100; }
void boardpx2_reset(const NP2CFG *pConfig) { fmtimer_reset(pConfig->spbopt & 0xc0); g_opn.reg[0x2ff] = 0; g_opn.channels = 12; g_opn2.reg[0x2ff] = 0; g_opn2.channels = 12; g_opn3.channels = 3; opngen_setcfg(&g_opngen, 27, OPN_STEREO | 0x38ffffff); soundrom_loadex(pConfig->spbopt & 7, OEMTEXT("SPB")); g_opn.base = (pConfig->spbopt & 0x10)?0x000:0x100; fmboard_extreg(extendchannelx2); }
/** * Reset * @param[in] pConfig A pointer to a configure structure */ void boardpx1_reset(const NP2CFG *pConfig) { opna_reset(&g_opna[0], OPNA_MODE_2608 | OPNA_HAS_TIMER | OPNA_HAS_ADPCM | OPNA_S98); opna_reset(&g_opna[1], OPNA_MODE_2608 | OPNA_HAS_TIMER | OPNA_HAS_ADPCM | OPNA_S98); opna_reset(&g_opna[2], OPNA_MODE_3438); opna_reset(&g_opna[3], OPNA_MODE_3438); fmtimer_reset(pConfig->spbopt & 0xc0); opngen_setcfg(&g_opna[0].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[1].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[2].opngen, 6, OPN_STEREO | 0x3f); opngen_setcfg(&g_opna[3].opngen, 6, OPN_STEREO | 0x3f); soundrom_loadex(pConfig->spbopt & 7, OEMTEXT("SPB")); g_opna[0].s.base = (pConfig->spbopt & 0x10) ? 0x000 : 0x100; }