Since early this year I have been having difficulties with winmm in that my test application seems to deadlock if an audio driver is set up in the config. Without a defined audio driver or if the audio device is busy, the app works fine. For what it's worth here is a dump of +winmm +mmtime.
After deadlocking, top says wine is using 98% of cpu time about 70% of which is in syscalls. The remaining 28% is split about 50/50 between wine and wine-server.
Is there a good way to spy on the wineserver comms to find out why the deadlock?
Note that the debugger isn't even close to working on Solaris so solutions involving the debugger are not possible.
All hints gratefully received...
Bob
fixme:file:get_default_drive_device auto detection of DOS devices not supported on this platform fixme:ntdll:NtQueryVolumeInformationFile device info not properly supported on this platform err:heap:HEAP_CreateSystemHeap system heap base address 80000000 not available Fontconfig warning: line 381: invalid edit binding "same" Fontconfig warning: line 393: invalid edit binding "same" Minimum Stack Set to 1048576 overhead allowance = 0 Allocated thread at 1000 Allocated stack of 2097152 Bytes trace:winmm:DllMain 7f5c0000 0x1 1 trace:winmm:WINMM_CreateIData Created IData (7ff1cdb8) trace:winmm:MMDRV_Init () trace:winmm:MMDRV_Install ('wineaudioio.drv', 'wineaudioio.drv', mapper=N); trace:winmm:MMDRV_Install Got 32 bit func 'wodMessage' trace:winmm:MMDRV_GetDescription32 (7fd8fab8, 7fd8f7e8, 128) trace:winmm:MMDRV_GetDescription32 Can't find file wineaudioio.drv trace:winmm:MMDRV_Install wineaudioio.drv => No description trace:winmm:MMDRV_InitPerType (7f6402e0, 0000, 0003) trace:winmm:MMDRV_InitPerType (7f6402e0, 0001, 0001) trace:winmm:MMDRV_InitPerType (7f6402e0, 0002, 0035) trace:winmm:MMDRV_InitPerType (7f6402e0, 0003, 0001) trace:winmm:MMDRV_InitPerType (7f6402e0, 0004, 0032) trace:winmm:MMDRV_InitPerType (7f6402e0, 0005, 0003) trace:winmm:MMDRV_InitPerType DRVM_INIT => MMSYSERR_NOERROR trace:winmm:MMDRV_InitPerType Got 1 dev for (wineaudioio.drv:WaveOut) trace:winmm:MMDRV_InitPerType Setting min=0 max=1 (ttop=1) for (wineaudioio.drv:WaveOut) trace:winmm:MMDRV_InitPerType WaveOut:Trans[0] -> wineaudioio.drv trace:winmm:MMDRV_Install ('wavemapper', 'msacm.drv', mapper=Y); trace:winmm:MMDRV_Install Got 32 bit func 'widMessage' trace:winmm:MMDRV_Install Got 32 bit func 'wodMessage' trace:winmm:MMDRV_GetDescription32 (7fd8f9b8, 7fd8f7e8, 128) trace:winmm:MMDRV_GetDescription32 Can't find file msacm.drv trace:winmm:MMDRV_Install msacm.drv => No description trace:winmm:MMDRV_InitPerType (7f640334, 0000, 0003) trace:winmm:MMDRV_InitPerType (7f640334, 0001, 0001) trace:winmm:MMDRV_InitPerType (7f640334, 0002, 0035) trace:winmm:MMDRV_InitPerType (7f640334, 0003, 0001) trace:winmm:MMDRV_InitPerType (7f640334, 0004, 0032) trace:winmm:MMDRV_InitPerType DRVM_INIT => MMSYSERR_NOERROR trace:winmm:MMDRV_InitPerType Got 1 dev for (wavemapper:WaveIn) trace:winmm:MMDRV_InitPerType Setting min=0 max=0 (ttop=0) for (wavemapper:WaveIn) trace:winmm:MMDRV_InitPerType WaveIn:Trans[-1] -> wavemapper trace:winmm:MMDRV_InitPerType (7f640334, 0005, 0003) trace:winmm:MMDRV_InitPerType DRVM_INIT => MMSYSERR_NOERROR trace:winmm:MMDRV_InitPerType Got 1 dev for (wavemapper:WaveOut) trace:winmm:MMDRV_InitPerType Setting min=0 max=0 (ttop=1) for (wavemapper:WaveOut) trace:winmm:MMDRV_InitPerType WaveOut:Trans[-1] -> wavemapper trace:winmm:MMDRV_InitPerType WaveOut:Trans[0] -> wineaudioio.drv trace:winmm:MMDRV_Install ('midimapper', 'midimap.drv', mapper=Y); trace:winmm:MMDRV_GetNum (0003) trace:winmm:MMDRV_Install Got 32 bit func 'modMessage' trace:winmm:MMDRV_GetDescription32 (7fd8f8b8, 7fd8f7e8, 128) trace:winmm:MMDRV_GetDescription32 Can't find file midimap.drv trace:winmm:MMDRV_Install midimap.drv => No description trace:winmm:MMDRV_InitPerType (7f640388, 0000, 0003) trace:winmm:MMDRV_InitPerType (7f640388, 0001, 0001) trace:winmm:MMDRV_InitPerType (7f640388, 0002, 0035) trace:winmm:MMDRV_InitPerType (7f640388, 0003, 0001) trace:winmm:MMDRV_InitPerType DRVM_INIT => MMSYSERR_NOERROR trace:winmm:MMDRV_InitPerType Got 1 dev for (midimapper:MidiOut) trace:winmm:MMDRV_InitPerType Setting min=0 max=0 (ttop=0) for (midimapper:MidiOut) trace:winmm:MMDRV_InitPerType MidiOut:Trans[-1] -> midimapper trace:winmm:MMDRV_InitPerType (7f640388, 0004, 0032) trace:winmm:MMDRV_InitPerType (7f640388, 0005, 0003) fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (7ff2e1c0)->(00010024,00000008) Minimum Stack Set to 1048576 overhead allowance = 0 Allocated thread at 1000 Allocated stack of 2097152 Bytes trace:winmm:MMDRV_GetNum (0005) trace:winmm:waveOutMessage (0, 2068, 2144926836, 0) trace:winmm:MMDRV_Get (0, 0005, N) trace:winmm:MMDRV_Get (0, 0005, Y) trace:winmm:MMDRV_GetByID (0000, 0005) trace:winmm:MMDRV_PhysicalFeatures (7ff1ce8c, 0814, 7fd8fc74, 00000000) trace:winmm:MMDRV_Message (WaveOut 0 2068 0x00000000 0x7fd8fc74 0x00000000 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=2068 usr=0x00000000 p1=0x7fd8fc74 p2=0x00000000) err:wave:wodDsCreate DirectSound flag not set This sound card's driver does not support direct access The (slower) DirectSound HEL mode will be used instead. trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:WAVE_Open (7ff3122c, 0, Out, 7ff30b50, 7F57327E, 7FF30F90, 00030080, 32); trace:winmm:WAVE_Open wFormatTag=1, nChannels=2, nSamplesPerSec=22050, nAvgBytesPerSec=44100, nBlockAlign=2, wBitsPerSample=8 trace:winmm:MMDRV_Alloc (28, 0005, 7fd8fbb8, 7fd8fbe0, 7fd8fbd8, 7fd8fbdc, Y) trace:winmm:MMDRV_GetNum (0005) trace:winmm:WAVE_Open cb=7f5cf0aa trace:winmm:MMDRV_Open (7ff30ba0, 0005, 0x7fd8fb90, 0x00030080) trace:winmm:MMDRV_Open Setting mmdIndex to 0 trace:winmm:MMDRV_Message (WaveOut 0 5 0x7fd8fb50 0x7fd8fb90 0x00030080 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=5 usr=0x7fd8fb50 p1=0x7fd8fb90 p2=0x00030080) Open Audio inf.play.eof=0 inf.play.buffer_size=0 inf.play.samples=0 inf.play.pause=0 inf.play.sample_rate=8000 inf.play.precision=8 inf.play.channels=1 inf.play.encoding=1 inf.play.port=5 inf.play.gain=147 inf.play.error=0 inf.play.waiting=0 inf.play.balance=32 inf.play.active=0 inf.play.open=0 inf.play.avail_ports=7 inf.play.mod_ports=7 inf.record.eof=0 inf.record.buffer_size=0 inf.record.samples=0 inf.record.pause=0 inf.record.sample_rate=8000 inf.record.precision=8 inf.record.channels=1 inf.record.encoding=1 inf.record.port=1 inf.record.gain=127 inf.record.error=0 inf.record.waiting=0 inf.record.balance=32 inf.record.active=0 inf.record.open=0 inf.record.avail_ports=119 inf.record.mod_ports=119 Playback Sample Rate forced to 44100 Playback Channels forced to 2 Playback Precision forced to 16 Recording Sample Rate forced to 44100 Recording Channels forced to 2 Recording Precision forced to 16 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 Playback Sample Rate forced to 44100 Playback Channels forced to 2 Playback Precision forced to 16 Recording Sample Rate forced to 44100 Recording Channels forced to 2 Recording Precision forced to 16 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 Open Audio inf.play.eof=0 inf.play.buffer_size=0 inf.play.samples=0 inf.play.pause=0 inf.play.sample_rate=44100 inf.play.precision=16 inf.play.channels=2 inf.play.encoding=3 inf.play.port=5 inf.play.gain=147 inf.play.error=0 inf.play.waiting=0 inf.play.balance=32 inf.play.active=0 inf.play.open=1 inf.play.avail_ports=7 inf.play.mod_ports=7 inf.record.eof=0 inf.record.buffer_size=0 inf.record.samples=0 inf.record.pause=0 inf.record.sample_rate=8000 inf.record.precision=8 inf.record.channels=1 inf.record.encoding=1 inf.record.port=1 inf.record.gain=127 inf.record.error=0 inf.record.waiting=0 inf.record.balance=32 inf.record.active=0 inf.record.open=0 inf.record.avail_ports=119 inf.record.mod_ports=119 Playback Sample Rate forced to 22050 Playback Channels forced to 2 Playback Precision forced to 8 Recording Sample Rate forced to 22050 Recording Channels forced to 2 Recording Precision forced to 8 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 Playback Sample Rate forced to 22050 Playback Channels forced to 2 Playback Precision forced to 8 Recording Sample Rate forced to 22050 Recording Channels forced to 2 Recording Precision forced to 8 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 CPU Endian forced to 2 Data Type forced to 0 Minimum Stack Set to 1048576 overhead allowance = 0 Allocated thread at 1000 Allocated stack of 2097152 Bytes trace:winmm:MMDRV_Callback CB (*7f57327e)(8000 000003bb 7ff30f90 00000000 00000000 trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:WAVE_Open dwRet = MMSYSERR_NOERROR trace:winmm:WAVE_Open => MMSYSERR_NOERROR hWave=8000 trace:winmm:waveOutGetDevCapsW (0 7fd8fb94 84)! trace:winmm:MMDRV_Get (0, 0005, Y) trace:winmm:MMDRV_GetByID (0000, 0005) trace:winmm:MMDRV_Message (WaveOut 0 4 0x00000000 0x7fd8fb94 0x00000054 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=4 usr=0x00000000 p1=0x7fd8fb94 p2=0x00000054) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutPause (8000); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 10 0x7fd8fb74 0x00000000 0x00000000 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=10 usr=0x7fd8fb74 p1=0x00000000 p2=0x00000000) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutPrepareHeader (8000, 7ff30c40, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30c40 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30c40 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30c68, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30c68 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30c68 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30c90, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30c90 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30c90 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30cb8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30cb8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30cb8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30ce0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30ce0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30ce0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30d08, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30d08 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30d08 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30d30, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30d30 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30d30 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30d58, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30d58 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30d58 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30d80, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30d80 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30d80 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30da8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30da8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30da8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30dd0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30dd0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30dd0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30df8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30df8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30df8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30e20, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30e20 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30e20 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff30e48, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff30e48 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff30e48 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41420, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41420 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41420 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41448, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41448 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41448 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41470, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41470 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41470 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41498, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41498 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41498 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff414c0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff414c0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff414c0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff414e8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff414e8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff414e8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41510, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41510 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41510 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41538, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41538 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41538 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41560, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41560 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41560 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41588, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41588 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41588 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff415b0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff415b0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff415b0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff415d8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff415d8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff415d8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41600, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41600 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41600 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41628, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41628 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41628 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41650, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41650 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41650 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41678, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41678 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41678 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff416a0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff416a0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff416a0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff416c8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff416c8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff416c8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff416f0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff416f0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff416f0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41718, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41718 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41718 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41740, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41740 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41740 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41768, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41768 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41768 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41790, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41790 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41790 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff417b8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff417b8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff417b8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff417e0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff417e0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff417e0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41808, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41808 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41808 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41830, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41830 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41830 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41858, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41858 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41858 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41880, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41880 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41880 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff418a8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff418a8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff418a8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff418d0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff418d0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff418d0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff418f8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff418f8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff418f8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41920, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41920 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41920 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutPrepareHeader (8000, 7ff41948, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 7 0x7fd8fb74 0x7ff41948 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=7 usr=0x7fd8fb74 p1=0x7ff41948 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOTSUPPORTED trace:winmm:waveOutWrite (8000, 7ff30c40, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 9 0x7fd8fb74 0x7ff30c40 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=9 usr=0x7fd8fb74 p1=0x7ff30c40 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutWrite (8000, 7ff30c68, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 9 0x7fd8fb74 0x7ff30c68 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=9 usr=0x7fd8fb74 p1=0x7ff30c68 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutWrite (8000, 7ff30c90, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 9 0x7fd8fb74 0x7ff30c90 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=9 usr=0x7fd8fb74 p1=0x7ff30c90 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutWrite (8000, 7ff30cb8, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 9 0x7fd8fb74 0x7ff30cb8 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=9 usr=0x7fd8fb74 p1=0x7ff30cb8 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR trace:winmm:waveOutWrite (8000, 7ff30ce0, 32); trace:winmm:MMDRV_Get (8000, 0005, N) trace:winmm:MMDRV_Message (WaveOut 0 9 0x7fd8fb74 0x7ff30ce0 0x00000020 Y) trace:winmm:MMDRV_Message Calling message(dev=0 msg=9 usr=0x7fd8fb74 p1=0x7ff30ce0 p2=0x00000020) trace:winmm:MMDRV_Message => MMSYSERR_NOERROR fixme:mmtime:timeBeginPeriod Stub; we set our timer resolution at minimum trace:mmtime:TIME_SetEventInternal (10, 10, 7f5730e2, 7FF30F90, 0081); Minimum Stack Set to 1048576 overhead allowance = 0 Allocated thread at 1000 Allocated stack of 2097152 Bytes trace:mmtime:TIME_SetEventInternal => 1 trace:mmtime:TIME_MMSysTimeThread Starting main winmm thread trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3200(delta 5) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3210(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3220(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3230(delta 6) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3240(delta 3) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3250(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3260(delta 1) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3270(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3280(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3290(delta 0) fixme:ddraw:DIB_DirectDrawSurface_Blt dwFlags DDBLT_WAIT and/or DDBLT_ASYNC: can't handle right now. trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3300(delta 30) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3310(delta 20) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3320(delta 10) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3330(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3340(delta 40) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3350(delta 30) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3360(delta 20) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3370(delta 10) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3380(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3390(delta 40) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3400(delta 30) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3410(delta 20) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3420(delta 10) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3430(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3440(delta 35) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3450(delta 25) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3460(delta 15) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3470(delta 5) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3480(delta 52) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3490(delta 42) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3500(delta 32) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3510(delta 22) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3520(delta 12) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3530(delta 2) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3540(delta 1) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3550(delta 1) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3560(delta 1) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3570(delta 10) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3580(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3590(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3600(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3610(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3620(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3630(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3640(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3650(delta 10) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3660(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3670(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3680(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3690(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3700(delta 9) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3710(delta 1) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3720(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3730(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3740(delta 0) trace:mmtime:TIME_TriggerCallBack 000d:CallBack => lpFunc=7f5730e2 wTimerID=0001 dwUser=7FF30F90 dwTriggerTime 3750(delta 0) ...
Robert Lunnon a écrit :
sounds like the callback for the wave header is not called, so +audioio,+winmm,+mmtime would be helpful. A+
On Sat, 9 Apr 2005 06:17 pm, Eric Pouech wrote:
Robert Lunnon a écrit :
sounds like the callback for the wave header is not called, so +audioio,+winmm,+mmtime would be helpful. A+
I'll hunt a bit there but its not audioio specific, same thing happens when I use the arts driver. Still I'll look into the Prepare Header UNSUPPORTED return if you think it is significant.
On Sat, 9 Apr 2005 06:17 pm, Eric Pouech wrote:
Robert Lunnon a écrit :
sounds like the callback for the wave header is not called, so +audioio,+winmm,+mmtime would be helpful. A+
More insight,
Perhaps the problem isn't specifically audio related even though it ONLY happens when the audio driver is loaded and a driver (wodPlayer) thread is running
I seems to be getting lots of sections like below, note the DDERR_SURFACEBUSY returns from almost all of the direct draw calls Dunno how this ties in with DSOUND but it's mighty suspicious.
0009:Call winmm.timeGetTime() ret=00439301 0009:Call kernel32.GetTickCount() ret=7f5e9c03 0009:Ret kernel32.GetTickCount() retval=000014c9 ret=7f5e9c03 0009:Ret winmm.timeGetTime() retval=000014c9 ret=00439301 0009:Call winmm.timeGetTime() ret=0043930a 0009:Call kernel32.GetTickCount() ret=7f5e9c03 0009:Ret kernel32.GetTickCount() retval=000014c9 ret=7f5e9c03 0009:Ret winmm.timeGetTime() retval=000014c9 ret=0043930a 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(0,0,0,01000400,7fd8fb44) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_COLORFILL DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f708,0,0,01000400,7fd8f718) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :0x0-794x550 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_COLORFILL DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7ffeb6e0,7fd8f704,01000000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :155x135-651x215 0009:trace:ddraw:DIB_DirectDrawSurface_Blt srcrect :0x41-496x121 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7ffeb6e0,7fd8f704,01000000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :263x242-545x361 0009:trace:ddraw:DIB_DirectDrawSurface_Blt srcrect :0x125-282x244 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:Main_DirectDrawSurface_GetDC (7ff307c8)->(7fd8f77c) 0009:trace:ddraw:Main_DirectDrawSurface_Lock (7ff307c8)->Lock(0,7fd8f6c0,00000000,00000000) 0009:trace:ddraw:Main_DirectDrawSurface_Lock - locking flags : DDLOCK_SURFACEMEMORYPTR 0009:warn:ddraw:Main_DirectDrawSurface_Lock Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:Main_DirectDrawSurface_GetDC (7ff307c8)->(7fd8f764) 0009:trace:ddraw:Main_DirectDrawSurface_Lock (7ff307c8)->Lock(0,7fd8f6a8,00000000,00000000) 0009:trace:ddraw:Main_DirectDrawSurface_Lock - locking flags : DDLOCK_SURFACEMEMORYPTR 0009:warn:ddraw:Main_DirectDrawSurface_Lock Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:Main_DirectDrawSurface_GetDC (7ff307c8)->(7fd8f74c) 0009:trace:ddraw:Main_DirectDrawSurface_Lock (7ff307c8)->Lock(0,7fd8f690,00000000,00000000) 0009:trace:ddraw:Main_DirectDrawSurface_Lock - locking flags : DDLOCK_SURFACEMEMORYPTR 0009:warn:ddraw:Main_DirectDrawSurface_Lock Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7da71080,7fd8f6f0,01008000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :581x462-592x481 0009:trace:ddraw:DIB_DirectDrawSurface_Blt srcrect :0x0-11x19 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_KEYSRC DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7da71080,7fd8f704,01008000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :581x462-794x550 0009:trace:ddraw:DIB_DirectDrawSurface_Blt srcrect :1431655765x1431655765-1431655978x1431655853 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_KEYSRC DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff301d0)->(44e1d8,7ff307c8,0,01000000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :3x22-797x572 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:Call user32.PeekMessageA(7fd8fd10,00000000,00000000,00000000,00000000) ret=004392c9 0009:Call kernel32._CheckNotSysLevel(7fb44c80) ret=7fa9f995 0009:Ret kernel32._CheckNotSysLevel() retval=00000009 ret=7fa9f995 0009:Call x11drv.MsgWaitForMultipleObjectsEx(00000000,00000000,00000000,000000ff,00000000) ret=7faec89b 0009:Call ntdll.NtCurrentTeb() ret=7f37fdd0 0009:Ret ntdll.NtCurrentTeb() retval=d1d10000 ret=7f37fdd0 0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49 0009:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49 0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a 0009:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a 0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49 0009:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49 0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a 0009:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a 0009:Call kernel32.WaitForMultipleObjectsEx(00000001,7fd8f9d8,00000000,00000000,00000000) ret=7f37feef 0009:Call ntdll.NtWaitForMultipleObjects(00000001,7fd8f7e4,00000000,00000000,7fd8f7d8) ret=7fe2e4a1 0009: select( flags=12, cookie=7fd8f6c8, timeout=1113085739.911636 (-0.000036), handles={60} ) 0009: select() = TIMEOUT 0009:Ret ntdll.NtWaitForMultipleObjects() retval=00000102 ret=7fe2e4a1 0009:Ret kernel32.WaitForMultipleObjectsEx() retval=00000102 ret=7f37feef 0009:Ret x11drv.MsgWaitForMultipleObjectsEx() retval=00000102 ret=7faec89b 0009:Call ntdll.NtCurrentTeb() ret=7fa9bc7a 0009:Ret ntdll.NtCurrentTeb() retval=d1d10000 ret=7fa9bc7a 0009:Call kernel32.GlobalLock16(00001117) ret=7fa9bcb8 0009:Ret kernel32.GlobalLock16() retval=7ff1c858 ret=7fa9bcb8 0009: get_message( flags=0, get_win=0, get_first=00000000, get_last=ffffffff, get_next_hw=0 ) 0009: get_message() = PENDING { type=0, win=0, msg=00000000, wparam=00000000, lparam=00000000, x=0, y=0, hook=0, hook_proc=0, time=00000000, info=00000000, total=0, data={} }
On Sat, 9 Apr 2005 06:17 pm, Eric Pouech wrote:
Robert Lunnon a écrit :
sounds like the callback for the wave header is not called, so +audioio,+winmm,+mmtime would be helpful. A+
More information,
The instances of DDERR_SURFACEBUSY Begin with the section of code under. It looks suspiciously like the blt call didn't release the surface when the error occured, why this should be related to audio support being on I haven't a clue
009:trace:ddraw:Main_DirectDrawSurface_Unlock (7ff307c8)->Unlock(0) 0009:trace:ddraw:Main_DirectDrawSurface_Unlock (7da71080)->Unlock(0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7da71080,7fd8f704,01008000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :581x462-794x550 0009:trace:ddraw:DIB_DirectDrawSurface_Blt srcrect :1431655765x1431655765-1431655978x1431655853 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_KEYSRC DDBLT_WAIT 0009:trace:ddraw:Main_DirectDrawSurface_Lock (7da71080)->Lock(0,7fd8f534,00000010,00000000) 0009:trace:ddraw:Main_DirectDrawSurface_Lock - locking flags : DDLOCK_READONLY 0009:trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description : - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN - DDSD_HEIGHT : 19 - DDSD_WIDTH : 11 - DDSD_PITCH : 40 - DDSD_LPSURFACE : 7da30000 - DDSD_CKSRCBLT : Low : 0 - High : 0 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 24, R ff0000 G 00ff00 B 0000ff) 0009:trace:ddraw:Main_DirectDrawSurface_Lock (7ff307c8)->Lock(0,7fd8f5b4,00000020,00000000) 0009:trace:ddraw:Main_DirectDrawSurface_Lock - locking flags : DDLOCK_WRITEONLY 0009:trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description : - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN - DDSD_HEIGHT : 550 - DDSD_WIDTH : 794 - DDSD_PITCH : 2384 - DDSD_LPSURFACE : 7e140000 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 24, R ff0000 G 00ff00 B 0000ff) ****** 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Application gave us bad source rectangle for Blt. ****** 0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff301d0)->(44e1d8,7ff307c8,0,01000000,0) 0009:trace:ddraw:DIB_DirectDrawSurface_Blt destrect :3x22-797x572 0009:trace:ddraw:DIB_DirectDrawSurface_Blt flags: DDBLT_WAIT 0009:warn:ddraw:DIB_DirectDrawSurface_Blt Surface is busy, returning DDERR_SURFACEBUSY 0009:Call user32.PeekMessageA(7fd8fd10,00000000,00000000,00000000,00000000) ret=004392c9 0009:Call kernel32._CheckNotSysLevel(7fb44c80) ret=7fa9f995 0009:Ret kernel32._CheckNotSysLevel() retval=00000009 ret=7fa9f995 0009:Call x11drv.MsgWaitForMultipleObjectsEx(00000000,00000000,00000000,000000ff,00000000) ret=7faec89b 0009:Call ntdll.NtCurrentTeb() ret=7f37fdd0 0009:Ret ntdll.NtCurrentTeb() retval=d1d10000 ret=7f37fdd0 0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49 0009:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49 0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a 0009:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a 0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49 0009:Ret ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49 0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a 0009:Ret ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a 0009:Call kernel32.WaitForMultipleObjectsEx(00000001,7fd8f9d8,00000000,00000000,00000000) ret=7f37feef 0009:Call ntdll.NtWaitForMultipleObjects(00000001,7fd8f7e4,00000000,00000000,7fd8f7d8) ret=7fe2e4a1 0009: select( flags=12, cookie=7fd8f6c8, timeout=1113085739.449273 (-0.000076), handles={60} ) 0009: select() = TIMEOUT