[PATCH] dlls/winmm/tests: enable compilation with long types

Andrew Eikum aeikum at codeweavers.com
Fri Mar 11 08:01:12 CST 2022


Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>

On Wed, Mar 09, 2022 at 08:23:07AM +0100, Eric Pouech wrote:
> Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
> 
> ---
>  dlls/winmm/tests/Makefile.in |    1 
>  dlls/winmm/tests/capture.c   |   28 ++--
>  dlls/winmm/tests/joystick.c  |    8 +
>  dlls/winmm/tests/mci.c       |   58 ++++----
>  dlls/winmm/tests/mcicda.c    |   56 ++++----
>  dlls/winmm/tests/midi.c      |  164 +++++++++++------------
>  dlls/winmm/tests/mixer.c     |   72 +++++-----
>  dlls/winmm/tests/mmio.c      |  306 +++++++++++++++++++++---------------------
>  dlls/winmm/tests/timer.c     |    8 +
>  dlls/winmm/tests/wave.c      |   42 +++---
>  10 files changed, 371 insertions(+), 372 deletions(-)
> 
> diff --git a/dlls/winmm/tests/Makefile.in b/dlls/winmm/tests/Makefile.in
> index c668ea611f7..1b191cb5747 100644
> --- a/dlls/winmm/tests/Makefile.in
> +++ b/dlls/winmm/tests/Makefile.in
> @@ -1,4 +1,3 @@
> -EXTRADEFS = -DWINE_NO_LONG_TYPES
>  TESTDLL   = winmm.dll
>  IMPORTS   = winmm ole32 user32 advapi32
>  
> diff --git a/dlls/winmm/tests/capture.c b/dlls/winmm/tests/capture.c
> index 306c69dd99d..a3d15e418ec 100644
> --- a/dlls/winmm/tests/capture.c
> +++ b/dlls/winmm/tests/capture.c
> @@ -65,8 +65,8 @@ static void check_position(int device, HWAVEIN win, DWORD bytes,
>      ok(mmtime.wType == TIME_BYTES, "waveInGetPosition(%s): returned %s\n",
>         dev_name(device), wave_time_format(mmtime.wType));
>      returned = time_to_bytes(&mmtime, pwfx);
> -    ok(returned == bytes, "waveInGetPosition(%s): returned %d bytes, "
> -       "should be %d\n", dev_name(device), returned, bytes);
> +    ok(returned == bytes, "waveInGetPosition(%s): returned %ld bytes, "
> +       "should be %ld\n", dev_name(device), returned, bytes);
>  
>      mmtime.wType = TIME_SAMPLES;
>      rc=waveInGetPosition(win, &mmtime, sizeof(mmtime));
> @@ -75,8 +75,8 @@ static void check_position(int device, HWAVEIN win, DWORD bytes,
>      ok(mmtime.wType == TIME_SAMPLES, "waveInGetPosition(%s): returned %s\n",
>         dev_name(device), wave_time_format(mmtime.wType));
>      returned = time_to_bytes(&mmtime, pwfx);
> -    ok(returned == bytes, "waveInGetPosition(%s): returned %d samples, "
> -       "should be %d\n", dev_name(device), bytes_to_samples(returned, pwfx),
> +    ok(returned == bytes, "waveInGetPosition(%s): returned %ld samples, "
> +       "should be %ld\n", dev_name(device), bytes_to_samples(returned, pwfx),
>         bytes_to_samples(bytes, pwfx));
>  
>      mmtime.wType = TIME_MS;
> @@ -147,7 +147,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>         (!(flags & WAVE_FORMAT_DIRECT) || (flags & WAVE_MAPPED)) &&
>         !(pcaps->dwFormats & format)) ||
>         (rc==MMSYSERR_INVALFLAG && (flags & WAVE_FORMAT_DIRECT)),
> -       "waveInOpen(%s): format=%dx%2dx%d flags=%x(%s) rc=%s\n",
> +       "waveInOpen(%s): format=%ldx%2dx%d flags=%lx(%s) rc=%s\n",
>         dev_name(device),pwfx->nSamplesPerSec,pwfx->wBitsPerSample,
>         pwfx->nChannels,flags,wave_open_flags(flags),wave_in_error(rc));
>      if ((rc==WAVERR_BADFORMAT || rc==MMSYSERR_NOTSUPPORTED) &&
> @@ -156,7 +156,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>                "capabilities but opening it failed.\n");
>      if ((rc==WAVERR_BADFORMAT || rc==MMSYSERR_NOTSUPPORTED) &&
>         !(pcaps->dwFormats & format))
> -        trace("waveInOpen(%s): format=%dx%2dx%d %s rc=%s failed but format "
> +        trace("waveInOpen(%s): format=%ldx%2dx%d %s rc=%s failed but format "
>                "not supported so OK.\n",dev_name(device),pwfx->nSamplesPerSec,
>                pwfx->wBitsPerSample,pwfx->nChannels,
>                flags & WAVE_FORMAT_DIRECT ? "flags=WAVE_FORMAT_DIRECT" :
> @@ -171,7 +171,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>      ok(pwfx->nChannels==nChannels &&
>         pwfx->wBitsPerSample==wBitsPerSample &&
>         pwfx->nSamplesPerSec==nSamplesPerSec,
> -       "got the wrong format: %dx%2dx%d instead of %dx%2dx%d\n",
> +       "got the wrong format: %ldx%2dx%d instead of %ldx%2dx%d\n",
>         pwfx->nSamplesPerSec, pwfx->wBitsPerSample,
>         pwfx->nChannels, nSamplesPerSec, wBitsPerSample, nChannels);
>  
> @@ -207,7 +207,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>         "not set\n",dev_name(device));
>  
>      if (winetest_interactive && rc==MMSYSERR_NOERROR) {
> -        trace("Recording for 1 second at %5dx%2dx%d %s %s\n",
> +        trace("Recording for 1 second at %5ldx%2dx%d %s %s\n",
>                pwfx->nSamplesPerSec, pwfx->wBitsPerSample,pwfx->nChannels,
>                get_format_str(pwfx->wFormatTag),
>                flags & WAVE_FORMAT_DIRECT ? "WAVE_FORMAT_DIRECT" :
> @@ -227,7 +227,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>          ok(res==WAIT_OBJECT_0,"WaitForSingleObject failed for header\n");
>          ok(frag.dwFlags&WHDR_DONE,"WHDR_DONE not set in frag.dwFlags\n");
>          ok(frag.dwBytesRecorded==pwfx->nAvgBytesPerSec,
> -           "frag.dwBytesRecorded=%d, should=%d\n",
> +           "frag.dwBytesRecorded=%ld, should=%ld\n",
>             frag.dwBytesRecorded,pwfx->nAvgBytesPerSec);
>  
>          mmt.wType = TIME_BYTES;
> @@ -235,7 +235,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>          ok(rc==MMSYSERR_NOERROR,"waveInGetPosition(%s): rc=%s\n",
>             dev_name(device),wave_in_error(rc));
>          ok(mmt.wType == TIME_BYTES, "doesn't support TIME_BYTES: %u\n", mmt.wType);
> -        ok(mmt.u.cb == frag.dwBytesRecorded, "Got wrong position: %u\n", mmt.u.cb);
> +        ok(mmt.u.cb == frag.dwBytesRecorded, "Got wrong position: %lu\n", mmt.u.cb);
>  
>          /* stop playing on error */
>          if (res!=WAIT_OBJECT_0) {
> @@ -269,7 +269,7 @@ static void wave_in_test_deviceIn(int device, WAVEFORMATEX *pwfx, DWORD format,
>             rc==MMSYSERR_ALLOCATED ||
>             ((rc==WAVERR_BADFORMAT || rc==MMSYSERR_NOTSUPPORTED) &&
>              !(pcaps->dwFormats & format)),
> -           "waveOutOpen(%s) format=%dx%2dx%d flags=CALLBACK_EVENT rc=%s\n",
> +           "waveOutOpen(%s) format=%ldx%2dx%d flags=CALLBACK_EVENT rc=%s\n",
>             dev_name(device),pwfx->nSamplesPerSec,pwfx->wBitsPerSample,
>             pwfx->nChannels,wave_out_error(rc));
>          if (rc==MMSYSERR_NOERROR)
> @@ -385,7 +385,7 @@ static void wave_in_test_device(UINT_PTR device)
>          ok(rc==MMSYSERR_NOERROR,"waveInMessage(%s): failed to get interface "
>             "name: rc=%s\n",dev_name(device),wave_in_error(rc));
>          ok(lstrlenW(nameW)+1==size/sizeof(WCHAR),
> -           "got an incorrect size %d\n", size);
> +           "got an incorrect size %ld\n", size);
>          if (rc==MMSYSERR_NOERROR) {
>              nameA = HeapAlloc(GetProcessHeap(), 0, size/sizeof(WCHAR));
>              WideCharToMultiByte(CP_ACP, 0, nameW, size/sizeof(WCHAR),
> @@ -400,7 +400,7 @@ static void wave_in_test_device(UINT_PTR device)
>      trace("  %s: \"%s\" (%s) %d.%d (%d:%d)\n",dev_name(device),capsA.szPname,
>            (nameA?nameA:"failed"),capsA.vDriverVersion >> 8,
>            capsA.vDriverVersion & 0xff,capsA.wMid,capsA.wPid);
> -    trace("     channels=%d formats=%05x\n",
> +    trace("     channels=%d formats=%05lx\n",
>            capsA.wChannels,capsA.dwFormats);
>  
>      HeapFree(GetProcessHeap(), 0, nameA);
> @@ -666,7 +666,7 @@ static void wave_in_tests(void)
>  
>      if(rc != MMSYSERR_NOTSUPPORTED)
>          ok((ndev == 0 && (preferred == -1 || broken(preferred != -1))) ||
> -                preferred < ndev, "Got invalid preferred device: 0x%x\n", preferred);
> +                preferred < ndev, "Got invalid preferred device: 0x%lx\n", preferred);
>  
>      rc = waveInMessage((HWAVEIN)WAVE_MAPPER, DRVM_MAPPER_PREFERRED_GET,
>           (DWORD_PTR)-1  , 0);
> diff --git a/dlls/winmm/tests/joystick.c b/dlls/winmm/tests/joystick.c
> index 313e9684e96..64392079daa 100644
> --- a/dlls/winmm/tests/joystick.c
> +++ b/dlls/winmm/tests/joystick.c
> @@ -46,7 +46,7 @@ static void create_window(void)
>      window = CreateWindowExA(0, name, name, WS_OVERLAPPEDWINDOW,
>                               CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
>                               NULL, NULL, NULL, NULL);
> -    ok(window != NULL, "Expected CreateWindowEx to work, error %d\n", GetLastError());
> +    ok(window != NULL, "Expected CreateWindowEx to work, error %ld\n", GetLastError());
>  }
>  
>  static void destroy_window(void)
> @@ -211,11 +211,11 @@ static void test_api(void)
>              ret = joyGetPosEx(joyid, &infoex.ex);
>              if (ret == JOYERR_NOERROR)
>              {
> -                trace("X: %5d, Y: %5d, Z: %5d, POV: %5d\n",
> +                trace("X: %5ld, Y: %5ld, Z: %5ld, POV: %5ld\n",
>                         infoex.ex.dwXpos, infoex.ex.dwYpos, infoex.ex.dwZpos, infoex.ex.dwPOV);
> -                trace("R: %5d, U: %5d, V: %5d\n",
> +                trace("R: %5ld, U: %5ld, V: %5ld\n",
>                         infoex.ex.dwRpos, infoex.ex.dwUpos, infoex.ex.dwVpos);
> -                trace("BUTTONS: 0x%04X, BUTTON_COUNT: %2d, REMAINING: %d ms\n\n",
> +                trace("BUTTONS: 0x%04lX, BUTTON_COUNT: %2ld, REMAINING: %ld ms\n\n",
>                         infoex.ex.dwButtons, infoex.ex.dwButtonNumber, MAX_TIME - spent);
>              }
>              Sleep(500);
> diff --git a/dlls/winmm/tests/mci.c b/dlls/winmm/tests/mci.c
> index f8bb4c56ac0..cfad9a77da8 100644
> --- a/dlls/winmm/tests/mci.c
> +++ b/dlls/winmm/tests/mci.c
> @@ -123,7 +123,7 @@ const char* dbg_mcierr(MCIERROR err)
>  #undef X
>       default: {
>           static char name[20]; /* Not to be called twice in a parameter list! */
> -         sprintf(name, "MMSYSERR %u", err);
> +         sprintf(name, "MMSYSERR %lu", err);
>           return name;
>           }
>       }
> @@ -155,12 +155,12 @@ static void test_notification_dbg(HWND hwnd, const char* command, WPARAM type, i
>        seen = PeekMessageA(&msg, hwnd, MM_MCINOTIFY, MM_MCINOTIFY, PM_REMOVE);
>      }
>      if(!seen)
> -      ok_(__FILE__,line)(type==0, "Expect message %04lx from %s\n", type, command);
> +      ok_(__FILE__,line)(type==0, "Expect message %04Ix from %s\n", type, command);
>      else if(msg.hwnd != hwnd)
>          ok_(__FILE__,line)(msg.hwnd == hwnd, "Didn't get the handle to our test window\n");
>      else if(msg.message != MM_MCINOTIFY)
>          ok_(__FILE__,line)(msg.message == MM_MCINOTIFY, "got %04x instead of MM_MCINOTIFY from command %s\n", msg.message, command);
> -    else ok_(__FILE__,line)(msg.wParam == type, "got %04lx instead of MCI_NOTIFY_xyz %04lx from command %s\n", msg.wParam, type, command);
> +    else ok_(__FILE__,line)(msg.wParam == type, "got %04Ix instead of MCI_NOTIFY_xyz %04Ix from command %s\n", msg.wParam, type, command);
>  }
>  
>  static void test_mciParser(HWND hwnd)
> @@ -316,13 +316,13 @@ static void test_mciParser(HWND hwnd)
>      parm.status.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status time format: %s\n", dbg_mcierr(err));
> -    if(!err) ok(MCI_FORMAT_MILLISECONDS==parm.status.dwReturn,"status time format: %ld\n",parm.status.dwReturn);
> +    if(!err) ok(MCI_FORMAT_MILLISECONDS==parm.status.dwReturn,"status time format: %Id\n",parm.status.dwReturn);
>  
>      parm.status.dwItem = MCI_STATUS_MODE;
>      parm.status.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status mode: %s\n", dbg_mcierr(err));
> -    if(!err) ok(MCI_MODE_STOP==parm.status.dwReturn,"STATUS mode: %ld\n",parm.status.dwReturn);
> +    if(!err) ok(MCI_MODE_STOP==parm.status.dwReturn,"STATUS mode: %Id\n",parm.status.dwReturn);
>  
>      err = mciSendStringA("status x mode", buf, sizeof(buf), hwnd);
>      ok(!err,"status mode: %s\n", dbg_mcierr(err));
> @@ -332,19 +332,19 @@ static void test_mciParser(HWND hwnd)
>      parm.caps.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand getdevcaps files: %s\n", dbg_mcierr(err));
> -    if(!err) ok(1==parm.caps.dwReturn,"getdevcaps files: %d\n",parm.caps.dwReturn);
> +    if(!err) ok(1==parm.caps.dwReturn,"getdevcaps files: %ld\n",parm.caps.dwReturn);
>  
>      parm.caps.dwItem = MCI_GETDEVCAPS_HAS_VIDEO;
>      parm.caps.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand getdevcaps video: %s\n", dbg_mcierr(err));
> -    if(!err) ok(0==parm.caps.dwReturn,"getdevcaps video: %d\n",parm.caps.dwReturn);
> +    if(!err) ok(0==parm.caps.dwReturn,"getdevcaps video: %ld\n",parm.caps.dwReturn);
>  
>      parm.caps.dwItem = MCI_GETDEVCAPS_DEVICE_TYPE;
>      parm.caps.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand getdevcaps video: %s\n", dbg_mcierr(err));
> -    if(!err) ok(MCI_DEVTYPE_WAVEFORM_AUDIO==parm.caps.dwReturn,"getdevcaps device type: %d\n",parm.caps.dwReturn);
> +    if(!err) ok(MCI_DEVTYPE_WAVEFORM_AUDIO==parm.caps.dwReturn,"getdevcaps device type: %ld\n",parm.caps.dwReturn);
>  
>      err = mciSendStringA("capability x uses files", buf, sizeof(buf), hwnd);
>      ok(!err,"capability files: %s\n", dbg_mcierr(err));
> @@ -410,7 +410,7 @@ static void test_openCloseWAVE(HWND hwnd)
>      }
>  
>      err = mciGetDeviceIDA("waveaudio");
> -    ok(!err, "mciGetDeviceIDA waveaudio returned %u, expected 0\n", err);
> +    ok(!err, "mciGetDeviceIDA waveaudio returned %lu, expected 0\n", err);
>  
>      err = mciSendStringA(command_open, buf, sizeof(buf), hwnd);
>      ok(!err,"mci %s returned %s\n", command_open, dbg_mcierr(err));
> @@ -525,7 +525,7 @@ static void test_openCloseWAVE(HWND hwnd)
>      ok(!strcmp(buf,"K"), "info output buffer %s\n", buf);
>  
>      err = mciGetDeviceIDA("all");
> -    ok(err == MCI_ALL_DEVICE_ID, "mciGetDeviceIDA all returned %u, expected MCI_ALL_DEVICE_ID\n", err);
> +    ok(err == MCI_ALL_DEVICE_ID, "mciGetDeviceIDA all returned %lu, expected MCI_ALL_DEVICE_ID\n", err);
>  
>      err = mciSendStringA(command_close_my, NULL, 0, hwnd);
>      ok(!err,"mci %s returned %s\n", command_close_my, dbg_mcierr(err));
> @@ -588,13 +588,13 @@ static void test_openCloseWAVE(HWND hwnd)
>          parm.caps.dwItem = MCI_GETDEVCAPS_DEVICE_TYPE;
>          err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
>          ok(!err,"mciCommand MCI_GETDEVCAPS device type: %s\n", dbg_mcierr(err));
> -        ok(MCI_DEVTYPE_WAVEFORM_AUDIO==parm.caps.dwReturn,"mciCommand GETDEVCAPS says %u, expected %u\n", parm.caps.dwReturn, MCI_DEVTYPE_WAVEFORM_AUDIO);
> +        ok(MCI_DEVTYPE_WAVEFORM_AUDIO==parm.caps.dwReturn,"mciCommand GETDEVCAPS says %lu, expected %u\n", parm.caps.dwReturn, MCI_DEVTYPE_WAVEFORM_AUDIO);
>      }
>  
>      ok(0xDEADF00D==intbuf[0] && 0xABADCAFE==intbuf[2],"DWORD buffer corruption\n");
>  
>      err = mciGetDeviceIDA("waveaudio");
> -    ok(err == 1, "mciGetDeviceIDA waveaudio returned %u, expected 1\n", err);
> +    ok(err == 1, "mciGetDeviceIDA waveaudio returned %lu, expected 1\n", err);
>  
>      err = mciSendStringA("open no-such-file.wav alias waveaudio", buf, sizeof(buf), NULL);
>      ok(err==MCIERR_DUPLICATE_ALIAS, "mci open alias waveaudio returned %s\n", dbg_mcierr(err));
> @@ -636,11 +636,11 @@ static void test_recordWAVE(HWND hwnd)
>      wDeviceID = parm.open.wDeviceID;
>  
>      err = mciGetDeviceIDA("x");
> -    ok(err == wDeviceID, "mciGetDeviceIDA x returned %u, expected %u\n", err, wDeviceID);
> +    ok(err == wDeviceID, "mciGetDeviceIDA x returned %lu, expected %u\n", err, wDeviceID);
>  
>      /* Only the alias is looked up. */
>      err = mciGetDeviceIDA("waveaudio");
> -    ok(!err, "mciGetDeviceIDA waveaudio returned %u, expected 0\n", err);
> +    ok(!err, "mciGetDeviceIDA waveaudio returned %lu, expected 0\n", err);
>  
>      test_notification(hwnd, "open new", MCI_NOTIFY_SUCCESSFUL);
>      test_notification(hwnd, "open new no #2", 0);
> @@ -649,7 +649,7 @@ static void test_recordWAVE(HWND hwnd)
>      parm.status.dwItem = MCI_STATUS_TIME_FORMAT;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status time format: %s\n", dbg_mcierr(err));
> -    ok(parm.status.dwReturn==MCI_FORMAT_MILLISECONDS,"status time format: %ld\n",parm.status.dwReturn);
> +    ok(parm.status.dwReturn==MCI_FORMAT_MILLISECONDS,"status time format: %Id\n",parm.status.dwReturn);
>  
>      /* Info file fails until named in Open or Save. */
>      err = mciSendStringA("info x file", buf, sizeof(buf), NULL);
> @@ -707,7 +707,7 @@ static void test_recordWAVE(HWND hwnd)
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM | MCI_NOTIFY,
>              (DWORD_PTR)&parm);
>      ok(!err,"mciCommand MCI_GETDEVCAPS inputs: %s\n", dbg_mcierr(err));
> -    ok(parm.caps.dwReturn==ndevs,"mciCommand GETDEVCAPS claims %u inputs, expected %u\n", parm.caps.dwReturn, ndevs);
> +    ok(parm.caps.dwReturn==ndevs,"mciCommand GETDEVCAPS claims %lu inputs, expected %u\n", parm.caps.dwReturn, ndevs);
>      ok(!ok_pcm || !parm.caps.dwReturn,"No input device accepts PCM!?\n");
>      test_notification(hwnd, "GETDEVCAPS inputs", MCI_NOTIFY_SUCCESSFUL);
>  
> @@ -739,7 +739,7 @@ static void test_recordWAVE(HWND hwnd)
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status position: %s\n", dbg_mcierr(err));
>      expect = 2 * nsamp * nch * nbits/8;
> -    if(!err) todo_wine ok(parm.status.dwReturn==expect,"recorded %lu bytes, expected %u\n",parm.status.dwReturn,expect);
> +    if(!err) todo_wine ok(parm.status.dwReturn==expect,"recorded %Iu bytes, expected %lu\n",parm.status.dwReturn,expect);
>  
>      parm.set.dwTimeFormat = MCI_FORMAT_SAMPLES;
>      err = mciSendCommandA(wDeviceID, MCI_SET, MCI_SET_TIME_FORMAT, (DWORD_PTR)&parm);
> @@ -749,7 +749,7 @@ static void test_recordWAVE(HWND hwnd)
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status position: %s\n", dbg_mcierr(err));
>      expect = 2 * nsamp;
> -    if(!err) todo_wine ok(parm.status.dwReturn==expect,"recorded %lu samples, expected %u\n",parm.status.dwReturn,expect);
> +    if(!err) todo_wine ok(parm.status.dwReturn==expect,"recorded %Iu samples, expected %lu\n",parm.status.dwReturn,expect);
>  
>      err = mciSendStringA("set x time format milliseconds", NULL, 0, NULL);
>      ok(!err,"mci set time format milliseconds returned %s\n", dbg_mcierr(err));
> @@ -763,7 +763,7 @@ static void test_recordWAVE(HWND hwnd)
>  
>      /* Save must not rename the original file. */
>      if (!DeleteFileA("tempfile1.wav"))
> -        todo_wine ok(FALSE, "Save must not rename the original file; DeleteFileA returned %d\n",
> +        todo_wine ok(FALSE, "Save must not rename the original file; DeleteFileA returned %ld\n",
>                  GetLastError());
>  
>      err = mciSendStringA("set x channels 2", NULL, 0, NULL);
> @@ -800,13 +800,13 @@ static void test_playWAVE(HWND hwnd)
>      }
>  
>      err = mciGetDeviceIDA("mysound");
> -    ok(err == 1, "mciGetDeviceIDA mysound returned %u, expected 1\n", err);
> +    ok(err == 1, "mciGetDeviceIDA mysound returned %lu, expected 1\n", err);
>  
>      err = mciGetDeviceIDA("tempfile.wav");
> -    ok(!err, "mciGetDeviceIDA tempfile.wav returned %u, expected 0\n", err);
> +    ok(!err, "mciGetDeviceIDA tempfile.wav returned %lu, expected 0\n", err);
>  
>      err = mciGetDeviceIDA("waveaudio");
> -    ok(!err, "mciGetDeviceIDA waveaudio returned %u, expected 0\n", err);
> +    ok(!err, "mciGetDeviceIDA waveaudio returned %lu, expected 0\n", err);
>  
>      err = mciSendStringA("status mysound length", buf, sizeof(buf), NULL);
>      ok(!err,"mci status length returned %s\n", dbg_mcierr(err));
> @@ -964,7 +964,7 @@ static void test_asyncWAVE(HWND hwnd)
>      parm.status.dwItem = MCI_STATUS_TIME_FORMAT;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err,"mciCommand status time format: %s\n", dbg_mcierr(err));
> -    if(!err) ok(parm.status.dwReturn==MCI_FORMAT_MILLISECONDS,"status time format: %ld\n",parm.status.dwReturn);
> +    if(!err) ok(parm.status.dwReturn==MCI_FORMAT_MILLISECONDS,"status time format: %Id\n",parm.status.dwReturn);
>  
>      parm.set.dwTimeFormat = MCI_FORMAT_MILLISECONDS;
>      err = mciSendCommandA(wDeviceID, MCI_SET, MCI_SET_TIME_FORMAT, (DWORD_PTR)&parm);
> @@ -1188,7 +1188,7 @@ static void test_AutoOpenWAVE(HWND hwnd)
>      test_notification(hwnd, "sysinfo name notify\n", MCI_NOTIFY_SUCCESSFUL);
>  
>      err = mciGetDeviceIDA("tempfile.wav");
> -    ok(err == 1, "mciGetDeviceIDA tempfile.wav returned %u, expected 1\n", err);
> +    ok(err == 1, "mciGetDeviceIDA tempfile.wav returned %lu, expected 1\n", err);
>  
>      /* Save the full pathname to the file. */
>      err = mciSendStringA("info tempfile.wav file", path, sizeof(path), NULL);
> @@ -1318,7 +1318,7 @@ static void test_playWaveTypeMpegvideo(void)
>                            (DWORD_PTR)&status_parm);
>      ok(!err,"mciCommand status mode returned %s\n", dbg_mcierr(err));
>      ok(status_parm.dwReturn == MCI_MODE_PLAY,
> -       "mciCommand status mode: %u\n", (DWORD)status_parm.dwReturn);
> +       "mciCommand status mode: %lu\n", (DWORD)status_parm.dwReturn);
>  
>      err = mciSendStringA("setaudio mysound volume to 1000", NULL, 0, NULL);
>      ok(!err,"mci setaudio volume to 1000 returned %s\n", dbg_mcierr(err));
> @@ -1392,10 +1392,10 @@ static DWORD CALLBACK thread_cb(void *p)
>      MCIERROR mr;
>  
>      mr = mciSendStringA("play x", NULL, 0, NULL);
> -    ok(mr == MCIERR_INVALID_DEVICE_NAME, "play gave: 0x%x\n", mr);
> +    ok(mr == MCIERR_INVALID_DEVICE_NAME, "play gave: 0x%lx\n", mr);
>  
>      mr = mciSendStringA("close x", NULL, 0, NULL);
> -    ok(mr == MCIERR_INVALID_DEVICE_NAME, "close gave: 0x%x\n", mr);
> +    ok(mr == MCIERR_INVALID_DEVICE_NAME, "close gave: 0x%lx\n", mr);
>  
>      SetEvent(evt);
>  
> @@ -1408,7 +1408,7 @@ static void test_threads(void)
>      HANDLE evt;
>  
>      mr = mciSendStringA("open tempfile.wav alias x", NULL, 0, NULL);
> -    ok(mr == 0 || mr == ok_saved, "open gave: 0x%x\n", mr);
> +    ok(mr == 0 || mr == ok_saved, "open gave: 0x%lx\n", mr);
>      if(mr){
>          skip("Cannot open tempfile.wav for playing (%s), skipping\n", dbg_mcierr(mr));
>          return;
> @@ -1423,7 +1423,7 @@ static void test_threads(void)
>      CloseHandle(evt);
>  
>      mr = mciSendStringA("close x", NULL, 0, NULL);
> -    ok(mr == 0, "close gave: 0x%x\n", mr);
> +    ok(mr == 0, "close gave: 0x%lx\n", mr);
>  }
>  
>  START_TEST(mci)
> diff --git a/dlls/winmm/tests/mcicda.c b/dlls/winmm/tests/mcicda.c
> index 73668c21031..c59c62a9dac 100644
> --- a/dlls/winmm/tests/mcicda.c
> +++ b/dlls/winmm/tests/mcicda.c
> @@ -61,12 +61,12 @@ static void test_notification_dbg(HWND hwnd, const char* command, WPARAM type, i
>        seen = PeekMessageA(&msg, hwnd, MM_MCINOTIFY, MM_MCINOTIFY, PM_REMOVE);
>      }
>      if(!seen)
> -      ok_(__FILE__,line)(type==0, "Expect message %04lx from %s\n", type, command);
> +      ok_(__FILE__,line)(type==0, "Expect message %04Ix from %s\n", type, command);
>      else if(msg.hwnd != hwnd)
>          ok_(__FILE__,line)(msg.hwnd == hwnd, "Didn't get the handle to our test window\n");
>      else if(msg.message != MM_MCINOTIFY)
>          ok_(__FILE__,line)(msg.message == MM_MCINOTIFY, "got %04x instead of MM_MCINOTIFY from command %s\n", msg.message, command);
> -    else ok_(__FILE__,line)(msg.wParam == type, "got %04lx instead of MCI_NOTIFY_xyz %04lx from command %s\n", msg.wParam, type, command);
> +    else ok_(__FILE__,line)(msg.wParam == type, "got %04Ix instead of MCI_NOTIFY_xyz %04Ix from command %s\n", msg.wParam, type, command);
>  }
>  
>  #define CDFRAMES_PERSEC                 75
> @@ -134,12 +134,12 @@ static void test_play(HWND hwnd)
>      parm.caps.dwItem = 0x4001;
>      parm.caps.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
> -    ok(err == MCIERR_UNSUPPORTED_FUNCTION, "GETDEVCAPS %x: %s\n", parm.caps.dwItem, dbg_mcierr(err));
> +    ok(err == MCIERR_UNSUPPORTED_FUNCTION, "GETDEVCAPS %lx: %s\n", parm.caps.dwItem, dbg_mcierr(err));
>  
>      parm.caps.dwItem = MCI_GETDEVCAPS_DEVICE_TYPE;
>      err = mciSendCommandA(wDeviceID, MCI_GETDEVCAPS, MCI_GETDEVCAPS_ITEM, (DWORD_PTR)&parm);
>      ok(!err, "GETDEVCAPS device type: %s\n", dbg_mcierr(err));
> -    if(!err) ok( parm.caps.dwReturn == MCI_DEVTYPE_CD_AUDIO, "getdevcaps device type: %u\n", parm.caps.dwReturn);
> +    if(!err) ok( parm.caps.dwReturn == MCI_DEVTYPE_CD_AUDIO, "getdevcaps device type: %lu\n", parm.caps.dwReturn);
>  
>      err = mciSendCommandA(wDeviceID, MCI_RECORD, 0, (DWORD_PTR)&parm);
>      ok(err == MCIERR_UNSUPPORTED_FUNCTION, "MCI_RECORD: %s\n", dbg_mcierr(err));
> @@ -157,7 +157,7 @@ static void test_play(HWND hwnd)
>      parm.status.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm);
>      ok(!err, "STATUS time format: %s\n", dbg_mcierr(err));
> -    if(!err) ok(parm.status.dwReturn == MCI_FORMAT_MSF, "status time default format: %ld\n", parm.status.dwReturn);
> +    if(!err) ok(parm.status.dwReturn == MCI_FORMAT_MSF, "status time default format: %Id\n", parm.status.dwReturn);
>  
>      /* "CD-Audio" */
>      err = mciSendStringA("info c product wait notify", buf, sizeof(buf), hwnd);
> @@ -187,7 +187,7 @@ static void test_play(HWND hwnd)
>          /* set door closed may not work. */
>          return;
>      default: /* play/record/seek/pause */
> -        ok(parm.status.dwReturn==MCI_MODE_STOP, "STATUS mode is %lx\n", parm.status.dwReturn);
> +        ok(parm.status.dwReturn==MCI_MODE_STOP, "STATUS mode is %Ix\n", parm.status.dwReturn);
>          /* fall through */
>      case MCI_MODE_STOP: /* normal */
>          break;
> @@ -220,7 +220,7 @@ static void test_play(HWND hwnd)
>      ok(err == ok_hw, "STATUS number of tracks: %s\n", dbg_mcierr(err));
>      numtracks = parm.status.dwReturn;
>      /* cf. MAXIMUM_NUMBER_TRACKS */
> -    ok(0 < numtracks && numtracks <= 99, "number of tracks=%ld\n", parm.status.dwReturn);
> +    ok(0 < numtracks && numtracks <= 99, "number of tracks=%Id\n", parm.status.dwReturn);
>  
>      err = mciSendStringA("status c length", buf, sizeof(buf), hwnd);
>      ok(err == ok_hw, "status length: %s\n", dbg_mcierr(err));
> @@ -325,7 +325,7 @@ static void test_play(HWND hwnd)
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
>      ok(!err, "STATUS type track 1: %s\n", dbg_mcierr(err));
>      ok(parm.status.dwReturn==MCI_CDA_TRACK_OTHER || parm.status.dwReturn==MCI_CDA_TRACK_AUDIO,
> -       "unknown track type %lx\n", parm.status.dwReturn);
> +       "unknown track type %Ix\n", parm.status.dwReturn);
>  
>      if (parm.status.dwReturn == MCI_CDA_TRACK_OTHER) {
>          /* Find an audio track */
> @@ -333,9 +333,9 @@ static void test_play(HWND hwnd)
>          parm.status.dwTrack = numtracks;
>          parm.status.dwReturn = 0xFEEDABAD;
>          err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
> -        ok(!err, "STATUS type track %u: %s\n", numtracks, dbg_mcierr(err));
> +        ok(!err, "STATUS type track %lu: %s\n", numtracks, dbg_mcierr(err));
>          ok(parm.status.dwReturn == MCI_CDA_TRACK_OTHER || parm.status.dwReturn == MCI_CDA_TRACK_AUDIO,
> -           "unknown track type %lx\n", parm.status.dwReturn);
> +           "unknown track type %Ix\n", parm.status.dwReturn);
>          track = (!err && parm.status.dwReturn == MCI_CDA_TRACK_AUDIO) ? numtracks : 0;
>  
>          /* Seek to start (above) skips over data tracks
> @@ -347,7 +347,7 @@ static void test_play(HWND hwnd)
>          ok(!err || broken(err == MCIERR_HARDWARE), "STATUS position: %s\n", dbg_mcierr(err));
>  
>          if(!err && track) ok(parm.status.dwReturn > duration,
> -            "Seek did not skip data tracks, position %lums\n", parm.status.dwReturn);
> +            "Seek did not skip data tracks, position %Iums\n", parm.status.dwReturn);
>          /* dwReturn > start + length(#1) may fail because of small position report fluctuation.
>           * On some native systems, status position fluctuates around the target position;
>           * Successive calls return varying positions! */
> @@ -359,18 +359,18 @@ static void test_play(HWND hwnd)
>          parm.status.dwTrack = 1;
>          parm.status.dwReturn = 0xFEEDABAD;
>          err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
> -        ok(!err, "STATUS length track %u: %s\n", parm.status.dwTrack, dbg_mcierr(err));
> +        ok(!err, "STATUS length track %lu: %s\n", parm.status.dwTrack, dbg_mcierr(err));
>          duration = parm.status.dwReturn;
>          trace("track #1 length: %02um:%02us:%02uframes\n",
>                MCI_MSF_MINUTE(duration), MCI_MSF_SECOND(duration), MCI_MSF_FRAME(duration));
> -        ok(duration>>24==0, "CD length high bits %08X\n", duration);
> +        ok(duration>>24==0, "CD length high bits %08lX\n", duration);
>  
>          /* TODO only with mixed CDs? */
>          /* play track 1 to length silently works with data tracks */
>          parm.play.dwFrom = MCI_MAKE_MSF(0,2,0);
>          parm.play.dwTo = duration; /* omitting 2 seconds from end */
>          err = mciSendCommandA(wDeviceID, MCI_PLAY, MCI_FROM | MCI_TO, (DWORD_PTR)&parm);
> -        ok(!err, "PLAY data to %08X: %s\n", duration, dbg_mcierr(err));
> +        ok(!err, "PLAY data to %08lX: %s\n", duration, dbg_mcierr(err));
>  
>          Sleep(1500*factor); /* Time to spin up, hopefully less than track length */
>  
> @@ -394,16 +394,16 @@ static void test_play(HWND hwnd)
>      parm.status.dwTrack = numtracks;
>      parm.status.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
> -    ok(!err, "STATUS length track %u: %s\n", parm.status.dwTrack, dbg_mcierr(err));
> +    ok(!err, "STATUS length track %lu: %s\n", parm.status.dwTrack, dbg_mcierr(err));
>      duration = parm.status.dwReturn;
>      trace("last track length: %02um:%02us:%02uframes\n",
>            MCI_MSF_MINUTE(duration), MCI_MSF_SECOND(duration), MCI_MSF_FRAME(duration));
> -    ok(duration>>24==0, "CD length high bits %08X\n", duration);
> +    ok(duration>>24==0, "CD length high bits %08lX\n", duration);
>  
>      parm.status.dwItem = MCI_STATUS_POSITION;
>      /* dwTrack is still set */
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
> -    ok(!err, "STATUS position start track %u: %s\n", parm.status.dwTrack, dbg_mcierr(err));
> +    ok(!err, "STATUS position start track %lu: %s\n", parm.status.dwTrack, dbg_mcierr(err));
>      trace("last track position: %02um:%02us:%02uframes\n",
>            MCI_MSF_MINUTE(parm.status.dwReturn), MCI_MSF_SECOND(parm.status.dwReturn), MCI_MSF_FRAME(parm.status.dwReturn));
>  
> @@ -411,21 +411,21 @@ static void test_play(HWND hwnd)
>       * for the last track it's NOT the position of the lead-out. */
>      parm.seek.dwTo = MSF_Add(parm.status.dwReturn, duration);
>      err = mciSendCommandA(wDeviceID, MCI_SEEK, MCI_TO, (DWORD_PTR)&parm);
> -    ok(!err, "SEEK to %08X position last + length: %s\n", parm.seek.dwTo, dbg_mcierr(err));
> +    ok(!err, "SEEK to %08lX position last + length: %s\n", parm.seek.dwTo, dbg_mcierr(err));
>  
>      parm.seek.dwTo = MSF_Add(parm.seek.dwTo, MCI_MAKE_MSF(0,0,1));
>      err = mciSendCommandA(wDeviceID, MCI_SEEK, MCI_TO, (DWORD_PTR)&parm);
> -    ok(err == MCIERR_OUTOFRANGE, "SEEK past %08X position last + length: %s\n", parm.seek.dwTo, dbg_mcierr(err));
> +    ok(err == MCIERR_OUTOFRANGE, "SEEK past %08lX position last + length: %s\n", parm.seek.dwTo, dbg_mcierr(err));
>  
>      err = mciSendStringA("set c time format tmsf", buf, sizeof(buf), hwnd);
>      ok(!err, "set time format tmsf: %s\n", dbg_mcierr(err));
>  
>      parm.play.dwFrom = track;
>      err = mciSendCommandA(wDeviceID, MCI_PLAY, MCI_FROM | MCI_NOTIFY, (DWORD_PTR)&parm);
> -    ok(!err, "PLAY from %u notify: %s\n", track, dbg_mcierr(err));
> +    ok(!err, "PLAY from %lu notify: %s\n", track, dbg_mcierr(err));
>  
>      if(err) {
> -        skip("Cannot manage to play track %u.\n", track);
> +        skip("Cannot manage to play track %lu.\n", track);
>          return;
>      }
>  
> @@ -472,13 +472,13 @@ static void test_play(HWND hwnd)
>  
>      parm.play.dwFrom = track;
>      err = mciSendCommandA(wDeviceID, MCI_PLAY, MCI_FROM | MCI_NOTIFY, (DWORD_PTR)&parm);
> -    ok(!err, "PLAY from %u notify: %s\n", track, dbg_mcierr(err));
> +    ok(!err, "PLAY from %lu notify: %s\n", track, dbg_mcierr(err));
>  
>      Sleep(1600*factor);
>  
>      parm.seek.dwTo = 1; /* not <track>, to test position below */
>      err = mciSendCommandA(wDeviceID, MCI_SEEK, MCI_TO, (DWORD_PTR)&parm);
> -    ok(!err, "SEEK to %u notify: %s\n", track, dbg_mcierr(err));
> +    ok(!err, "SEEK to %lu notify: %s\n", track, dbg_mcierr(err));
>      /* Note that native's Status position / current track may move the head
>       * and reflect the new position only seconds after issuing the command. */
>  
> @@ -493,7 +493,7 @@ static void test_play(HWND hwnd)
>      parm.play.dwFrom = track;
>      parm.play.dwTo = MCI_MAKE_TMSF(track,0,0,21); /* 21 frames, subsecond */
>      err = mciSendCommandA(wDeviceID, MCI_PLAY, MCI_FROM | MCI_TO | MCI_NOTIFY, (DWORD_PTR)&parm);
> -    ok(!err, "PLAY from %u notify: %s\n", track, dbg_mcierr(err));
> +    ok(!err, "PLAY from %lu notify: %s\n", track, dbg_mcierr(err));
>  
>      Sleep(2200*factor);
>  
> @@ -525,21 +525,21 @@ static void test_play(HWND hwnd)
>      parm.status.dwTrack = numtracks;
>      parm.status.dwReturn = 0xFEEDABAD;
>      err = mciSendCommandA(wDeviceID, MCI_STATUS, MCI_STATUS_ITEM | MCI_TRACK, (DWORD_PTR)&parm);
> -    ok(!err, "STATUS length track %u: %s\n", parm.status.dwTrack, dbg_mcierr(err));
> -    ok(duration == parm.status.dwReturn, "length MSF<>TMSF %08lX\n", parm.status.dwReturn);
> +    ok(!err, "STATUS length track %lu: %s\n", parm.status.dwTrack, dbg_mcierr(err));
> +    ok(duration == parm.status.dwReturn, "length MSF<>TMSF %08IX\n", parm.status.dwReturn);
>  
>      /* Play from position start to start+length always works. */
>      /* TODO? also play it using MSF */
>      parm.play.dwFrom = numtracks;
>      parm.play.dwTo = (duration << 8) | numtracks; /* as TMSF */
>      err = mciSendCommandA(wDeviceID, MCI_PLAY, MCI_FROM | MCI_TO | MCI_NOTIFY, (DWORD_PTR)&parm);
> -    ok(!err, "PLAY (TMSF) from %08X to %08X: %s\n", parm.play.dwFrom, parm.play.dwTo, dbg_mcierr(err));
> +    ok(!err, "PLAY (TMSF) from %08lX to %08lX: %s\n", parm.play.dwFrom, parm.play.dwTo, dbg_mcierr(err));
>  
>      Sleep(1400*factor);
>  
>      err = mciSendStringA("status c current track", buf, sizeof(buf), hwnd);
>      ok(!err, "status track: %s\n", dbg_mcierr(err));
> -    if(!err) todo_wine ok(numtracks == atoi(buf), "status current track gave %s, expected %u\n", buf, numtracks);
> +    if(!err) todo_wine ok(numtracks == atoi(buf), "status current track gave %s, expected %lu\n", buf, numtracks);
>      /* fails in Wine because SEEK is independent on IOCTL_CDROM_RAW_READ */
>  
>      err = mciSendCommandA(wDeviceID, MCI_STOP, 0, 0);
> diff --git a/dlls/winmm/tests/midi.c b/dlls/winmm/tests/midi.c
> index a78f9b5ac71..cf58e1e955a 100644
> --- a/dlls/winmm/tests/midi.c
> +++ b/dlls/winmm/tests/midi.c
> @@ -57,7 +57,7 @@ static void CALLBACK callback_func(HWAVEOUT hwo, UINT uMsg,
>                                     DWORD_PTR dwParam1, DWORD_PTR dwParam2)
>  {
>      if (winetest_debug>1)
> -        trace("Callback! msg=%x %lx %lx\n", uMsg, dwParam1, dwParam2);
> +        trace("Callback! msg=%x %Ix %Ix\n", uMsg, dwParam1, dwParam2);
>      cbmsg = uMsg;
>      cbval1 = dwParam1;   /* mhdr or 0 */
>      cbval2 = dwParam2;   /* always 0 */
> @@ -81,24 +81,24 @@ static void test_notification_dbg(HWND hwnd, const char* command, UINT m1, DWORD
>            trace_(__FILE__,line)("Waiting for delayed message %x from %s\n", m1, command);
>            SetLastError(0xDEADBEEF);
>            rc = MsgWaitForMultipleObjects(0, NULL, FALSE, 3000, QS_POSTMESSAGE);
> -          ok_(__FILE__,line)(rc==WAIT_OBJECT_0, "Wait failed: %04x %d\n", rc, GetLastError());
> +          ok_(__FILE__,line)(rc==WAIT_OBJECT_0, "Wait failed: %04lx %ld\n", rc, GetLastError());
>            seen = PeekMessageA(&msg, hwnd, 0, 0, PM_REMOVE);
>          }
>          if (seen) {
> -            trace_(__FILE__,line)("Message %x, wParam=%lx, lParam=%lx from %s\n",
> +            trace_(__FILE__,line)("Message %x, wParam=%Ix, lParam=%Ix from %s\n",
>                    msg.message, msg.wParam, msg.lParam, command);
>              ok_(__FILE__,line)(msg.hwnd==hwnd, "Didn't get the handle to our test window\n");
> -            ok_(__FILE__,line)(msg.message==m1 && msg.lParam==p2, "bad message %x/%lx from %s, expect %x/%lx\n", msg.message, msg.lParam, command, m1, p2);
> +            ok_(__FILE__,line)(msg.message==m1 && msg.lParam==p2, "bad message %x/%Ix from %s, expect %x/%Ix\n", msg.message, msg.lParam, command, m1, p2);
>          }
>          else ok_(__FILE__,line)(m1==0, "Expect message %x from %s\n", m1, command);
>      }
>      else {
>          /* FIXME: MOM_POSITIONCB and MOM_DONE are so close that a queue is needed. */
>          if (cbmsg) {
> -            ok_(__FILE__,line)(cbmsg==m1 && cbval1==p2 && cbval2==0, "bad callback %x/%lx/%lx from %s, expect %x/%lx\n", cbmsg, cbval1, cbval2, command, m1, p2);
> +            ok_(__FILE__,line)(cbmsg==m1 && cbval1==p2 && cbval2==0, "bad callback %x/%Ix/%Ix from %s, expect %x/%Ix\n", cbmsg, cbval1, cbval2, command, m1, p2);
>              cbmsg = 0; /* Mark as read */
>              cbval1 = cbval2 = WHATEVER;
> -            ok_(__FILE__,line)(cbinst==MYCBINST, "callback dwInstance changed to %lx\n", cbinst);
> +            ok_(__FILE__,line)(cbinst==MYCBINST, "callback dwInstance changed to %Ix\n", cbinst);
>          }
>          else ok_(__FILE__,line)(m1==0, "Expect callback %x from %s\n", m1, command);
>      }
> @@ -117,7 +117,7 @@ static void test_midiIn_device(UINT udev, HWND hwnd)
>         "midiInGetDevCaps(dev=%d) rc=%s\n", udev, mmsys_error(rc));
>      if (!rc) {
>          /* MIDI IN capsA.dwSupport may contain garbage, absent in old MS-Windows */
> -        trace("* %s: manufacturer=%d, product=%d, support=%X\n", capsA.szPname, capsA.wMid, capsA.wPid, capsA.dwSupport);
> +        trace("* %s: manufacturer=%d, product=%d, support=%lX\n", capsA.szPname, capsA.wMid, capsA.wPid, capsA.dwSupport);
>      }
>  
>      if (hwnd)
> @@ -136,73 +136,73 @@ static void test_midiIn_device(UINT udev, HWND hwnd)
>      mhdr.dwBufferLength = 70000; /* > 64KB! */
>      mhdr.dwBytesRecorded = 5;
>      mhdr.lpData = HeapAlloc(GetProcessHeap(), 0 , mhdr.dwBufferLength);
> -    ok(mhdr.lpData!=NULL, "No %d bytes of memory!\n", mhdr.dwBufferLength);
> +    ok(mhdr.lpData!=NULL, "No %ld bytes of memory!\n", mhdr.dwBufferLength);
>      if (mhdr.lpData) {
>          rc = midiInPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset)-1);
>          ok(rc==MMSYSERR_INVALPARAM, "midiInPrepare tiny rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags |= MHDR_INQUEUE;
>          rc = midiInPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiInPrepare old size rc=%s\n", mmsys_error(rc));
>          ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE|MHDR_DONE)/*w9x*/ ||
> -           mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%x\n", mhdr.dwFlags);
> -        trace("MIDIHDR flags=%x when unsent\n", mhdr.dwFlags);
> +           mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%lx\n", mhdr.dwFlags);
> +        trace("MIDIHDR flags=%lx when unsent\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags |= MHDR_INQUEUE|MHDR_DONE;
>          rc = midiInPrepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiInPrepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE|MHDR_DONE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE|MHDR_DONE), "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags &= ~MHDR_INQUEUE;
>          rc = midiInUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiInUnprepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags &= ~MHDR_DONE;
>          rc = midiInUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiInUnprepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == 0, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == 0, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          rc = midiInPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiInPrepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags |= MHDR_DONE;
>          rc = midiInPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiInPrepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwBytesRecorded == 5, "BytesRec=%u\n", mhdr.dwBytesRecorded);
> +        ok(mhdr.dwBytesRecorded == 5, "BytesRec=%lu\n", mhdr.dwBytesRecorded);
>  
>          mhdr.dwFlags |= MHDR_DONE;
>          rc = midiInAddBuffer(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiAddBuffer rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE), "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          /* w95 does not set dwBytesRecorded=0 within midiInAddBuffer.  Wine does. */
>          if (mhdr.dwBytesRecorded != 0)
> -            trace("dwBytesRecorded %u\n", mhdr.dwBytesRecorded);
> +            trace("dwBytesRecorded %lu\n", mhdr.dwBytesRecorded);
>  
>          rc = midiInAddBuffer(hm, &mhdr, sizeof(mhdr));
>          ok(rc==MIDIERR_STILLPLAYING, "midiAddBuffer rc=%s\n", mmsys_error(rc));
>  
>          rc = midiInPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiInPrepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_INQUEUE), "dwFlags=%lx\n", mhdr.dwFlags);
>      }
>      rc = midiInReset(hm); /* Return any pending buffer */
>      ok(!rc, "midiInReset rc=%s\n", mmsys_error(rc));
>      test_notification(hwnd, "midiInReset", MIM_LONGDATA, (DWORD_PTR)&mhdr);
>  
> -    ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE), "dwFlags=%x\n", mhdr.dwFlags);
> +    ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE), "dwFlags=%lx\n", mhdr.dwFlags);
>      rc = midiInUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>      ok(!rc, "midiInUnprepare rc=%s\n", mmsys_error(rc));
>  
> -    ok(mhdr.dwBytesRecorded == 0, "Did some MIDI HW send %u bytes?\n", mhdr.dwBytesRecorded);
> +    ok(mhdr.dwBytesRecorded == 0, "Did some MIDI HW send %lu bytes?\n", mhdr.dwBytesRecorded);
>  
>      rc = midiInClose(hm);
>      ok(!rc, "midiInClose rc=%s\n", mmsys_error(rc));
>  
> -    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %lx\n", mhdr.dwUser);
> +    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %Ix\n", mhdr.dwUser);
>      HeapFree(GetProcessHeap(), 0, mhdr.lpData);
>      test_notification(hwnd, "midiInClose", MIM_CLOSE, 0);
>      test_notification(hwnd, "midiIn over", 0, WHATEVER);
> @@ -248,13 +248,13 @@ static void test_midi_mci(HWND hwnd)
>      memset(buf, 0, sizeof(buf));
>  
>      err = mciSendStringA("sysinfo sequencer quantity", buf, sizeof(buf), hwnd);
> -    ok(!err, "mci sysinfo sequencer quantity returned %d\n", err);
> +    ok(!err, "mci sysinfo sequencer quantity returned %ld\n", err);
>      if (!err) trace("Found %s MCI sequencer devices\n", buf);
>  
>      if (!strcmp(buf, "0")) return;
>  
>      err = mciSendStringA("capability sequencer can record", buf, sizeof(buf), hwnd);
> -    ok(!err, "mci sysinfo sequencer quantity returned %d\n", err);
> +    ok(!err, "mci sysinfo sequencer quantity returned %ld\n", err);
>      if(!err) ok(!strcmp(buf, "false"), "capability can record is %s\n", buf);
>  }
>  
> @@ -282,13 +282,13 @@ static void test_midiOut_device(UINT udev, HWND hwnd)
>      rc = midiOutGetDevCapsA(udev, &capsA, sizeof(capsA));
>      ok(!rc, "midiOutGetDevCaps(dev=%d) rc=%s\n", udev, mmsys_error(rc));
>      if (!rc) {
> -        trace("* %s: manufacturer=%d, product=%d, tech=%d, support=%X: %d voices, %d notes\n",
> +        trace("* %s: manufacturer=%d, product=%d, tech=%d, support=%lX: %d voices, %d notes\n",
>                capsA.szPname, capsA.wMid, capsA.wPid, capsA.wTechnology, capsA.dwSupport, capsA.wVoices, capsA.wNotes);
>          ok(!((MIDIMAPPER==udev) ^ (MOD_MAPPER==capsA.wTechnology)), "technology %d on device %d\n", capsA.wTechnology, udev);
>          if (MOD_MIDIPORT == capsA.wTechnology) {
>              ok(capsA.wVoices == 0 && capsA.wNotes == 0, "external device with notes or voices\n");
>              ok(capsA.wChannelMask == 0xFFFF, "external device channel mask %x\n", capsA.wChannelMask);
> -            ok(!(capsA.dwSupport & (MIDICAPS_VOLUME|MIDICAPS_LRVOLUME|MIDICAPS_CACHE)), "external device support=%X\n", capsA.dwSupport);
> +            ok(!(capsA.dwSupport & (MIDICAPS_VOLUME|MIDICAPS_LRVOLUME|MIDICAPS_CACHE)), "external device support=%lX\n", capsA.dwSupport);
>          }
>      }
>  
> @@ -310,7 +310,7 @@ static void test_midiOut_device(UINT udev, HWND hwnd)
>      ok((capsA.dwSupport & MIDICAPS_VOLUME) ? rc==MMSYSERR_NOERROR : rc==MMSYSERR_NOTSUPPORTED, "midiOutGetVolume rc=%s\n", mmsys_error(rc));
>      /* The native mapper responds with FFFFFFFF initially,
>       * real devices with the volume GUI SW-synth settings. */
> -    if (!rc) trace("Current volume %x on device %d\n", ovolume, udev);
> +    if (!rc) trace("Current volume %lx on device %d\n", ovolume, udev);
>  
>      /* The W95 ESFM Synthesis device reports NOTENABLED although
>       * GetVolume by handle works and music plays. */
> @@ -333,8 +333,8 @@ static void test_midiOut_device(UINT udev, HWND hwnd)
>              DWORD volume3;
>              rc = midiOutGetVolume(hm, &volume3);
>              ok(!rc, "midiOutGetVolume new rc=%s\n", mmsys_error(rc));
> -            if (!rc) trace("New volume %x on device %d\n", volume3, udev);
> -            todo_wine ok(volume2==volume3, "volume Set %x = Get %x\n", volume2, volume3);
> +            if (!rc) trace("New volume %lx on device %d\n", volume3, udev);
> +            todo_wine ok(volume2==volume3, "volume Set %lx = Get %lx\n", volume2, volume3);
>  
>              rc = midiOutSetVolume(hm, ovolume);
>              ok(!rc, "midiOutSetVolume restore rc=%s\n", mmsys_error(rc));
> @@ -358,50 +358,50 @@ static void test_midiOut_device(UINT udev, HWND hwnd)
>      mhdr.dwOffset = 0xDEADBEEF;
>      mhdr.dwBufferLength = 70000; /* > 64KB! */
>      mhdr.lpData = HeapAlloc(GetProcessHeap(), 0 , mhdr.dwBufferLength);
> -    ok(mhdr.lpData!=NULL, "No %d bytes of memory!\n", mhdr.dwBufferLength);
> +    ok(mhdr.lpData!=NULL, "No %ld bytes of memory!\n", mhdr.dwBufferLength);
>      if (mhdr.lpData) {
>          rc = midiOutLongMsg(hm, &mhdr, sizeof(mhdr));
>          ok(rc==MIDIERR_UNPREPARED, "midiOutLongMsg unprepared rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%lx\n", mhdr.dwFlags);
>          test_notification(hwnd, "midiOutLong unprepared", 0, WHATEVER);
>  
>          rc = midiOutPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset)-1);
>          ok(rc==MMSYSERR_INVALPARAM, "midiOutPrepare tiny rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          /* Since at least w2k, midiOutPrepare clears the DONE and INQUEUE flags.  w95 didn't. */
>          /* mhdr.dwFlags |= MHDR_INQUEUE; would cause w95 to return STILLPLAYING from Unprepare */
>          rc = midiOutPrepareHeader(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiOutPrepare old size rc=%s\n", mmsys_error(rc));
>          ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE)/*w9x*/ ||
> -           mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%x\n", mhdr.dwFlags);
> -        trace("MIDIHDR flags=%x when unsent\n", mhdr.dwFlags);
> +           mhdr.dwFlags == MHDR_PREPARED, "dwFlags=%lx\n", mhdr.dwFlags);
> +        trace("MIDIHDR flags=%lx when unsent\n", mhdr.dwFlags);
>  
>          /* No flag is cleared when already prepared. */
>          mhdr.dwFlags |= MHDR_DONE|MHDR_INQUEUE;
>          rc = midiOutPrepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutPrepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE|MHDR_INQUEUE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE|MHDR_INQUEUE), "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags |= MHDR_INQUEUE;
>          rc = midiOutUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(rc==MIDIERR_STILLPLAYING, "midiOutUnprepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE|MHDR_INQUEUE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_PREPARED|MHDR_DONE|MHDR_INQUEUE), "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags &= ~MHDR_INQUEUE;
>          rc = midiOutUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutUnprepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == MHDR_DONE, "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          mhdr.dwFlags |= MHDR_INQUEUE;
>          rc = midiOutUnprepareHeader(hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutUnprepare rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags == (MHDR_INQUEUE|MHDR_DONE), "dwFlags=%x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags == (MHDR_INQUEUE|MHDR_DONE), "dwFlags=%lx\n", mhdr.dwFlags);
>  
>          HeapFree(GetProcessHeap(), 0, mhdr.lpData);
>      }
> -    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %lx\n", mhdr.dwUser);
> -    ok(mhdr.dwOffset==0xDEADBEEF, "MIDIHDR.dwOffset changed to %x\n", mhdr.dwOffset);
> +    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %Ix\n", mhdr.dwUser);
> +    ok(mhdr.dwOffset==0xDEADBEEF, "MIDIHDR.dwOffset changed to %lx\n", mhdr.dwOffset);
>  
>      rc = midiOutGetID(hm, &udevid);
>      ok(!rc, "midiOutGetID rc=%s\n", mmsys_error(rc));
> @@ -501,13 +501,13 @@ static void test_position(HMIDISTRM hm, UINT typein, UINT typeout)
>      ok(!rc && (mmtime.wType == typeout), "midiStreamPosition type %x converted to %x rc=%s\n", typein, mmtime.wType, mmsys_error(rc));
>      if (!rc) switch(mmtime.wType) {
>      case TIME_MS:
> -        trace("Stream position %ums\n", mmtime.u.ms);
> +        trace("Stream position %lums\n", mmtime.u.ms);
>          break;
>      case TIME_TICKS:
> -        trace("Stream position %u ticks\n", mmtime.u.ticks);
> +        trace("Stream position %lu ticks\n", mmtime.u.ticks);
>          break;
>      case TIME_MIDI:
> -        trace("Stream position song pointer %u\n", mmtime.u.midi.songptrpos);
> +        trace("Stream position song pointer %lu\n", mmtime.u.midi.songptrpos);
>          break;
>      case TIME_SMPTE:
>          trace("Stream position %02u:%02u:%02u.%02u/%02u\n",
> @@ -625,12 +625,12 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      midiprop.tempo.cbStruct = sizeof(midiprop.tempo);
>      rc = midiStreamProperty(hm, (void*)&midiprop, MIDIPROP_GET|MIDIPROP_TEMPO);
>      ok(!rc, "midiStreamProperty TEMPO rc=%s\n", mmsys_error(rc));
> -    ok(midiprop.tempo.dwTempo==500000, "default stream tempo %u microsec per quarter note\n", midiprop.tempo.dwTempo);
> +    ok(midiprop.tempo.dwTempo==500000, "default stream tempo %lu microsec per quarter note\n", midiprop.tempo.dwTempo);
>  
>      midiprop.tdiv.cbStruct = sizeof(midiprop.tdiv);
>      rc = midiStreamProperty(hm, (void*)&midiprop, MIDIPROP_GET|MIDIPROP_TIMEDIV);
>      ok(!rc, "midiStreamProperty TIMEDIV rc=%s\n", mmsys_error(rc));
> -    ok(24==LOWORD(midiprop.tdiv.dwTimeDiv), "default stream time division %u\n", midiprop.tdiv.dwTimeDiv);
> +    ok(24==LOWORD(midiprop.tdiv.dwTimeDiv), "default stream time division %lu\n", midiprop.tdiv.dwTimeDiv);
>  
>      memset(&mhdr, 0, sizeof(mhdr));
>      mhdr.dwUser   = 0x56FA552C;
> @@ -647,13 +647,13 @@ static void test_midiStream(UINT udev, HWND hwnd)
>          ok(rc==MMSYSERR_INVALPARAM, "midiOutPrepare tiny rc=%s\n", mmsys_error(rc));
>          rc = midiOutPrepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutPrepare size rc=%s\n", mmsys_error(rc));
> -        ok(mhdr.dwFlags & MHDR_PREPARED, "MHDR.dwFlags when prepared %x\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags & MHDR_PREPARED, "MHDR.dwFlags when prepared %lx\n", mhdr.dwFlags);
>  
>          /* The device is still in paused mode and should queue the message. */
>          rc = midiStreamOut(hm, &mhdr, offsetof(MIDIHDR,dwOffset));
>          ok(!rc, "midiStreamOut old size rc=%s\n", mmsys_error(rc));
>          rc2 = rc;
> -        trace("MIDIHDR flags=%x when submitted\n", mhdr.dwFlags);
> +        trace("MIDIHDR flags=%lx when submitted\n", mhdr.dwFlags);
>          /* w9X/me does not set MHDR_ISSTRM when StreamOut exits,
>           * but it will be set on all systems after the job is finished. */
>  
> @@ -675,26 +675,26 @@ static void test_midiStream(UINT udev, HWND hwnd)
>          } /* Checking INQUEUE is not the recommended way to wait for the end of a job, but we're testing. */
>          /* MHDR_ISSTRM is not necessarily set when midiStreamOut returns
>           * rather than when the queue is eventually processed. */
> -        ok(mhdr.dwFlags & MHDR_ISSTRM, "MHDR.dwFlags %x no ISSTRM when out of queue\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags & MHDR_ISSTRM, "MHDR.dwFlags %lx no ISSTRM when out of queue\n", mhdr.dwFlags);
>          if (!rc2) while(!(mhdr.dwFlags & MHDR_DONE)) {
>              /* Never to be seen except perhaps on multicore */
>              trace("async MIDI still not done\n");
>              Sleep(100);
>          }
> -        ok(mhdr.dwFlags & MHDR_DONE, "MHDR.dwFlags %x not DONE when out of queue\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags & MHDR_DONE, "MHDR.dwFlags %lx not DONE when out of queue\n", mhdr.dwFlags);
>          test_notification(hwnd, "midiStream callback", MOM_POSITIONCB, (DWORD_PTR)&mhdr);
>          test_notification(hwnd, "midiStreamOut", MOM_DONE, (DWORD_PTR)&mhdr);
>  
>          /* Native fills dwOffset regardless of the cbMidiHdr size argument to midiStreamOut */
> -        ok(1234567890!=mhdr.dwOffset, "play left MIDIHDR.dwOffset at %u\n", mhdr.dwOffset);
> +        ok(1234567890!=mhdr.dwOffset, "play left MIDIHDR.dwOffset at %lu\n", mhdr.dwOffset);
>  
>          rc = midiOutUnprepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutUnprepare rc=%s\n", mmsys_error(rc));
>          rc = midiOutUnprepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
>          ok(!rc, "midiOutUnprepare #2 rc=%s\n", mmsys_error(rc));
>  
> -        trace("MIDIHDR stream flags=%x when finished\n", mhdr.dwFlags);
> -        ok(mhdr.dwFlags & MHDR_DONE, "MHDR.dwFlags when done %x\n", mhdr.dwFlags);
> +        trace("MIDIHDR stream flags=%lx when finished\n", mhdr.dwFlags);
> +        ok(mhdr.dwFlags & MHDR_DONE, "MHDR.dwFlags when done %lx\n", mhdr.dwFlags);
>  
>          test_position(hm, TIME_MS,      TIME_MS);
>          test_position(hm, TIME_TICKS,   TIME_TICKS);
> @@ -708,7 +708,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>          midiprop.tempo.cbStruct = sizeof(midiprop.tempo);
>          rc = midiStreamProperty(hm, (void*)&midiprop, MIDIPROP_GET|MIDIPROP_TEMPO);
>          ok(!rc, "midiStreamProperty TEMPO rc=%s\n", mmsys_error(rc));
> -        ok(0x0493E0==midiprop.tempo.dwTempo, "stream set tempo %u\n", midiprop.tdiv.dwTimeDiv);
> +        ok(0x0493E0==midiprop.tempo.dwTempo, "stream set tempo %lu\n", midiprop.tdiv.dwTimeDiv);
>  
>          rc = midiStreamRestart(hm);
>          ok(!rc, "midiStreamRestart #2 rc=%s\n", mmsys_error(rc));
> @@ -716,21 +716,21 @@ static void test_midiStream(UINT udev, HWND hwnd)
>          mhdr.dwFlags |= MHDR_ISSTRM;
>          /* Preset flags (e.g. MHDR_ISSTRM) do not disturb. */
>          rc = midiOutPrepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
> -        ok(!rc, "midiOutPrepare used flags %x rc=%s\n", mhdr.dwFlags, mmsys_error(rc));
> +        ok(!rc, "midiOutPrepare used flags %lx rc=%s\n", mhdr.dwFlags, mmsys_error(rc));
>          rc = midiOutUnprepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
> -        ok(!rc, "midiOutUnprepare used flags %x rc=%s\n", mhdr.dwFlags, mmsys_error(rc));
> +        ok(!rc, "midiOutUnprepare used flags %lx rc=%s\n", mhdr.dwFlags, mmsys_error(rc));
>  
>          rc = midiStreamRestart(hm);
>          ok(!rc, "midiStreamRestart #3 rc=%s\n", mmsys_error(rc));
>      }
> -    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %lx\n", mhdr.dwUser);
> -    ok(0==((MIDISHORTEVENT*)&strmEvents)[0].dwStreamID, "dwStreamID set to %x\n", ((LPMIDIEVENT)&strmEvents[0])->dwStreamID);
> +    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %Ix\n", mhdr.dwUser);
> +    ok(0==((MIDISHORTEVENT*)&strmEvents)[0].dwStreamID, "dwStreamID set to %lx\n", ((LPMIDIEVENT)&strmEvents[0])->dwStreamID);
>  
>      /* dwBytesRecorded controls how much is played, not dwBufferLength
>       * allowing to immediately forward packets from midiIn to midiOut */
>      mhdr.dwOffset = 1234123123;
>      mhdr.dwBufferLength = sizeof(strmNops);
> -    trace("buffer: %u\n", mhdr.dwBufferLength);
> +    trace("buffer: %lu\n", mhdr.dwBufferLength);
>      mhdr.dwBytesRecorded = 0;
>      mhdr.lpData = (LPSTR)&strmNops[0];
>      strmNops[0].dwEvent |= MEVT_F_CALLBACK;
> @@ -747,7 +747,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>  
>      /* FIXME: check dwOffset within callback
>       * instead of the unspecified value afterwards */
> -    ok(1234123123==mhdr.dwOffset || broken(0==mhdr.dwOffset), "play 0 set MIDIHDR.dwOffset to %u\n", mhdr.dwOffset);
> +    ok(1234123123==mhdr.dwOffset || broken(0==mhdr.dwOffset), "play 0 set MIDIHDR.dwOffset to %lu\n", mhdr.dwOffset);
>      /* w2k and later only set dwOffset when processing MEVT_T_CALLBACK,
>       * while w9X/me/nt always sets it.  Have Wine behave like w2k because the
>       * dwOffset slot does not exist in the small size MIDIHDR. */
> @@ -761,7 +761,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      test_notification(hwnd, "1 of 2 events", MOM_POSITIONCB, (DWORD_PTR)&mhdr);
>      test_notification(hwnd, "1 of 2 events", MOM_DONE, (DWORD_PTR)&mhdr);
>      test_notification(hwnd, "1 of 2 events", 0, WHATEVER);
> -    ok(0==mhdr.dwOffset, "MIDIHDR.dwOffset 1/2 changed to %u\n", mhdr.dwOffset);
> +    ok(0==mhdr.dwOffset, "MIDIHDR.dwOffset 1/2 changed to %lu\n", mhdr.dwOffset);
>  
>      mhdr.dwOffset = 1234123123;
>      mhdr.dwBytesRecorded = 2*sizeof(MIDISHORTEVENT);
> @@ -773,8 +773,8 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      test_notification(hwnd, "2 of 2 events", MOM_POSITIONCB, (DWORD_PTR)&mhdr);
>      test_notification(hwnd, "2 of 2 events", MOM_DONE, (DWORD_PTR)&mhdr);
>      test_notification(hwnd, "2 of 2 events", 0, WHATEVER);
> -    ok(sizeof(MIDISHORTEVENT)==mhdr.dwOffset, "MIDIHDR.dwOffset 2/2 changed to %u\n", mhdr.dwOffset);
> -    ok(mhdr.dwBytesRecorded == 2*sizeof(MIDISHORTEVENT), "dwBytesRecorded changed to %u\n", mhdr.dwBytesRecorded);
> +    ok(sizeof(MIDISHORTEVENT)==mhdr.dwOffset, "MIDIHDR.dwOffset 2/2 changed to %lu\n", mhdr.dwOffset);
> +    ok(mhdr.dwBytesRecorded == 2*sizeof(MIDISHORTEVENT), "dwBytesRecorded changed to %lu\n", mhdr.dwBytesRecorded);
>  
>      strmNops[0].dwEvent &= ~MEVT_F_CALLBACK;
>      strmNops[1].dwEvent &= ~MEVT_F_CALLBACK;
> @@ -785,7 +785,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      test_notification(hwnd, "0 CB in 2 events", MOM_DONE, (DWORD_PTR)&mhdr);
>      test_notification(hwnd, "0 CB in 2 events", 0, WHATEVER);
>      /* w9X/me/nt set dwOffset to the position played last */
> -    ok(1234123123==mhdr.dwOffset || broken(sizeof(MIDISHORTEVENT)==mhdr.dwOffset), "MIDIHDR.dwOffset nocb changed to %u\n", mhdr.dwOffset);
> +    ok(1234123123==mhdr.dwOffset || broken(sizeof(MIDISHORTEVENT)==mhdr.dwOffset), "MIDIHDR.dwOffset nocb changed to %lu\n", mhdr.dwOffset);
>  
>      mhdr.dwBytesRecorded = mhdr.dwBufferLength-1;
>      rc = playStream(hm, &mhdr);
> @@ -801,16 +801,16 @@ static void test_midiStream(UINT udev, HWND hwnd)
>  
>      rc = midiStreamStop(hm);
>      ok(!rc, "midiStreamStop rc=%s\n", mmsys_error(rc));
> -    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %lx\n", mhdr.dwUser);
> +    ok(mhdr.dwUser==0x56FA552C, "MIDIHDR.dwUser changed to %Ix\n", mhdr.dwUser);
>  
>      rc = midiOutUnprepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
>      ok(!rc, "midiOutUnprepare rc=%s\n", mmsys_error(rc));
> -    ok(0==strmNops[0].dwStreamID, "dwStreamID[0] set to %x\n", strmNops[0].dwStreamID);
> -    ok(0==strmNops[1].dwStreamID, "dwStreamID[1] set to %x\n", strmNops[1].dwStreamID);
> +    ok(0==strmNops[0].dwStreamID, "dwStreamID[0] set to %lx\n", strmNops[0].dwStreamID);
> +    ok(0==strmNops[1].dwStreamID, "dwStreamID[1] set to %lx\n", strmNops[1].dwStreamID);
>  
>      mhdr.dwBufferLength = 70000; /* > 64KB! */
>      mhdr.lpData = HeapAlloc(GetProcessHeap(), 0 , mhdr.dwBufferLength);
> -    ok(mhdr.lpData!=NULL, "No %d bytes of memory!\n", mhdr.dwBufferLength);
> +    ok(mhdr.lpData!=NULL, "No %ld bytes of memory!\n", mhdr.dwBufferLength);
>      if (mhdr.lpData) {
>          mhdr.dwFlags = 0;
>          /* PrepareHeader detects the too large buffer is for a stream. */
> @@ -853,7 +853,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>  
>      expected = 0;
>      ret = get_position(hm, TIME_MS);
> -    ok(ret == expected, "expected %u, got %u\n", expected, ret);
> +    ok(ret == expected, "expected %lu, got %lu\n", expected, ret);
>  
>      memset(&mhdr, 0, sizeof(mhdr));
>      mhdr.lpData = (LPSTR)strmNopsWithDelta;
> @@ -865,7 +865,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      ok(!rc, "midiStreamOut(dev=%d) rc=%s\n", udev, mmsys_error(rc));
>  
>      ret = get_position(hm, TIME_MS);
> -    ok(ret == expected, "expected %u, got %u\n", expected, ret);
> +    ok(ret == expected, "expected %lu, got %lu\n", expected, ret);
>  
>      rc = midiStreamRestart(hm);
>      ok(!rc, "midiStreamRestart(dev=%d) rc=%s\n", udev, mmsys_error(rc));
> @@ -876,25 +876,25 @@ static void test_midiStream(UINT udev, HWND hwnd)
>  
>      expected = 50;
>      ret = get_position(hm, TIME_MS);
> -    ok(ret >= expected && ret < expected + MARGIN, "expected %ums or greater, got %ums\n", expected, ret);
> +    ok(ret >= expected && ret < expected + MARGIN, "expected %lums or greater, got %lums\n", expected, ret);
>      expected = ret;
>  
>      Sleep(100);
>  
>      ret = get_position(hm, TIME_MS);
> -    ok(ret == expected, "expected %ums, got %ums\n", expected, ret);
> +    ok(ret == expected, "expected %lums, got %lums\n", expected, ret);
>  
>      rc = midiStreamRestart(hm);
>      ok(!rc, "midiStreamRestart(dev=%d) rc=%s\n", udev, mmsys_error(rc));
>  
>      Sleep(1);
>      ret = get_position(hm, TIME_MS);
> -    ok(ret > expected && ret < expected + MARGIN, "expected greater than %ums, got %ums\n", expected, ret);
> +    ok(ret > expected && ret < expected + MARGIN, "expected greater than %lums, got %lums\n", expected, ret);
>      expected = ret;
>  
>      ret = get_position(hm, TIME_TICKS);
>      ok(ret > strmNopsWithDelta[0].dwDeltaTime && ret < strmNopsWithDelta[1].dwDeltaTime,
> -       "TIME_TICKS position is continuous, got %u\n", ret);
> +       "TIME_TICKS position is continuous, got %lu\n", ret);
>  
>      /* shouldn't set time division property while playing */
>      midiprop.tdiv.cbStruct  = sizeof(midiprop.tdiv);
> @@ -903,7 +903,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      ok(rc == MMSYSERR_INVALPARAM, "midiStreamProperty(SET|TIMEDIV, dev=%d) rc=%s\n", udev, mmsys_error(rc));
>  
>      ret = WaitForSingleObject(records.done, INFINITE);
> -    ok(ret == WAIT_OBJECT_0, "WaitForSingleObject failed, got %d\n", ret);
> +    ok(ret == WAIT_OBJECT_0, "WaitForSingleObject failed, got %ld\n", ret);
>  
>      rc = midiStreamPause(hm);
>      ok(!rc, "midiStreamPause(dev=%d) rc=%s\n", udev, mmsys_error(rc));
> @@ -911,8 +911,8 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      expected = 250; /* = 12 ticks in 120 BPM */
>      ret = get_position(hm, TIME_MS);
>      ok(ret >= expected - MARGIN && ret <= expected + MARGIN,
> -       "expected greater than %ums, got %ums\n", expected, ret);
> -    trace("after playing, got %ums\n", ret);
> +       "expected greater than %lums, got %lums\n", expected, ret);
> +    trace("after playing, got %lums\n", ret);
>  
>      /* set tempo to 240 BPM */
>      midiprop.tempo.cbStruct = sizeof(midiprop.tempo);
> @@ -923,17 +923,17 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      /* a tempo change doesn't affect elapsed ticks */
>      ret = get_position(hm, TIME_TICKS);
>      ok(ret >= strmNopsWithDelta[1].dwDeltaTime && ret < strmNopsWithDelta[1].dwDeltaTime + 3,
> -       "expected %u ticks, got %u\n", strmNopsWithDelta[1].dwDeltaTime, ret);
> +       "expected %lu ticks, got %lu\n", strmNopsWithDelta[1].dwDeltaTime, ret);
>  
>      midiprop.tdiv.cbStruct = sizeof(midiprop.tdiv);
>      rc = midiStreamProperty(hm, (void*)&midiprop, MIDIPROP_GET | MIDIPROP_TIMEDIV);
>      ok(!rc, "midiStreamProperty(GET|TIMEDIV, dev=%d) rc=%s\n", udev, mmsys_error(rc));
> -    ok(midiprop.tdiv.dwTimeDiv == 24, "expected 24, got %u\n", midiprop.tdiv.dwTimeDiv);
> +    ok(midiprop.tdiv.dwTimeDiv == 24, "expected 24, got %lu\n", midiprop.tdiv.dwTimeDiv);
>  
>      /* TIME_MIDI value is a quarter of TIME_TICKS, rounded */
>      expected = (ret + midiprop.tdiv.dwTimeDiv/8) / (midiprop.tdiv.dwTimeDiv/4);
>      ret = get_position(hm, TIME_MIDI);
> -    ok(ret == expected, "expected song pointer %u, got %u\n", expected, ret);
> +    ok(ret == expected, "expected song pointer %lu, got %lu\n", expected, ret);
>  
>      ok(records.count == 2, "expected 2 MM_MOM_DONE messages, got %d\n", records.count);
>  
> @@ -942,7 +942,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      expected = 250 + 100;
>      diff = records.time_stamp[1] - records.time_stamp[0];
>      ok(diff >= expected - MARGIN && diff <= expected + MARGIN,
> -       "expected %u ~ %ums, got %ums (dev=%d)\n", expected - MARGIN, expected + MARGIN, diff, udev);
> +       "expected %lu ~ %lums, got %lums (dev=%d)\n", expected - MARGIN, expected + MARGIN, diff, udev);
>  
>      rc = midiOutUnprepareHeader((HMIDIOUT)hm, &mhdr, sizeof(mhdr));
>      ok(!rc, "midiOutUnprepareHeader(dev=%d) rc=%s\n", udev, mmsys_error(rc));
> @@ -951,7 +951,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      ok(!rc, "midiStreamStop(dev=%d) rc=%s\n", udev, mmsys_error(rc));
>  
>      ret = get_position(hm, TIME_MS);
> -    ok(ret == 0, "expected 0ms, got %ums\n", ret);
> +    ok(ret == 0, "expected 0ms, got %lums\n", ret);
>  
>      midiprop.tdiv.cbStruct  = sizeof(midiprop.tdiv);
>      midiprop.tdiv.dwTimeDiv = 0xe204; /* 30 fps, 4 ticks/frame */
> @@ -999,7 +999,7 @@ static void test_midiStream(UINT udev, HWND hwnd)
>      mhdr.dwBufferLength = sizeof(MIDISHORTEVENT) * 5 + ROUNDUP4(sizeof(SysEx_reset)) +
>          ROUNDUP4(sizeof(SysEx_volume_off)) + ROUNDUP4(sizeof(SysEx_volume_full));
>      mhdr.lpData = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, mhdr.dwBufferLength);
> -    ok(mhdr.lpData!=NULL, "No %d bytes of memory!\n", mhdr.dwBufferLength);
> +    ok(mhdr.lpData!=NULL, "No %ld bytes of memory!\n", mhdr.dwBufferLength);
>      if (mhdr.lpData) {
>          MIDIEVENT *e;
>          char *p = mhdr.lpData;
> diff --git a/dlls/winmm/tests/mixer.c b/dlls/winmm/tests/mixer.c
> index a72966c320b..5ab0d4a698d 100644
> --- a/dlls/winmm/tests/mixer.c
> +++ b/dlls/winmm/tests/mixer.c
> @@ -222,7 +222,7 @@ static void mixer_test_controlA(HMIXEROBJ mix, MIXERCONTROLA *control)
>              MIXERCONTROLDETAILS new_details;
>              MIXERCONTROLDETAILS_UNSIGNED new_value;
>  
> -            trace("            Value=%d\n",value.dwValue);
> +            trace("            Value=%ld\n",value.dwValue);
>  
>              if (value.dwValue + control->Metrics.cSteps < S1(control->Bounds).dwMaximum)
>                  new_value.dwValue = value.dwValue + control->Metrics.cSteps;
> @@ -260,7 +260,7 @@ static void mixer_test_controlA(HMIXEROBJ mix, MIXERCONTROLA *control)
>                  if (rc==MMSYSERR_NOERROR) {
>                      /* result may not match exactly because of rounding */
>                      ok(compare_uint(ret_value.dwValue, new_value.dwValue, 1),
> -                       "Couldn't change value from %d to %d, returned %d\n",
> +                       "Couldn't change value from %ld to %ld, returned %ld\n",
>                         value.dwValue,new_value.dwValue,ret_value.dwValue);
>  
>                      if (compare_uint(ret_value.dwValue, new_value.dwValue, 1)) {
> @@ -301,7 +301,7 @@ static void mixer_test_controlA(HMIXEROBJ mix, MIXERCONTROLA *control)
>              MIXERCONTROLDETAILS new_details;
>              MIXERCONTROLDETAILS_BOOLEAN new_value;
>  
> -            trace("            Value=%d\n",value.fValue);
> +            trace("            Value=%ld\n",value.fValue);
>  
>              if (value.fValue == FALSE)
>                  new_value.fValue = TRUE;
> @@ -339,7 +339,7 @@ static void mixer_test_controlA(HMIXEROBJ mix, MIXERCONTROLA *control)
>                  if (rc==MMSYSERR_NOERROR) {
>                      /* result may not match exactly because of rounding */
>                      ok(ret_value.fValue==new_value.fValue,
> -                       "Couldn't change value from %d to %d, returned %d\n",
> +                       "Couldn't change value from %ld to %ld, returned %ld\n",
>                         value.fValue,new_value.fValue,ret_value.fValue);
>  
>                      if (ret_value.fValue==new_value.fValue) {
> @@ -387,7 +387,7 @@ static void mixer_test_deviceA(int device)
>         mmsys_error(rc));
>  
>      if (winetest_interactive) {
> -        trace("  %d: \"%s\" %d.%d (%d:%d) destinations=%d\n", device,
> +        trace("  %d: \"%s\" %d.%d (%d:%d) destinations=%ld\n", device,
>                capsA.szPname, capsA.vDriverVersion >> 8,
>                capsA.vDriverVersion & 0xff,capsA.wMid,capsA.wPid,
>                capsA.cDestinations);
> @@ -455,20 +455,20 @@ static void mixer_test_deviceA(int device)
>                  trace("  No Driver\n");
>              else if (rc==MMSYSERR_NOERROR) {
>  	      if (winetest_interactive) {
> -                trace("    %d: \"%s\" (%s) Destination=%d Source=%d\n",
> +                trace("    %ld: \"%s\" (%s) Destination=%ld Source=%ld\n",
>                        d,mixerlineA.szShortName, mixerlineA.szName,
>                        mixerlineA.dwDestination,mixerlineA.dwSource);
> -                trace("        LineID=%08x Channels=%d "
> -                      "Connections=%d Controls=%d\n",
> +                trace("        LineID=%08lx Channels=%ld "
> +                      "Connections=%ld Controls=%ld\n",
>                        mixerlineA.dwLineID,mixerlineA.cChannels,
>                        mixerlineA.cConnections,mixerlineA.cControls);
> -                trace("        State=0x%08x(%s)\n",
> +                trace("        State=0x%08lx(%s)\n",
>                        mixerlineA.fdwLine,line_flags(mixerlineA.fdwLine));
>                  trace("        ComponentType=%s\n",
>                        component_type(mixerlineA.dwComponentType));
>                  trace("        Type=%s\n",
>                        target_type(mixerlineA.Target.dwType));
> -                trace("        Device=%d (%s) %d.%d (%d:%d)\n",
> +                trace("        Device=%ld (%s) %d.%d (%d:%d)\n",
>                        mixerlineA.Target.dwDeviceID,
>                        mixerlineA.Target.szPname,
>                        mixerlineA.Target.vDriverVersion >> 8,
> @@ -491,20 +491,20 @@ static void mixer_test_deviceA(int device)
>                      LPMIXERCONTROLA    array;
>                      MIXERLINECONTROLSA controls;
>                      if (winetest_interactive) {
> -                        trace("      %d: \"%s\" (%s) Destination=%d Source=%d\n",
> +                        trace("      %ld: \"%s\" (%s) Destination=%ld Source=%ld\n",
>                                s,mixerlineA.szShortName, mixerlineA.szName,
>                                mixerlineA.dwDestination,mixerlineA.dwSource);
> -                        trace("          LineID=%08x Channels=%d "
> -                              "Connections=%d Controls=%d\n",
> +                        trace("          LineID=%08lx Channels=%ld "
> +                              "Connections=%ld Controls=%ld\n",
>                                mixerlineA.dwLineID,mixerlineA.cChannels,
>                                mixerlineA.cConnections,mixerlineA.cControls);
> -                        trace("          State=0x%08x(%s)\n",
> +                        trace("          State=0x%08lx(%s)\n",
>                                mixerlineA.fdwLine,line_flags(mixerlineA.fdwLine));
>                          trace("          ComponentType=%s\n",
>                                component_type(mixerlineA.dwComponentType));
>                          trace("          Type=%s\n",
>                                target_type(mixerlineA.Target.dwType));
> -                        trace("          Device=%d (%s) %d.%d (%d:%d)\n",
> +                        trace("          Device=%ld (%s) %d.%d (%d:%d)\n",
>                                mixerlineA.Target.dwDeviceID,
>                                mixerlineA.Target.szPname,
>                                mixerlineA.Target.vDriverVersion >> 8,
> @@ -546,15 +546,15 @@ static void mixer_test_deviceA(int device)
>                              if (rc==MMSYSERR_NOERROR) {
>                                  for(nc=0;nc<mixerlineA.cControls;nc++) {
>                                      if (winetest_interactive) {
> -                                        trace("        %d: \"%s\" (%s) ControlID=%d\n", nc,
> +                                        trace("        %ld: \"%s\" (%s) ControlID=%ld\n", nc,
>                                                array[nc].szShortName,
>                                                array[nc].szName, array[nc].dwControlID);
>                                          trace("            ControlType=%s\n",
>                                                 control_type(array[nc].dwControlType));
> -                                        trace("            Control=0x%08x(%s)\n",
> +                                        trace("            Control=0x%08lx(%s)\n",
>                                                array[nc].fdwControl,
>                                                control_flags(array[nc].fdwControl));
> -                                        trace("            Items=%d Min=%d Max=%d Step=%d\n",
> +                                        trace("            Items=%ld Min=%ld Max=%ld Step=%ld\n",
>                                                array[nc].cMultipleItems,
>                                                S1(array[nc].Bounds).dwMinimum,
>                                                S1(array[nc].Bounds).dwMaximum,
> @@ -601,7 +601,7 @@ static void mixer_test_controlW(HMIXEROBJ mix, MIXERCONTROLW *control)
>              MIXERCONTROLDETAILS new_details;
>              MIXERCONTROLDETAILS_UNSIGNED new_value;
>  
> -            trace("            Value=%d\n",value.dwValue);
> +            trace("            Value=%ld\n",value.dwValue);
>  
>              if (value.dwValue + control->Metrics.cSteps < S1(control->Bounds).dwMaximum)
>                  new_value.dwValue = value.dwValue + control->Metrics.cSteps;
> @@ -639,7 +639,7 @@ static void mixer_test_controlW(HMIXEROBJ mix, MIXERCONTROLW *control)
>                  if (rc==MMSYSERR_NOERROR) {
>                      /* result may not match exactly because of rounding */
>                      ok(compare_uint(ret_value.dwValue, new_value.dwValue, 1),
> -                       "Couldn't change value from %d to %d, returned %d\n",
> +                       "Couldn't change value from %ld to %ld, returned %ld\n",
>                         value.dwValue,new_value.dwValue,ret_value.dwValue);
>  
>                      if (compare_uint(ret_value.dwValue, new_value.dwValue, 1)) {
> @@ -680,7 +680,7 @@ static void mixer_test_controlW(HMIXEROBJ mix, MIXERCONTROLW *control)
>              MIXERCONTROLDETAILS new_details;
>              MIXERCONTROLDETAILS_BOOLEAN new_value;
>  
> -            trace("            Value=%d\n",value.fValue);
> +            trace("            Value=%ld\n",value.fValue);
>  
>              if (value.fValue == FALSE)
>                  new_value.fValue = TRUE;
> @@ -718,7 +718,7 @@ static void mixer_test_controlW(HMIXEROBJ mix, MIXERCONTROLW *control)
>                  if (rc==MMSYSERR_NOERROR) {
>                      /* result may not match exactly because of rounding */
>                      ok(ret_value.fValue==new_value.fValue,
> -                       "Couldn't change value from %d to %d, returned %d\n",
> +                       "Couldn't change value from %ld to %ld, returned %ld\n",
>                         value.fValue,new_value.fValue,ret_value.fValue);
>  
>                      if (ret_value.fValue==new_value.fValue) {
> @@ -772,7 +772,7 @@ static void mixer_test_deviceW(int device)
>      WideCharToMultiByte(CP_ACP,0,capsW.szPname, MAXPNAMELEN,szPname,
>                          MAXPNAMELEN,NULL,NULL);
>      if (winetest_interactive) {
> -        trace("  %d: \"%s\" %d.%d (%d:%d) destinations=%d\n", device,
> +        trace("  %d: \"%s\" %d.%d (%d:%d) destinations=%ld\n", device,
>                szPname, capsW.vDriverVersion >> 8,
>                capsW.vDriverVersion & 0xff,capsW.wMid,capsW.wPid,
>                capsW.cDestinations);
> @@ -849,20 +849,20 @@ static void mixer_test_deviceW(int device)
>                  WideCharToMultiByte(CP_ACP,0,mixerlineW.Target.szPname,
>                      MAXPNAMELEN,szPname,
>                      MAXPNAMELEN,NULL, NULL);
> -                trace("    %d: \"%s\" (%s) Destination=%d Source=%d\n",
> +                trace("    %ld: \"%s\" (%s) Destination=%ld Source=%ld\n",
>                        d,szShortName,szName,
>                        mixerlineW.dwDestination,mixerlineW.dwSource);
> -                trace("        LineID=%08x Channels=%d "
> -                      "Connections=%d Controls=%d\n",
> +                trace("        LineID=%08lx Channels=%ld "
> +                      "Connections=%ld Controls=%ld\n",
>                        mixerlineW.dwLineID,mixerlineW.cChannels,
>                        mixerlineW.cConnections,mixerlineW.cControls);
> -                trace("        State=0x%08x(%s)\n",
> +                trace("        State=0x%08lx(%s)\n",
>                        mixerlineW.fdwLine,line_flags(mixerlineW.fdwLine));
>                  trace("        ComponentType=%s\n",
>                        component_type(mixerlineW.dwComponentType));
>                  trace("        Type=%s\n",
>                        target_type(mixerlineW.Target.dwType));
> -                trace("        Device=%d (%s) %d.%d (%d:%d)\n",
> +                trace("        Device=%ld (%s) %d.%d (%d:%d)\n",
>                        mixerlineW.Target.dwDeviceID,szPname,
>                        mixerlineW.Target.vDriverVersion >> 8,
>                        mixerlineW.Target.vDriverVersion & 0xff,
> @@ -893,20 +893,20 @@ static void mixer_test_deviceW(int device)
>                          WideCharToMultiByte(CP_ACP,0,mixerlineW.Target.szPname,
>                              MAXPNAMELEN,szPname,
>                              MAXPNAMELEN,NULL, NULL);
> -                        trace("      %d: \"%s\" (%s) Destination=%d Source=%d\n",
> +                        trace("      %ld: \"%s\" (%s) Destination=%ld Source=%ld\n",
>                                s,szShortName,szName,
>                                mixerlineW.dwDestination,mixerlineW.dwSource);
> -                        trace("          LineID=%08x Channels=%d "
> -                              "Connections=%d Controls=%d\n",
> +                        trace("          LineID=%08lx Channels=%ld "
> +                              "Connections=%ld Controls=%ld\n",
>                                mixerlineW.dwLineID,mixerlineW.cChannels,
>                                mixerlineW.cConnections,mixerlineW.cControls);
> -                        trace("          State=0x%08x(%s)\n",
> +                        trace("          State=0x%08lx(%s)\n",
>                                mixerlineW.fdwLine,line_flags(mixerlineW.fdwLine));
>                          trace("          ComponentType=%s\n",
>                                component_type(mixerlineW.dwComponentType));
>                          trace("          Type=%s\n",
>                                target_type(mixerlineW.Target.dwType));
> -                        trace("          Device=%d (%s) %d.%d (%d:%d)\n",
> +                        trace("          Device=%ld (%s) %d.%d (%d:%d)\n",
>                                mixerlineW.Target.dwDeviceID,szPname,
>                                mixerlineW.Target.vDriverVersion >> 8,
>                                mixerlineW.Target.vDriverVersion & 0xff,
> @@ -950,14 +950,14 @@ static void mixer_test_deviceW(int device)
>                                          WideCharToMultiByte(CP_ACP,0,array[nc].szName,
>                                              MIXER_LONG_NAME_CHARS,szName,
>                                              MIXER_LONG_NAME_CHARS,NULL,NULL);
> -                                        trace("        %d: \"%s\" (%s) ControlID=%d\n", nc,
> +                                        trace("        %ld: \"%s\" (%s) ControlID=%ld\n", nc,
>                                                szShortName, szName, array[nc].dwControlID);
>                                          trace("            ControlType=%s\n",
>                                                 control_type(array[nc].dwControlType));
> -                                        trace("            Control=0x%08x(%s)\n",
> +                                        trace("            Control=0x%08lx(%s)\n",
>                                                array[nc].fdwControl,
>                                                control_flags(array[nc].fdwControl));
> -                                        trace("            Items=%d Min=%d Max=%d Step=%d\n",
> +                                        trace("            Items=%ld Min=%ld Max=%ld Step=%ld\n",
>                                                array[nc].cMultipleItems,
>                                                S1(array[nc].Bounds).dwMinimum,
>                                                S1(array[nc].Bounds).dwMaximum,
> diff --git a/dlls/winmm/tests/mmio.c b/dlls/winmm/tests/mmio.c
> index a232070064c..b2c54e0b9cd 100644
> --- a/dlls/winmm/tests/mmio.c
> +++ b/dlls/winmm/tests/mmio.c
> @@ -51,10 +51,10 @@ static void expect_buf_offset_dbg(HMMIO hmmio, LONG off, int line)
>  
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
> -    ok_(__FILE__, line)(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok_(__FILE__, line)(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> +    ok_(__FILE__, line)(ret == MMSYSERR_NOERROR, "mmioGetInfo error %lu\n", ret);
> +    ok_(__FILE__, line)(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
> -    ok_(__FILE__, line)(ret == off, "expected %d, got %d\n", off, ret);
> +    ok_(__FILE__, line)(ret == off, "expected %ld, got %ld\n", off, ret);
>  }
>  
>  #define expect_buf_offset(a1, a2) expect_buf_offset_dbg(a1, a2, __LINE__)
> @@ -83,10 +83,10 @@ static void test_mmioDescend(char *fname)
>      /* first normal RIFF AVI parsing */
>      ret = mmioDescend(hmmio, &ckRiff, NULL, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ckRiff.ckid == FOURCC_RIFF, "wrong ckid: %04x\n", ckRiff.ckid);
> -    ok(ckRiff.fccType == formtypeAVI, "wrong fccType: %04x\n", ckRiff.fccType);
> -    ok(ckRiff.dwDataOffset == 8, "expected 8 got %u\n", ckRiff.dwDataOffset);
> -    trace("ckid %4.4s cksize %04x fccType %4.4s off %04x flags %04x\n",
> +    ok(ckRiff.ckid == FOURCC_RIFF, "wrong ckid: %04lx\n", ckRiff.ckid);
> +    ok(ckRiff.fccType == formtypeAVI, "wrong fccType: %04lx\n", ckRiff.fccType);
> +    ok(ckRiff.dwDataOffset == 8, "expected 8 got %lu\n", ckRiff.dwDataOffset);
> +    trace("ckid %4.4s cksize %04lx fccType %4.4s off %04lx flags %04lx\n",
>            (LPCSTR)&ckRiff.ckid, ckRiff.cksize, (LPCSTR)&ckRiff.fccType,
>            ckRiff.dwDataOffset, ckRiff.dwFlags);
>  
> @@ -94,10 +94,10 @@ static void test_mmioDescend(char *fname)
>  
>      ret = mmioDescend(hmmio, &ckList, &ckRiff, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ckList.ckid == FOURCC_LIST, "wrong ckid: %04x\n", ckList.ckid);
> -    ok(ckList.fccType == listtypeAVIHEADER, "wrong fccType: %04x\n", ckList.fccType);
> -    ok(ckList.dwDataOffset == 20, "expected 20 got %u\n", ckList.dwDataOffset);
> -    trace("ckid %4.4s cksize %04x fccType %4.4s off %04x flags %04x\n",
> +    ok(ckList.ckid == FOURCC_LIST, "wrong ckid: %04lx\n", ckList.ckid);
> +    ok(ckList.fccType == listtypeAVIHEADER, "wrong fccType: %04lx\n", ckList.fccType);
> +    ok(ckList.dwDataOffset == 20, "expected 20 got %lu\n", ckList.dwDataOffset);
> +    trace("ckid %4.4s cksize %04lx fccType %4.4s off %04lx flags %04lx\n",
>            (LPCSTR)&ckList.ckid, ckList.cksize, (LPCSTR)&ckList.fccType,
>            ckList.dwDataOffset, ckList.dwFlags);
>  
> @@ -105,9 +105,9 @@ static void test_mmioDescend(char *fname)
>  
>      ret = mmioDescend(hmmio, &ck, &ckList, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == ckidAVIMAINHDR, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == 0, "wrong fccType: %04x\n", ck.fccType);
> -    trace("ckid %4.4s cksize %04x fccType %4.4s off %04x flags %04x\n",
> +    ok(ck.ckid == ckidAVIMAINHDR, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == 0, "wrong fccType: %04lx\n", ck.fccType);
> +    trace("ckid %4.4s cksize %04lx fccType %4.4s off %04lx flags %04lx\n",
>            (LPCSTR)&ck.ckid, ck.cksize, (LPCSTR)&ck.fccType,
>            ck.dwDataOffset, ck.dwFlags);
>  
> @@ -119,9 +119,9 @@ static void test_mmioDescend(char *fname)
>  
>      ret = mmioDescend(hmmio, &ckList2, &ckList, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ckList2.ckid == FOURCC_LIST, "wrong ckid: %04x\n", ckList2.ckid);
> -    ok(ckList2.fccType == listtypeSTREAMHEADER, "wrong fccType: %04x\n", ckList2.fccType);
> -    trace("ckid %4.4s cksize %04x fccType %4.4s off %04x flags %04x\n",
> +    ok(ckList2.ckid == FOURCC_LIST, "wrong ckid: %04lx\n", ckList2.ckid);
> +    ok(ckList2.fccType == listtypeSTREAMHEADER, "wrong fccType: %04lx\n", ckList2.fccType);
> +    trace("ckid %4.4s cksize %04lx fccType %4.4s off %04lx flags %04lx\n",
>            (LPCSTR)&ckList2.ckid, ckList2.cksize, (LPCSTR)&ckList2.fccType,
>            ckList2.dwDataOffset, ckList2.dwFlags);
>  
> @@ -129,9 +129,9 @@ static void test_mmioDescend(char *fname)
>  
>      ret = mmioDescend(hmmio, &ck, &ckList2, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == ckidSTREAMHEADER, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == 0, "wrong fccType: %04x\n", ck.fccType);
> -    trace("ckid %4.4s cksize %04x fccType %4.4s off %04x flags %04x\n",
> +    ok(ck.ckid == ckidSTREAMHEADER, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == 0, "wrong fccType: %04lx\n", ck.fccType);
> +    trace("ckid %4.4s cksize %04lx fccType %4.4s off %04lx flags %04lx\n",
>            (LPCSTR)&ck.ckid, ck.cksize, (LPCSTR)&ck.fccType,
>            ck.dwDataOffset, ck.dwFlags);
>  
> @@ -157,23 +157,23 @@ static void test_mmioDescend(char *fname)
>      ck.fccType = 0;
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDRIFF);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == formtypeAVI, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == formtypeAVI, "wrong fccType: %04lx\n", ck.fccType);
>  
>      mmioSeek(hmmio, 0, SEEK_SET);
>      memset(&ck, 0x66, sizeof(ck));
>      ret = mmioDescend(hmmio, &ck, NULL, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == formtypeAVI, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == formtypeAVI, "wrong fccType: %04lx\n", ck.fccType);
>  
>      /* do NOT seek, use current file position */
>      memset(&ck, 0x66, sizeof(ck));
>      ck.fccType = 0;
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDLIST);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_LIST, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == listtypeAVIHEADER, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_LIST, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == listtypeAVIHEADER, "wrong fccType: %04lx\n", ck.fccType);
>  
>      mmioSeek(hmmio, 0, SEEK_SET);
>      memset(&ck, 0x66, sizeof(ck));
> @@ -181,41 +181,41 @@ static void test_mmioDescend(char *fname)
>      ck.fccType = listtypeAVIHEADER;
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDCHUNK);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == formtypeAVI, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == formtypeAVI, "wrong fccType: %04lx\n", ck.fccType);
>  
>      /* do NOT seek, use current file position */
>      memset(&ck, 0x66, sizeof(ck));
>      ck.ckid = FOURCC_LIST;
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDCHUNK);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_LIST, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == listtypeAVIHEADER, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_LIST, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == listtypeAVIHEADER, "wrong fccType: %04lx\n", ck.fccType);
>  
>      mmioSeek(hmmio, 0, SEEK_SET);
>      memset(&ck, 0x66, sizeof(ck));
>      ck.ckid = FOURCC_RIFF;
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDCHUNK);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType == formtypeAVI, "wrong fccType: %04x\n", ck.fccType);
> +    ok(ck.ckid == FOURCC_RIFF, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType == formtypeAVI, "wrong fccType: %04lx\n", ck.fccType);
>  
>      /* do NOT seek, use current file position */
>      memset(&ckList, 0x66, sizeof(ckList));
>      ckList.ckid = 0;
>      ret = mmioDescend(hmmio, &ckList, &ck, MMIO_FINDCHUNK);
>      ok(ret == MMSYSERR_NOERROR, "mmioDescend error %u\n", ret);
> -    ok(ckList.ckid == FOURCC_LIST, "wrong ckid: %04x\n", ckList.ckid);
> -    ok(ckList.fccType == listtypeAVIHEADER, "wrong fccType: %04x\n", ckList.fccType);
> +    ok(ckList.ckid == FOURCC_LIST, "wrong ckid: %04lx\n", ckList.ckid);
> +    ok(ckList.fccType == listtypeAVIHEADER, "wrong fccType: %04lx\n", ckList.fccType);
>  
>      mmioSeek(hmmio, 0, SEEK_SET);
>      memset(&ck, 0x66, sizeof(ck));
>      ret = mmioDescend(hmmio, &ck, NULL, MMIO_FINDCHUNK);
>      ok(ret == MMIOERR_CHUNKNOTFOUND ||
>         ret == MMIOERR_INVALIDFILE, "mmioDescend returned %u\n", ret);
> -    ok(ck.ckid != 0x66666666, "wrong ckid: %04x\n", ck.ckid);
> -    ok(ck.fccType != 0x66666666, "wrong fccType: %04x\n", ck.fccType);
> -    ok(ck.dwDataOffset != 0x66666666, "wrong dwDataOffset: %04x\n", ck.dwDataOffset);
> +    ok(ck.ckid != 0x66666666, "wrong ckid: %04lx\n", ck.ckid);
> +    ok(ck.fccType != 0x66666666, "wrong fccType: %04lx\n", ck.fccType);
> +    ok(ck.dwDataOffset != 0x66666666, "wrong dwDataOffset: %04lx\n", ck.dwDataOffset);
>  
>      mmioSeek(hmmio, 0, SEEK_SET);
>      memset(&ck, 0x66, sizeof(ck));
> @@ -248,19 +248,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == sizeof(buf), "got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == sizeof(buf), "got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == buf, "expected %p, got %p\n", buf, mmio.pchBuffer);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -277,16 +277,16 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == 0, "expected 0, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == 0, "expected 0, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == buf, "expected %p, got %p\n", buf, mmio.pchBuffer);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      ok(mmio.pchEndWrite == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -303,16 +303,16 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == 0, "expected 0, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == 0, "expected 0, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == NULL, "expected NULL\n");
>      ok(mmio.pchNext == NULL, "expected NULL\n");
>      ok(mmio.pchEndRead == NULL, "expected NULL\n");
>      ok(mmio.pchEndWrite == NULL, "expected NULL\n");
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -329,19 +329,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == 256, "expected 256, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == 256, "expected 256, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer != NULL, "expected not NULL\n");
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -358,19 +358,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == sizeof(buf), "got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == sizeof(buf), "got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == buf, "expected %p, got %p\n", buf, mmio.pchBuffer);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -387,19 +387,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == MMIO_DEFAULTBUFFER, "expected MMIO_DEFAULTBUFFER, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == MMIO_DEFAULTBUFFER, "expected MMIO_DEFAULTBUFFER, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer != NULL, "expected not NULL\n");
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -416,19 +416,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == 256, "expected 256, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == 256, "expected 256, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer != NULL, "expected not NULL\n");
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -451,19 +451,19 @@ static void test_mmioOpen(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == MMIO_DEFAULTBUFFER, "expected MMIO_DEFAULTBUFFER, got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == MMIO_DEFAULTBUFFER, "expected MMIO_DEFAULTBUFFER, got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == buf, "expected %p, got %p\n", buf, mmio.pchBuffer);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -569,7 +569,7 @@ static void test_mmioOpen_create(void)
>  
>      ret = DeleteFileA("test_mmio_path");
>      ok(!ret, "expected failure\n");
> -    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "got error %u\n", GetLastError());
> +    ok(GetLastError() == ERROR_FILE_NOT_FOUND, "got error %lu\n", GetLastError());
>  
>      wcscpy(buffer, L"test_mmio_path");
>      hmmio = mmioOpenW(buffer, &info, MMIO_WRITE | MMIO_CREATE);
> @@ -577,12 +577,12 @@ static void test_mmioOpen_create(void)
>      mmioClose(hmmio, 0);
>  
>      ret = DeleteFileA("test_mmio_path");
> -    ok(ret, "got error %u\n", GetLastError());
> +    ok(ret, "got error %lu\n", GetLastError());
>  
>      SetCurrentDirectoryW(cwd);
>  
>      ret = DeleteFileA(exedir_filename);
> -    ok(ret, "got error %u\n", GetLastError());
> +    ok(ret, "got error %lu\n", GetLastError());
>  }
>  
>  static void test_mmioSetBuffer(char *fname)
> @@ -607,19 +607,19 @@ static void test_mmioSetBuffer(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == sizeof(buf), "got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == sizeof(buf), "got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer == buf, "expected %p, got %p\n", buf, mmio.pchBuffer);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      if (mmio.fccIOProc == FOURCC_DOS)
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      else
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -630,7 +630,7 @@ static void test_mmioSetBuffer(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
>      ok(mmio.cchBuffer == 0, "got not 0\n");
> @@ -638,8 +638,8 @@ static void test_mmioSetBuffer(char *fname)
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      ok(mmio.pchEndWrite == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -650,7 +650,7 @@ static void test_mmioSetBuffer(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
>      ok(mmio.cchBuffer == 0, "got not 0\n");
> @@ -658,8 +658,8 @@ static void test_mmioSetBuffer(char *fname)
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      ok(mmio.pchEndWrite == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -670,7 +670,7 @@ static void test_mmioSetBuffer(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == MMIO_READ, "expected MMIO_READ, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
>      ok(mmio.cchBuffer == 0, "got not 0\n");
> @@ -678,8 +678,8 @@ static void test_mmioSetBuffer(char *fname)
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>      ok(mmio.pchEndWrite == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -690,17 +690,17 @@ static void test_mmioSetBuffer(char *fname)
>      memset(&mmio, 0, sizeof(mmio));
>      ret = mmioGetInfo(hmmio, &mmio, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioGetInfo error %u\n", ret);
> -    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %x\n", mmio.dwFlags);
> +    ok(mmio.dwFlags == (MMIO_READ|MMIO_ALLOCBUF), "expected MMIO_READ|MMIO_ALLOCBUF, got %lx\n", mmio.dwFlags);
>      ok(mmio.wErrorRet == MMSYSERR_NOERROR, "expected MMSYSERR_NOERROR, got %u\n", mmio.wErrorRet);
>      ok(mmio.fccIOProc == (fname ? FOURCC_DOS : FOURCC_MEM), "got %4.4s\n", (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.cchBuffer == 256, "got %u\n", mmio.cchBuffer);
> +    ok(mmio.cchBuffer == 256, "got %lu\n", mmio.cchBuffer);
>      ok(mmio.pchBuffer != NULL, "expected not NULL\n");
>      ok(mmio.pchBuffer != buf, "expected != buf\n");
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", buf, mmio.pchEndRead);
> -    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.lDiskOffset == 0, "expected 0, got %d\n", mmio.lDiskOffset);
> +    ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.lDiskOffset == 0, "expected 0, got %ld\n", mmio.lDiskOffset);
>  
>      ret = mmioSeek(hmmio, 0, SEEK_CUR);
>      ok(ret == 0, "expected 0, got %d\n", ret);
> @@ -721,7 +721,7 @@ static LRESULT CALLBACK mmio_test_IOProc(LPSTR lpMMIOInfo, UINT uMessage, LPARAM
>          if (lpInfo->fccIOProc == FOURCC_DOS)
>              lpInfo->fccIOProc = mmioFOURCC('F', 'A', 'I', 'L');
>          for (i = 0; i < ARRAY_SIZE(lpInfo->adwInfo); i++)
> -            ok(lpInfo->adwInfo[i] == 0, "[%d] Expected 0, got %u\n", i, lpInfo->adwInfo[i]);
> +            ok(lpInfo->adwInfo[i] == 0, "[%d] Expected 0, got %lu\n", i, lpInfo->adwInfo[i]);
>          return MMSYSERR_NOERROR;
>      case MMIOM_CLOSE:
>          return MMSYSERR_NOERROR;
> @@ -753,9 +753,9 @@ static void test_mmioOpen_fourcc(void)
>      mmioGetInfo(hmmio, &mmio, 0);
>      ok(hmmio && mmio.fccIOProc == FOURCC_XYZ, "mmioOpenA error %u, got %4.4s\n",
>              mmio.wErrorRet, (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.adwInfo[1] == 0, "mmioOpenA sent MMIOM_SEEK, got %d\n",
> +    ok(mmio.adwInfo[1] == 0, "mmioOpenA sent MMIOM_SEEK, got %ld\n",
>         mmio.adwInfo[1]);
> -    ok(mmio.lDiskOffset == 0, "mmioOpenA updated lDiskOffset, got %d\n",
> +    ok(mmio.lDiskOffset == 0, "mmioOpenA updated lDiskOffset, got %ld\n",
>         mmio.lDiskOffset);
>      mmioClose(hmmio, 0);
>  
> @@ -765,9 +765,9 @@ static void test_mmioOpen_fourcc(void)
>      mmioGetInfo(hmmio, &mmio, 0);
>      ok(hmmio && mmio.fccIOProc == FOURCC_XYZ, "mmioOpenA error %u, got %4.4s\n",
>              mmio.wErrorRet, (LPCSTR)&mmio.fccIOProc);
> -    ok(mmio.adwInfo[1] == 0, "mmioOpenA sent MMIOM_SEEK, got %d\n",
> +    ok(mmio.adwInfo[1] == 0, "mmioOpenA sent MMIOM_SEEK, got %ld\n",
>         mmio.adwInfo[1]);
> -    ok(mmio.lDiskOffset == 0, "mmioOpenA updated lDiskOffset, got %d\n",
> +    ok(mmio.lDiskOffset == 0, "mmioOpenA updated lDiskOffset, got %ld\n",
>         mmio.lDiskOffset);
>      mmioClose(hmmio, 0);
>  
> @@ -790,22 +790,22 @@ static BOOL create_test_file(char *temp_file)
>      HANDLE h;
>  
>      ret = GetTempPathA(sizeof(temp_path), temp_path);
> -    ok(ret, "Failed to get a temp path, err %d\n", GetLastError());
> +    ok(ret, "Failed to get a temp path, err %ld\n", GetLastError());
>      if (!ret)
>          return FALSE;
>  
>      ret = GetTempFileNameA(temp_path, "mmio", 0, temp_file);
> -    ok(ret, "Failed to get a temp name, err %d\n", GetLastError());
> +    ok(ret, "Failed to get a temp name, err %ld\n", GetLastError());
>      if (!ret)
>          return FALSE;
>  
>      h = CreateFileA(temp_file, GENERIC_WRITE, 0, NULL,
>                      CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
> -    ok(h != INVALID_HANDLE_VALUE, "Failed to create a file, err %d\n", GetLastError());
> +    ok(h != INVALID_HANDLE_VALUE, "Failed to create a file, err %ld\n", GetLastError());
>      if (h == INVALID_HANDLE_VALUE) return FALSE;
>  
>      ret = WriteFile(h, RIFF_buf, sizeof(RIFF_buf), &written, NULL);
> -    ok(ret, "Failed to write a file, err %d\n", GetLastError());
> +    ok(ret, "Failed to write a file, err %ld\n", GetLastError());
>      CloseHandle(h);
>      if (!ret) DeleteFileA(temp_file);
>      return ret;
> @@ -832,20 +832,20 @@ static void test_mmioSeek(void)
>      if (hmmio != NULL) {
>          /* seek to the end */
>          end = mmioSeek(hmmio, 0, SEEK_END);
> -        ok(end == size, "expected %d, got %d\n", size, end);
> +        ok(end == size, "expected %ld, got %ld\n", size, end);
>  
>          /* test MMIOINFO values */
>          res = mmioGetInfo(hmmio, &mmio, 0);
>          ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
> -        ok(mmio.pchNext == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchNext);
> -        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> -        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -        ok(mmio.lBufOffset == 0, "expected %d, got %d\n", 0, mmio.lBufOffset);
> -        ok(mmio.lDiskOffset == 0, "expected %d, got %d\n", 0, mmio.lDiskOffset);
> +        ok(mmio.pchNext == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchNext);
> +        ok(mmio.pchEndRead == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndRead);
> +        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +        ok(mmio.lBufOffset == 0, "expected %d, got %ld\n", 0, mmio.lBufOffset);
> +        ok(mmio.lDiskOffset == 0, "expected %d, got %ld\n", 0, mmio.lDiskOffset);
>  
>          /* seek backward from the end */
>          pos = mmioSeek(hmmio, offset, SEEK_END);
> -        ok(pos == size-offset, "expected %d, got %d\n", size-offset, pos);
> +        ok(pos == size-offset, "expected %ld, got %ld\n", size-offset, pos);
>  
>          mmioClose(hmmio, 0);
>      }
> @@ -863,20 +863,20 @@ static void test_mmioSeek(void)
>      if (hmmio != NULL) {
>          /* seek to the end */
>          end = mmioSeek(hmmio, 0, SEEK_END);
> -        ok(end == size, "expected %d, got %d\n", size, end);
> +        ok(end == size, "expected %ld, got %ld\n", size, end);
>  
>          /* test MMIOINFO values */
>          res = mmioGetInfo(hmmio, &mmio, 0);
>          ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
>          ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
> -        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -        ok(mmio.lBufOffset == size, "expected %d, got %d\n", size, mmio.lBufOffset);
> -        ok(mmio.lDiskOffset == size, "expected %d, got %d\n", size, mmio.lDiskOffset);
> +        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +        ok(mmio.lBufOffset == size, "expected %ld, got %ld\n", size, mmio.lBufOffset);
> +        ok(mmio.lDiskOffset == size, "expected %ld, got %ld\n", size, mmio.lDiskOffset);
>  
>          /* seek backward from the end */
>          pos = mmioSeek(hmmio, offset, SEEK_END);
> -        ok(pos == size-offset, "expected %d, got %d\n", size-offset, pos);
> +        ok(pos == size-offset, "expected %ld, got %ld\n", size-offset, pos);
>  
>          mmioClose(hmmio, 0);
>      }
> @@ -892,30 +892,30 @@ static void test_mmioSeek(void)
>      if (hmmio != NULL) {
>          /* seek to the end */
>          end = mmioSeek(hmmio, 0, SEEK_END);
> -        ok(end == size, "expected %d, got %d\n", size, end);
> +        ok(end == size, "expected %ld, got %ld\n", size, end);
>  
>          /* test MMIOINFO values */
>          res = mmioGetInfo(hmmio, &mmio, 0);
>          ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
>          ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>          ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
> -        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %d, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> -        ok(mmio.lBufOffset == end, "expected %d, got %d\n", end, mmio.lBufOffset);
> -        ok(mmio.lDiskOffset == size, "expected %d, got %d\n", size, mmio.lDiskOffset);
> +        ok(mmio.pchEndWrite == mmio.pchBuffer + mmio.cchBuffer, "expected %p + %ld, got %p\n", mmio.pchBuffer, mmio.cchBuffer, mmio.pchEndWrite);
> +        ok(mmio.lBufOffset == end, "expected %ld, got %ld\n", end, mmio.lBufOffset);
> +        ok(mmio.lDiskOffset == size, "expected %ld, got %ld\n", size, mmio.lDiskOffset);
>  
>          /* seek backward from the end */
>          pos = mmioSeek(hmmio, offset, SEEK_END);
> -        ok(pos == size-offset, "expected %d, got %d\n", size-offset, pos);
> +        ok(pos == size-offset, "expected %ld, got %ld\n", size-offset, pos);
>  
>          mmioClose(hmmio, 0);
>      }
>  
>      /* test seek position inheritance from standard file handle */
>      hfile = OpenFile(test_file, &ofs, OF_READ);
> -    ok(hfile != HFILE_ERROR, "Failed to open the file, err %d\n", GetLastError());
> +    ok(hfile != HFILE_ERROR, "Failed to open the file, err %ld\n", GetLastError());
>      if (hfile != HFILE_ERROR) {
>          pos = _llseek(hfile, offset, SEEK_SET);
> -        ok(pos != HFILE_ERROR, "Failed to seek, err %d\n", GetLastError());
> +        ok(pos != HFILE_ERROR, "Failed to seek, err %ld\n", GetLastError());
>          memset(&mmio, 0, sizeof(mmio));
>          mmio.fccIOProc = FOURCC_DOS;
>          mmio.adwInfo[0] = (DWORD)hfile;
> @@ -923,7 +923,7 @@ static void test_mmioSeek(void)
>          ok(hmmio != 0, "mmioOpenA error %u\n", mmio.wErrorRet);
>          if (hmmio != NULL) {
>              pos = mmioSeek(hmmio, 0, SEEK_CUR);
> -            ok(pos == offset, "expected %d, got %d\n", offset, pos);
> +            ok(pos == offset, "expected %ld, got %ld\n", offset, pos);
>              mmioClose(hmmio, 0);
>          }
>      }
> @@ -953,10 +953,10 @@ static void test_mmio_end_of_file(void)
>      }
>  
>      ret = mmioSeek(hmmio, 0, SEEK_END);
> -    ok(sizeof(RIFF_buf) == ret, "got %d\n", ret);
> +    ok(sizeof(RIFF_buf) == ret, "got %ld\n", ret);
>  
>      ret = mmioRead(hmmio, data, sizeof(data));
> -    ok(ret == 0, "expected %d, got %d\n", 0, ret);
> +    ok(ret == 0, "expected %d, got %ld\n", 0, ret);
>  
>      res = mmioGetInfo(hmmio, &mmio, 0);
>      ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
> @@ -993,7 +993,7 @@ static void test_mmio_buffer_pointer(void)
>  
>      /* the buffer is empty */
>      size = mmioRead(hmmio, data, 0);
> -    ok(size == 0, "expected 0, got %d\n", size);
> +    ok(size == 0, "expected 0, got %ld\n", size);
>      res = mmioGetInfo(hmmio, &mmio, 0);
>      ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
> @@ -1006,29 +1006,29 @@ static void test_mmio_buffer_pointer(void)
>      /* seeking to the same buffer chunk, the buffer is kept */
>      size = sizeof(buffer)/2;
>      pos = mmioSeek(hmmio, size, SEEK_SET);
> -    ok(pos == size, "failed to seek, expected %d, got %d\n", size, pos);
> +    ok(pos == size, "failed to seek, expected %ld, got %ld\n", size, pos);
>      res = mmioGetInfo(hmmio, &mmio, 0);
>      ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
> -    ok(mmio.lBufOffset == 0, "expected 0, got %d\n", mmio.lBufOffset);
> -    ok(mmio.pchNext-mmio.pchBuffer == size, "expected %d, got %d\n", size, (int)(mmio.pchNext-mmio.pchBuffer));
> +    ok(mmio.lBufOffset == 0, "expected 0, got %ld\n", mmio.lBufOffset);
> +    ok(mmio.pchNext-mmio.pchBuffer == size, "expected %ld, got %d\n", size, (int)(mmio.pchNext-mmio.pchBuffer));
>      ok(mmio.pchEndRead-mmio.pchBuffer == sizeof(buffer), "got %d\n", (int)(mmio.pchEndRead-mmio.pchBuffer));
>  
>      /* seeking to another buffer chunk, the buffer is empty */
>      size = sizeof(buffer) * 3 + sizeof(buffer) / 2;
>      pos = mmioSeek(hmmio, size, SEEK_SET);
> -    ok(pos == size, "failed to seek, got %d\n", pos);
> +    ok(pos == size, "failed to seek, got %ld\n", pos);
>      res = mmioGetInfo(hmmio, &mmio, 0);
>      ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
> -    ok(mmio.lBufOffset == size, "expected %d, got %d\n", size, mmio.lBufOffset);
> +    ok(mmio.lBufOffset == size, "expected %ld, got %ld\n", size, mmio.lBufOffset);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>  
>      /* reading a lot (as sizeof(data) > mmio.cchBuffer), the buffer is empty */
>      size = mmioRead(hmmio, data, sizeof(data));
> -    ok(size == sizeof(data), "failed to read, got %d\n", size);
> +    ok(size == sizeof(data), "failed to read, got %ld\n", size);
>      res = mmioGetInfo(hmmio, &mmio, 0);
>      ok(res == MMSYSERR_NOERROR, "expected 0, got %d\n", res);
> -    ok(mmio.lBufOffset == pos+size, "expected %d, got %d\n", pos+size, mmio.lBufOffset);
> +    ok(mmio.lBufOffset == pos+size, "expected %ld, got %ld\n", pos+size, mmio.lBufOffset);
>      ok(mmio.pchNext == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchNext);
>      ok(mmio.pchEndRead == mmio.pchBuffer, "expected %p, got %p\n", mmio.pchBuffer, mmio.pchEndRead);
>  
> @@ -1063,18 +1063,18 @@ static void test_riff_write(void)
>      chunk_info[0].fccType = mmioFOURCC('W','A','V','E');
>      ret = mmioCreateChunk(mmio, chunk_info, MMIO_CREATERIFF);
>      ok(ret == MMSYSERR_NOERROR, "mmioCreateChunk failed %x\n", ret);
> -    ok(chunk_info[0].ckid == FOURCC_RIFF, "chunk_info[0].ckid = %x\n", chunk_info[0].ckid);
> -    ok(chunk_info[0].cksize == 0, "chunk_info[0].cksize = %d\n", chunk_info[0].cksize);
> -    ok(chunk_info[0].dwDataOffset == 8, "chunk_info[0].dwDataOffset = %d\n", chunk_info[0].dwDataOffset);
> -    ok(chunk_info[0].dwFlags == MMIO_DIRTY, "chunk_info[0].dwFlags = %x\n", chunk_info[0].dwFlags);
> +    ok(chunk_info[0].ckid == FOURCC_RIFF, "chunk_info[0].ckid = %lx\n", chunk_info[0].ckid);
> +    ok(chunk_info[0].cksize == 0, "chunk_info[0].cksize = %ld\n", chunk_info[0].cksize);
> +    ok(chunk_info[0].dwDataOffset == 8, "chunk_info[0].dwDataOffset = %ld\n", chunk_info[0].dwDataOffset);
> +    ok(chunk_info[0].dwFlags == MMIO_DIRTY, "chunk_info[0].dwFlags = %lx\n", chunk_info[0].dwFlags);
>  
>      chunk_info[1].ckid = mmioFOURCC('d','a','t','a');
>      ret = mmioCreateChunk(mmio, chunk_info+1, 0);
>      ok(ret == MMSYSERR_NOERROR, "mmioCreateChunk failed %x\n", ret);
> -    ok(chunk_info[1].ckid == mmioFOURCC('d','a','t','a'), "chunk_info[1].ckid = %x\n", chunk_info[1].ckid);
> -    ok(chunk_info[1].cksize == 0, "chunk_info[1].cksize = %d\n", chunk_info[1].cksize);
> -    ok(chunk_info[1].dwDataOffset == 20, "chunk_info[1].dwDataOffset = %d\n", chunk_info[1].dwDataOffset);
> -    ok(chunk_info[1].dwFlags == MMIO_DIRTY, "chunk_info[1].dwFlags = %x\n", chunk_info[1].dwFlags);
> +    ok(chunk_info[1].ckid == mmioFOURCC('d','a','t','a'), "chunk_info[1].ckid = %lx\n", chunk_info[1].ckid);
> +    ok(chunk_info[1].cksize == 0, "chunk_info[1].cksize = %ld\n", chunk_info[1].cksize);
> +    ok(chunk_info[1].dwDataOffset == 20, "chunk_info[1].dwDataOffset = %ld\n", chunk_info[1].dwDataOffset);
> +    ok(chunk_info[1].dwFlags == MMIO_DIRTY, "chunk_info[1].dwFlags = %lx\n", chunk_info[1].dwFlags);
>  
>      memset(buf, 0xde, sizeof(buf));
>      written = mmioWrite(mmio, buf, 8);
> @@ -1087,14 +1087,14 @@ static void test_riff_write(void)
>      info.pchNext += 8;
>      ret = mmioAdvance(mmio, &info, 1);
>      ok(ret == MMSYSERR_NOERROR, "mmioAdvance failed %x\n", ret);
> -    ok(info.lBufOffset == 36, "info.lBufOffset = %d\n", info.lBufOffset);
> +    ok(info.lBufOffset == 36, "info.lBufOffset = %ld\n", info.lBufOffset);
>  
>      info.dwFlags |= MMIO_DIRTY;
>      memset(info.pchNext, 0xba, 8);
>      info.pchNext += 8;
>      ret = mmioAdvance(mmio, &info, 1);
>      ok(ret == MMSYSERR_NOERROR, "mmioAdvance failed %x\n", ret);
> -    ok(info.lBufOffset == 44, "info.lBufOffset = %d\n", info.lBufOffset);
> +    ok(info.lBufOffset == 44, "info.lBufOffset = %ld\n", info.lBufOffset);
>  
>      info.dwFlags |= MMIO_DIRTY;
>      memset(info.pchNext, 0xef, 3);
> diff --git a/dlls/winmm/tests/timer.c b/dlls/winmm/tests/timer.c
> index 9fba2ec055f..e03d7b9cf54 100644
> --- a/dlls/winmm/tests/timer.c
> +++ b/dlls/winmm/tests/timer.c
> @@ -119,14 +119,14 @@ static void test_timer(UINT period, UINT resolution)
>          if (i == 0)
>          {
>              if (winetest_debug > 1)
> -                trace("time[%d] = %u\n", i, times[i]);
> +                trace("time[%d] = %lu\n", i, times[i]);
>          }
>          else
>          {
>              delta = times[i] - times[i - 1];
>  
>              if (winetest_debug > 1)
> -                trace("time[%d] = %u delta = %d\n", i, times[i], delta);
> +                trace("time[%d] = %lu delta = %d\n", i, times[i], delta);
>  
>              sum += delta;
>              deviation += ((delta - period) * (delta - period));
> @@ -139,7 +139,7 @@ static void test_timer(UINT period, UINT resolution)
>          }
>      }
>  
> -    trace("min = %u, max = %u, average = %f, standard deviation = %f\n",
> +    trace("min = %lu, max = %lu, average = %f, standard deviation = %f\n",
>            dwMin, dwMax, sum / (count - 1), sqrt(deviation / (count - 2)));
>  }
>  
> @@ -167,7 +167,7 @@ static void CALLBACK priorityTimeProc(UINT uID, UINT uMsg, DWORD_PTR dwUser,
>                                        DWORD_PTR dw1, DWORD_PTR dw2)
>  {
>      priority = GetThreadPriority(GetCurrentThread());
> -    ok(priority!=THREAD_PRIORITY_ERROR_RETURN, "GetThreadPriority() failed, GetLastError() = %u\n", GetLastError());
> +    ok(priority!=THREAD_PRIORITY_ERROR_RETURN, "GetThreadPriority() failed, GetLastError() = %lu\n", GetLastError());
>      fired = TRUE;
>  }
>  
> diff --git a/dlls/winmm/tests/wave.c b/dlls/winmm/tests/wave.c
> index 5e46a2f46e5..c0c22bee4d8 100644
> --- a/dlls/winmm/tests/wave.c
> +++ b/dlls/winmm/tests/wave.c
> @@ -357,7 +357,7 @@ static const char * wave_header_flags(DWORD flags)
>      }
>      if (flags & ~WHDR_MASK) {
>          char temp[32];
> -        sprintf(temp, "UNKNOWN(0x%08x)", flags & ~WHDR_MASK);
> +        sprintf(temp, "UNKNOWN(0x%08lx)", flags & ~WHDR_MASK);
>          if (!first) strcat(msg, " ");
>          strcat(msg, temp);
>      }
> @@ -486,8 +486,8 @@ static void check_position(int device, HWAVEOUT wout, DWORD bytes,
>      ok(mmtime.wType == TIME_BYTES, "(waveOutGetPosition(%s): returned %s\n",
>         dev_name(device), wave_time_format(mmtime.wType));
>      returned = time_to_bytes(&mmtime, pwfx);
> -    ok(returned == bytes, "waveOutGetPosition(%s): returned %d bytes, "
> -       "should be %d\n", dev_name(device), returned, bytes);
> +    ok(returned == bytes, "waveOutGetPosition(%s): returned %ld bytes, "
> +       "should be %ld\n", dev_name(device), returned, bytes);
>  
>      mmtime.wType = TIME_SAMPLES;
>      rc=waveOutGetPosition(wout, &mmtime, sizeof(mmtime));
> @@ -496,8 +496,8 @@ static void check_position(int device, HWAVEOUT wout, DWORD bytes,
>      ok(mmtime.wType == TIME_SAMPLES, "(waveOutGetPosition(%s): returned %s\n",
>         dev_name(device), wave_time_format(mmtime.wType));
>      returned = time_to_bytes(&mmtime, pwfx);
> -    ok(returned == bytes, "waveOutGetPosition(%s): returned %d samples "
> -       "(%d bytes), should be %d (%d bytes)\n", dev_name(device),
> +    ok(returned == bytes, "waveOutGetPosition(%s): returned %ld samples "
> +       "(%ld bytes), should be %ld (%ld bytes)\n", dev_name(device),
>         bytes_to_samples(returned, pwfx), returned,
>         bytes_to_samples(bytes, pwfx), bytes);
>  
> @@ -644,7 +644,7 @@ static void wave_out_test_deviceOut(int device, double duration, int headers, in
>         (!(flags & WAVE_FORMAT_DIRECT) || (flags & WAVE_MAPPED)) &&
>         !(pcaps->dwFormats & format)) ||
>         (rc==MMSYSERR_INVALFLAG && (flags & WAVE_FORMAT_DIRECT)),
> -       "waveOutOpen(%s): format=%dx%2dx%d flags=%x(%s) rc=%s\n",
> +       "waveOutOpen(%s): format=%ldx%2dx%d flags=%lx(%s) rc=%s\n",
>         dev_name(device),pwfx->nSamplesPerSec,pwfx->wBitsPerSample,
>         pwfx->nChannels,flags,wave_open_flags(flags),wave_out_error(rc));
>      if ((rc==WAVERR_BADFORMAT || rc==MMSYSERR_NOTSUPPORTED) &&
> @@ -653,7 +653,7 @@ static void wave_out_test_deviceOut(int device, double duration, int headers, in
>                "capabilities but opening it failed.\n");
>      if ((rc==WAVERR_BADFORMAT || rc==MMSYSERR_NOTSUPPORTED) &&
>         !(pcaps->dwFormats & format))
> -        trace("waveOutOpen(%s): format=%dx%2dx%d %s rc=%s failed but format "
> +        trace("waveOutOpen(%s): format=%ldx%2dx%d %s rc=%s failed but format "
>                "not supported so OK.\n", dev_name(device), pwfx->nSamplesPerSec,
>                pwfx->wBitsPerSample,pwfx->nChannels,
>                flags & WAVE_FORMAT_DIRECT ? "flags=WAVE_FORMAT_DIRECT" :
> @@ -667,7 +667,7 @@ static void wave_out_test_deviceOut(int device, double duration, int headers, in
>      ok(pwfx->nChannels==nChannels &&
>         pwfx->wBitsPerSample==wBitsPerSample &&
>         pwfx->nSamplesPerSec==nSamplesPerSec,
> -       "got the wrong format: %dx%2dx%d instead of %dx%2dx%d\n",
> +       "got the wrong format: %ldx%2dx%d instead of %ldx%2dx%d\n",
>         pwfx->nSamplesPerSec, pwfx->wBitsPerSample,
>         pwfx->nChannels, nSamplesPerSec, wBitsPerSample, nChannels);
>  
> @@ -719,7 +719,7 @@ static void wave_out_test_deviceOut(int device, double duration, int headers, in
>      }
>  
>      if (interactive && rc==MMSYSERR_NOERROR) {
> -        trace("Playing %g second %s at %5dx%2dx%d %2d header%s %d loop%s %d bytes %s %s\n",duration,
> +        trace("Playing %g second %s at %5ldx%2dx%d %2d header%s %d loop%s %ld bytes %s %s\n",duration,
>                sine ? "440 Hz tone" : "silence", pwfx->nSamplesPerSec,
>                pwfx->wBitsPerSample,pwfx->nChannels, headers, headers > 1 ? "s": " ",
>                loops, loops == 1 ? " " : "s", length * (loops + 1),
> @@ -801,27 +801,27 @@ static void wave_out_test_deviceOut(int device, double duration, int headers, in
>             wave_out_error(rc));
>      }
>  
> -    ok(frags[0].dwFlags==(interactive ? WHDR_DONE : 0), "dwFlags(%d)=%x\n",device,frags[0].dwFlags);
> +    ok(frags[0].dwFlags==(interactive ? WHDR_DONE : 0), "dwFlags(%d)=%lx\n",device,frags[0].dwFlags);
>  
>      frags[0].dwFlags |= WHDR_DONE;
>      rc=waveOutUnprepareHeader(wout, &frags[0], sizeof(frags[0]));
>      ok(rc==MMSYSERR_NOERROR, "waveOutUnprepareHeader(%d): rc=%s\n",device,wave_out_error(rc));
> -    ok(frags[0].dwFlags==WHDR_DONE, "dwFlags(%d)=%x\n",device,frags[0].dwFlags);
> +    ok(frags[0].dwFlags==WHDR_DONE, "dwFlags(%d)=%lx\n",device,frags[0].dwFlags);
>  
>      frags[0].dwFlags |= WHDR_INQUEUE;
>      rc=waveOutPrepareHeader(wout, &frags[0], sizeof(frags[0]));
>      ok(rc==MMSYSERR_NOERROR, "waveOutPrepareHeader(%d): rc=%s\n",device,wave_out_error(rc));
> -    ok(frags[0].dwFlags==WHDR_PREPARED, "dwFlags(%d)=%x\n",device,frags[0].dwFlags);
> +    ok(frags[0].dwFlags==WHDR_PREPARED, "dwFlags(%d)=%lx\n",device,frags[0].dwFlags);
>  
>      frags[0].dwFlags |= WHDR_INQUEUE;
>      rc=waveOutPrepareHeader(wout, &frags[0], sizeof(frags[0]));
>      ok(rc==MMSYSERR_NOERROR, "waveOutPrepareHeader(%d): rc=%s\n",device,wave_out_error(rc));
> -    ok(frags[0].dwFlags==(WHDR_PREPARED|WHDR_INQUEUE), "dwFlags(%d)=%x\n",device,frags[0].dwFlags);
> +    ok(frags[0].dwFlags==(WHDR_PREPARED|WHDR_INQUEUE), "dwFlags(%d)=%lx\n",device,frags[0].dwFlags);
>  
>      frags[0].dwFlags &= ~(WHDR_INQUEUE|WHDR_DONE);
>      rc=waveOutUnprepareHeader(wout, &frags[0], sizeof(frags[0]));
>      ok(rc==MMSYSERR_NOERROR, "waveOutUnprepareHeader(%d): rc=%s\n",device,wave_out_error(rc));
> -    ok(frags[0].dwFlags==0, "dwFlags(%d)=%x\n",device,frags[0].dwFlags);
> +    ok(frags[0].dwFlags==0, "dwFlags(%d)=%lx\n",device,frags[0].dwFlags);
>  
>      rc=waveOutClose(wout);
>      ok(rc==MMSYSERR_NOERROR,"waveOutClose(%s): rc=%s\n",dev_name(device),
> @@ -953,7 +953,7 @@ static void wave_out_test_device(UINT_PTR device)
>                            (DWORD_PTR)nameW, size);
>          ok(rc==MMSYSERR_NOERROR,"waveOutMessage(%s): failed to get interface "
>             "name, rc=%s\n",dev_name(device),wave_out_error(rc));
> -        ok(lstrlenW(nameW)+1==size/sizeof(WCHAR),"got an incorrect size %d\n",size);
> +        ok(lstrlenW(nameW)+1==size/sizeof(WCHAR),"got an incorrect size %ld\n",size);
>          if (rc==MMSYSERR_NOERROR) {
>              nameA = HeapAlloc(GetProcessHeap(), 0, size/sizeof(WCHAR));
>              WideCharToMultiByte(CP_ACP, 0, nameW, size/sizeof(WCHAR), nameA,
> @@ -979,7 +979,7 @@ static void wave_out_test_device(UINT_PTR device)
>      trace("  %s: \"%s\" (%s) %d.%d (%d:%d)\n",dev_name(device),capsA.szPname,
>            (nameA?nameA:"failed"),capsA.vDriverVersion >> 8,
>            capsA.vDriverVersion & 0xff, capsA.wMid,capsA.wPid);
> -    trace("     channels=%d formats=%05x support=%04x\n",
> +    trace("     channels=%d formats=%05lx support=%04lx\n",
>            capsA.wChannels,capsA.dwFormats,capsA.dwSupport);
>      trace("     %s\n",wave_out_caps(capsA.dwSupport));
>      HeapFree(GetProcessHeap(), 0, nameA);
> @@ -1454,7 +1454,7 @@ static void wave_out_tests(void)
>  
>      if(rc != MMSYSERR_NOTSUPPORTED)
>          ok((ndev == 0 && (preferred == -1 || broken(preferred != -1))) ||
> -                preferred < ndev, "Got invalid preferred device: 0x%x\n", preferred);
> +                preferred < ndev, "Got invalid preferred device: 0x%lx\n", preferred);
>  
>      rc = waveOutMessage((HWAVEOUT)WAVE_MAPPER, DRVM_MAPPER_PREFERRED_GET,
>           (DWORD_PTR)-1  , 0);
> @@ -1596,7 +1596,7 @@ static void test_fragmentsize(void)
>      rc = waveOutPrepareHeader(wout, &hdr[1], sizeof(hdr[1]));
>      ok(rc == MMSYSERR_NOERROR, "waveOutPrepareHeader failed: %s\n", wave_out_error(rc));
>  
> -    trace("writing %u bytes then %u bytes\n", hdr[0].dwBufferLength, hdr[1].dwBufferLength);
> +    trace("writing %lu bytes then %lu bytes\n", hdr[0].dwBufferLength, hdr[1].dwBufferLength);
>      rc = waveOutWrite(wout, &hdr[0], sizeof(hdr[0]));
>      ok(rc == MMSYSERR_NOERROR, "waveOutWrite failed: %s\n", wave_out_error(rc));
>  
> @@ -1617,7 +1617,7 @@ static void test_fragmentsize(void)
>  
>      /* windows behavior is inconsistent */
>      ok(mmtime.u.cb == 88200 ||
> -            mmtime.u.cb == 88196, "after position: %u\n", mmtime.u.cb);
> +            mmtime.u.cb == 88196, "after position: %lu\n", mmtime.u.cb);
>  
>      rc = waveOutClose(wout);
>      ok(rc == MMSYSERR_NOERROR, "waveOutClose failed: %s\n", wave_out_error(rc));
> @@ -1758,7 +1758,7 @@ static void create_wav_file(char *temp_file)
>      rc = mmioCreateChunk(h, &chunk, 0);
>      ok(rc == MMSYSERR_NOERROR, "mmioCreateChunk failed, got %u\n", rc);
>      written = mmioWrite(h, (char*)&format, sizeof(format));
> -    ok(written == sizeof(format), "mmioWrite failed, got %d\n", written);
> +    ok(written == sizeof(format), "mmioWrite failed, got %ld\n", written);
>      rc = mmioAscend(h, &chunk, 0);
>      ok(rc == MMSYSERR_NOERROR, "mmioAscend failed, got %d\n", rc);
>  
> @@ -1767,7 +1767,7 @@ static void create_wav_file(char *temp_file)
>      ok(rc == MMSYSERR_NOERROR, "mmioCreateChunk failed, got %u\n", rc);
>      buffer = wave_generate_silence(&format, .1, &length);
>      written = mmioWrite(h, buffer, length);
> -    ok(written == length, "mmioWrite failed, got %d\n", written);
> +    ok(written == length, "mmioWrite failed, got %ld\n", written);
>      rc = mmioAscend(h, &chunk, 0);
>      ok(rc == MMSYSERR_NOERROR, "mmioAscend failed, got %d\n", rc);
>      HeapFree(GetProcessHeap(), 0, buffer);
> 
> 



More information about the wine-devel mailing list