rem: CurTime = SleepTask (CurTime + 1);
add: SleepThreadUntil (CurTime + 1); CurTime = GetTimeCounter ();
context: fade_task (void *data){	SIZE TDelta, volume_beg;	DWORD StartTime, CurTime;	volume_beg = _music_volume;	StartTime = CurTime = GetTimeCounter ();	do	{		CurTime = SleepTask (CurTime + 1);		if ((TDelta = (SIZE) (CurTime - StartTime)) > TTotal)			TDelta = TTotal;		SetMusicVolume ((COUNT) (volume_beg + (SIZE)				((long) (volume_end - volume_beg) * TDelta / TTotal)));	} while (TDelta < TTotal);	FadeTask = 0;	return (1);}