OPNA: per-channel oscilloscope

This commit is contained in:
tildearrow 2022-05-14 01:07:32 -05:00
parent ae5dcd3746
commit 06e00ab17b
2 changed files with 6 additions and 4 deletions

View file

@ -546,6 +546,12 @@ public:
// generate one sample of sound // generate one sample of sound
void generate(output_data *output, uint32_t numsamples = 1); void generate(output_data *output, uint32_t numsamples = 1);
// get the engine
fm_engine* debug_fm_engine() { return &m_fm; }
ssg_engine* debug_ssg_engine() { return &m_ssg; }
adpcm_a_engine* debug_adpcm_a_engine() { return &m_adpcm_a; }
adpcm_b_engine* debug_adpcm_b_engine() { return &m_adpcm_b; }
protected: protected:
// internal helpers // internal helpers
void update_prescale(uint8_t prescale); void update_prescale(uint8_t prescale);

View file

@ -428,7 +428,6 @@ double DivPlatformYM2608::NOTE_ADPCMB(int note) {
void DivPlatformYM2608::acquire(short* bufL, short* bufR, size_t start, size_t len) { void DivPlatformYM2608::acquire(short* bufL, short* bufR, size_t start, size_t len) {
static int os[2]; static int os[2];
/*
ymfm::ym2612::fm_engine* fme=fm->debug_fm_engine(); ymfm::ym2612::fm_engine* fme=fm->debug_fm_engine();
ymfm::ssg_engine* ssge=fm->debug_ssg_engine(); ymfm::ssg_engine* ssge=fm->debug_ssg_engine();
ymfm::adpcm_a_engine* aae=fm->debug_adpcm_a_engine(); ymfm::adpcm_a_engine* aae=fm->debug_adpcm_a_engine();
@ -442,7 +441,6 @@ void DivPlatformYM2608::acquire(short* bufL, short* bufR, size_t start, size_t l
fmChan[i]=fme->debug_channel(i); fmChan[i]=fme->debug_channel(i);
adpcmAChan[i]=aae->debug_channel(i); adpcmAChan[i]=aae->debug_channel(i);
} }
*/
for (size_t h=start; h<start+len; h++) { for (size_t h=start; h<start+len; h++) {
os[0]=0; os[1]=0; os[0]=0; os[1]=0;
@ -470,7 +468,6 @@ void DivPlatformYM2608::acquire(short* bufL, short* bufR, size_t start, size_t l
bufL[h]=os[0]; bufL[h]=os[0];
bufR[h]=os[1]; bufR[h]=os[1];
/*
for (int i=0; i<6; i++) { for (int i=0; i<6; i++) {
oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1)); oscBuf[i]->data[oscBuf[i]->needle++]=(fmChan[i]->debug_output(0)+fmChan[i]->debug_output(1));
} }
@ -485,7 +482,6 @@ void DivPlatformYM2608::acquire(short* bufL, short* bufR, size_t start, size_t l
} }
oscBuf[15]->data[oscBuf[15]->needle++]=abe->get_last_out(0)+abe->get_last_out(1); oscBuf[15]->data[oscBuf[15]->needle++]=abe->get_last_out(0)+abe->get_last_out(1);
*/
} }
} }