mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-16 01:35:07 +00:00
Y8950: fix ADPCM VGM export
This commit is contained in:
parent
315c2645d2
commit
70ead337f3
1 changed files with 7 additions and 7 deletions
|
@ -734,12 +734,12 @@ int DivPlatformOPL::dispatch(DivCommand c) {
|
||||||
chan[c.chan].sample=ins->amiga.getSample(c.value);
|
chan[c.chan].sample=ins->amiga.getSample(c.value);
|
||||||
if (chan[c.chan].sample>=0 && chan[c.chan].sample<parent->song.sampleLen) {
|
if (chan[c.chan].sample>=0 && chan[c.chan].sample<parent->song.sampleLen) {
|
||||||
DivSample* s=parent->getSample(chan[c.chan].sample);
|
DivSample* s=parent->getSample(chan[c.chan].sample);
|
||||||
immWrite(9,(s->offB>>2)&0xff);
|
immWrite(9,(s->offB>>5)&0xff);
|
||||||
immWrite(10,(s->offB>>10)&0xff);
|
immWrite(10,(s->offB>>13)&0xff);
|
||||||
int end=s->offB+s->lengthB-1;
|
int end=s->offB+s->lengthB-1;
|
||||||
immWrite(11,(end>>2)&0xff);
|
immWrite(11,(end>>5)&0xff);
|
||||||
immWrite(12,(end>>10)&0xff);
|
immWrite(12,(end>>13)&0xff);
|
||||||
immWrite(8,2);
|
immWrite(8,1);
|
||||||
immWrite(7,(s->loopStart>=0)?0xb0:0xa0); // start/repeat
|
immWrite(7,(s->loopStart>=0)?0xb0:0xa0); // start/repeat
|
||||||
if (c.value!=DIV_NOTE_NULL) {
|
if (c.value!=DIV_NOTE_NULL) {
|
||||||
chan[c.chan].note=c.value;
|
chan[c.chan].note=c.value;
|
||||||
|
@ -774,7 +774,7 @@ int DivPlatformOPL::dispatch(DivCommand c) {
|
||||||
int end=s->offB+s->lengthB-1;
|
int end=s->offB+s->lengthB-1;
|
||||||
immWrite(11,(end>>2)&0xff);
|
immWrite(11,(end>>2)&0xff);
|
||||||
immWrite(12,(end>>10)&0xff);
|
immWrite(12,(end>>10)&0xff);
|
||||||
immWrite(8,2);
|
immWrite(8,1);
|
||||||
immWrite(7,(s->loopStart>=0)?0xb0:0xa0); // start/repeat
|
immWrite(7,(s->loopStart>=0)?0xb0:0xa0); // start/repeat
|
||||||
int freq=(65536.0*(double)s->rate)/(double)rate;
|
int freq=(65536.0*(double)s->rate)/(double)rate;
|
||||||
immWrite(16,freq&0xff);
|
immWrite(16,freq&0xff);
|
||||||
|
@ -1698,7 +1698,7 @@ int DivPlatformOPL::init(DivEngine* p, int channels, int sugRate, unsigned int f
|
||||||
adpcmBMemLen=0;
|
adpcmBMemLen=0;
|
||||||
iface.adpcmBMem=adpcmBMem;
|
iface.adpcmBMem=adpcmBMem;
|
||||||
iface.sampleBank=0;
|
iface.sampleBank=0;
|
||||||
adpcmB=new ymfm::adpcm_b_engine(iface,2);
|
adpcmB=new ymfm::adpcm_b_engine(iface,5);
|
||||||
}
|
}
|
||||||
|
|
||||||
reset();
|
reset();
|
||||||
|
|
Loading…
Reference in a new issue