home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland Pascal with Objects 7.0 / TDDOC.ZIP / UTILS.TD < prev   
Encoding:
Text File  |  1992-10-27  |  48.1 KB  |  1,352 lines

  1.             TURBO DEBUGGER AND TURBO PROFILER UTILITIES REFERENCE
  2.             =====================================================
  3.  
  4. This file contains information about the following Turbo Debugger utilities:
  5.  
  6. 1.  TDRF (also used with Turbo Profiler)
  7. 2.  TDSTRIP
  8. 3.  TDMAP
  9. 4.  TDUMP
  10. 5.  TDNMI
  11. 6.  TDMEM
  12. 7.  TDDEV
  13. 8.  TDWINST
  14.  
  15. For convenience, when searching for information about a particular utility,
  16. you can search for the name of the utility followed by a colon (i.e. TDUMP:).
  17. Doing so will take you directly to the header for the utility specified.
  18.  
  19. For a list of all the command-line options available for TDRF.EXE, 
  20. TDSTRIP.EXE, TDMAP.EXE, and TDUMP.EXE, just type the program  name and
  21. press Enter. For example, to see the command-line options for TDMAP.EXE, 
  22. you enter
  23.  
  24.    TDMAP
  25.  
  26. For a list of all the command-line options available for TDNMI.COM, 
  27. TDDEV.EXE, and TDMEM.EXE, enter the program name followed by -?.
  28. TDNMI also accepts -h. For example,
  29.  
  30.    TDDEV -?
  31.  
  32.  
  33. 1. TDRF: Utility for remote file commands and file transfer
  34. ===========================================================================
  35. The remote file transfer utility (TDRF) works in conjunction with TDREMOTE
  36. or WREMOTE running on another system.  (For more information on TDREMOTE and
  37. WREMOTE, see Appendix E, "Remote Debugging," in the "Turbo Debugger User's 
  38. Guide"). 
  39.  
  40. You can also use TDRF in conjunction with TFREMOTE or WREMOTE running on
  41. another system. (For more information on TFREMOTE and WREMOTE, see Appendix C,
  42. "Remote Profiling," in the "Turbo Profiler User's Guide.")
  43.  
  44. With TDRF you can perform most DOS file maintenance operations on 
  45. the remote system. You can
  46.  
  47.   o copy files to the remote system
  48.   o copy files from the remote system
  49.   o make directories
  50.   o remove directories
  51.   o display directories
  52.   o change directories
  53.   o rename files
  54.   o delete files
  55.  
  56. Once you have started TDREMOTE, TFREMOTE, or WREMOTE on the remote system, 
  57. you can use TDRF at any time. You can start it directly from the DOS prompt, 
  58. or you can access DOS from inside Turbo Debugger by using the File|DOS
  59. Shell command, then start TDRF (even while debugging a program on the
  60. remote system). This second method is useful if you've forgotten to put
  61. some files on the remote system that are required by the program you're
  62. debugging.
  63.  
  64. When describing TDRF in the following sections, we refer to the system
  65. you're typing at as the "local system" and any files there as "local
  66. files," and the other system connected by a serial cable or network as 
  67. the "remote system" and any files there as "remote files."
  68.  
  69.  
  70. Starting TDRF from the DOS command line
  71. ---------------------------------------
  72. The general form of the command line for TDRF is
  73.  
  74.    TDRF [<options>] <command> [<arguments>]
  75.  
  76. The <options> control whether the link is network or serial, and if it's
  77. serial, the speed of the remote link and which port it runs on. The
  78. options are described in more detail in the next section.
  79.  
  80. <command> indicates the operation you want to perform. You can type the 
  81. command either as a DOS command--like COPY, DEL, MD, and so on--or as 
  82. a single-letter abbreviation.
  83.  
  84. <arguments> are any arguments to the command.
  85.  
  86. For example, to get a directory display of all files starting with ABC
  87. in the current directory on the remote system, you could type:
  88.  
  89.    TDRF DIR ABC*
  90.  
  91. All the commands are described fully after the next section.
  92.  
  93.  
  94. TDRF command-line options
  95. -------------------------
  96. You must start an option with either a hyphen (-) or a slash (/).
  97. The following list shows the command-line options for TDRF:
  98.  
  99. -rn<L>;<R>  Sets the link to network, the local name to <L>, and the remote
  100.             name to <R>.
  101.  
  102.   If you link over the network, the name of the local machine defaults to
  103.   "LOCAL" and the remote machine to "REMOTE". You can set your own name for
  104.   the machines by entering a name up to 16 characters long for either the
  105.   local machine, the remote machine, or both.
  106.  
  107.   You must be running TDREMOTE, TFREMOTE, or WREMOTE with the -rn option on 
  108.   the remote machine with the local machine name set to the same name as 
  109.   you've indicated in the TDRF command.
  110.  
  111. -rsN        Sets the type of remote link to serial and the speed of the link.
  112.  
  113.   The -rs option sets the speed at which the remote serial link operates. 
  114.   You must make sure you use the same speed with TDRF that you specified
  115.   when you started TDREMOTE, TFREMOTE, or WREMOTE on the remote system. 
  116.   N can be 1, 2,  3, or 4, where 1 signifies a speed of 9600 baud, 2 signifies 
  117.   19,200 baud, 3 signifies 38,400 baud, and 4 signifies 115,000 baud.
  118.  
  119.   In other words, the higher the number, the faster the data transfer
  120.   rate across the serial link. Normally, TDRF defaults to -rs4 (the highest
  121.   speed).
  122.  
  123. -rpN        Sets the remote serial link port.
  124.  
  125.   The -rp option specifies which port to use for the remote serial link.
  126.   N can be either 1 or 2, where 1 stands for COM1 and 2 stands for COM2.
  127.  
  128. -w          Writes options to the TDRF executable program file.
  129.  
  130.   You can make the TDRF command-line options permanent by writing them
  131.   back into the TDRF executable program image on disk. Do this by
  132.   specifying the -w command-line option along with the other options you
  133.   wish to make permanent. You will then be prompted for the name of the
  134.   executable program.
  135.  
  136.   If you're running on DOS 3.0 or later, the prompt will indicate the
  137.   path and file name that you executed TDRF from. You can accept this
  138.   name by pressing Enter, or you can enter a new executable file name.
  139.   The new name must already exist and must be a copy of the TDRF program 
  140.   that you've already made.
  141.  
  142.   If you're running on DOS 2.x, you'll have to supply the full path
  143.   and file name of the executable program.
  144.  
  145.   If you enter the name of an executable file that doesn't exist (a new
  146.   filename), TDRF will create a new executable file.
  147.  
  148.  
  149. TDRF commands
  150. -------------
  151. Following are the command names you can use with the TDRF utility. You
  152. can use the wildcards * and ? with the COPY, COPYFROM, DEL, and DIR
  153. commands.
  154.  
  155.  
  156. COPY
  157.  
  158.   Copies files from the local system to the remote system. You can also
  159.   type COPYTO instead of COPY. The single letter abbreviation for this
  160.   command is T.
  161.  
  162.   If you supply a single file name after the COPY command, that file
  163.   name will be copied to the current directory on the remote system. If
  164.   you supply a second file name after the name of the file on the local
  165.   system, the local file will be copied to that destination on the
  166.   remote system. You can specify either a new file name, a directory
  167.   name, or a drive name on the remote system. For example,
  168.  
  169.      TDRF COPY TEST1 \MYDIR
  170.     
  171.   copies file TEST1 from the local system to file MYDIR\TEST1 on the
  172.   remote system.
  173.  
  174.  
  175. COPYFROM
  176.  
  177.   Copies files from the remote system to the local system. The single
  178.   letter abbreviation for this command is F.
  179.   
  180.   If you supply a single file name after the COPYFROM command, that file
  181.   name will be copied from the current directory on the remote system to
  182.   the current directory on the local system. If you supply a second file
  183.   name after the name of the file on the remote system, the remote file
  184.   will be copied to that destination on the local system. You can
  185.   specify either a new file name, a directory name, or a drive name on
  186.   the local system. For example,
  187.  
  188.      TDRF COPYFROM MYFILE ..
  189.  
  190.   copies file MYFILE from the remote system to the parent directory of
  191.   the current directory on the local system.
  192.  
  193.      TDRF F TC*.* A:\TCDEMO
  194.   
  195.   copies all files beginning with TC on the current directory of the
  196.   remote system to the TCDEMO directory on the local system's drive A.
  197.   
  198.  
  199. DEL
  200.  
  201.   Erases a single file from the remote system. The single letter
  202.   abbreviation for this command is E.
  203.  
  204.   If you just give a file name with no directory or drive, the file is
  205.   deleted from the current directory on the remote system. For example,
  206.   
  207.      TDRF DEL XYZ
  208.   
  209.   removes file XYZ from the current directory of the remote system.
  210.   
  211.  
  212. DIR
  213.  
  214.   Displays a listing of the files in a directory on the remote system.
  215.   The single letter abbreviation for this command is D.
  216.   
  217.   This command behaves similarly to the equivalent DOS command. If
  218.   you don't specify a wildcard mask, it shows all the files in the
  219.   directory; if you do specify a mask, only those files will be listed.
  220.   You can interrupt the directory display at any time by pressing
  221.   Ctrl-Break.
  222.   
  223.   The directory listing is displayed in a format similar to that
  224.   used by the DOS DIR command. For example,
  225.   
  226.      TDRF DIR \SYS\*.SYS
  227.   
  228.   results in a display like the following:
  229.   
  230.   Directory of C:\SYS
  231.  
  232.   ANSI         SYS     4833  8-23-91  6:00a
  233.   VDISK        SYS     5190  8-23-91  6:00a
  234.   
  235.   
  236. REN
  237.  
  238.   Renames a single file on the remote system. The single letter
  239.   abbreviation for this command is R.
  240.   
  241.   You must supply two file names with this command: the original file
  242.   name and the new file name. The new name can specify a different
  243.   directory as part of the name, but not a different drive. For example,
  244.   
  245.      TDRF REN TEST1 \TEST2
  246.   
  247.   renames file TEST1 in the current directory in the remote to TEST2 in
  248.   the root directory. This effectively "moves" the file from one
  249.   directory to another. You can also use this command to simply rename a
  250.   file within a directory, without moving it to another directory.
  251.   
  252.   
  253. MD
  254.  
  255.   Makes a new directory on the remote system. The single letter
  256.   abbreviation for this command is M.
  257.   
  258.   You must supply the name of the directory to be created. If you don't
  259.   supply a directory path as part of the new directory name, the new
  260.   directory will be created in the current directory on the remote
  261.   system. For example,
  262.   
  263.      TDRF MD TEST
  264.   
  265.   creates a directory named TEST in the current directory on the remote
  266.   system.
  267.   
  268.  
  269. RD
  270.  
  271.   Removes an existing directory on the remote system. The single letter
  272.   abbreviation for this command is K.
  273.   
  274.   You must supply the name of the directory to be removed. If you don't
  275.   supply a directory path as part of the new directory name, the
  276.   directory will be removed from the current directory on the remote
  277.   system. For example,
  278.   
  279.      TDRF RD MYDIR
  280.   
  281.   removes a directory named MYDIR from the current directory on the
  282.   remote system.
  283.   
  284.  
  285. CD
  286.  
  287.   Changes to a new directory on the remote system. The single letter
  288.   abbreviation for this command is C.
  289.   
  290.   You must supply the name of the directory to change to. You can also
  291.   supply a new drive to switch to, or even supply a new drive and
  292.   directory all at once. For example,
  293.   
  294.      TDRF CD A:ABC
  295.   
  296.   makes drive A the current drive on the remote system, and switches to
  297.   directory ABC as well.
  298.   
  299.   
  300. TDRF messages
  301. -------------
  302. Following is a list of the messages you might encounter when working with
  303. TDRF:
  304.  
  305. "Can't create file on local system: ___"
  306.   You were copying a file from the remote system using the COPYFROM 
  307.   command, but the file could not be created on the local system. 
  308.   Either the disk is full on the local system, or the file name on the
  309.   remote system is the same as a directory name on the local system.
  310.  
  311. "Can't modify exe file"
  312.   The file name you specified to modify is not a valid copy of the TDRF
  313.   utility. You can only modify a copy of the TDRF utility with the -w
  314.   option.
  315.  
  316. "Can't open exe file to modify"
  317.   The file name you specified to be modified can't be opened. You've
  318.   probably entered an invalid or nonexistent file name.
  319.  
  320. "Error opening file: ___"
  321.   The file you wanted to transfer to the remote system could not be
  322.   opened. You probably specified a nonexistent or invalid file name.
  323.  
  324. "Error writing file: ___"
  325.   An error occurred while writing to a file on the local system, 
  326.   probably because the local disk is full. Try deleting enough 
  327.   files to make room for the file you want to copy from the 
  328.   remote system.
  329.  
  330. "Error writing file ___ on remote system"
  331.   An error occurred while writing a file to the disk on the remote
  332.   system, probably because the remote disk is full. Try deleting
  333.   enough files to make room for the file you want to transfer.
  334.  
  335. "File name is a directory on remote"
  336.   You've tried to copy a file from the local to the remote system, but
  337.   the local file name exists as a directory on the remote system. You'll
  338.   have to rename the file by giving a second argument to the COPY
  339.   command.
  340.  
  341. "Interrupted"
  342.   You've pressed Ctrl-Break while waiting for communications to be
  343.   established with the remote system.
  344.  
  345. "Invalid command: ___"
  346.   You've entered a command that TDRF doesn't recognize. For each
  347.   command, you can use the DOS-style command word or the single-letter
  348.   abbreviation.
  349.  
  350. "Invalid command line option: ___"
  351.   You've given an invalid command-line option when starting TDRF from
  352.   the DOS command line.
  353.  
  354. "Invalid destination disk drive"
  355.   You've specified a nonexistent disk drive letter in your command.
  356.   Remember that the remote system might have a different number of disk
  357.   drives than the local system.
  358.  
  359. "No matching files on remote"
  360.   You've done a DIR command, but either there are no files in the
  361.   directory on the remote system, or no files match the wildcard
  362.   specification that you gave as an argument to the DIR command.
  363.  
  364. "No remote command specified"
  365.   You haven't specified any command on the DOS command line; TDRF has
  366.   nothing to do.
  367.  
  368. "Too few arguments"
  369.   You haven't supplied enough arguments for the command you
  370.   requested. Some commands require an argument, like DEL, MD, 
  371.   CD, RD, and so on.
  372.  
  373. "Too many arguments"
  374.   You've specified too many arguments for the command you requested.
  375.   No command requires more than two arguments, and some require only one.
  376.  
  377. "Wrong version of remote driver"
  378.   You're using incompatible versions of TDRF and either TDREMOTE or
  379.   TFREMOTE. Make sure you're using the latest version of each utility.
  380.  
  381.  
  382. 2. TDSTRIP: The symbol table stripping utility
  383. ==============================================
  384. TDSTRIP.EXE lets you remove the symbol table from an executable 
  385. program generated with debugging information. This is a faster way 
  386. of removing the symbol table than rebuilding without debugging 
  387. information. TDSTRIP can also remove debugging information 
  388. from an .OBJ file. Just enter
  389.  
  390.    TDSTRIP PROGRAM.OBJ
  391.  
  392. You can also use this utility to remove the symbol table and put it in
  393. a separate file. This is useful when you want to convert the .EXE
  394. format program to a .COM file and still retain the debugging symbol
  395. table. This utility puts the symbol table in a file with the extension
  396. .TDS. Turbo Debugger looks for this file when it loads a program to
  397. debug that doesn't have a symbol table.
  398.  
  399.  
  400. TDSTRIP command-line options
  401. ----------------------------
  402. Following is the general form of the DOS command line used to start the
  403. Symbol Table Stripping utility, TDSTRIP:
  404.  
  405.    TDSTRIP [-s] [-c] <exename> [<outputname>]
  406.  
  407. If you don't specify the -s option, the symbol table is removed from
  408. the .EXE file <exename>. If you specify an <outputname>, the original
  409. .EXE file is left unchanged and a version with no symbol table is created
  410. as <outputname>.
  411.  
  412. If you do specify the -s option, the symbol table will be put in a
  413. file with the same name as <exename> but with the extension .TDS. If you
  414. specify an output file, the symbol table will be put in <outputname>.
  415.  
  416. If you specify the -c option, the input .EXE file is converted into a
  417. .COM file. If you use -c in conjunction with -s, you can convert an
  418. .EXE file with symbols into a .COM file with a separate .TDS symbol
  419. file. This lets you debug .COM files with Turbo Debugger while
  420. retaining full debugging information.
  421.  
  422. You can only convert certain .EXE files into .COM files. The following
  423. restrictions apply to the -c option of TDSTRIP: Your program must 
  424. start at location 100 hex, and it can't contain any segment fixups.
  425.  
  426. The default extension for <exename> is .EXE. If you add an extension,
  427. it overrides the default.
  428.  
  429. There are two default extensions for <outputname>,
  430.  
  431. o .TDS when you use the -s command-line switch
  432. o .EXE when you don't use the -s command-line switch
  433.  
  434. If you add an extension, it overrides the defaults.
  435.  
  436. Following are some sample TDSTRIP command lines:
  437.  
  438.    TDSTRIP MYPROG
  439.  
  440. removes the symbol table from MYPROG.EXE.
  441.  
  442.    TDSTRIP -s MYPROG.OLD
  443.  
  444. removes the symbol table from MYPROG.OLD and places it in MYPROG.TDS.
  445.  
  446.    TDSTRIP MYPROG MYPROG.NEW
  447.  
  448. leaves MYPROG.EXE unchanged but creates another copy of it named
  449. MYPROG.NEW without a symbol table.
  450.  
  451.    TDSTRIP -s MYPROG MYSYMS
  452.  
  453. removes the symbol table from MYPROG.EXE and places it in MYSYMS.TDS
  454.  
  455.  
  456. TDSTRIP error messages
  457. ----------------------
  458. Following is a list of TDSTRIP error messages:
  459.  
  460. Can't create file: ___
  461.   TDSTRIP couldn't create the output symbol or .EXE file. Either there
  462.   is no more room on your disk, or you specified an invalid output file
  463.   name.
  464.   
  465. Can't open file: ___
  466.   TDSTRIP could not locate the .EXE file from which you want to remove the
  467.   symbol table.
  468.  
  469. Error reading from input exe file
  470.   An error occurred during reading from the input executable program
  471.   file. Your disk may be unreadable. Try the operation again.
  472.  
  473. Error writing to output file: ___; disk may be full
  474.   TDSTRIP couldn't write to the output symbol or executable file. This
  475.   usually happens when there is no more room on your disk. You will have
  476.   to delete some files to make room for the file created by TDSTRIP.
  477.  
  478. Input file is not an .exe file
  479.   You've specified an input file name that isn't a valid executable
  480.   program. You can strip symbols only from .EXE programs because these
  481.   are the only ones that the linker can put a symbol table in. Programs 
  482.   in .COM file format don't have symbol tables and can't be processed by
  483.   TDSTRIP.
  484.  
  485. Invalid command-line option: ___
  486.   You've given an invalid command-line option when starting TDSTRIP
  487.   from the DOS command line.
  488.  
  489. Invalid exe file format
  490.   The input file appears to be an .EXE format program file, but
  491.   something is wrong with it. You should build the program again.
  492.  
  493. Not enough memory
  494.   Your system doesn't have enough free memory for TDSTRIP to load and
  495.   process the .EXE file. This only happens in extreme circumstances
  496.   (TDSTRIP has very modest memory requirements). Try rebooting your 
  497.   system and running TDSTRIP again. You might have previously run a
  498.   program that allocated some memory that won't be freed until you reboot.
  499.  
  500. Program does not have a symbol table
  501.   You've specified an input file that's a valid .EXE file, but it
  502.   doesn't have a symbol table.
  503.  
  504. Program does not have a valid symbol table
  505.   The symbol table at the end of the .EXE file isn't a valid symbol 
  506.   table. This can happen if you try to use TDSTRIP on a program
  507.   created by a linker other than TLINK. Rebuild the program with
  508.   Borland Pascal so it gets linked with TLINK.
  509.  
  510. Too many arguments
  511.   You can supply a maximum of two arguments to TDSTRIP, the first being
  512.   the name of the executable program, and the second being the name of
  513.   the output file for symbols or the executable program.
  514.  
  515. You must supply an exe file name
  516.   You've started TDSTRIP without giving it the name of an .EXE program
  517.   file whose symbol table you want to strip.
  518.  
  519.  
  520. 3. TDMAP: The .MAP file utility
  521. ===============================
  522. The TDMAP utility takes a .MAP file--an ASCII file created by the
  523. linker containing all public symbols of a program--and appends it to
  524. the .EXE file in Turbo Debugger format.
  525.  
  526. The syntax for using TDMAP is
  527.  
  528.    TDMAP <filename> [/E<sourceextension>]
  529.  
  530. TDMAP reads <filename>.MAP and adds debugging information to
  531. <filename>.EXE. For example, if you wanted to append debugging 
  532. records to a program called HELLO.PAS, you could enter
  533.  
  534.    TDMAP hello /Ec
  535.  
  536. Note that the <sourceextension>, preceded with /E, is optional.
  537.  
  538.  
  539. 4. TDUMP: The file dumping utility
  540. ==================================
  541. The TDUMP utility program produces a file dump that shows the 
  542. structure of a file.
  543.  
  544. TDUMP breaks apart a file structurally and uses the file's extension to
  545. determine the output display format. TDUMP recognizes many file formats, 
  546. including .EXE, .OBJ, and .LIB files. If TDUMP doesn't recognize an 
  547. extension, it produces a hexadecimal dump of the file.  You can control 
  548. the output format by using command-line options when you start the 
  549. program. (These options are described later).
  550.  
  551. TDUMP's ability to peek at a file's inner structure displays not only
  552. a file's contents, but also how a file is constructed. Moreover,
  553. because TDUMP verifies that a file's structure matches its extension,
  554. you can also use TDUMP to test file integrity.
  555.  
  556.  
  557. TDUMP syntax
  558. ------------
  559. The syntax for TDUMP is
  560.  
  561.    TDUMP [<options>] <Inputfile> [<Listfile>] [<options>]
  562.  
  563. <Inputfile> is the file whose structure you want to display (or "dump").
  564. <Listfile> is an optional output file name (you can also use the standard
  565. DOS redirection command ">"). <options> stands for any of the TDUMP
  566. options discussed in the next section.
  567.  
  568.  
  569. TDUMP command-line options
  570. --------------------------
  571. You can use several optional switches with TDUMP, all of which start with
  572. a hyphen or a forward slash. The following two examples are equivalent:
  573.  
  574.    TDUMP -el -v demo.exe
  575.  
  576.    TDUMP /el /v demo.exe
  577.  
  578.  
  579.   The -a and -a7 options
  580.   ----------------------
  581.   TDUMP automatically adjusts its output display according to the file type.
  582.   You can force a file to be displayed as ASCII by including the -a or -a7 
  583.   option.
  584.  
  585.   -a  produces an ASCII file display, which shows the offset and the contents
  586.       in displayable ASCII characters. A character that is not displayable 
  587.       (like a control character) appears as a period.
  588.  
  589.   -a7 converts high-ASCII characters to their low-ASCII equivalents. This 
  590.       is useful if the file you are dumping sets high-ASCII characters as
  591.       flags (WordStar files do this).
  592.  
  593.  
  594.   The -b# option
  595.   --------------
  596.   The -b# option allows you to display information beginning at a specified
  597.   offset.  For example, if you wanted a dump of MYFILE starting from offset
  598.   100, you would use:
  599.  
  600.      TDUMP -b100 MYFILE
  601.  
  602.  
  603.   The -e, -el, -er, and -ex options
  604.   ---------------------------------
  605.   All four options force TDUMP to display the file as an executable
  606.   (.EXE) file.
  607.  
  608.   An .EXE file display consists of information contained within a file
  609.   that is used by the operating system when loading a file.  If symbolic
  610.   debugging information is present, TDUMP displays it.
  611.  
  612.   TDUMP displays information for DOS executable files, NEW style executable
  613.   files ( Microsoft Windows and OS/2 .EXEs and DLLs ), and Linear Executable
  614.   files.
  615.  
  616.   -el suppresses line numbers in the display.
  617.  
  618.   -er prevents the relocation table from displaying.
  619.  
  620.   -ex prevents the display of New style executable information.
  621.       This means TDUMP will only display information for the DOS
  622.       "stub" program.
  623.  
  624.  
  625.   The -h option
  626.   -------------
  627.   The -h option displays the dump file in hexadecimal (hex) format.  Hex
  628.   format consists of a column of offset numbers, 16 columns of hex numbers,
  629.   and their ASCII equivalents (a period appears where no displayable ASCII
  630.   character occurs).
  631.  
  632.   If TDUMP doesn't recognize the input file's extension, it displays the
  633.   file in hex format (unless an option is used to indicate another format).
  634.  
  635.  
  636.   The -l option
  637.   -------------
  638.   The -l option displays the output file in library (.LIB) file format.
  639.   A library file is a collection of object files (see the -o option for
  640.   more on object files). The library file dump displays library-specific
  641.   information, object files, and records in the object file.
  642.  
  643.  
  644.   The -m option
  645.   -------------
  646.   The -m option leaves C++ names that occur in object files, executable
  647.   files, and Turbo Debugger symbolic information files in "mangled" format.
  648.   This option is helpful in determining how the C++ compiler "mangles"
  649.   a given function name and its arguments.
  650.  
  651.  
  652.   The -o, -oc, -ox, and -oi options
  653.   ---------------------------------
  654.   -o  displays the file as an object (.OBJ) file. An object file
  655.       display contains descriptions of the command records that pass
  656.       commands and data to the linker, telling it how to create an .EXE
  657.       file.
  658.  
  659.       The display format shows each record and its associated data on a
  660.       record-by-record basis.
  661.  
  662.   -oc causes TDUMP to perform a cyclic redundancy test (CRC) on each 
  663.       encountered record. The display differs from the -o display only
  664.       if an erroneous CRC check is encountered (the TDUMP CRC value differs
  665.       from the record's CRC byte).
  666.  
  667.   -ox<id> excludes designated record types from the object module dump.
  668.           <id> is the record name that is not to be displayed. For instance,
  669.  
  670.             TDUMP -oxPUBDEF MYMODULE.OBJ
  671.  
  672.           produces an object module display for MYMODULE.OBJ that excludes the
  673.           PUBDEF records.
  674.  
  675.   -oi<id> includes only specified record types in the object module dump.
  676.           <id> is the name of the record to be displayed. For instance,
  677.  
  678.             TDUMP -oiPUBDEF MYMODULE.OBJ
  679.  
  680.           produces an object module display for MYMODULE.OBJ that displays 
  681.           only the PUBDEF records.
  682.  
  683.   The -ox and -oi options are helpful in finding errors that occur during
  684.   linking.   By examining the spelling and case of the EXTDEF symbol and 
  685.   the PUBDEF symbol, you can resolve many linking problems. For instance, 
  686.   if you receive an "unresolved external" message from the linker, use 
  687.   "TDUMP -oiEXTDEF" to display the external definitions occurring in the 
  688.   module causing the error.  Then, use "TDUMP -oiPUBDEF" on the module 
  689.   containing the public symbol the linker could not match.
  690.  
  691.   Another use for the -oi switch is to check the names and sizes
  692.   of the segments generated in a particular module.  For instance,
  693.  
  694.     TDUMP -oiSEGDEF MYMODULE.OBJ
  695.  
  696.   displays the names, attributes, and sizes of all of the segments
  697.   in MYMODULE.
  698.  
  699.  
  700.   The -v option
  701.   -------------
  702.   The -v option is used for verbose display.  If used with an .OBJ or .LIB
  703.   file, TDUMP produces a hexadecimal dump of the record's contents without
  704.   any comments about the records.
  705.  
  706.  
  707. If you use TDUMP on a Turbo Debugger symbol table, it displays the 
  708. information tables in the order in which it encounters them.  TDUMP 
  709. doesn't combine information from several tables to give a more meaningful
  710. display on a per-module basis.
  711.  
  712.  
  713. 5. TDNMI: The utility to reset the breakout-switch
  714. ==================================================
  715. Periscope users: Use TDNMI if you have a Periscope I board and want to
  716. use its breakout switch with Turbo Debugger. TDNMI is a small TSR
  717. program that periodically resets the breakout-switch latch on the
  718. Periscope board. Use the /p command-line option to set the board's
  719. base address if it is different from the default address of 300.
  720.  
  721. If you are using a PC clone that disables the NMI interrupt, you can 
  722. install the TDNMI resident utility to clear the NMI every half second. 
  723. You'll need to do this if you're using a breakout switch on such a system.
  724.  
  725.  
  726. 6. TDMEM: The memory display utility
  727. ====================================
  728. TDMEM displays the current availability of your computer's memory,
  729. including expanded or extended memory, if it exists, and conventional 
  730. memory.  This information is useful when debugging TSRs and device drivers.  
  731. You can use the File|Table Relocate option in Turbo Debugger to specify 
  732. a base segment address for the current symbol table that is shown when 
  733. running TDMEM.
  734.  
  735.  
  736. 7. TDDEV: The device driver display utility
  737. ===========================================
  738. TDDEV produces a report showing the device drivers loaded into the system
  739. as well as how much memory each uses and what interrupt vectors are taken
  740. over.  This report is useful when debugging device driver applications.
  741.  
  742.  
  743. 8. TDWINST: the TDW configuration program
  744. =========================================
  745. This description consists of the following sections:
  746.  
  747. 8.1 Introduction
  748. 8.2 Running TDWINST
  749. 8.3 Setting the screen colors
  750. 8.4 Setting TDW display parameters
  751. 8.5 TDW options
  752. 8.6 Setting the mode for display
  753. 8.7 Command-line options and installation equivalents
  754. 8.8 When you're through
  755.  
  756.  
  757. 8.1 Introduction
  758. ----------------
  759. TDW is ready to run as soon as you install it. However, you can change
  760. many of the default settings by running the customization program called
  761. TDWINST. You also can change some of the options using command-line
  762. options when you start TDW. If you find yourself frequently
  763. specifying the same command-line options, you can make those options
  764. permanent by running the customization program.
  765.  
  766. The customization program enables you to set the following items:
  767.  
  768. o window, dialog box, screen, and menu colors
  769.  
  770. o display options: display swapping, integer format, beginning
  771.   display (source or assembler code), screen lines, tab size,
  772.   maximum tiled Watches size, fast screen update, 43/50-line mode,
  773.   user screen updating, log list length, floating precision, and range
  774.   inspect.
  775.  
  776. o directories to search for source files and the TDW help and
  777.   configuration files
  778.  
  779. o user input and prompting parameters: history list length, beep on
  780.   error, full trace history, mouse enable, and control-key shortcuts
  781.  
  782. o Source debugging language options
  783.  
  784. o Display mode
  785.  
  786.  
  787. 8.2 Running TDWINST
  788. -------------------
  789.  _______________________
  790. | Colors                |
  791. | Display...            |
  792. | Options               |
  793. | Mode for display      |
  794. | Save                  |
  795. | Quit                  |
  796. |_______________________|
  797.  
  798. To run the customization program, enter TDWINST at the DOS prompt
  799. or run it using the Windows Program Manager File|Run command. As
  800. soon as TDWINST comes up, it displays its main menu. You can either
  801. press the highlighted first letter of a menu option or use the
  802. arrow keys to move to the item you want and then press Enter. For
  803. instance, press D to change the display settings. Use this same
  804. technique for choosing from the other menus in the installation
  805. utility. To return to a previous menu, press Esc. You may have to
  806. press Esc several times to get back to the main menu.
  807.  
  808.  
  809. 8.3 Setting the screen colors
  810. -----------------------------
  811. Choose Colors from the main menu to bring up the Colors menu. It
  812. offers you two choices: Customize and Default Color Set.
  813.  
  814.  
  815. Customizing screen colors
  816. =========================
  817.  
  818. If you choose Customize, a third menu appears, with options for
  819. customizing windows, dialog boxes, menus, and screens.
  820.  
  821.  
  822. Windows
  823. _______
  824.  
  825. To customize windows, choose the Windows command. This opens a
  826. fourth menu, from which you can choose the kind of window you want
  827. to customize: Text, Data, Low Level (for example, the CPU window),
  828. and Other (for example, the Breakpoints window). Choosing one of
  829. these options brings up yet another menu listing the window
  830. elements, together with a pair of sample windows (one active, one
  831. inactive) in which you can test various color combinations.
  832.  
  833. When you select an item you want to change, a palette box pops up
  834. over the menu. Use the arrow keys to move around in the palette
  835. box. As you move the selection box through the various color
  836. choices, the window element whose color you are changing is updated
  837. to show the current selection. When you find the color you like,
  838. press Enter to accept it.
  839.  
  840. TDW maintains three color tables: one for color, one for black and
  841. white, and one for monochrome. You can only change one set of
  842. colors at a time, based on your current video mode and display
  843. hardware. So, if you are running on a color display and want to
  844. adjust a black-and-white table, first set your video mode to
  845. black and white by typing MODE BW80 at the DOS prompt, and then run
  846. TDWINST.  To reset your terminal to a color display type MODE CO80.
  847.  
  848.  
  849. Dialog boxes
  850. ____________
  851.  
  852. If you want to edit dialog box colors, choose Dialogs from the
  853. Customize menu.  A menu appears listing dialog box and menu
  854. elements, with a sample dialog box for you to experiment with.
  855.  
  856. As with the Windows menu, choosing an item from the current menu
  857. opens a palette from which you can choose the color for that item.
  858.  
  859.  
  860. Menus
  861. ______
  862.  ________________________
  863. | Menu background        |
  864. | Standard item          |
  865. | Active item background |
  866. | Active item foreground |
  867. | Hot letter             |
  868. |________________________|
  869. | Status foreground      |
  870. | Status background      |
  871. |________________________|
  872.  
  873. If you choose Menus from the Customize menu, a menu of menu options
  874. opens, along with a sample menu. Choosing an item from the menu
  875. causes the usual palette to appear.
  876.  
  877.  
  878.  
  879. Screen
  880. ______
  881.  
  882.  ________________________
  883. | Pattern for background |
  884. |________________________|
  885. | Pattern background     |
  886. | Pattern foreground     |
  887. | Window move            |
  888. |________________________|
  889.  
  890. Choosing Screen from the Customize menu opens a menu from which you
  891. can access another menu with screen patterns and palettes for
  892. screen elements, as well as a sample screen background on which to
  893. test them.
  894.  
  895.  
  896. The default colors
  897. ==================
  898.  
  899. If you choose Default Color Set from the Colors menu, an active
  900. text window (Text Window) and an inactive window (Another Window)
  901. appear onscreen, so you can see what the default colors for their
  902. elements are.  The Accept color set window also appears.  From this
  903. window you can choose to view the default colors for Text, Data,
  904. Low level or Other displays.
  905.  
  906.  
  907.  
  908. 8.4 Setting TDW display parameters
  909. ----------------------------------
  910. Choose Display from the main menu to bring up the Display Options
  911. dialog box.
  912.  
  913. The move between options use the TAB key.  To toggle the radio
  914. buttons use the arrow keys and to select a check box use the
  915. spacebar.
  916.  
  917. Some of the display options can be set from the command line when
  918. you start TDW. See the Command-line options section later in this
  919. chapter for a table of TDW command-line options and corresponding
  920. TDWINST settings.
  921.  
  922.  
  923. Display Swapping
  924. ================
  925.  
  926. You use the Display Swapping radio buttons to control how TDW
  927. switches between its own display and the output of the program
  928. you're debugging. Using the arrow keys, you can toggle between the
  929. following settings:
  930.  
  931. Smart     Swap to the User screen only when display output might
  932.           occur. TDW swaps the screens any time that you step over a
  933.           routine, or if you execute any instruction or source line
  934.           that appears to read or write video memory. This is the
  935.           default option.
  936.  
  937. Always    Swap to the User screen every time the user program runs.
  938.           Use this option if the Smart option is not catching all the
  939.           occurrences of your program writing to screen. If you choose
  940.           this option, the screen flickers every time you step through
  941.           your program, since TDW's screen is replaced for a short
  942.           time with the User screen.
  943.  
  944.  
  945. Integer Format
  946. ==============
  947.  
  948. The Integer Format radio buttons let you set how integers are
  949. displayed. You can toggle between the following options:
  950.  
  951. Hex        Chooses hexadecimal number display.
  952.  
  953. Decimal    Chooses decimal number display.
  954.  
  955. Both       Displays both hexadecimal and decimal.
  956.  
  957.  
  958. Beginning Display
  959. =================
  960.  
  961. The Beginning Display radio buttons determines the language in
  962. which your program is displayed when TDW starts. They have the
  963. following settings:
  964.  
  965. Source     Source startup: Your program's startup code runs, and you
  966.            start in a Module window, where your source code begins.
  967.  
  968.  
  969. Assembler
  970.            Assembler startup: None of your program is executed, and a
  971.            CPU window shows the first instruction of your program's
  972.            startup code.
  973.  
  974.  
  975.  
  976. Screen Lines
  977. ============
  978.  
  979. Use these radio buttons to toggle whether TDW should start up with
  980. a display screen of 25 lines or a display screen of 43 or 50 lines.
  981.  
  982. Only the EGA and VGA can display more than 25 lines.
  983.  
  984.  
  985. Tab Size
  986. ========
  987.  
  988. In this input box, you can set the number of columns between tab
  989. stops in a text or source file display. You are prompted for the
  990. number of columns (a number from 1 to 32); the default is 8.
  991.  
  992.  
  993. Maximum Tiled Watch
  994. ===================
  995.  
  996. This input box sets the number of lines that the Watches window can
  997. expand to when it's in Tiled mode. You are prompted for the number
  998. of lines (1 to 20).
  999.  
  1000.  
  1001. Fast Screen Update
  1002. ==================
  1003.  
  1004. The Fast Screen Update check box lets you toggle whether your
  1005. displays will be updated quickly. You can choose this option by
  1006. pressing the spacebar while Fast Screen Update is highlighted.
  1007. Toggle this option off if you get "snow" on your display with fast
  1008. updating enabled. You need to disable this option only if the "snow"
  1009. annoys you. (Some people prefer the snowy screen because it gets
  1010. updated more quickly.)
  1011.  
  1012.  
  1013. Permit 43/50 Lines
  1014. ==================
  1015.  
  1016. Turning this check box on allows big (43/50-line) display modes. By
  1017. default this option is on.  However, if you turn it off by pressing
  1018. the spacebar, you save approximately 8K, since the large screen
  1019. modes need more window buffer space in TDW. This option might be
  1020. helpful if you are debugging a very large program that needs as
  1021. much memory as possible to execute in. When the option is disabled,
  1022. you won't be able to switch the display into 43/50-line mode even
  1023. if your system is capable of handling it.
  1024.  
  1025.  
  1026. International Sort
  1027. ==================
  1028.  
  1029. If this check box is selected, all items in list boxes are sorted
  1030. according to the COUNTRY setting in your CONFIG.SYS.(in DOS) or the
  1031. language indicated in the Windows Control Panel's International
  1032. dialog box (in Windows).  For more information about setting the
  1033. current country or language, refer to your DOS or Windows Users Guide.
  1034.  
  1035. If International Sort is not selected, list box entries are sorted
  1036. according to the ASCII values (in DOS) or the ANSI values (in Windows)
  1037. of the items in the box.
  1038.  
  1039.  
  1040. User Screen Updating
  1041. ====================
  1042.  
  1043. The User Screen Updating radio buttons set how the User screen is
  1044. updated when TDW switches between its screen and your program's
  1045. User screen. There are two settings:
  1046.  
  1047. Other Display    Runs TDW on the other display in your system. If
  1048.                  you have both a color and monochrome display
  1049.                  adapter, this option lets you view your program's
  1050.                  screen on one display and TDW's on the other.
  1051.  
  1052. Swap             Uses a single display adapter and display page,
  1053.                  and swaps the contents of the User and TDW screens
  1054.                  in software. This method, the default for updating
  1055.                  user screens, is the slowest method of display
  1056.                  swapping, but is the most protective and least
  1057.                  disruptive. If you are debugging a program that
  1058.                  uses multiple display pages, like a graphics
  1059.                  program, use this option.
  1060.  
  1061.  
  1062. Log List Length
  1063. ===============
  1064.  
  1065. Use this input box to set how many entries are saved in the log
  1066. file. The maximum number is 200; the minimum is 4.
  1067.  
  1068.  
  1069. Floating Precision
  1070. ==================
  1071.  
  1072. Use this input box to set the precision (the number of digits after
  1073. the decimal point) of any floating point data TDW inspects. This
  1074. number can range from 1 to 32.
  1075.  
  1076.  
  1077. Range Inspect
  1078. =============
  1079.  
  1080. Use this input box to set the number of elements TDW normally
  1081. displays for a pointer after you choose the local menu Range
  1082. command in an Inspector window. The default value is five, which
  1083. means that TDW displays only the first five elements pointed to
  1084. unless you indicate a different range by using the local menu Range
  1085. command. The maximum value you can enter for the range is 4096.
  1086.  
  1087.  
  1088. If any of the input boxes on the Display Options dialog box are empty
  1089. when you try to exit, you will be prompted to enter a value before you
  1090. may exit.
  1091.  
  1092.  
  1093. 8.5 TDW options
  1094. ---------------
  1095.  ______________________
  1096. |Directories...        |
  1097. |Input & prompting...  |
  1098. |Source debugging...   |
  1099. |______________________|
  1100.  
  1101. The Options command in the main menu opens a menu of options, which
  1102. in turn open dialog boxes for you.
  1103.  
  1104.  
  1105.  
  1106. Directories
  1107. ===========
  1108.  
  1109. This dialog box contains input boxes in which you can enter:
  1110.  
  1111. Source directories     Sets the list of directories TDW searches for
  1112.                        source files.
  1113.  
  1114. Turbo directory        Sets the directory that TDW will look in for
  1115.                        its help and configuration files.
  1116.  
  1117.  
  1118. Input and Prompting
  1119. ===================
  1120.  
  1121. This dialog box lets you set options that control how you input
  1122. information to TDW, and how TDW prompts you for information. It
  1123. also lets you decide if TDW is to keep a full history of your
  1124. debugging session.
  1125.  
  1126.  
  1127. History List Length
  1128. ___________________
  1129.  
  1130. This input box lets you specify how many previous entries are to be
  1131. saved in a history list input box.  The default is 10.
  1132.  
  1133.  
  1134. Beep on Error
  1135. _____________
  1136.  
  1137. By default, TDW doesn't give a warning beep when you press an
  1138. invalid key or do something that generates an error message. The
  1139. Beep on Error check box lets you change this default.
  1140.  
  1141.  
  1142. Control Key Shortcuts
  1143. _____________________
  1144.  
  1145. This check box enables or disables the control-key shortcuts. When
  1146. control-key shortcuts are enabled, you can invoke any local menu
  1147. command directly by pressing the Ctrl key in combination with the
  1148. first letter of the menu item. However, in that case, you can't use
  1149. those control keys as WordStar-style cursor-movement commands.
  1150.  
  1151.  
  1152. Mouse Enabled
  1153. _____________
  1154.  
  1155. This check box controls whether TDW supports a mouse.
  1156.  
  1157.  
  1158. Full trace history
  1159. __________________
  1160.  
  1161. Pick this option if you want TDW to keep a full history list of your
  1162. debugging session. A history list lets you backtrace through your
  1163. source code, but also slows down execution of your code.
  1164.  
  1165.  
  1166. Source Debugging
  1167. ================
  1168.  
  1169. The Source Debugging dialog box lets you specify what language TDW
  1170. will use for evaluating expressions, enables and disables symbol
  1171. case sensitivity, and controls special support for Windows message
  1172. debugging in ObjectWindows programs.
  1173.  
  1174.  
  1175. Language
  1176. ________
  1177.  
  1178. The Language radio buttons toggle the language TDW uses for
  1179. evaluating expressions:
  1180.  
  1181. Source Module     Choose what language to use based on the languages
  1182.                   of the current source module.  This is the default.
  1183.  
  1184. C                 Always use C expressions, no matter what language the
  1185.                   current module was written in.
  1186.  
  1187. Pascal            Always use Pascal expressions, no matter what language
  1188.                   the current module was written in.
  1189.  
  1190. Assembler         Always use assembler expressions, no matter what
  1191.                   language the current module was written in.
  1192.  
  1193.  
  1194. Ignore Symbol Case
  1195. __________________
  1196.  
  1197. If this check box is on, TDW treats uppercase and lowercase the same.
  1198. If it is off, case sensitivity is in effect.
  1199.  
  1200.  
  1201. OWL window messages
  1202. ___________________
  1203.  
  1204. If this option isn't checked (the default), there's no special support
  1205. for Windows message debugging in ObjectWindows programs, and TDW won't
  1206. recognize any of the window objects in your program as Windows procedures.
  1207. Instead, you're required to use window handles when setting Windows message
  1208. breakpoints (and to know enough about ObjectWindows to be able to locate
  1209. a handle).
  1210.  
  1211. If this check box is on, TDW provides special support for Windows message
  1212. breakpoints in ObjectWindows programs. This support allows you to use the
  1213. name of a window object from your program when setting Windows message
  1214. breakpoints. However, debugging with Windows message breakpoints set is
  1215. likely to be slower than when the option is off.
  1216.  
  1217.  
  1218. 8.6 Setting the mode for display
  1219. --------------------------------
  1220.  ___________________
  1221. | Default           |
  1222. | Color             |
  1223. | Black and white   |
  1224. | Monochrome        |
  1225. | LCD               |
  1226. |___________________|
  1227.  
  1228. Choosing Mode for Display from the main menu enables you to select
  1229. the display mode for your system.
  1230.  
  1231.  
  1232. Default            TDW detects the kind of graphics adapter on your
  1233.                    system and selects the display mode appropriate for
  1234.                    it.
  1235.  
  1236.  
  1237. Color              If you have an EGA or VGA graphics adapter and choose
  1238.                    this option as your default, the display will be in
  1239.                    color.
  1240.  
  1241. Black and White    If you have an EGA or VGA graphics adapter and
  1242.                    choose this option, the display will be in black
  1243.                    and white.
  1244.  
  1245. Monochrome         Choose this option if you are using a color monitor
  1246.                    with a Hercules  adapter.
  1247.  
  1248. LCD                Choose this option if you have an LCD monitor.
  1249.  
  1250.  
  1251. 8.7 Command-line options and installation equivalents
  1252. -----------------------------------------------------
  1253. Some of the options described in the previous section can be over-
  1254. ridden when you start TDW. The following table shows the
  1255. correspondence between TDW command-line options and the TDWINST
  1256. program command that permanently sets that option.
  1257.  
  1258. TDW command-line options
  1259. _____________________________________________________________________
  1260. Option          TDWINST menu path               Dialog box and option
  1261. _____________________________________________________________________
  1262.  
  1263.  
  1264.                 Display                         Display Options
  1265.   -do                                             (X) Other
  1266.   -ds                                             (X) Swap
  1267.  
  1268.                 Display                         Display Options
  1269.   -l                                              (X) Assembler
  1270.   -l-                                             (X) Source
  1271.  
  1272.                 Options|Input and Prompting     User Input and Prompting
  1273.   -p                                              [X] Mouse Enabled
  1274.   -p-                                             [ ] Mouse Enabled
  1275.  
  1276.                 Options|Directories             Directories
  1277.   -sd                                             Source Directories
  1278.   -t                                              Turbo Directory
  1279. ______________________________________________________________________
  1280.  
  1281. For example, when starting TDW from the DOS prompt you can type:
  1282.  
  1283.    win tdw -p
  1284.  
  1285. This command loads Windows and enables use of the mouse in TDW.
  1286. Remember, you must type "win" when starting TDW from the DOS prompt
  1287. because TDW requires Microsoft Windows in order to run.  Note that
  1288. TDW.EXE must be in a directory in your DOS path in order for this
  1289. command to work.
  1290.  
  1291. For a list of all the command-line options available for TDW.EXE or
  1292. TDWINST.EXE, enter the program name followed by -h or -?:
  1293.  
  1294.  
  1295. 8.8 When you're through
  1296. -----------------------
  1297. Saving changes
  1298. ==============
  1299.  ____________________________
  1300. | Save configuration file... |
  1301. | Modify tdw.exe             |
  1302. |____________________________|
  1303.  
  1304. When you have set the TDW options to the way you want, choose
  1305. Save from the main menu to display saving options.
  1306.  
  1307.  
  1308. Save Configuration File
  1309. _______________________
  1310.  
  1311. If you choose Save Configuration File, a dialog box opens, initialized
  1312. to the default configuration file TDCONFIG.TDW. You can accept this
  1313. name by pressing Enter, or you can type a new configuration file name.
  1314. If you specify a different file name, you must load that configuration
  1315. using the -c command-line option when you start TDW.
  1316.  
  1317. For example, to start TDW using the configuration file MYCFG.TDW, you
  1318. have several options.  If Windows is already loaded, type the following
  1319. from the Windows Program Manager's File|Run command line:
  1320.  
  1321.    tdw -cmycfg.tdw myprog
  1322.  
  1323. If you are starting TDW directly from the DOS command line and want to
  1324. use the configuration MYCFG.TDW, Windows must be loaded concurrently by
  1325. typing:
  1326.  
  1327.    win tdw -cmycfg.tdw myprog
  1328.  
  1329. You can also use the TDW Options|Restore Options command to load a
  1330. configuration once you have started TDW.
  1331.  
  1332.  
  1333. Modify TDW.EXE
  1334. ______________
  1335.  
  1336. If you choose Modify TDW.EXE, any changes that you have made to the
  1337. configuration are saved directly into the TDW executable program
  1338. file TDW.EXE. The next time you run TDW, those settings will be
  1339. your defaults.
  1340.  
  1341. If at any time, you want to return to the default configuration
  1342. that TDW is shipped with, copy TDW.EXE from your master disk onto
  1343. your working system disk, overwriting the TDW.EXE file that you
  1344. modified.
  1345.  
  1346.  
  1347. Exiting TDWINST
  1348. ===============
  1349.  
  1350. To get out of TDWINST at any time, choose Quit from the main menu.
  1351.  
  1352.