finish it
This commit is contained in:
parent
c9cbf133d6
commit
31335b95c9
|
@ -1274,6 +1274,11 @@ DivMacroInt* DivPlatformGenesis::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformGenesis::getPan(int ch) {
|
||||
if (ch>5) ch=5;
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivSamplePos DivPlatformGenesis::getSamplePos(int ch) {
|
||||
if (!chan[5].dacMode) return DivSamplePos();
|
||||
if (ch<5) return DivSamplePos();
|
||||
|
|
|
@ -801,6 +801,7 @@ DivMacroInt* DivPlatformGenesisExt::getChanMacroInt(int ch) {
|
|||
}
|
||||
|
||||
unsigned short DivPlatformGenesisExt::getPan(int ch) {
|
||||
if (ch==csmChan) return 0;
|
||||
if (ch>=4+extChanOffs) return DivPlatformGenesis::getPan(ch-3);
|
||||
if (ch>=extChanOffs) return ((opChan[0].pan<<7)&1)|(opChan[0].pan&1);
|
||||
return DivPlatformGenesis::getPan(ch);
|
||||
|
|
|
@ -370,6 +370,10 @@ DivMacroInt* DivPlatformK053260::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformK053260::getPan(int ch) {
|
||||
return parent->convertPanLinearToSplit(chan[ch].panning,8,7);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformK053260::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -282,6 +282,10 @@ DivMacroInt* DivPlatformMSM6258::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformMSM6258::getPan(int ch) {
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformMSM6258::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -1564,6 +1564,18 @@ DivMacroInt* DivPlatformOPL::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformOPL::getPan(int ch) {
|
||||
if (totalOutputs<=1) return 0;
|
||||
if (chan[ch&(~1)].fourOp) {
|
||||
if (ch&1) {
|
||||
return ((chan[ch-1].pan<<7)&1)|(chan[ch-1].pan&1);
|
||||
} else {
|
||||
return ((chan[ch+1].pan<<7)&1)|(chan[ch+1].pan&1);
|
||||
}
|
||||
}
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformOPL::getOscBuffer(int ch) {
|
||||
if (oplType==759 || chipType==8950) {
|
||||
if (ch>=totalChans+1) return NULL;
|
||||
|
|
|
@ -623,6 +623,10 @@ DivMacroInt* DivPlatformQSound::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformQSound::getPan(int ch) {
|
||||
return parent->convertPanLinearToSplit(chan[ch].panning,8,32);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformQSound::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -322,6 +322,10 @@ DivMacroInt* DivPlatformRF5C68::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformRF5C68::getPan(int ch) {
|
||||
return ((chan[ch].panning&15)<<8)|((chan[ch].panning&0xf0)>>4);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformRF5C68::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -452,6 +452,12 @@ DivMacroInt* DivPlatformSMS::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformSMS::getPan(int ch) {
|
||||
if (!stereo) return 0;
|
||||
unsigned char p=lastPan&(0x11<<ch);
|
||||
return ((p&0xf0)?0x100:0)|((p&0x0f)?1:0);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformSMS::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -458,6 +458,10 @@ DivMacroInt* DivPlatformSoundUnit::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformSoundUnit::getPan(int ch) {
|
||||
return parent->convertPanLinearToSplit(chan[ch].pan,8,255);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformSoundUnit::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -444,6 +444,10 @@ DivMacroInt* DivPlatformVERA::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformVERA::getPan(int ch) {
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformVERA::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -864,6 +864,7 @@ DivMacroInt* DivPlatformX1_010::getChanMacroInt(int ch) {
|
|||
}
|
||||
|
||||
unsigned short DivPlatformX1_010::getPan(int ch) {
|
||||
if (!stereo) return 0;
|
||||
return ((chan[ch].pan&0xf0)<<4)|(chan[ch].pan&15);
|
||||
}
|
||||
|
||||
|
|
|
@ -1461,6 +1461,11 @@ DivMacroInt* DivPlatformYM2608::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformYM2608::getPan(int ch) {
|
||||
if (ch>=psgChanOffs && ch<adpcmAChanOffs) return 0;
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformYM2608::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -1421,6 +1421,11 @@ DivMacroInt* DivPlatformYM2610::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformYM2610::getPan(int ch) {
|
||||
if (ch>=psgChanOffs && ch<adpcmAChanOffs) return 0;
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformYM2610::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -1488,6 +1488,11 @@ DivMacroInt* DivPlatformYM2610B::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformYM2610B::getPan(int ch) {
|
||||
if (ch>=psgChanOffs && ch<adpcmAChanOffs) return 0;
|
||||
return ((chan[ch].pan<<7)&1)|(chan[ch].pan&1);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformYM2610B::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
|
@ -359,6 +359,10 @@ DivMacroInt* DivPlatformYMZ280B::getChanMacroInt(int ch) {
|
|||
return &chan[ch].std;
|
||||
}
|
||||
|
||||
unsigned short DivPlatformYMZ280B::getPan(int ch) {
|
||||
return parent->convertPanLinearToSplit(chan[ch].panning,8,15);
|
||||
}
|
||||
|
||||
DivDispatchOscBuffer* DivPlatformYMZ280B::getOscBuffer(int ch) {
|
||||
return oscBuf[ch];
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue