home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR3 / PDT_26.ZIP / PDT.DOC < prev    next >
Text File  |  1993-09-21  |  96KB  |  1,944 lines

  1.  
  2.  
  3.               ────────────────────────────────────────────────
  4.                 ────────────────────────────────────────────
  5.                   ────────────────────────────────────────
  6.                     ────────────────────────────────────
  7.                       ────────────────────────────────
  8.                         ────────────────────────────
  9.                           ────────────────────────
  10.                             ────────────────────
  11.                               ────────────────
  12.  
  13.                            PDT's Command Reference
  14.  
  15.                          (the Pro~Formance Data Tool)
  16.  
  17.                                Rob W. Smetana
  18.  
  19.                               ────────────────
  20.                             ────────────────────
  21.                           ────────────────────────
  22.                         ────────────────────────────
  23.                       ────────────────────────────────
  24.                     ────────────────────────────────────
  25.                   ────────────────────────────────────────
  26.                 ────────────────────────────────────────────
  27.               ────────────────────────────────────────────────
  28.  
  29.                          **  Version 2.6 (10/93)  **
  30.  
  31.  
  32.  
  33.             Copyright (C) 1987-1993, Rob W. Smetana and Pro~Formance.
  34.                               All Rights Reserved
  35.  
  36.           Pro~Formance Data Tool, PDT and Pro~Formance are trademarks of
  37.                          Rob W. Smetana and Pro~Formance.
  38.  
  39.  
  40.          ┌────────────────── Start with START.DOC ─────────────────────┐
  41.          │                                                             │▄
  42.          │   PDT comes with TWO manuals.  Begin by reading Start.Doc.  │█
  43.          │   It explains how to INSTALL, RUN, CUSTOMIZE and EXPERIMENT │█
  44.          │   with PDT.                                                 │█
  45.          │                                                             │█
  46.          │   Once you've properly installed PDT and gotten familiar    │█
  47.          │   with it, refer to this command reference manual which     │█
  48.          │   has descriptions of all of PDT's options.  But because    │█
  49.          │   PDT offers on-line help for EVERY option, you man never   │█
  50.          │   (or rarely) have to consult this command reference.       │█
  51.          │                                                             │█
  52.          │   ALSO NOTE:  If your printer CAN'T print the lines and     │█
  53.          │   boxes in this manual, BEFORE you print this, read the     │█
  54.          │   section in Start.Doc on using Translate.Exe.              │█
  55.          └─────────────────────────────────────────────────────────────┘█
  56.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  57.                                                                        
  58.  
  59.  
  60.                                                                        a
  61.  
  62.          Thank you . . .
  63.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  64.  
  65.          Thank you for trying PDT.  We're confident that it will become
  66.          as indispensible to you as it has to us.  PDT is so easy to
  67.          use, anyone will find it of value.  And programmers, or anyone
  68.          who works with data files, will find it a vital tool.
  69.  
  70.          If you have suggestions, comments or questions, please don't
  71.          hesitate to call or write us:
  72.  
  73.  
  74.                Rob W. Smetana              (415) 863 - 0530
  75.                Pro~Formance                132 Alpine Terrace
  76.                                            San Francisco, CA  94117
  77.  
  78.  
  79.          Getting Started:  Begin with Start.Doc!
  80.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  81.  
  82.          If you started here, STOP!  Read Start.Doc first.
  83.  
  84.          PDT comes with TWO manuals.  PLEASE read Start.Doc BEFORE
  85.          reading this manual.
  86.  
  87.           * Before you can run PDT, you must install it properly.
  88.             So BE SURE to read Start.Doc thoroughly.
  89.  
  90.           * Also be sure to read the section in Start.Doc which
  91.             describes how to run PDT, get help and customize PDT.
  92.  
  93.           * Finally, Start.Doc has a section with examples.  Once
  94.             you've installed PDT, we strongly urge you to run PDT.Exe
  95.             and follow the examples.  Once you see many of PDT's
  96.             features in action, this technical reference manual may be
  97.             easier to understand.
  98.  
  99.                                                                        
  100.  
  101.  
  102.                                                                        b
  103.  
  104.          The Two Sections of This Reference Guide
  105.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  106.  
  107.          This manual describes, in detail, each of PDT's options.  BEFORE
  108.          you get to this point, you've should have already read Start.Doc
  109.          and installed PDT.  PDT may not run if it's installed improperly.
  110.          So please follow the steps in Start.Doc to install it properly.
  111.  
  112.          Once you've installed PDT we strongly recommend you follow
  113.          the Example section in Start.Doc.  It's much easier to explain
  114.          and understand PDT with pictures than with words.  So, in that
  115.          section we'll ask you to run PDT and open the sample files we
  116.          provided.  If you follow the step-by-step examples, you'll SEE
  117.          PDT's major features in action.  When you're done, this command
  118.          summary may make more sense.
  119.  
  120.          This reference guide into two sections:
  121.  
  122.           I.  Command Reference
  123.           II. Appendices
  124.                  Appendix   I:  Creating Structure Files with Editors
  125.                  Appendix  II:  Helpful Tips; Salvaging Data Files
  126.                  Appendix III:  Error Messages
  127.  
  128.  
  129.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  130.  
  131.                                     Contents
  132.  
  133.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  134.  
  135.             SECTION I:   Command Reference
  136.  
  137.                 The File Menu; Opening Files; the File List ....... 1.1
  138.                     Closing Files; Creating/Deleting/Renaming ..... 1.4
  139.                     Combining (concatenating) Files ............... 1.4
  140.                     Changing File Sizes ........................... 1.5
  141.                     Translating Files: EBCDIC/ASCII-ASCII/EBCDIC... 1.5
  142.  
  143.  
  144.                 The Edit Menu; Editing Numeric Fields ............. 1.6
  145.  
  146.  
  147.                 The Search Menu; Search & Replace ................. 1.7
  148.  
  149.  
  150.                 The Block Menu; Marking Blocks .................... 1.8
  151.                     Adding Up Columns ............................. 1.9
  152.                     Adding Sequence Numbers to Columns ............ 1.10
  153.                     Copying Blocks:  Overwrite or Insert .......... 1.11
  154.                     Deleting Blocks ............................... 1.11
  155.                     Filling or Exporting Blocks ................... 1.12
  156.                     Inserting Spaces or Records ................... 1.12
  157.                     Expanding/Shrinking Columns; Updating Headers . 1.13
  158.  
  159.                                                       continued . . .  
  160.  
  161.  
  162.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  163.  
  164.                                     Contents
  165.  
  166.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  167.  
  168.  
  169.             SECTION IV:   Command Reference  (continued)
  170.  
  171.                 The Define Menu; Specifying Header Lengths ........ 1.15
  172.                     Specifying Record Lengths ..................... 1.17
  173.                     F9 & F10:  Changing Records Lengths by 1 ...... 1.18
  174.                     Forcing dBase Structure ....................... 1.18
  175.                     Displaying Field Names ........................ 1.19
  176.                     Clear Structure ............................... 1.19
  177.                     Defining or Editing Field Structures .......... 1.20
  178.                     Saving or Reading File Structures ............. 1.22
  179.  
  180.  
  181.                 The Options Menu; Jump ............................ 1.23
  182.                     Synchronizing 2 or More File Windows .......... 1.23
  183.                     Jump:  By Percent or Byte, or to a Record ..... 1.24
  184.                     ASCII Chart ................................... 1.24
  185.                     View EBCDIC files in ASCII Mode ............... 1.25
  186.                     Text View Mode, Calculator; Configure;  ....... 1.26
  187.  
  188.                 The Help Menu ..................................... 1.27
  189.  
  190.  
  191.             Appendix  I
  192.  
  193.                 Creating Structure Files with Editors ............. A.1.1
  194.  
  195.             Appendix  II
  196.  
  197.                 Helpful Tips ...................................... A.2.1
  198.  
  199.             Appendix III
  200.  
  201.                 Error Messages .................................... A.3.1
  202.  
  203.                                                                        
  204.  
  205.  
  206.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  207.  
  208.          SECTION I:  Command Reference
  209.  
  210.          Topics:     PDT's Menus and Options
  211.                      Tips, Hints and Unique Features
  212.  
  213.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  214.  
  215.          Start.Doc describes how to run PDT, get help, select options,
  216.          etc.  You should read that before reading this.  This section
  217.          describes each of PDT's menus and options.  Please pay particu-
  218.          lar attention to the TIPS & NOTES.
  219.  
  220.          The FILE Menu
  221.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  222.  
  223.            FILE  edit  search  block  define  options  help  (F1)
  224.          ┌──────────────────────────────────┐
  225.          │ Open a file             (ctrl-O) │
  226.          │ Close active window     (ctrl-C) │
  227.          ├──────────────────────────────────┤
  228.          │ Create a Directory               │
  229.          │ Create a File                    │
  230.          │ Delete a File                    │
  231.          │ Rename a File                    │
  232.          │ Copy a File to a new location    │
  233.          │ Combine two or more files        │
  234.          │ Change File Size                 │
  235.          ├──────────────────────────────────┤
  236.          │ Translate File:  EBCDIC-to-ASCII │
  237.          │ Translate File:  ASCII-to-EBCDIC │
  238.          ├──────────────────────────────────┤
  239.          │ Exit to DOS             (ctrl-X) │
  240.          └──────────────────────────────────┘
  241.  
  242.          To Exit PDT to DOS                           ctrl-X;  File/Exit
  243.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  244.  
  245.          Taking the last option first, press ctrl-X to quit PDT.  We'll
  246.          close any files you've opened (so you needn't close them separ-
  247.          ately).  And if you changed any structure file, PDT will ask if
  248.          you want to save them.
  249.  
  250.          To Open a File                               ctrl-O;  File/Open
  251.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  252.  
  253.           * Press ctrl-O (Open).
  254.  
  255.           * Or pull down the file menu (alt-F), make sure the first
  256.             option (Open a New File/Window) is highlighted, then
  257.             press <cr> to accept it.
  258.  
  259.          You may open 1 - 4 file windows at a time.  If you have 4 win-
  260.          dows open and ask to open another one, PDT tells you it can't
  261.          open any more.  Close a window THEN press ctrl-O to open another.  
  262.                                                                        
  263.  
  264.                                                                      1.2
  265.  
  266.  
  267.          When you ask to open a file, PDT displays a "file list window:"
  268.  
  269.          Active Directory─>┌─\PDT─────────────────────────────────────────┐
  270.                          ┌>│    ..           <DIR>      11-18-95 ...D.    ▒
  271.             Directories ─┴>│    PDT      DIR <DIR>      01-01-95 ...D.    ▒
  272.                          ┌>│    PDT      DOC    200,000 01-01-95 ....A    ▒
  273.                   Files ─┼>│    SAMPLE_1 DAT      1,769 01-01-95 ....A    ▒
  274.                          └>│    SAMPLE_2 DAT      1,769 01-01-95 ....A    ▒
  275.                            │                                              ▒
  276.                            │                                              ▒
  277.                            │┌───┤ Alt-(drive letter) = Change Drives ├───┐│
  278.          Available Drives─>││A: B: C: D: E:                              ││
  279.                            ││                                            ││
  280.                            │└────────────────────────────────────────────┘│
  281.                   Options─>│(^S)=Sort (.)=ParentDir (F1)=Help (Esc)=Cancel│
  282.                            └──────────────────────────────────────────────┘
  283.  
  284.  
  285.          To Select a File:
  286.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  287.  
  288.           * Click Left on a file name.  (Click Left on the shaded,
  289.             vertical scroll bar, if necessary, to scroll the file
  290.             list down or up.)
  291.  
  292.           * Or press the first letter of the file you want to load.
  293.             When PDT highlights the file you want, press <cr> to
  294.             accept it.  If two or more files begin with the same
  295.             first letter, press the letter a few times until the
  296.             file you want to open is highlighted.
  297.  
  298.           * Or press the cursor pad keys (Down, Up, PgDn, PgUp, End
  299.             and Home) until the file you want is highlighted, then
  300.             press <cr> to accept it.
  301.  
  302.  
  303.          NOTE:  The file list window above shows two directories (indi-
  304.          cated by "<DIR>").  Directory names are always sorted by name.
  305.  
  306.          To sort file names, press ctrl-S (shown as ^S above).  PDT will
  307.          then ask you how you want the list sorted:
  308.  
  309.          ┌───────────────────────────────────┐  Press:
  310.          │ Sort Files by:                    │  (N) to sort by NAME
  311.          │                                   │  (E) to sort by EXTENSION
  312.          │ (N)ame (E)xt (S)ize (D)ate (A)ttr │  (S) to sort by SIZE
  313.          └───────────────────────────────────┘  (D) to sort by DATE
  314.                                                 (A) to sort by ATTRIBUTE
  315.                                                     (hidden, read only,
  316.                                                      system, etc.)
  317.  
  318.                                                                         
  319.  
  320.                                                                      
  321.                                                                      1.3
  322.  
  323.  
  324.          To Change Directories:
  325.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  326.  
  327.          The first time you ask to open a file, the "active directory"
  328.          will be the directory you were in when you ran PDT.  In the
  329.          example above, the top of the file list window shows we're in
  330.          a directory called "\PDT."  In the "Change Drives" section of
  331.          the file window, we'd also see that "C:" was highlighted,
  332.          meaning we're on drive C:.
  333.  
  334.  
  335.          To change directories:
  336.  
  337.           * Directories appear in the file window with "<DIR>" beside
  338.             their name.  To select a directory, highlight one and press
  339.             <cr>.  Select "..   <DIR>" to move back one directory.
  340.  
  341.           * Press "." (the period) to move to the root directory, then
  342.             select a new directory.
  343.  
  344.  
  345.  
  346.          To Change Drives:
  347.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  348.  
  349.           * Press alt-[drive letter].  For example, in the window above,
  350.             PDT shows us we have 5 disk drives:  A - E.  For a directory
  351.             of, say, drive A:, we'd press alt-A.
  352.  
  353.                                                                        
  354.  
  355.  
  356.                                                                      1.4
  357.  
  358.  
  359.          To Close a File                             ctrl-C;  File/Close
  360.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  361.  
  362.           * Press ctrl-C.
  363.  
  364.           * Or select Close from the File menu.
  365.  
  366.          If you have 2 or more files open, PDT will re-draw the other
  367.          windows to fill the screen.
  368.  
  369.  
  370.          File Options:  Create Files or Directories          File/Create
  371.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  372.  
  373.          To create a new file or directory, select Create File or Create
  374.          Directory from the File menu.  Then just type in the name of
  375.          the file or directory and press <cr>.
  376.  
  377.  
  378.          File Options:  Rename, Delete, Copy            File/Rename/etc.
  379.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  380.  
  381.          To rename, delete or copy a file, select one of these options
  382.          from the File menu.  PDT will display its normal file list
  383.          window.  Select a file.  If you asked to copy it or rename it,
  384.          PDT will ask you to type in the new name.
  385.  
  386.  
  387.          File Options:  Combine Files                       File/Combine
  388.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  389.  
  390.          This powerful option lets you combine (concatenate) 1-6 files.
  391.  
  392.           * Select Combine File from the File menu.
  393.  
  394.           * PDT's normal file window will appear.  Beneath it, another
  395.             window also appears which asks you to:
  396.  
  397.             - Select a main file.
  398.  
  399.             - Then select up to 5 more files to add to the main file.
  400.  
  401.             - Press <Esc> when you're done selecting files to add.  PDT
  402.               then asks if you want to proceed.  Press <Y>es or <N>o.
  403.  
  404.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  405.          │                                                             │▄
  406.          │ The "main" file WILL be altered:  the other files you chose │█
  407.          │ will be added (concatenated) to the end of it.  These other │█
  408.          │ files won't be altered.  To combine more than 6 files, just │█
  409.          │ repeat this process.                                        │█
  410.          └─────────────────────────────────────────────────────────────┘█
  411.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  412.  
  413.  
  414.                                                                      1.5
  415.  
  416.  
  417.          File Options:  Change File Size                File/Change Size
  418.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  419.  
  420.          This very powerful option lets you change a file's size to:
  421.  
  422.           * Expand files -- to reserve space for data you plan to add.
  423.  
  424.           * Truncate files -- which is a very fast way to delete dozens,
  425.             hundreds or millions of records in one, simple operation.
  426.  
  427.          To change the size of a file, first open it in PDT (ctrl-O),
  428.          then select Change File Size from the File menu.  PDT then asks
  429.          you how many bytes the file should have; enter 0-999 million.
  430.  
  431.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  432.          │                                                             │▄
  433.          │ You may be UNABLE to undo this, even using file-recovery    │█
  434.          │ tools!  And setting the file size to 0 destroys the file.   │█
  435.          │                                                             │█
  436.          │ When truncating a file, it might help to move the cursor to │█
  437.          │ the end of the last record you want to keep.  At the bottom │█
  438.          │ of the screen, notice the value of DEPTH: showing where you │█
  439.          │ are in the file. ADD 1 to the number you see, then enter it.│█
  440.          └─────────────────────────────────────────────────────────────┘█
  441.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  442.  
  443.  
  444.          Translating Files:  EBCDIC/ASCII                 File/Translate
  445.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  446.  
  447.          PDT offers two options to translate EBCDIC files to ASCII
  448.          format, or vice versa.  This is especially handy if you've
  449.          downloaded an EBCDIC file from, say, an IBM mainframe and want
  450.          to view and edit it.  You can translate it to ASCII, edit it,
  451.          then translate it from ASCII-to-EBCDIC and send it back.
  452.  
  453.          To do this:  Press alt-F (File Menu).  Select either "Translate:
  454.          EBCDIC-to-ASCII" or "Translate: ASCII-to-EBCDIC."  Then, from
  455.          PDT's file list window, choose a file and confirm that you
  456.          really want to proceed.
  457.  
  458.          ALSO SEE:  Options - View EBCDIC in ASCII.  The "Translate"
  459.          options in the File menu re-writes the file.  The "View EBCDIC
  460.          in ASCII" option does NOT change the file.  It simply tells PDT
  461.          to display EBCDIC files in ASCII format.
  462.  
  463.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  464.          │                                                             │▄
  465.          │ "Translate" can be used to "encrypt" files.  Either option  │█
  466.          │ (used 1-3 times?) can help protect files from prying eyes.  │█
  467.          │ NOTE:  While PDT DOES correctly translate EBCDIC characters │█
  468.          │ to ASCII and back again, this version does NOT translate the│█
  469.          │ values of EBCDIC packed binary fields.                      │█
  470.          └─────────────────────────────────────────────────────────────┘█
  471.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  472.  
  473.  
  474.                                                                      1.6
  475.  
  476.  
  477.          The EDIT Menu
  478.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  479.  
  480.            file  EDIT  search  block  define  options  help  (F1)
  481.                ┌──────────────────────────────┐
  482.                │ Edit is OFF         (ctrl-E) │
  483.                │ Edit Numeric Field  (F6)     │
  484.                └──────────────────────────────┘
  485.  
  486.          Edit Mode On/Off                            ctrl-E;  Edit/Edit
  487.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  488.  
  489.          Also see:  Options/Configure -- to turn Edit Mode on by default.
  490.  
  491.          Unless you turn edit mode on by default, it will be OFF when
  492.          you open files.  To change anything in files, you must turn
  493.          Edit mode ON.  To do so, press ctrl-E, or select Edit
  494.          from the Edit menu.  Do the same to turn Edit mode OFF.
  495.  
  496.          When Edit mode is ON, "E" will blink on the left edge of the
  497.          file window.  If Edit mode is OFF, this area is blank.  Remember,
  498.          when Edit mode is ON, changes are IMMEDIATELY saved to disk!
  499.  
  500.                    ╔═══════════╗          ╔═══════════╗
  501.                    E  Edit is  ║             Edit is  ║
  502.                    ║    ON     ║          ║    OFF    ║
  503.                    ╚═══════════╝          ╚═══════════╝
  504.  
  505.  
  506.          Edit Numeric Field                      F6;  Edit/Edit Numeric
  507.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  508.  
  509.          This option is especially useful to edit numeric fields stored
  510.          in "packed binary" form.  But, you can press F6 to edit any
  511.          field up to 26 columns wide.  If you press F6 when your cursor
  512.          is in a field wider than 26 columns, an error message pops up.
  513.  
  514.          "Packed binary" refers to the way numeric data is often stored,
  515.          usually in fewer columns than would be needed to store the same
  516.          numbers in character or text format.  NOTE:  Since EBCDIC files
  517.          store numeric fields in a unique format, in this version of PDT,
  518.          the F6 option may NOT be used with EBCDIC files.  ALSO NOTE:
  519.          dBase files store numeric fields in character format.
  520.  
  521.          For example, suppose you move the cursor to an Integer field
  522.          and notice that its value (beside "Value:" at the bottom of
  523.          the screen) is 8,562.  You want to change 8,562 to 10,562.
  524.  
  525.           * But, since 8,562 is a 2-byte integer, it's stored as "r!".
  526.                          
  527.           * What would you enter for 10,862?  You don't have to know!
  528.  
  529.           * Just press F6 and type in 10862.  When you press <cr>, PDT
  530.             saves the appropriate value -- "n*".                       
  531.  
  532.  
  533.                                                                      1.7
  534.  
  535.  
  536.          The SEARCH Menu
  537.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  538.  
  539.            file  edit  SEARCH  block  define  options  help  (F1)
  540.                      ┌─────────────────────┐
  541.                      │ Search     (ctrl-S) │
  542.                      │ Replace    (ctrl-R) │
  543.                      └─────────────────────┘
  544.  
  545.          Press ctrl-S to search for, or ctrl-R to replace something.  You
  546.          may search for or replace from 1 to about 75 characters.  When
  547.          you press ctrl-S or ctrl-R, a window like this pops up.
  548.  
  549.          ┌───────────────────────────────────────────────────────────────┐
  550.          │Alt- ^(D)irection  Yes(I)gnore Case  No(B)lock Only  (F7) ASCII│
  551.          │                                                               │
  552.          │Search for:  (F1 = Help)                                       │
  553.          │░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
  554.          │Replace with:                                                  │
  555.          │░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
  556.          └───────────────────────────────────────────────────────────────┘
  557.  
  558.          Enter a character or phrase to search for and press <cr>.  If you
  559.          pressed ctrl-R (Replace), enter the replacement character or phrase
  560.          and press <cr> again.  While entering either phrase, press:
  561.  
  562.           alt-D  to tell PDT which Direction to search:  Up (above where
  563.                  your cursor is in the file) or Down (below the cursor).
  564.  
  565.                  When you press alt-D, the arrow beside (D)irection will
  566.                  change from pointing up or down to the opposite.
  567.  
  568.           alt-I  to tell PDT to Ignore case.  If you say "Ignore case,"
  569.                  we'll find the phrase regardless of how it's capitalized.
  570.  
  571.           alt-B  to say "search just the Block I marked."
  572.  
  573.              F7  to enter any ASCII character from 0-254.
  574.  
  575.          When you're done, PDT will begin searching your file.   Press
  576.          <Esc> to cancel the search.  If you're searching, PDT displays
  577.          where it is in the file.  If PDT finds a match, it will appear
  578.          in the top left corner of the file window.  To find the next
  579.          occurrence, press ctrl-S, <cr>. If replacing, PDT tells you how
  580.          many items it has replaced.
  581.  
  582.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  583.          │                                                             │▄
  584.          │ You can Search for something with Edit Mode either on or    │█
  585.          │ off.  But Edit Mode must be ON to Replace something.  You   │█
  586.          │ can Replace something only with something else of the SAME  │█
  587.          │ LENGTH.  Files can't expand or contract during replace.     │█
  588.          └─────────────────────────────────────────────────────────────┘█
  589.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  590.  
  591.  
  592.                                                                      1.8
  593.  
  594.  
  595.          The BLOCK Menu
  596.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  597.  
  598.            file  edit  search  BLOCK  define  options  help  (F1)
  599.                              ┌───────────────────────────┐
  600.                              │ Mark Block       (ctrl-B) │
  601.                              │ Mark Column      (ctrl-M) │
  602.                              │ Unmark Block     (ctrl-U) │
  603.                              │ Add Column       (ctrl-A) │
  604.                              │ Sequence # Col.  (ctrl-Q) │
  605.                              ├───────────────────────────┤
  606.                              │ Copy w/overWrite (ctrl-W) │
  607.                              │ Copy w/Insert    (ctrl-I) │
  608.                              │ Delete Block     (DEL)    │
  609.                              │ Fill             (ctrl-F) │
  610.                              │ Export           (ctrl-P) │
  611.                              ├───────────────────────────┤
  612.                              │ Insert spaces    (INS)    │
  613.                              ├───────────────────────────┤
  614.                              │ Expand Column or Field    │
  615.                              │ Shrink Column or Field    │
  616.                              └───────────────────────────┘
  617.  
  618.          Many of PDT's Block options require that you first MARK a block
  619.          and then copy, delete or fill it, etc..  Other options do not
  620.          require marked blocks (inserting space, shrinking columns, etc.).
  621.  
  622.          Marked Block Options
  623.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  624.  
  625.          You can mark blocks in two different ways.
  626.  
  627.           * Press ctrl-B to mark continuous blocks of characters or records.
  628.  
  629.              - Press left/right cursor keys to expand the block left/right.
  630.  
  631.              - Press down/up cursor keys to mark the rest of the record
  632.                you're on, and then move to the next/last record.
  633.  
  634.              - Press ctrl-B again to mark the end, or ctrl-U to unmark it.
  635.  
  636.           * Press ctrl-M to mark a column, field or any rectangular area.
  637.  
  638.              - Press left/right cursor keys to expand the block left/right.
  639.  
  640.              - Press down/up cursor keys to move to the next/last record.
  641.  
  642.              - Press ctrl-M again to mark the end, or ctrl-U to unmark it.
  643.  
  644.          Notice that the major difference here is what happens when you
  645.          move the cursor up or down.   With ctrl-M, only the columns you
  646.          included are marked.  With ctrl-B, entire records are marked.
  647.          Also, you can mark or unmark blocks with Edit Mode OFF.  But to
  648.          use any block option that alters the file, Edit Mode must be ON.  
  649.  
  650.  
  651.                                                                      1.9
  652.  
  653.  
  654.          Once you mark a block, you may copy, fill, or export it, etc.
  655.          As PDT works, it displays how much of the file is left to go.
  656.  
  657.  
  658.          To ADD UP Columns                    ctrl-A;  Block/Add Column
  659.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  660.  
  661.          PDT's "add field" option is a hybrid:  you may use it to add
  662.          columns you've marked, or add up a field across EVERY record.
  663.  
  664.          In other words, you can first press ctrl-M, mark a column, then
  665.          press ctrl-A to add up what you marked.
  666.  
  667.          Or, just move your cursor to a field and you press ctrl-A.  PDT
  668.          will add up that field from record #1 through the last record.
  669.          In large files, this can take a while.  So if you press ctrl-A
  670.          by mistake, press <Esc> to stop.
  671.  
  672.  
  673.          Notes:
  674.          ──────
  675.  
  676.           * After PDT adds up the values, it displays the results with
  677.             up to 8 decimal places.
  678.  
  679.           * PDT will add true numeric fields, or "character" numeric
  680.             fields like those you'll find in dBase files.  Adding
  681.             alphabetic fields (letters only) yields values of 0.
  682.  
  683.           * This option is meant primarily to add up positive values.
  684.             Negative values could be interpreted as "rollover errors"
  685.             and may cause PDT to cancel the process.
  686.  
  687.                                                                      
  688.  
  689.  
  690.                                                                     1.10
  691.  
  692.  
  693.          To SEQUENCE NUMBER Columns              ctrl-Q;  Block/Sequence
  694.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  695.  
  696.          PDT's "sequence number" option is a very flexible way to add
  697.          unique sequence numbers to each record (eg., record, part or
  698.          customer numbers).  Sequence "numbers" may be numeric or alpha-
  699.          betic, or a combination of the two.  For example, you could use
  700.          customer numbers like "AAA-00-0000."  PDT would increment numbers
  701.          from 0 - 9 before "rolling" left to the next character.  When it
  702.          got to "AAA" it would increment the letters:  AAB, AAC, etc.
  703.          Since the letters started out as capitals, they'll stay that
  704.          way.  Any lower case letters would remain lower case.
  705.  
  706.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  707.          │                                                             │▄
  708.          │ Notice that letters give you a greater range than do        │█
  709.          │ numbers:  PDT can increment letters 26 times, but numbers   │█
  710.          │ only 9 times, before it must move left to the next charac-  │█
  711.          │ ter.  That means that in any given space, letters give you  │█
  712.          │ a much greater range of values than do numbers.             │█
  713.          │                                                             │█
  714.          │  * A 3-digit alphabetic "number" ("AAA") offers over 17,000 │█
  715.          │    possibilities.                                           │█
  716.          │                                                             │█
  717.          │  * But a 3-digit numeric "number" ("000") offers only 1,000 │█
  718.          │    possibilities.                                           │█
  719.          │                                                             │█
  720.          │ Also note that PDT "increments" ONLY numbers 0 - 9 and let- │█
  721.          │ ters A - Z or a - z.  All other characters are considered   │█
  722.          │ "formatting" characters and are NOT incremented.            │█
  723.          └─────────────────────────────────────────────────────────────┘█
  724.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  725.  
  726.  
  727.          To add sequence numbers to a column, first press ctrl-M and mark
  728.          the column.  Then press ctrl-Q.  When you do, PDT asks you to enter
  729.          the first or starting "value."  You can enter as many characters
  730.          as you marked using ctrl-M.  For example, if you mark a field
  731.          or column 14 characters wide, you'll be able to enter a 14-char-
  732.          acter starting sequence number.
  733.  
  734.  
  735.          In the example below, we marked an area 6 characters wide.
  736.  
  737.                    ┌─────────────────────────────────┐
  738.                    │ Enter STARTING sequence number: │
  739.                    │                                 │
  740.                    │ ░░░░░░                          │
  741.                    └─────────────────────────────────┘
  742.                                                                      
  743.  
  744.  
  745.                                                                     1.11
  746.  
  747.  
  748.          To COPY Blocks                    ctrl-W or ctrl-I;  Block/Copy
  749.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  750.  
  751.          After marking a block, move your cursor to another spot (switch
  752.          file windows if needed:  press alt-# or ctrl-PgDn).  Then press:
  753.  
  754.           * ctrl-W to OVERWRITE whatever is at that spot.
  755.  
  756.           * ctrl-I to INSERT the block at that spot.
  757.  
  758.          ┌───────────────────────── WARNING: ──────────────────────────┐
  759.          │                                                             │▄
  760.          │ PDT won't allow copying columns with Insert with dBase      │█
  761.          │ files.  And you should not use it with files for which you  │█
  762.          │ created a structure file.  INSTEAD, use Expand Column to    │█
  763.          │ increase the column's width.  THEN use ctrl-W to copy with  │█
  764.          │ Overwrite.  The reason for this is that Expand Column gives │█
  765.          │ you options to update both the dBase header and the struc-  │█
  766.          │ ture files.  Unless the dBase header is updated, you could  │█
  767.          │ destroy your file (or at least render it unreadable)!       │█
  768.          │                                                             │█
  769.          │ Inserting Columns is a two step process.  PDT first copies  │█
  770.          │ the column you marked to a temporary file, and then reads   │█
  771.          │ it back in, inserting it where your cursor is.  PDT keeps   │█
  772.          │ you informed of the progress of both operations.  This is   │█
  773.          │ the only time PDT uses temporary files.  Also, sufficient   │█
  774.          │ disk space must be available to save this temporary file.   │█
  775.          │ If there's too little disk space, PDT will let you know.    │█
  776.          └─────────────────────────────────────────────────────────────┘█
  777.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  778.  
  779.  
  780.          To DELETE Blocks                             DEL;  Block/Delete
  781.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  782.  
  783.          To delete blocks, simply mark them and press DEL.
  784.  
  785.  
  786.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  787.          │                                                             │▄
  788.          │ If you open a dBase file, mark a COLUMN, and then press DEL,│█
  789.          │ PDT will urge you to use the "Shrink Column" option instead.│█
  790.          │                                                             │█
  791.          │ Shrink Column lets you update the dBase file header, but    │█
  792.          │ DEL does NOT.  If you delete columns without updating the   │█
  793.          │ header, programs (including PDT) might later tell you that  │█
  794.          │ your file has been corrupted!                               │█
  795.          └─────────────────────────────────────────────────────────────┘█
  796.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  797.                                                                        
  798.  
  799.  
  800.                                                                     1.12
  801.  
  802.  
  803.          To FILL Blocks                              ctrl-F;  Block/Fill
  804.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  805.  
  806.          To fill a block, first mark it, then press ctrl-F and tell PDT
  807.          what to fill the block with.  Enter spaces to erase the area.
  808.  
  809.          If you marked a continuous block, PDT repeats the "phrase" you
  810.          entered to completely fill the block.
  811.  
  812.          If you marked a column, PDT begins each row with the "phrase"
  813.          you entered.  If your phrase is narrower than the column you
  814.          marked, PDT fills the rest of the column with blank spaces.
  815.  
  816.  
  817.          To EXPORT Blocks                        ctrl-P;  Options/Export
  818.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  819.  
  820.          Export means to save the marked block to a file.  PDT will ask
  821.          you for a file name.  If you marked a column, PDT will also ask
  822.          you if you want each line saved with a Carriage Return/Line
  823.          Feed (CR/LF) at the end.
  824.  
  825.           * If you tell PDT to export to a file that already exists,
  826.             we'll ask you if you want to Overwrite it or Add to it.
  827.  
  828.  
  829.          To INSERT Spaces or Records                  INS;  Block/Insert
  830.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  831.  
  832.          When you press INS, PDT asks how many spaces you want to add --
  833.          beginning where the cursor is.  The default is the record size.
  834.          PDT adds ASCII character 32 (Space).  To fill the area with a
  835.          different character, use the FILL option once PDT has inserted
  836.          the spaces (first press ctrl-B and mark the block).
  837.  
  838.          If you're working with a database file and want to add several
  839.          blank records:
  840.  
  841.           * Move to column 1 (press Home).
  842.  
  843.           * Note the Record Size at the bottom of your screen.
  844.  
  845.           * Press INS and enter a multiple of the record size.  For
  846.             example, if the record size is 400 and you want to add 6
  847.             blank records, tell PDT to add 2400 spaces.
  848.  
  849.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  850.          │                                                             │▄
  851.          │ To widen or expand a column, use Expand Column not Insert.  │█
  852.          │ Expand Column will insert spaces for each record.  And, if  │█
  853.          │ you want, PDT will also update the dBase file header and    │█
  854.          │ your structure file.                                        │█
  855.          └─────────────────────────────────────────────────────────────┘█
  856.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  857.                                                                        
  858.  
  859.                                                                     1.13
  860.  
  861.         
  862.          EXPANDING columns or fields.                       Block/Expand
  863.          SHRINKING columns or fields.                       Block/Shrink
  864.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  865.  
  866.          These very powerful options let you widen (or shrink) fields or
  867.          columns.  And, if you like, PDT will also update the dBase file
  868.          header and your structure file AUTOMATICALLY.  They work in
  869.          similar ways, so we'll explain them together.
  870.  
  871.          Move the cursor to the column where you'd like to begin expanding
  872.          or shrinking.  Be sure Edit Mode is on (press ctrl-E), then press
  873.          alt-B to pull down the Block menu.  Select either Expand Column or
  874.          Shrink Column.  PDT then displays one of these windows:
  875.  
  876.          ╔═══════╣ Insert Columns ╠═════╗ ╔══════╣ Delete Columns ╠═════╗
  877.          ║                              ║ ║                             ║
  878.          ║          Begin at Column: 33 ║ ║         Begin at Column: 33 ║
  879.          ║        Number of Columns: 1  ║ ║       Number of Columns: 1  ║
  880.          ║ASCII # of fill character: 32 ║ ║                             ║
  881.          ║   Alter Structure? (Y/N): Y  ║ ║  Alter Structure? (Y/N): Y  ║
  882.          ║  Alter DBF Header? (Y/N): Y  ║ ║ Alter DBF Header? (Y/N): Y  ║
  883.          ║                              ║ ║                             ║
  884.          ║         Begin? (Y/N):        ║ ║         Begin? (Y/N):       ║
  885.          ╚══════════════════════════════╝ ╚═════════════════════════════╝
  886.  
  887.          In each window you must answer several questions:
  888.  
  889.            * You first enter the number of the column where you want to
  890.              begin -- "Begin at Column."  The number you'll see (33 in
  891.              the example above) is where your cursor was when you began
  892.              this operation.  Change this number, if you like, to begin
  893.              somewhere else.  Press <cr>.
  894.  
  895.  
  896.            * Next, enter how many columns you want to insert or delete.
  897.              If you marked a column block (ctrl-M), you'll see the
  898.              number of columns you marked (rather than 1).
  899.  
  900.  
  901.            * IF you're expanding a column, enter the ASCII number of the
  902.              character we should fill with the area with.  "32" is Space;
  903.              enter 0 - 254.  If you're not sure what number to enter,
  904.              press F7 to choose a character from PDT's ASCII table.
  905.  
  906.  
  907.            * Next, press <Y>es or <N> to tell PDT if you'd like to update
  908.              the structure file, and, if appropriate, the header of the
  909.              dBase (DBF) file.  This can be CRITICAL!  See Tips & Notes.
  910.  
  911.  
  912.            * Finally, press <Y>es to begin, or <N>o or <Esc> to quit.
  913.                                                                        
  914.  
  915.  
  916.                                                                     1.14
  917.  
  918.  
  919.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  920.          │                                                             │▄
  921.          │ If you change the width of fields in dBase files and DON'T  │█
  922.          │ update the header, other programs may be unable to read     │█
  923.          │ the file.  This could render the file USELESS!  Be careful. │█
  924.          │                                                             │█
  925.          │ With dBase files, PDT CANNOT:                               │█
  926.          │                                                             │█
  927.          │  1. Change the first, "Deleted record" field.               │█
  928.          │                                                             │█
  929.          │  2. Delete a field (shrink it to 0).  Use PDT Tool Kit      │█
  930.          │     programs to delete dBase fields.                        │█
  931.          │                                                             │█
  932.          │  3. Delete columns across fields -- since this effectively  │█
  933.          │     deletes the fields in the middle.  To shrink two or     │█
  934.          │     more fields, shrink them separately.                    │█
  935.          └─────────────────────────────────────────────────────────────┘█
  936.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  937.  
  938.  
  939.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  940.          │                                                             │▄
  941.          │ EXPAND columns inserts blank columns to the LEFT of the     │█
  942.          │ "Begin at Column" (which is usually where the cursor was    │█
  943.          │ when you invoked this option).                              │█
  944.          │                                                             │█
  945.          │ If this column is the LAST column of a field, inserting     │█
  946.          │ blanks to the left will shift everything in the last column │█
  947.          │ to the right.  If this happens, just:                       │█
  948.          │                                                             │█
  949.          │  1. Move right to the new end of the field.  Be sure you're │█
  950.          │     on the top row (press ctrl-Home).  Then mark a single   │█
  951.          │     column from top-to-bottom by pressing:                  │█
  952.          │                                                             │█
  953.          │            ctrl-M  ctrl-End  ctrl-M  ctrl-Home              │█
  954.          │                                                             │█
  955.          │  2. Now move left to where that column used to be (ie.,     │█
  956.          │     the "Begin at Column").  Press ctrl-W to copy the       │█
  957.          │     marked column to the column you're now in.              │█
  958.          │                                                             │█
  959.          │  3. Immediately press ctrl-F and Fill the marked column     │█
  960.          │     with one blank space (or any ASCII character).          │█
  961.          └─────────────────────────────────────────────────────────────┘█
  962.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  963.  
  964.                                                                        
  965.  
  966.  
  967.                                                                     1.15
  968.  
  969.  
  970.          The DEFINE Menu
  971.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  972.  
  973.            file  edit  search  block  DEFINE  options  help  (F1)
  974.                                     ┌─────────────────────────────────┐
  975.                                     │ Header length          (ctrl-H) │
  976.                                     │ Record length          (ctrl-L) │
  977.                                     │ Reduce rec. len 1      (F9)     │
  978.                                     │ Increase rec. len 1    (F10)    │
  979.                                     │ Force dBase structure           │
  980.                                     │ Display Fields: OFF    (ctrl-D) │
  981.                                     │ Clear Structure                 │
  982.                                     ├─────────────────────────────────┤
  983.                                     │ Define Field           (F2)     │
  984.                                     │ Edit Field Structure   (F3)     │
  985.                                     │ Save Structure File    (F4)     │
  986.                                     │ Load Structure File    (F5)     │
  987.                                     └─────────────────────────────────┘
  988.  
  989.  
  990.          Use options in this menu to define the structure of files.  This
  991.          menu also has options affecting how PDT displays files (Force
  992.          dBase, Display Fields and Clear Structure).
  993.  
  994.  
  995.          Header Length                            ctrl-H;  Define/Header
  996.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  997.  
  998.          Use this option to specify the top portion of a file you want
  999.          PDT to treat as a "header" and not display.  To set the header
  1000.          length, press ctrl-H (or select Header Length from the Define
  1001.          menu), then enter the size of the header (0 - 999 million bytes).
  1002.  
  1003.          What's a Header?
  1004.          ────────────────
  1005.  
  1006.          Many files, like dBase ".DBF" files, begin with a header.  Pro-
  1007.          grams read this header to determine what's in the file:  how
  1008.          many fields it has, the length and type of each field, etc..
  1009.          The header is NOT data.  So we set header lengths to tell PDT
  1010.          to skip them and begin displaying the file with the first record.
  1011.  
  1012.          PDT automatically recognizes dBase files (by the .DBF extension),
  1013.          reads the header and displays records and fields appropriately.
  1014.  
  1015.          But if your file is not a dBase file, AND it has a header, set
  1016.          the header length to help PDT properly display your data.
  1017.  
  1018.  
  1019.                                                                        
  1020.  
  1021.  
  1022.                                                                     1.16
  1023.  
  1024.  
  1025.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1026.          │                                                             │▄
  1027.          │ Setting the header length is usually the FIRST STEP in      │█
  1028.          │ defining the "structure" of a file.   If a file has a       │█
  1029.          │ header, it's much easier figuring out the rest of the       │█
  1030.          │ file structure if you tell PDT not to display the header.   │█
  1031.          │                                                             │█
  1032.          │ Once you set the header, press F4 to save a structure file. │█
  1033.          │ The next time you open this file, PDT will set the header   │█
  1034.          │ size automatically.                                         │█
  1035.          └─────────────────────────────────────────────────────────────┘█
  1036.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1037.  
  1038.  
  1039.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1040.          │                                                             │▄
  1041.          │ A fast way to set header lengths is to move the cursor to   │█
  1042.          │ the first character in a record, then press ctrl-H, ctrl-   │█
  1043.          │ Enter.  Everything above that point will be treated as a    │█
  1044.          │ header.                                                     │█
  1045.          │                                                             │█
  1046.          │ This is handy when working in the middle or bottom of large │█
  1047.          │ files.  Periodically setting a new header length lets you   │█
  1048.          │ press PgUp or ctrl-Home and move no higher than the first   │█
  1049.          │ record you want to work with.                               │█
  1050.          └─────────────────────────────────────────────────────────────┘█
  1051.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1052.  
  1053.  
  1054.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1055.          │                                                             │▄
  1056.          │ If you open a dBase file and would like to see or edit or   │█
  1057.          │ repair the header:                                          │█
  1058.          │                                                             │█
  1059.          │  * Press ctrl-H and enter "0" (zero) for Header Length.     │█
  1060.          │                                                             │█
  1061.          │  * Press ctrl-Home then Home to be sure you're at the first │█
  1062.          │    byte of the file.  You're now looking at the header.     │█
  1063.          │                                                             │█
  1064.          │ NOTE:  Registered users receive Fix-DBF.Hdr and Fix-DBF.Fld.│█
  1065.          │ These are very handy PDT structure files which can help you │█
  1066.          │ explore the header and field structure of dBase files.      │█
  1067.          │                                                             │█
  1068.          │ And these can be INVALUABLE if a dBase file is ever damaged.│█
  1069.          │ They can help you isolate and fix the corrupted areas.      │█
  1070.          └─────────────────────────────────────────────────────────────┘█
  1071.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1072.  
  1073.  
  1074.                                                                        
  1075.  
  1076.  
  1077.                                                                     1.17
  1078.  
  1079.  
  1080.          Record Length                            ctrl-L;  Define/Record
  1081.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1082.  
  1083.          Set the Record Length to tell PDT how long each "logical line"
  1084.          is in a file.
  1085.  
  1086.          Some files have no logical record length.  Executable (.Exe or
  1087.          .Com) files have no lines in the traditional sense.  And text
  1088.          files often have lines of varying lengths.  For files like these,
  1089.          changing the Record Length simply changes how wide a view PDT
  1090.          displays before it "wraps" the data around to the next row.
  1091.  
  1092.          But many database or data files have fixed-length records, with
  1093.          each record made up of fields (e.g., Last Name, First Name,
  1094.          Address, etc.).  The width of each field is "fixed," so the length
  1095.          of each "record" (e.g., each customer's data) is also fixed.
  1096.  
  1097.          By telling PDT the correct record length, you help it display
  1098.          each record (each customer in our example) on a separate line.
  1099.          And the fields will fall into logical columns.
  1100.  
  1101.          Press ctrl-L (or select Record Length from the Define menu),
  1102.          then enter record length (1 to 9,999 bytes).
  1103.  
  1104.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1105.          │                                                             │▄
  1106.          │ Setting the record length is usually the 2nd step in defin- │█
  1107.          │ ing the "structure" of a file.   Set the record length,     │█
  1108.          │ then press F2 at the beginning of each field and "define"   │█
  1109.          │ it.  Finally, press F4 to save the structure file.          │█
  1110.          │                                                             │█
  1111.          │ If you open a dBase file (one with a ".DBF" extension), PDT │█
  1112.          │ automatically determines the record length.  If your dBase  │█
  1113.          │ files DON'T have a ".DBF" extension, use the Define-Force   │█
  1114.          │ dBase option to tell PDT to read the dBase file's header.   │█
  1115.          │                                                             │█
  1116.          │ ALSO SEE:  Options-Configure.  If you open non-dBase files, │█
  1117.          │ PDT uses two approaches to determine an "appropriate" record│█
  1118.          │ length.  Tell PDT which one to use in the Configure menu.   │█
  1119.          │                                                             │█
  1120.          │  1.  By default, PDT sets the record length to the first    │█
  1121.          │      Carriage Return (CR, Chr$(13)) or, if none, the first  │█
  1122.          │      Line Feed (LF, Chr$(10)) character it finds.  This is  │█
  1123.          │      very handy when working with fixed-length data files   │█
  1124.          │      with each record ending in, say, a CR/LF.              │█
  1125.          │                                                             │█
  1126.          │  2.  But if you'd prefer that PDT set the record length     │█
  1127.          │      to the width of the file window (normally 78 or 38),   │█
  1128.          │      tell PDT to use <W>indow size to set record length.    │█
  1129.          │      This is appropriate if you normally work with files    │█
  1130.          │      that have no structure (like .Exe or .Com files) or    │█
  1131.          │      non-fixed length files (like text files).              │█
  1132.          └─────────────────────────────────────────────────────────────┘█
  1133.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  1134.  
  1135.  
  1136.                                                                     1.18
  1137.  
  1138.  
  1139.          Incrementing/Decrementing Record Length  F10/F9;  Define-F10/F9
  1140.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1141.  
  1142.          These two options are especially handy when trying to determine
  1143.          a file's structure.  Set the header length (ctrl-H), then press
  1144.          ctrl-L and "guess" the record length.  Then press F10 or F9 to
  1145.          increase or reduce the record length by one, respectively.  PDT
  1146.          will quickly re-draw the screen, and you'll often see your data
  1147.          "swing" into view.  Once the record length seems correct, press
  1148.          F4 and save a structure file.
  1149.  
  1150.  
  1151.          Force dBase                                  Define-Force dBase
  1152.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1153.  
  1154.          This option tells PDT to read the header of dBase files to
  1155.          determine the file's record and field structures.  There are
  1156.          two reasons why you might need to do this.
  1157.  
  1158.           1. If you open a dBase file that does NOT have a ".DBF" exten-
  1159.              sion, PDT won't recognize it as a dBase file.  It therefore
  1160.              won't read the dBase header, and can't properly display
  1161.              records and fields.  Choose Force dBase Structure to force
  1162.              PDT to read the dBase header.
  1163.  
  1164.           2. If you change the header or record lengths of dBase files,
  1165.              or edit or clear the structure, select Force dBase to
  1166.              restore the original layout.
  1167.  
  1168.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1169.          │                                                             │▄
  1170.          │ To simplify working with dBase files that don't have ".DBF" │█
  1171.          │ extensions, load them, select Force dBase Structure, then   │█
  1172.          │ immediately press F4 (Save Structure File).                 │█
  1173.          │                                                             │█
  1174.          │ As long as you save the structure file with the same name as│█
  1175.          │ your data file, PDT will load it whenever you open the file.│█
  1176.          │                                                             │█
  1177.          └─────────────────────────────────────────────────────────────┘█
  1178.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1179.  
  1180.                                                                      
  1181.  
  1182.  
  1183.                                                                     1.19
  1184.  
  1185.  
  1186.          Display Fields                   ctrl-D;  Define/Display Fields
  1187.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1188.  
  1189.          Press ctrl-D to tell PDT to display field names on the top line
  1190.          of a file window (replacing the file name).  Press ctrl-D again
  1191.          to turn this feature OFF.
  1192.  
  1193.          This option helps you see which fields are coming up, and which
  1194.          are behind you.  But with narrow columns or fields, it's impos-
  1195.          sible to display the full field name.  If you're not sure what
  1196.          a field is, move the cursor to it, then glance at "FIELD:" on
  1197.          the bottom line of your screen.
  1198.  
  1199.  
  1200.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1201.          │                                                             │▄
  1202.          │ ALSO SEE Appendix I:  Customizing PDT.  In PDT's Configure  │█
  1203.          │ menu you can turn this option ON by default.                │█
  1204.          │                                                             │█
  1205.          └─────────────────────────────────────────────────────────────┘█
  1206.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1207.  
  1208.  
  1209.          Clear Structure                          Define/Clear Structure
  1210.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1211.  
  1212.          Select Clear Structure to clear the field structure for a file.
  1213.          The main use for this option is to turn off the contrasting
  1214.          colors PDT uses to display fields.  This sometimes makes it
  1215.          easier to browse or edit records.  To restore the structure,
  1216.          use Force dBase or Read Structure -- depending on the type of
  1217.          file you're working with.
  1218.  
  1219.          When you select this option:
  1220.  
  1221.           * Header and record lengths won't change.
  1222.  
  1223.           * But since PDT no longer "knows" where and what each field
  1224.             is, it can no longer:
  1225.  
  1226.             - Display fields in contrasting colors.
  1227.  
  1228.             - Display field names at the top and bottom of your screen.
  1229.  
  1230.             - Display the correct values of fields as you change fields.
  1231.  
  1232.             - Offer you the F6 (Edit Field) option since there aren't
  1233.               any fields any more.
  1234.  
  1235.                                                                      
  1236.  
  1237.  
  1238.                                                                     1.20
  1239.  
  1240.  
  1241.          Define Field/Edit Field        F2/F3;  Define/Field-Define/Edit
  1242.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1243.  
  1244.          We're explaining two options together since they work in
  1245.          similar ways.
  1246.  
  1247.          You "define" fields by telling PDT where a field starts, what
  1248.          type of field it is (e.g., Character, Integer, etc.) and what
  1249.          it's name is.  Only the first step is required.
  1250.  
  1251.          Why should I define fields?  Because once you do, PDT will then
  1252.          be able to:  1.  Tell you which field you're in;  2.  Tell you
  1253.          the "value" of that field; and, 3.  Let you press F6 and edit
  1254.          fields, even those stored in packed binary form.
  1255.  
  1256.  
  1257.          This is the last step in creating structure files (after setting
  1258.          the Header and Record lengths).  To define fields:
  1259.  
  1260.           * First move your cursor to the FIRST column of a field.  Al-
  1261.             though not strictly required, this simplifies things a lot.
  1262.             Let's assume you moved to column 1.
  1263.  
  1264.           * Press F2.  When you do, a window like this pops up.
  1265.  
  1266.             ┌─────────────────────────────────────────────────────────┐
  1267.             │  COL TYP NAME      1 <-Field#  WIDTH  TYPES        LEN  │
  1268.             ├─────────────────────────────────────────────────────────┤
  1269.             │    1  C                          81   (c)haracter    ?  │
  1270.             │   81  C  __Past End!                  (t)iny Integer 1  │
  1271.             │                                       (i)nteger      2  │
  1272.             │                                       (l)ong Integer 4  │
  1273.             │                                       (s)ingle MS    4  │
  1274.             │                                       (j)ingle IEEE  4  │
  1275.             │                                       (d)ouble MS    8  │
  1276.             │                                       (k)ouble IEEE  8  │
  1277.             │                                       ($)currency    8  │
  1278.             ├─────────────────────────────────────────────────────────┤
  1279.             │  (^A)dd   (^D)elete   (^T)runcate to End   (F1) = Help  │
  1280.             └─────────────────────────────────────────────────────────┘
  1281.  
  1282.          This window lists the non-dBase field types.  If you're working
  1283.          in a dBase file and press F2, you'd see a window with different
  1284.          field "types" (see below).  NOTE:  If you open a ".DBF" file,
  1285.          PDT reads the field names and starting columns for you.  In this
  1286.          case, the COL, TYP and NAME columns would be already filled in
  1287.          for you!  The columns are blank here since, in this case, we're
  1288.          simply showing how non-dBase field types will appear.
  1289.  
  1290.                                                                        
  1291.  
  1292.  
  1293.                                                                     1.21
  1294.  
  1295.  
  1296.          Here are the dBase field types:
  1297.  
  1298.             ┌─────────────────────────────────────────────────────────┐
  1299.             │  COL TYP NAME      1 <-Field#  WIDTH  TYPES        LEN  │
  1300.             ├─────────────────────────────────────────────────────────┤
  1301.             │   1   C                               (C)haracter    ?  │
  1302.             │  81   C  __Past End!                  (N)umeric      ?  │
  1303.             │                                       (L)ogical      1  │
  1304.             │                                       (D)ate         8  │
  1305.             │                                       (M)emo        10  │
  1306.             ├─────────────────────────────────────────────────────────┤
  1307.             │  (^A)dd   (^D)elete   (^T)runcate to End   (F1) = Help  │
  1308.             └─────────────────────────────────────────────────────────┘
  1309.  
  1310.  
  1311.  
  1312.           * When one of these windows pops up, the cursor would by in
  1313.             the TYP (or Type) column.  PDT initially assumes each field
  1314.             is a Character field, so you'll see "C" or "c" there.  Change
  1315.             the field type, if appropriate, then press <cr>.
  1316.  
  1317.  
  1318.           * Next, enter a field name under NAME.  Although optional,
  1319.             entering field names lets us display field names both at
  1320.             the top of file windows and the bottom of your screen.
  1321.  
  1322.             - Note:  PDT places NO restrictions on field names.  This
  1323.               differs from, say, dBase which capitalizes names and won't
  1324.               allow certain characters in them.  For example, "First Name"
  1325.               must be "FIRST_NAME" in dBase, since dBase won't accept
  1326.               spaces in field names.
  1327.  
  1328.  
  1329.            * BE SURE to press <cr>, then press <Esc>.  If you press <Esc>
  1330.              while your cursor is still in the Name column, PDT will as-
  1331.              sume you want to cancel this action.
  1332.  
  1333.  
  1334.          When you press <Esc>, PDT re-draws the fields in contrasting
  1335.          colors.  To tell PDT about the next field, move the cursor to
  1336.          its first column and press F2.  Enter a field type and name,
  1337.          then press <Enter>, <Esc>.  Repeat this process for the rest of
  1338.          the fields in your file.
  1339.  
  1340.          Finally, press F4 and SAVE the structure file.  PDT saves
  1341.          structure files in its special subdirectory:  PDT.DIR.  As long
  1342.          as you save the structure file with the SAME NAME as your data
  1343.          file, PDT will automatically load your structure file whenever
  1344.          you open the data file.
  1345.  
  1346.          If you save structure files with names DIFFERENT than your data
  1347.          files, just open your data file, then press F4 to load the
  1348.          structure file.                                               
  1349.  
  1350.  
  1351.                                                                     1.22
  1352.  
  1353.  
  1354.          Press F3 to EDIT field structures.  PDT's field window pops up.
  1355.  
  1356.           * PDT will locate your cursor in the line that defines the
  1357.             field you were in when you pressed F3.  So, for example,
  1358.             if you're in the 5th field in your data file and you press
  1359.             F3, PDT will put you on line #5 of this window.
  1360.  
  1361.           * Edit the field type, or name or the starting column.  Press
  1362.             Tab or Shift-Tab to move between columns.  Or press:
  1363.  
  1364.             - ctrl-A to ADD (insert) a field.
  1365.             - ctrl-D to DELETE the field definition your cursor is on.
  1366.             - ctrl-T to TRUNCATE the list, deleting EVERYTHING from the
  1367.               line your cursor is on to the end of the list.
  1368.  
  1369.          Remember, BE SURE to press <cr> after you edit something.  Then
  1370.          press <Esc>.  If you press <Esc> with your cursor still in the
  1371.          column you edited, PDT assumes you want to cancel the action.
  1372.  
  1373.  
  1374.          Saving Structure Files               F4;  Define/Save Structure
  1375.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1376.  
  1377.          Press F4 to save a structure file.  A window pops up and PDT
  1378.          urges you to save the structure file with the SAME NAME as your
  1379.          data file.  Since PDT saves structure files only in PDT.DIR,
  1380.          there should be no chance of overwriting your data file.
  1381.  
  1382.          If you use the same name as your data file, PDT automatically
  1383.          loads the structure file whenever you open the data file.  Per-
  1384.          haps the only times you would NOT use the same name are to save:
  1385.  
  1386.           * Generic structures for data files with the same structure.
  1387.  
  1388.           * Alternate views of the same data file.
  1389.  
  1390.          Reading Structure Files              F5;  Define/Read Structure
  1391.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1392.  
  1393.          Press F5 to read a structure file.  PDT will display its normal
  1394.          file list window listing the structure files saved in PDT.DIR.
  1395.          Click Left on the one you want, or highlight it and press <cr>.
  1396.  
  1397.          You may never have to do this.  If you save structure files with
  1398.          the same name as your data files, PDT reads them automatically.
  1399.          The only times you normally have to press F5 are if you:
  1400.  
  1401.           * Save a structure file with a name different from a data file.
  1402.  
  1403.           * Edite the structure, and now want to restore the original.
  1404.  
  1405.           * Open a dBase (.DBF) file and prefer the structure you
  1406.             created over the dBase structure.                          
  1407.  
  1408.  
  1409.                                                                     1.23
  1410.  
  1411.  
  1412.          The OPTIONS Menu
  1413.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1414.  
  1415.          file  edit  search  block  define  OPTIONS  help  (F1)
  1416.                                      ┌─────────────────────────────────┐
  1417.                                      │ Synchronize windows    (ctrl-Y) │
  1418.                                      │ Jump                   (ctrl-J) │
  1419.                                      │ Get ASCII Character    (F7)     │
  1420.                                      │ View EBCDIC in ASCII   OFF      │
  1421.                                      │ Text view mode         (ctrl-T) │
  1422.                                      │ Calculator             (F8)     │
  1423.                                      ├─────────────────────────────────┤
  1424.                                      │ Configure                       │
  1425.                                      │ Registration                    │
  1426.                                      └─────────────────────────────────┘
  1427.  
  1428.  
  1429.          Synchronize File Windows           ctrl-Y;  Options/Synchronize
  1430.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1431.  
  1432.          "Synchronize windows" means that if you open 2 or more files
  1433.          and then scroll through one file, the other windows will scroll
  1434.          as well.  Move right (or up or down) in one window, and PDT
  1435.          will also scroll other window(s) right (or up or down).
  1436.  
  1437.          This option is especially useful to compare different files, or
  1438.          different parts of the same file (open a file 2 or 3 times).
  1439.  
  1440.          To synchronize windows, open at least two files, then press
  1441.          ctrl-Y.  A small "s" will appear in the top left corner of
  1442.          your screen.  To "un-synchronize" windows, press ctrl-Y again.
  1443.          The small "s" will disappear.
  1444.  
  1445.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1446.          │                                                             │▄
  1447.          │ Before pressing ctrl-Y, you might want to "allign" all files│█
  1448.          │ so the top, left corner is at the same spot in each file.   │█
  1449.          │                                                             │█
  1450.          └─────────────────────────────────────────────────────────────┘█
  1451.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1452.  
  1453.                                                                      
  1454.  
  1455.  
  1456.                                                                     1.24
  1457.  
  1458.  
  1459.          Jump                                      ctrl-J;  Options/Jump
  1460.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1461.  
  1462.          Press ctrl-J to jump to a different location in the active file.
  1463.          PDT then displays this menu:
  1464.  
  1465.  
  1466.                              ┌───────────────────┐
  1467.                              │ ──── Jump To ──── │
  1468.                              │                   │
  1469.                              │     (P)ercent     │
  1470.                              │     (B)yte        │
  1471.                              │     (R)ecord      │
  1472.                              └───────────────────┘
  1473.  
  1474.           * Press (P) to jump to a location, say, 75% into the file.
  1475.           * Press (B) to jump to an specific location (e.g., 9000 bytes).
  1476.           * Press (R) to jump to a specific record.
  1477.  
  1478.          Once you select an option, PDT will ask you to enter the
  1479.          percentage, byte or record to jump to.
  1480.  
  1481.  
  1482.  
  1483.          Get ASCII Character                      F7;  Options/Get ASCII
  1484.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1485.  
  1486.          When editing a file, or when entering a phrase to search for or
  1487.          replace, press F7 to enter ANY ASCII character:  from 0 - 255.
  1488.  
  1489.          PDT will display an ASCII chart.  To select a character:
  1490.  
  1491.           * Click Left on it.
  1492.  
  1493.           * Or press the cursor pad keys until the character you want
  1494.             is highlighted, then press <cr>.  As you move, PDT will
  1495.             display the ASCII (Decimal) and Hexadecimal numbers of the
  1496.             character that's highlighted.
  1497.  
  1498.           * Press <Esc> to quit without selecting a character.
  1499.  
  1500.  
  1501.                                                                        
  1502.  
  1503.  
  1504.                                                                     1.25
  1505.  
  1506.  
  1507.          View EBCDIC in ASCII                        Options/View EBCDIC
  1508.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1509.  
  1510.          EBCDIC (or Extended Binary Coded Decimal Information Code) re-
  1511.          fers to the way information is stored on large IBM computers.
  1512.          On PCs, information is normally stored in ASCII format.
  1513.  
  1514.          If you open an EBCDIC file, select this option to ask PDT to
  1515.          display it in ASCII mode.  This lets you view and edit it in
  1516.          a format that's much easier to understand.
  1517.  
  1518.          NOTE:  Turning this option ON does NOT change the way the file
  1519.          is stored on disk.  It affects only how PDT displays it.  Any
  1520.          changes you make are saved to disk in EBCDIC format.
  1521.  
  1522.          When you select this option, the menu will toggle between ON
  1523.          and OFF, as in "View EBCDIC in ASCII  ON."
  1524.  
  1525.  
  1526.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1527.          │                                                             │▄
  1528.          │ WARNING:  As we mentioned before, this version of PDT does  │█
  1529.          │ NOT translate EBCDIC packed binary numeric fields!          │█
  1530.          │                                                             │█
  1531.          │  * You CAN use all of PDT's EBCDIC options with such files. │█
  1532.          │                                                             │█
  1533.          │  * But you should NEVER edit these packed binary numerics.  │█
  1534.          │                                                             │█
  1535.          │  * You CAN safely edit the CHARACTER portions of EBCDIC     │█
  1536.          │    files.  These changes are saved (correctly) in EBCDIC.   │█
  1537.          └─────────────────────────────────────────────────────────────┘█
  1538.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1539.  
  1540.  
  1541.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1542.          │                                                             │▄
  1543.          │ ALSO SEE:  Options-Configure.  In PDT's Configure menu, you │█
  1544.          │ can turn this option ON by default.  This is convenient if  │█
  1545.          │ you'll always work with EBCDIC files.                       │█
  1546.          │                                                             │█
  1547.          │ ALSO SEE:  File-Translate.  PDT's File menu has two options │█
  1548.          │ letting you translate EBCDIC files to ASCII, and back again.│█
  1549.          │                                                             │█
  1550.          │ SAVE a STRUCTURE FILE:  If you open an EBCDIC file, and     │█
  1551.          │ turn this option ON, immediately save a structure file --   │█
  1552.          │ even if you don't want to mark fields, set record size, etc.│█
  1553.          │ Then, whenever you open this file, PDT will read the struc- │█
  1554.          │ ture file, and turn EBCDIC view mode on for you.            │█
  1555.          └─────────────────────────────────────────────────────────────┘█
  1556.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1557.                                                                        
  1558.  
  1559.  
  1560.                                                                     1.26
  1561.  
  1562.  
  1563.          Text View Mode                       ctrl-T;  Options/Text View
  1564.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1565.  
  1566.          Since PDT "displays" all characters in files (rather than
  1567.          "acting" on them), it's not well-suited for browsing through
  1568.          or editing text files with variable-length lines, all ending
  1569.          with a Carriage Return/Line Feed.
  1570.  
  1571.          But if you open a text file and want to view it in normal text
  1572.          mode, press ctrl-T.  PDT will suspend all normal operations
  1573.          and re-display the file from "roughly" where your cursor is.
  1574.          By "roughly" we mean within a PgUp or PgDn of where you are.
  1575.          Browse around, then press <Esc> to resume normal operations --
  1576.          again, roughly where you were when you pressed <Esc>.
  1577.  
  1578.  
  1579.          Calculator                              F8;  Options/Calculator
  1580.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1581.  
  1582.          Press F8 to pop up PDT's calculator.  PDT will turn on
  1583.          NUMLOCK so you can enter numbers on the numeric keypad.
  1584.  
  1585.          One use for the calculator is to determine the Hexadecimal
  1586.          value of a Decimal number.  Just enter the decimal number,
  1587.          then press H to see its Hex equivalent.  But you can't do
  1588.          the reverse -- you can't enter a Hex number and get it's
  1589.          decimal equivalent.
  1590.  
  1591.          PDT will display Hexadecimal values in contrasting colors.
  1592.          Just press a key to restore the decimal value and resume.
  1593.  
  1594.  
  1595.          Configure                                     Options/Configure
  1596.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1597.  
  1598.          Select this option to "customize" PDT to your liking.  See
  1599.          Appendix I for details.
  1600.  
  1601.  
  1602.          Registration                               Options/Registration
  1603.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1604.  
  1605.          This option simply displays the name of the registered user
  1606.          of the program you're using.
  1607.  
  1608.          When you order PDT from us, or when, as a registered user, you
  1609.          run Install.Exe, your name, address and phone number are
  1610.          embedded in PDT.
  1611.  
  1612.          This option lets you (or us) quickly determine who licensed
  1613.          the copy you're using.
  1614.                                                                        
  1615.  
  1616.  
  1617.                                                                     1.27
  1618.  
  1619.  
  1620.          The HELP Menu
  1621.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1622.  
  1623.  
  1624.            file  edit  search  block  define  options  HELP  (F1)
  1625.                                       ┌──────────────────────────────┐
  1626.                                       │ Introduction & Features      │
  1627.                                       │ Getting Help                 │
  1628.                                       │ Using the Menus              │
  1629.                                       │ Summary of Commands          │
  1630.                                       │ Using a Mouse                │
  1631.                                       │ Installing & Customizing PDT │
  1632.                                       ├──────────────────────────────┤
  1633.                                       │ To Order, or To Get Support  │
  1634.                                       ├──────────────────────────────┤
  1635.                                       │ Browse through PDT.Ref       │
  1636.                                       └──────────────────────────────┘
  1637.  
  1638.  
  1639.          To get help, press F1 almost anytime.  Or pull down the Help
  1640.          menu, highlight an option, and then either:
  1641.  
  1642.           * Press F1.  PDT will display 1 or more help screens, and
  1643.             then return to the Help menu.  Just select another topic,
  1644.             or press <Esc> to exit the Help menu, or select a different
  1645.             menu.
  1646.  
  1647.           * Or press <cr>.  PDT will display the same screens it would
  1648.             have if you pressed F1.  But when you're done, it will exit
  1649.             the Help menu.
  1650.  
  1651.  
  1652.  
  1653.                                                                        
  1654.  
  1655.  
  1656.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1657.  
  1658.          SECTION V:  Appendices
  1659.  
  1660.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1661.  
  1662.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1663.  
  1664.          APPENDIX I:  Creating Structure Files Outside PDT
  1665.  
  1666.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1667.  
  1668.          To summarize, structure files "define" the structure of files:
  1669.          record length, field type and length, etc..  If PDT knows the
  1670.          structure of a file:
  1671.  
  1672.           * PDT displays records and fields in logical rows and columns.
  1673.  
  1674.           * PDT can display field names both at the top of each file
  1675.             window, and at the bottom of your screen.
  1676.  
  1677.           * PDT displays the "values" of fields.
  1678.  
  1679.           * PDT lets you edit the contents of fields, even fields stored
  1680.             in "packed binary" form (except EBCDIC packed binary fields).
  1681.  
  1682.           * You can tab from field-to-field to easily view or edit fields.
  1683.  
  1684.          A structure file is a simple ASCII file that MUST be stored
  1685.          in PDT's special sub-directory:  PDT.DIR.  The easiest way
  1686.          to create or edit structure files is by using PDT.  Or use
  1687.          any editor or word processor -- they're very easy to create.
  1688.          NOTE:  When PDT saves structure files, it adds a column indi-
  1689.          cating the WIDTH of each field.  This can help you create
  1690.          "types" or "structures" in various programming languages.
  1691.          You do NOT have to add the Width column to structure files.
  1692.  
  1693.          Here's what a structure file looks like.  This is part of the
  1694.          structure file we included with PDT:  SAMPLE_2.STR.
  1695.  
  1696.                  PDT.STRUCTURE  │ Do NOT move or change this line! │
  1697.                     257  <Header Size
  1698.                      80  <Record Size
  1699.                  EBCDIC  <Data Type
  1700.                       1 , C , Deleted Record Flag
  1701.                       2 , C , FIRST_NAME
  1702.                      12 , C , LAST_NAME
  1703.  
  1704.          Lines 1-4 are REQUIRED.  They MUST be in the order and format
  1705.          shown.  And there must be NO blank lines before these, or
  1706.          between lines in structure files.
  1707.  
  1708.           1.  The 1st line is PDT's "signature line."  PDT looks for
  1709.               this line to ensure that you don't overwrite your data
  1710.               files (since structure files are usually saved with the
  1711.               same name as your data files).  If you try to read struc-
  1712.               ture files without this signature line, PDT may refuse.  
  1713.  
  1714.  
  1715.                                                                    A.1.2
  1716.  
  1717.  
  1718.           2.  The 2nd line defines how long the file "header" is.
  1719.  
  1720.               - "Headers" tell programs about a file's record and
  1721.                 field structure.  Headers aren't data.  So by
  1722.                 specifying a Header Size, you tell PDT not to
  1723.                 display the first "xxx" bytes of a file.
  1724.  
  1725.               - If your file has no header, enter:  0 <Header Size.
  1726.                 In other words, this line MUST be there.
  1727.  
  1728.  
  1729.           3.  On line #3, enter the logical record length of each line
  1730.               of data in the file (excluding the header).  For example,
  1731.               if records are 689 bytes long, enter:   689 <Record Size
  1732.  
  1733.  
  1734.           4.  Line #4 must read "ASCII <Data Type" or "EBCDIC <Data Type."
  1735.  
  1736.               - Enter EBCDIC only if your data file is in EBCDIC format.
  1737.  
  1738.               - When you open this data file, PDT automatically turns on
  1739.                 EBCDIC-to-ASCII view mode -- letting you view the file
  1740.                 in easier-to-understand (and edit) ASCII.  If your file
  1741.                 is NOT in EBCDIC format, using EBCDIC here will result
  1742.                 in screens-full of garbage.
  1743.  
  1744.  
  1745.           5.  Line 5 through the last line in the structure file define
  1746.               each "field" in a record.  Each line has 3 sections:
  1747.  
  1748.               - Which column the field starts in.
  1749.               - What "type" of field it is (we'll define this later).
  1750.               - The name of the field.
  1751.  
  1752.               Notice you don't have to tell PDT how wide each field is.
  1753.               PDT calculates this based on the fields' starting columns.
  1754.  
  1755.               The field name is optional.  If you include it, PDT can
  1756.               show you which field you're in as you move around.
  1757.  
  1758.               These 3 sections MUST be separated by 2 (and only 2)
  1759.               commas.  And you MUST NOT use commas inside any section.
  1760.               For example, this line is illegal:  1,493, C, Comment Field
  1761.  
  1762.               Notice the 3 commas, not two, with the errant comma in
  1763.               "1,493."  This line should read:  1493, C, Comment Field
  1764.  
  1765.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1766.          │                                                             │▄
  1767.          │ PDT treats the first byte of files as byte #1.  In some pro-│█
  1768.          │ gramming languages, the first byte in files is numbered 0.  │█
  1769.          │ For example, a 250 byte header is in bytes 1-250, not 0-249.│█
  1770.          └─────────────────────────────────────────────────────────────┘█
  1771.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  1772.  
  1773.  
  1774.                                                                    A.1.3
  1775.  
  1776.  
  1777.          Field "Types"
  1778.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1779.  
  1780.          If PDT knows the "type" of each field, it:
  1781.  
  1782.           * Displays the value of fields as you move from field-to-field.
  1783.  
  1784.           * Lets you press F6 (Edit Field) to edit fields.  This option is
  1785.             especially useful to help you edit numeric fields stored in
  1786.             "packed binary" form (except EBCDIC packed binary fields).
  1787.  
  1788.             The discussion of the EDIT menu has details on Edit Field.
  1789.  
  1790.          Here are the symbols you'd enter to indicate different types of
  1791.          fields.  Note the different symbols for dBase and non-dBase files.
  1792.  
  1793.          ══════ dBase Field Types ═════    ═══ Non-dBase Field Types ════
  1794.  
  1795.          Use This    For This     Field    Use This    For This     Field
  1796.           Symbol   Type of Field  Width     Symbol   Type of Field  Width
  1797.          ────────  ─────────────  ─────    ────────  ─────────────  ─────
  1798.  
  1799.             C      Character         ?        c      Character        ?
  1800.             N      Numeric           ?        t      Tiny Integer     1
  1801.             L      Logical           1        i      Integer          2
  1802.             M      Memo             10        l      Long Integer     4
  1803.             D      Date              8        s      Single MS        4
  1804.                                               j      Single IEEE      4
  1805.                                               d      Double MS        8
  1806.                                               k      Double IEEE      8
  1807.                                               $      Currency         8
  1808.  
  1809.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1810.          │                                                             │▄
  1811.          │  Note that symbols for dBase files are UPPER case, while    │█
  1812.          │  symbols for non-Dbase field types are all in lower case.   │█
  1813.          │                                                             │█
  1814.          │  In the non-dBase list, note the s/j and d/k pairs -- indi- │█
  1815.          │  cating Microsoft (MS) versus IEEE formats, respectively.   │█
  1816.          │                                                             │█
  1817.          │  CAUTION:  In this version of PDT, numeric fields in EBCDIC │█
  1818.          │  files aren't accomodated.  See notes on this elsewhere.    │█
  1819.          └─────────────────────────────────────────────────────────────┘█
  1820.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1821.  
  1822.          In the tables above, "Field Width" indicates how many characters
  1823.          or columns each field can have.  "Character fields" (and dBase
  1824.          Numeric fields) are "?" wide -- they vary in width.  But other
  1825.          fields have fixed widths.  So, for example, while Integers range
  1826.          from -32768 to +32767 or 0 to 65535, they are stored in 2 bytes.
  1827.  
  1828.                                                                        
  1829.  
  1830.  
  1831.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1832.  
  1833.          APPENDIX II:  Tips; Salvaging Damaged Data Files
  1834.  
  1835.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1836.          
  1837.          Exploring or Determining File Structures
  1838.          ────────────────────────────────────────
  1839.  
  1840.          To determine a file's structure, open it and move the cursor to
  1841.          row 1, column 1.  Now look for two or three types of patterns.
  1842.  
  1843.          First, try to see if there's a file header.  Its pattern often
  1844.          differs from the pattern of data records.
  1845.  
  1846.          For example, in the file shown below, there's a pattern of capi-
  1847.          talized field names, each followed by some symbols.  This is
  1848.          followed by a different pattern of names, addresses, etc.
  1849.  
  1850.          13\^X  OO               FIRST_NAME  C    0       LAST_NAME  ^
  1851.                    ADDRESS  C   k          CITY  C   C             STAT
  1852.             ZIP    C    ,           Kim       Johnson       3300 South 1
  1853.                CO 31002 (714) 525-9933    Dennis    Avery         127 Ea
  1854.          George      WA 98322 (801) 566-9112    Andrew    Youngman
  1855.  
  1856.          As a "rough guess" of the header's length, move the cursor to
  1857.          space before the "K" in "Kim."  Press ctrl-H then ctrl-Enter.
  1858.          PDT will treat everything above that point as the header.
  1859.  
  1860.          Next, determine the record length.  Again, look for patterns.
  1861.          For example, notice the first names here: Kim, Dennis and
  1862.          Andrew.  For a "rough guess" of the record length, use PDT's
  1863.          "mark block" option.  Put your cursor on the space before "K"
  1864.          in Kim, press ctrl-B, then move down and right.  As you mark
  1865.          the block, PDT shows you how many bytes you've marked.  When you
  1866.          reach the space before "Dennis" press ctrl-L and enter the
  1867.          number of bytes PDT says you've marked.
  1868.  
  1869.           * If your data doesn't leap into proper view, press F10 or F9.
  1870.  
  1871.           * These options adjust the record length up or down by 1.  By
  1872.             leaning on these keys you'll often see data swing into the
  1873.             proper view.  Press F4 and save a structure file.
  1874.                                                                         
  1875.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1876.          │ When determining Record Length, watch for DIAGONAL patterns.│▄
  1877.          │                                                             │█
  1878.          │ ...........xxxxxxxxxxx---------**********^^^^####!!!!!!@@@@@│█
  1879.          │ @@@@@...........xxxxxxxxxxx---------**********^^^^####!!!!!!│█
  1880.          │ !!!!@@@@@...........xxxxxxxxxxx---------**********^^^^####!!│█
  1881.          │                                                             │█
  1882.          │ Diagonal patterns like these indicate BOTH that this is a   │█
  1883.          │ fixed-length record file, AND that record size isn't right. │█
  1884.          └─────────────────────────────────────────────────────────────┘█
  1885.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1886.                                                                        
  1887.  
  1888.  
  1889.                                                                    A.2.2
  1890.  
  1891.  
  1892.          Salvaging Damaged Data Files
  1893.          ────────────────────────────
  1894.  
  1895.          Registered users receive the PDT Tool Kit.  It's on-disk manual
  1896.          includes a section on repairing damaged data files.  The Tool
  1897.          Kit also contains two files called: Fix_DBF.Hdr and Fix_DBF.Fld.
  1898.          These PDT structure files can be invaluable when you need to
  1899.          inspect or repair dBase files.  They let you examine the Header
  1900.          or the Field Structure, respectively.  The Tool Kit's on-disk
  1901.          manual explains how to use these files.
  1902.  
  1903.                                                                        
  1904.  
  1905.  
  1906.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1907.  
  1908.          APPENDIX III:  Error Messages
  1909.  
  1910.          ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1911.          
  1912.          We try to prevent errors from disrupting your work.  For
  1913.          example, we check to see if there's enough room on the disk
  1914.          when you try to copy or expand files.  And, unless you tell us
  1915.          NOT to ask your permission before overwriting files, we'll tell
  1916.          you when you're about to do so.
  1917.          
  1918.          Most errors will likely be DOS errors like DISK or FILE errors:
  1919.  
  1920.           * You try to write to an unformatted disk.
  1921.           * You try to read from a floppy disk with the drive door open.
  1922.           * A disk is damaged and can't be read or written to.
  1923.           * You tell PDT to read the structure of a dBase file, but
  1924.             it's not a dBase file.
  1925.  
  1926.          In most cases, PDT will tell you an error occurred, stop what
  1927.          it was doing, then let you continue.  If you can, fix the error
  1928.          and try again.
  1929.  
  1930.          Other errors might be fatal -- PDT will abort.  Frankly we've
  1931.          never seen this happen.  But it's possible.
  1932.  
  1933.          ┌─────────────────────────────────────────────────────────────┐
  1934.          │                                                             │▄
  1935.          │  If a FATAL error occurs, or if an error occurs repeatedly, │█
  1936.          │  PLEASE let us know.  Describe exactly what you were doing, │█
  1937.          │  what happened, and what error number or message appeared   │█
  1938.          │  (if any).  We'll be glad to fix any errors or bugs we can. │█
  1939.          │                                                             │█
  1940.          │  For a fast response to the problem, call:  (415) 863-0530. │█
  1941.          └─────────────────────────────────────────────────────────────┘█
  1942.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1943.                                                                        
  1944.