Approach for debugging a legacy 16-bit app

Does anyone know of a good tutorial for debugging 16-bit app running
under XP? Thank you.

Nguyen Dao wrote:

Does anyone know of a good tutorial for debugging 16-bit app running
under XP? Thank you.

Do you mean a 16-bit Windows app or a 16-bit DOS app?

For 16-bit DOS apps, I can recommend GRDB, which is basically an
improved version of the venerable “debug” command (which is still
available in XP, by the way). http://members.tripod.com/~ladsoft/grdb.htm

For 16-bit Windows apps, I’m not sure I have a good answer. I keep a
copy of Visual C++ 1.52 on my hard disk just in case of emergency, but I
haven’t fired it up in years. The CodeView that came with it still works.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Hmm… Im not sure; It’s a 16-bit app running in ntvdm.exe on xp sp2.
Thanks for your earlier answers btw.

-Nguyen

On Jun 17, 2009, at 6:17 PM, Tim Roberts wrote:

> Nguyen Dao wrote:
>> Does anyone know of a good tutorial for debugging 16-bit app running
>> under XP? Thank you.
>>
>
> Do you mean a 16-bit Windows app or a 16-bit DOS app?
>
> For 16-bit DOS apps, I can recommend GRDB, which is basically an
> improved version of the venerable “debug” command (which is still
> available in XP, by the way). http://members.tripod.com/~ladsoft/grdb.htm
>
> For 16-bit Windows apps, I’m not sure I have a good answer. I keep a
> copy of Visual C++ 1.52 on my hard disk just in case of emergency,
> but I
> haven’t fired it up in years. The CodeView that came with it still
> works.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> WINDBG is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Nguyen Dao wrote:

Hmm… Im not sure; It’s a 16-bit app running in ntvdm.exe on xp sp2.
Thanks for your earlier answers btw.

Is it a command line app or a GUI app? Command line apps are generally
real-mode and will work with debug.exe or grdb. GUI apps are generally
16-bit protect mode and require a more specialized debugger.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Ah… It’s a GUI app. It’s a telnet emulator. Do you have any pointers to
those specialized debugger? Thanks.

On Wed, Jun 17, 2009 at 9:41 PM, Tim Roberts wrote:

> Nguyen Dao wrote:
> > Hmm… Im not sure; It’s a 16-bit app running in ntvdm.exe on xp sp2.
> > Thanks for your earlier answers btw.
>
> Is it a command line app or a GUI app? Command line apps are generally
> real-mode and will work with debug.exe or grdb. GUI apps are generally
> 16-bit protect mode and require a more specialized debugger.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> WINDBG is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>

There is some dormant ntvdm support in WinDbg (mostly Wow helpers), in the form of vdmexts.dll.

Some of the extensions seem like they may to have fallen into disrepair by Vista or so in a quick glance, but most still work.

On x86, WinDbg can natively step through V86 / 16-bit protected mode code. (ntvdm on x86 runs 16-bit code natively and doesn’t emulate most things.)

  • S

From: Nguyen Dao
Sent: Wednesday, June 17, 2009 19:16
To: Kernel Debugging Interest List
Subject: Re: [windbg] Approach for debugging a legacy 16-bit app

Ah… It’s a GUI app. It’s a telnet emulator. Do you have any pointers to those specialized debugger? Thanks.

On Wed, Jun 17, 2009 at 9:41 PM, Tim Roberts > wrote:
Nguyen Dao wrote:
> Hmm… Im not sure; It’s a 16-bit app running in ntvdm.exe on xp sp2.
> Thanks for your earlier answers btw.

Is it a command line app or a GUI app? Command line apps are generally
real-mode and will work with debug.exe or grdb. GUI apps are generally
16-bit protect mode and require a more specialized debugger.


Tim Roberts, xxxxx@probo.commailto:xxxxx
Providenza & Boekelheide, Inc.


WINDBG is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— WINDBG is sponsored by OSR For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</mailto:xxxxx>

Nguyen Dao wrote:

Ah… It’s a GUI app. It’s a telnet emulator. Do you have any
pointers to those specialized debugger? Thanks.

If you have an MSDN subscription of sufficient coolness, I believe you
can still download Visual C++ 1.52. That was the last 16-bit compiler,
and it includes a debugger.

It’s been a very long time since I tried using windbg for 16-bit
debugging, and I had mixed results, but as Skywing suggested, it’s
certainly worth a try.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Thank you all for your help.

-Nguyen

On Jun 18, 2009, at 12:52 PM, Tim Roberts wrote:

> Nguyen Dao wrote:
>> Ah… It’s a GUI app. It’s a telnet emulator. Do you have any
>> pointers to those specialized debugger? Thanks.
>
> If you have an MSDN subscription of sufficient coolness, I believe you
> can still download Visual C++ 1.52. That was the last 16-bit
> compiler,
> and it includes a debugger.
>
> It’s been a very long time since I tried using windbg for 16-bit
> debugging, and I had mixed results, but as Skywing suggested, it’s
> certainly worth a try.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> WINDBG is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer