prepare to add channel pair and mode hints

This commit is contained in:
tildearrow 2023-10-05 04:47:14 -05:00
parent 1283f70646
commit 839dc3cd91
5 changed files with 70 additions and 1 deletions

View file

@ -37,6 +37,14 @@ unsigned short DivDispatch::getPan(int chan) {
return 0;
}
DivChannelPair DivDispatch::getPaired(int chan) {
return DivChannelPair();
}
DivChannelModeHints DivDispatch::getModeHints(int chan) {
return DivChannelModeHints();
}
DivMacroInt* DivDispatch::getChanMacroInt(int chan) {
return NULL;
}

View file

@ -1582,6 +1582,15 @@ unsigned short DivPlatformOPL::getPan(int ch) {
return ((chan[ch].pan&1)<<8)|((chan[ch].pan&2)>>1);
}
DivChannelPair DivPlatformOPL::getPaired(int ch) {
if (oplType==3 && ch<12 && !(ch&1)) {
if (chan[ch].fourOp) {
return DivChannelPair("4OP",ch+1);
}
}
return DivChannelPair();
}
DivDispatchOscBuffer* DivPlatformOPL::getOscBuffer(int ch) {
if (oplType==759 || chipType==8950) {
if (ch>=totalChans+1) return NULL;

View file

@ -115,6 +115,7 @@ class DivPlatformOPL: public DivDispatch {
void* getChanState(int chan);
DivMacroInt* getChanMacroInt(int ch);
unsigned short getPan(int chan);
DivChannelPair getPaired(int chan);
DivDispatchOscBuffer* getOscBuffer(int chan);
unsigned char* getRegisterPool();
int getRegisterPoolSize();