I dowloaded the 98ddk (26 Mbytes) to obtain the includes in order to test the Izcelion tuts on how to build a Vxd. But I encountered a big problem: vmm.inc and some other includes provided by microsoft are bugged ( Masm compiler has detected errors on some macro which are defined inside these buggy includes). Could someone give me an adress where I could found the correct includes without having to re-download tons of Mbytes just to obtain some includes (I need at least vmm.inc) otherwise I will not be able to learn these Izcelion tuts. Thank for the help.
Where did you download this faulty 98DDK? And could you please post the errors that MASM gives you?
First of all, thank you for trying to help me. Here is the address of Microsoft site from which I downloaded the98ddk: http://mssjus.www.conxion.com/download/win98se/install/gold/w98/en-us/98ddk.exe Here is the code that I am trying to compile (the very first Izcelion tutorial): .386p include \masm32\include\vmm.inc DECLARE_VIRTUAL_DEVICE FIRSTVXD,1,0, FIRSTVXD_Control,\ UNDEFINED_DEVICE_ID, UNDEFINED_INIT_ORDER Begin_control_dispatch FIRSTVXD End_control_dispatch FIRSTVXD end Here is the makefile used in the tutorial: NAME=firstvxd $(NAME).vxd:$(NAME).obj link -vxd -def:$(NAME).def $(NAME).obj $(NAME).obj:$(NAME).asm ml -coff -c -Cx -DMASM6 -DBLD_COFF -DIS_32 $(NAME).asm And finally, here is the error message generated by the Masm compiler: \masm32\include\vmm.inc(312) : error A2008: syntax error : & MacroLoop(16): iteration 1: Macro Called From MakeCodeSeg(41): Macro Called From \masm32\include\vmm.inc(312): Include File \masm32\include\vmm.inc(312) : fatal error A1008: unmatched macro nesting MacroLoop(21): iteration 1: Macro Called From MakeCodeSeg(41): Macro Called From \masm32\include\vmm.inc(312): Include File I hope these informations would be the ones you wanted.
I had a similar or maybe the same problem when I first tried to assemble a VxD. After a few tries I have made this working batch: @echo off if exist *.obj del *.obj c:\masm32\bin\ml -nologo -coff -c -Cx -DMASM6 -DBLD_COFF -DIS_32 %1.asm if errorlevel 1 goto errasm c:\masm32\bin\link -vxd -def:%1.def /NOLOGO %1.obj if errorlevel 1 goto errlink goto TheEnd :errlink echo. echo ########## echo Link error echo ########## goto ERR :errasm echo. echo ############## echo Assembly Error echo ############## :ERR pause :TheEnd del *.obj This message was edited by Milos, on 4/26/2001 3:15:24 PM
Milos I just tried this and it doesn't work too. I am thinking that I could generate the .inc using H2INC.exe. What's your opinion? Nevertheless, thanks for having tried to help me.
velladas, Try this, it is only 558kb and have all .inc you need. http://www.immortaldescendants.org/database/essays/yates/vxdkit.zip
Thank you Forge.
Valladas: That is strange, I have got my DDk from the same place, and thic batch works on my computer.... are you sure you have specified path for the VxC includes ?
Howdy i had horrible MASM complaints when i toyed with my first vxd. The solution to my problem (which may not be the same as yours) was to include this after the .386 directive: MASM = 1 So your vxd.asm would start like this: .386p MASM = 1 If i don't declare that, i get horrible error msgs. Bye and hope it helps. Latigo
With your help, I reached the goal of compiling a VxD and now I will be able to go on learning Iczelion VxD tutorials. Thank you for all Forge, Latigo, Milos, Limpf. And Iczelion of course.