Fixed playptmod length detection when testing for vblank timing
parent
1590770af6
commit
7876eed573
|
@ -2844,6 +2844,7 @@ void playptmod_Play(void *_p, unsigned int startOrder)
|
||||||
memcpy(p->source->sampleData, p->source->originalSampleData, p->source->head.totalSampleSize);
|
memcpy(p->source->sampleData, p->source->originalSampleData, p->source->head.totalSampleSize);
|
||||||
memset(p->orderPlayed, 0, sizeof(p->orderPlayed));
|
memset(p->orderPlayed, 0, sizeof(p->orderPlayed));
|
||||||
|
|
||||||
|
p->loopCounter = 0;
|
||||||
p->orderPlayed[startOrder] = 1;
|
p->orderPlayed[startOrder] = 1;
|
||||||
p->modulePlaying = true;
|
p->modulePlaying = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -85,9 +85,16 @@ BOOL probe_length( void * ptmod, unsigned long * intro_length, unsigned long * l
|
||||||
|
|
||||||
if ( !probe_length(mod, &normal_intro_length, &normal_loop_length, 0, data, size, track_num) )
|
if ( !probe_length(mod, &normal_intro_length, &normal_loop_length, 0, data, size, track_num) )
|
||||||
return NO;
|
return NO;
|
||||||
if ( can_be_vblank && !probe_length(mod, &vblank_intro_length, &vblank_loop_length, 1, data, size, track_num) )
|
if ( can_be_vblank )
|
||||||
return NO;
|
{
|
||||||
else vblank_intro_length = 0, vblank_loop_length = 0;
|
if ( !probe_length(mod, &vblank_intro_length, &vblank_loop_length, 1, data, size, track_num) )
|
||||||
|
return NO;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
vblank_intro_length = 0;
|
||||||
|
vblank_loop_length = 0;
|
||||||
|
}
|
||||||
|
|
||||||
playptmod_Free(mod);
|
playptmod_Free(mod);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue