News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

NTVDM.INC/LIB issues in MASM32 10

Started by pcMike, September 27, 2008, 07:16:18 PM

Previous topic - Next topic

pcMike

Hi Hutch,

I upgraded to MASM32 10 today, and discovered that this version includes NTVDM.INC and NTVDM.LIB.

In previous versions of MASM32, I've had to include my own version of these files in order to support passing data between a DOS stub and a Win32 VDD for my driver (known as NetFoss).

The problem is, the NTVDM.INC and NTVDM.LIB included in MASM32 10 both appear to be broken.

I found the following difference in the MGetVdmPointer definition between my version of NTVDM.INC
and yours:

Mine:   MGetVdmPointer PROTO :DWORD,:DWORD,:CHAR
Yours:  MGetVdmPointer PROTO :DWORD,:DWORD,:DWORD

After changing this in the included NTVDM.INC, my program still failed to function when I compile using the NTVDM.LIB included with MASM32 10, so I've had to replace it with my older version of NTVDM.LIB in order to work.
Its been 7 years since I aquired or built my NTVDM.LIB, and I don't recall what steps I took but I if I remember correctly it was generated from the C++ libraries somehow. I've included my version here for your reference. My software only uses a small number of NTVDM functions - besides MGetVdmPointer I only used the get?? and set?? functions, such as getAX to pass registers between DOS and Win32. It appears that the MGetVdmPointer function in your lib is defective.

Let me know if you need more information.

Regards,  Mike



[attachment deleted by admin]

Vortex

Hi pcMike,

You can use inc2l.exe to build an import library. The location of this tool :

\masm32\tools\inc2l