Running WDEB386 as a VxD requires approximately 90KB less of conventional memory than running it from the command line. Its only disadvantage is that loaded symbols aren't available until after SYS_CRITICAL_INIT. You can start the debugger as a virtual device driver by placing the following line in your CONFIG.SYS file:
device=c:\windev\wdeb386.exe
You must specify the full path to the WDEB386.EXE file. You can specify any command-line options on the device line with (for example, you can load symbol files), or you can set options by adding one or more of the following debug settings to the [386Enh] section of SYSTEM.INI:
DebugCom=comport | Sets the communications port that the debugger uses for input and output. The comport can be 1, 2, 3 or 4, as described for the /C command line option. |
DebugBaud=baudrate | Sets the baud rate for the communications port used by the debugger. |
DebugCmd=parameters | Lists the debugger commands to execute as the debugger starts. This is typically used to set command-line parameters. For example, use DebugCmd=y /n /b to enable new options and to initially break into debugger at SYS_CRITICAL_INIT. Multiple commands must be separated by semicolons (;). |
DebugSym=symbol-files | Specifies the symbol file or files to load. |
DebugSymCmd=cmds | Lists the debugger commands to execute immediately after all symbols have been loaded. Multiple commands must be separated by semicolons (;). |
BreakInDebugVxD=value | Sets the behavior of the CTRL+C key when pressed on the debug terminal or the CTRL+ALT+SYSREQ key combination when pressed on the computer on which the debugger is running. If value is TRUE, pressing the key stops execution at the current instruction regardless of the privilege (ring) of the code. If FALSE, pressing the keys stops execution in ring 3 code only. The default setting if this entry is not given is TRUE. |
If you have the Windows 95 Device Driver Development Kit, you can use the DDKDEBUG.BAT batch file to create a WDEBVXD.INS file that contains the statements that you need to add to the [386Enh] section of SYSTEM.INI. In particular, DDKDEBUG.BAT includes the DEBUGCMD.VXD file that provides additional debugging support. You may need to set the DebugCom and other options to appropriate values.
When you no longer want to run the debugger as a VxD, insert a semicolon before the device=WDEB386.EXE (and device=DEBUGCMD.VXD if present) entry in the SYSTEM.INI file. Any debug options settings you added to the file do not need a semicolon; they will be ignored on subsequent loads of Windows 95.