Dear Graeme! First of all I would like to express my gratitude for writing the Argyll and maintaining excellent level of support! THANK YOU!!! As for the compilation errors. I am using the newest DDK available from Microsoft at http://www.microsoft.com/whdc/devtools/ddk/default.mspx I clicked on "Download the Windows Server 2003 SP1 DDK [236 MB ISO file]" Then I compiled your version of AJAM (with one change - I had to remove all blank lines from jam.h - I do not know if those were added "in transit" or there was an error on my side - maybe just take a look and see if everything is OK with your version [just see if there are any redundant blank lines in preprocessor commands] :). All in all, I do not think this is the problem. ------- 1st compilation with errors set DDK_INC_PATH=E:\WINDDK\3790.1830\inc\w2k set DDK_LIB_PATH=E:\WINDDK\3790.1830\lib\w2k\i386 set MINGW=C:\MinGW jam -a >CompilationLog.txt 2>&1 ------ 2nd comilation without errors set DDK_INC_PATH=E:\WINDDK\3790.1830\inc\w2k set DDK_LIB_PATH=E:\WINDDK\3790.1830\lib\w2k\i386 set MINGW=C:\MinGW jam -a >CompilationLog2.txt 2>&1 ---- The problem is with usb.h, usb100.h and usb200.h, for example: In file included from spectro\icoms.h:35, from spectro\inst.c:43: E:/WINDDK/3790.1830/inc/wxp/usb.h:44: error: syntax error before "PIRP" E:/WINDDK/3790.1830/inc/wxp/usb.h:44: warning: data definition has no type or storage class E:/WINDDK/3790.1830/inc/wxp/usb.h:45: error: syntax error before "PMDL" E:/WINDDK/3790.1830/inc/wxp/usb.h:45: warning: data definition has no type or storage class Is anyone interested in full compilation log? Graeme - do you want them via PM? ==================== >> 5) dispcal -D5 xx crashes.... Here is the screen output: >Sorry, there's nothing interesting there. What makes you say it >crashed ? (ie. you haven't shown anything that indicates or >show the details of this). It just crashes - "There was a problem with application dispcal..." Error signature: AppName: dispcal.exe, AppVer:0.0.0.0 ModName: unknown ModVer: 0.0.0.0 Offset: 00198fe4 I have managed to pinpoint the problem to HidD_GetHidGuid(&HidGuid); in file hidio.c, function hid_get_paths() As this is Microsoft's function, I think the problem is with my compilation - the necessity of using Win2k libs on WinXP. ---- Minor thing - could you take a look at the very end of hidio.h? The following stuff is outside #if #endif protection against double inclusion. Is this intentional? /* Cleanup and then free an hev entry */ void hid_del_hid_device(hid_device *hev);