Sorry, didn't mean to sign-off on this, I pushed the wrong button in my mail client...
On Mon, Jul 09, 2018 at 09:39:56AM -0500, Andrew Eikum wrote:
@@ -1178,8 +1181,11 @@ start_header:
/* do we have to wait ? */ if (me->dwDeltaTime) {
DWORD delta; EnterCriticalSection(&lpMidiStrm->lock);
lpMidiStrm->dwPositionMS += MMSYSTEM_MidiStream_Convert(lpMidiStrm, me->dwDeltaTime);
delta = lpMidiStrm->remainder + MMSYSTEM_MidiStream_Convert(lpMidiStrm, me->dwDeltaTime);
lpMidiStrm->dwPositionMS += delta / 1000;
lpMidiStrm->remainder = delta % 1000; lpMidiStrm->dwPulses += me->dwDeltaTime; LeaveCriticalSection(&lpMidiStrm->lock);
Instead of storing the remainder in a separate variable, does it make sense to change the units of dwPositionMS to microseconds?
Andrew