home *** CD-ROM | disk | FTP | other *** search
/ World of Shareware - Software Farm 2 / wosw_2.zip / wosw_2 / DATABASE / PDT_23.ZIP / PDT.DOC < prev    next >
Text File  |  1992-08-17  |  202KB  |  4,193 lines

  1.  
  2.               ────────────────────────────────────────────────
  3.                 ────────────────────────────────────────────
  4.                   ────────────────────────────────────────
  5.                     ────────────────────────────────────
  6.                       ────────────────────────────────
  7.                         ────────────────────────────
  8.                           ────────────────────────
  9.                             ────────────────────
  10.                               ────────────────
  11.  
  12.                             Pro~Formance Data Tool
  13.  
  14.                                      by
  15.  
  16.                                Rob W. Smetana
  17.  
  18.                               ────────────────
  19.                             ────────────────────
  20.                           ────────────────────────
  21.                         ────────────────────────────
  22.                       ────────────────────────────────
  23.                     ────────────────────────────────────
  24.                   ────────────────────────────────────────
  25.                 ────────────────────────────────────────────
  26.               ────────────────────────────────────────────────
  27.  
  28.                          **  Version 2.3 (8/92)  **
  29.  
  30.  
  31.  
  32.             Copyright (C) 1987-1992, Rob W. Smetana and Pro~Formance.
  33.                               All Rights Reserved
  34.  
  35.           Pro~Formance Data Tool, PDT and Pro~Formance are trademarks of
  36.                          Rob W. Smetana and Pro~Formance.
  37.  
  38.  
  39.          ┌─────────────────────────── NOTE ────────────────────────────┐
  40.          │                                                             │▄
  41.          │   NOTE:  If your printer CAN'T print the lines, boxes and   │█
  42.          │   shading in this manual, BEFORE you print this, read the   │█
  43.          │   next page ── the section on using Translate.Exe.          │█
  44.          └─────────────────────────────────────────────────────────────┘█
  45.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  46.  
  47.  
  48.           To register, call with your Visa or MasterCard number for
  49.           quickest delivery.  Or complete the order form at the end
  50.           of this manual.  Or send your registration fee plus $4 ship-
  51.           ping & handling ($8 shipping outside the U.S. and Canada),
  52.           along with your name, address and phone number to:
  53.  
  54.                      Rob W. Smetana       (415) 863 - 0530
  55.                      Pro~Formance
  56.                      132 Alpine Terrace
  57.                      San Francisco, Ca  94117
  58.                                                                        
  59.  
  60.  
  61.          Viewing This Guide, or Printing It;  Using Translate.Exe
  62.          ═══════════════════════════════════════════════════════════════
  63.  
  64.  
  65.          You can:  print this manual, or view it from inside PDT itself.
  66.          And you can edit this to add your own tips and reminders, then
  67.          browse through them while running PDT.  To do this, just press
  68.          alt-H (Help), then select Browse through PDT.Doc.
  69.  
  70.           * IF YOU PRINT THIS, please note this guide includes high
  71.             ASCII characters which we use for lines, boxes and shading.
  72.  
  73.             Some printers CAN'T print these lines and boxes properly.
  74.             Instead, they'll print italic or other characters.
  75.  
  76.           * If your printer CAN'T print high ASCII characters, you can:
  77.  
  78.             - Run TRANSLATE.EXE that we included.  It will translate
  79.               the high ASCII characters to other characters ANY printer
  80.               can print.  For example:
  81.  
  82.                         ┌────────┐            +--------+
  83.                         │This Box│    will    |This Box|
  84.                         ├────────┤            |--------|
  85.                         │        │   become   |        |
  86.                         └────────┘            +--------+
  87.  
  88.               You can tell Translate.Exe to print this Guide, or send
  89.               it to another disk file.  The next page has details.
  90.  
  91.  
  92.             - OR, you could print this using MULTI-PRINT program (MP),
  93.               another program from Pro~Formance.
  94.  
  95.               MP prints up to 4 pages of text on each sheet of paper.
  96.               It includes 4 fonts to print almost all ASCII characters.
  97.               And it works with LaserJets, or Epson or Toshiba printers.
  98.  
  99.               MP prints in normal Portrait mode (2-sided), or in Landscape
  100.               mode (sideways, on all 3 types of printers)!  In landscape
  101.               mode you can print 4 pages of text on each sheet of papert in
  102.               booklet form, or left-to-right (suitable for 3-ring binders).
  103.  
  104.  
  105.             - Finally, instead of printing this, just browse through it
  106.               while you're running PDT.
  107.  
  108.                                                                        
  109.  
  110.  
  111.          Using TRANSLATE.EXE
  112.          ───────────────────
  113.  
  114.           * For help running Translate, just type:  translate <enter>
  115.             Translate will display the syntax to use to run it.
  116.  
  117.  
  118.           * Briefly, you'd type:  translate filename newfile <enter>
  119.  
  120.             "filename" would be:  PDT.Doc (or the name of any text file)
  121.  
  122.              "newfile" would be:  LPT1, LPT2 or LPT3 to print PDT.Doc.
  123.  
  124.                              or:  a file name to ask Translate to send
  125.                                   the translated output to a file.
  126.  
  127.           * For example:
  128.  
  129.             translate pdt.doc lpt1           'prints PDT.Doc on the
  130.                                              'printer hooked up to LPT1.
  131.  
  132.             translate pdt.doc new.doc        'this tells translate to
  133.                                              'translate PDT.Doc and
  134.                                              'send the output to a new
  135.                                              'file called New.Doc,
  136.  
  137.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  138.          │                                                             │▄
  139.          │ You can use Translate.Exe to translate ANY file -- not      │█
  140.          │ just PDT.Doc.                                               │█
  141.          │                                                             │█
  142.          │ Translate does NOT check to see if "newfile" exists.  If    │█
  143.          │ "newfile" does exist, Translate will OVERWRITE it.          │█
  144.          │                                                             │█
  145.          │ Translate does NOT check to see if your printer is ready.   │█
  146.          │ Nor will it tell you if your printer runs out of paper.     │█
  147.          └─────────────────────────────────────────────────────────────┘█
  148.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  149.  
  150.  
  151.          ┌───────────────────── ACKNOWLEDGEMENTS ──────────────────────┐
  152.          │                                                             │▄
  153.          │ We'd like to thank the following people who've helped make  │█
  154.          │ PDT possible.                                               │█
  155.          │                                                             │█
  156.          │ For showing such tremendous interest in PDT and serving as  │█
  157.          │ Alpha and Beta testers, we thank:  Kent Drummond (Cheyenne, │█
  158.          │ WY), Larry Brown (Denver, CO),                              │█
  159.          │                                                             │█
  160.          │ Special thanks go to Frederick Volking who's ABSED, which he│█
  161.          │ released into the public domain, inspired us to develop PDT.│█
  162.          └─────────────────────────────────────────────────────────────┘█
  163.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  164.  
  165.                                                                        
  166.  
  167.                                     Contents
  168.           ═══════════════════════════════════════════════════════════════
  169.  
  170.             System Requirements ................................... a
  171.             License ............................................... a
  172.             To Register; Registering INSTANTLY .................... b
  173.             Disclaimer and Warranty ............................... d
  174.             Distributing PDT ...................................... c
  175.  
  176.             The Six Sections of This Guide; Terms & Conventions ... d
  177.  
  178.             Quick Start ........................................... e
  179.  
  180.             SECTION I
  181.  
  182.               Introduction ........................................ 1.1
  183.               Caution:  Editing Numeric Fields in EBCDIC Files .... 1.3
  184.               Installing PDT ...................................... 1.4
  185.               Setting PDTDIR ...................................... 1.6
  186.  
  187.             SECTION II
  188.  
  189.               Running PDT ......................................... 2.1
  190.               Customizing PDT;  Getting Help ...................... 2.2
  191.  
  192.  
  193.             SECTION III
  194.  
  195.               Example 1 ........................................... 3.1
  196.                 Important Insights into How PDT Works ............. 3.3
  197.                 Moving Around In Files ............................ 3.4
  198.                 PDT's File Windows (What You'll See) .............. 3.5
  199.  
  200.               Example 2 ........................................... 3.7
  201.                 EBCDIC Files ...................................... 3.7
  202.                 Creating Structure Files .......................... 3.8
  203.                 File "Types" ...................................... 3.10
  204.  
  205.  
  206.             SECTION IV:  Summary of Commands
  207.  
  208.                 Using PDT's Menus ................................. 4.1
  209.                 Summary of Hotkeys ................................ 4.3
  210.  
  211.  
  212.             SECTION V:   Command Reference
  213.  
  214.                 The File Menu; Opening Files; the File List ....... 5.1
  215.                     Closing Files; Creating/Deleting/Renaming ..... 5.4
  216.                     Combining (concatenating) Files ............... 5.4
  217.                     Changing File Sizes ........................... 5.5
  218.                     Translating Files: EBCDIC/ASCII-ASCII/EBCDIC... 5.5
  219.  
  220.                 The Edit Menu; Editing Numeric Fields ............. 5.6
  221.  
  222.                 The Search Menu; Search & Replace ................. 5.7
  223.                                                         continued . . .
  224.  
  225.  
  226.                               Contents  (continued)
  227.           ═══════════════════════════════════════════════════════════════
  228.  
  229.  
  230.           SECTION V:   Command Reference  (continued)
  231.  
  232.                 The Block Menu; Marking Blocks .................... 5.8
  233.                     Copying Blocks:  Overwrite or Insert .......... 5.9
  234.                     Deleting Blocks ............................... 5.9
  235.                     Filling or Exporting Blocks ................... 5.10
  236.                     Inserting Spaces or Records ................... 5.10
  237.                     Expanding/Shrinking Columns; Updating Headers . 5.11
  238.  
  239.                 The Define Menu; Specifying Header Lengths ........ 5.13
  240.                     Specifying Record Lengths ..................... 5.15
  241.                     Forcing dBase Structure ....................... 5.16
  242.                     Displaying Field Names ........................ 5.16
  243.                     Clear Structure ............................... 5.17
  244.                     Defining or Editing Field Structures .......... 5.18
  245.                     Saving or Reading File Structures ............. 5.19
  246.  
  247.                 The Options Menu; Jump ............................ 5.20
  248.                     ASCII Chart ................................... 5.20
  249.                     View EBCDIC in ASCII; Text View Mode .......... 5.21
  250.                     Calculator; Configure; Registered Users ....... 5.22
  251.  
  252.                 The Help Menu ..................................... 5.23
  253.  
  254.  
  255.             Appendix   I: Customizing PDT         (Please read) ... A.1
  256.  
  257.             Appendix  II: Creating Structure Files with Editors ... A.5
  258.  
  259.             Appendix III: Helpful Tips ............................ A.8
  260.  
  261.             Appendix  IV: Error Messages .......................... A.9
  262.  
  263.             Appendix   V: Other Programs by Pro~Formance .......... A.10
  264.  
  265.             Appendix  VI: Registering; Ordering             Last 2 Pages
  266.  
  267.  
  268.  
  269.                                                                        
  270.  
  271.  
  272.          System Requirements                                           a
  273.          ═══════════════════════════════════════════════════════════════
  274.          PDT runs on IBM XTs, ATs, PS/2s (and strict compatibles) run-
  275.          ning DOS 2.1 or later (DOS 3.0 or later is strongly recommended).
  276.          A minimum of 330k free memory is required!  If PDT detects too
  277.          little memory, it'll quit, telling you there's too little memory.
  278.  
  279.              Monitor:  Any
  280.          Disk Drives:  Hard disk recommended; floppy disks are fine
  281.              Printer:  PDT doesn't use your printer.
  282.  
  283.          License
  284.          ═══════════════════════════════════════════════════════════════
  285.  
  286.          PDT (the Pro~Formance Data Tool) is NOT free software.  It is
  287.          neither "public domain" software nor "freeware."  It is "user-
  288.          supported" software.
  289.  
  290.          This software is Copyright 1987-1992, Pro~Formance and Company.
  291.          It is protected by both United States copyright law and inter-
  292.          national treaty provisions.
  293.  
  294.          REGISTERED VERSIONS
  295.          ───────────────────
  296.  
  297.          Registered users must treat this software like a copyrighted
  298.          book.  You may use it on any number of computers/CPUs, pro-
  299.          vided there is NO POSSIBILITY that it will be running on two
  300.          or more computers at the same time.  Multi-user network ver-
  301.          sions, and site licenses are available.  Call for details.
  302.  
  303.          You may make a "backup" copy of this software for the sole
  304.          purpose of guarding against the loss of this software and
  305.          protecting your investment.
  306.  
  307.          SHAREWARE VERSIONS
  308.          ──────────────────
  309.  
  310.          You may try out shareware (or "user-supported") versions to
  311.          determine if this program satisfies your needs.  After using
  312.          the shareware version beyond the trial period (30 days or 20-25
  313.          sessions), you MUST register to continue using it -- or stop
  314.          using it.  This is NOT free software.  The next page explains
  315.          the benefits of registering and how to register INSTANTLY.
  316.  
  317.           * PDT is copyrighted software that's distributed through both
  318.             retail and shareware channels.  Shareware versions let you
  319.             try it out before buying it.
  320.  
  321.           * If you paid a "shareware distributor" a $2-$6 fee for a
  322.             disk that contained this program:
  323.  
  324.             - You paid them for copying the disk and sending it to you.
  325.  
  326.             - You did NOT pay for the software.  NONE of the fees you
  327.               pay shareware distributors go to the authors of shareware
  328.               programs.  If you use PDT, you must pay for it.         
  329.  
  330.  
  331.          To Register; Registering INSTANTLY                            b
  332.          ═══════════════════════════════════════════════════════════════
  333.  
  334.          When you register, we "say thanks" in many ways.
  335.  
  336.           * First, we send you the latest version of PDT, with the
  337.             latest features.  For example, we're now adding several new
  338.             features:  ADD or SEQUENCE number fields, change record
  339.             lengths by simply pressing a key, synchronize scrolling of
  340.             two file windows to easily compare different parts of a file.
  341.  
  342.           * Second, we'll send you the BONUS UTILITIES in PDT's "Tool
  343.             Kit."  These teriffic "extras" can help you create, modify,
  344.             and convert data files, or repair damaged database files.
  345.                Create.Exe  Create dBase database files -- with any
  346.                            structure you like!
  347.  
  348.               DBF-DBF.Exe  Modify the structure of dBase files, create
  349.                            new ones, or save subsets of data.  Delete or
  350.                            add fields, change field widths, etc.
  351.  
  352.               DBF-ASC.Exe  DBF-ASC.Exe reads dBase files and creates
  353.               ASC-DBF.Exe  comma-delimited ASCII files.  ASC-DBF.Exe
  354.                            does the opposite:  it reads comma-delimited
  355.                            ASCII files and saves dBase files.
  356.  
  357.              Fix_DBF.Fld   These PDT structure files are invaluable to
  358.              Fix_DBF.Hdr   fix, repair, or simply examine dBase files.
  359.  
  360.  
  361.          To Register
  362.          ───────────
  363.  
  364.          You may register in several different ways:
  365.  
  366.           1. To register INSTANTLY, run Register.Exe.
  367.  
  368.              - Move to the drive/directory where you installed PDT.Exe.
  369.              - Run Register.Exe by typing:   register <cr>.
  370.              - Type in your name, address and phone number.  THEN,
  371.                CALL (415) 863-0530 with your VISA or MasterCard number.
  372.  
  373.                We'll verify the charge to your credit card, and then
  374.                give you a CODE to type into Register that instantly
  375.                converts your shareware version of PDT into a registered
  376.                one.  We'll also send you the latest version on disk.
  377.  
  378.           2.  To register by mail:
  379.  
  380.               - Complete the order form at the end of this manual.
  381.  
  382.               - Or send your registration fee plus $4 shipping &
  383.                 handling ($8 shipping outside the U.S. and Canada),
  384.                 along with your name, address and phone number to:
  385.  
  386.                 Rob W. Smetana  Pro~Formance      (415) 863 - 0530
  387.                                 132 Alpine Ter.   San Francisco, Ca  94117  
  388.  
  389.  
  390.          DISCLAIMER and WARRANTY                                       c
  391.          ═══════════════════════════════════════════════════════════════
  392.  
  393.          Pro~Formance and Rob W. Smetana make no representations or
  394.          warranties with respect to the contents or use of this manual
  395.          and/or the Pro~Formance Data Tool (PDT).
  396.  
  397.          We specifically disclaim any express or implied warranties of
  398.          merchantability or fitness for any particular purpose.
  399.  
  400.           * PDT is a VERY POWERFUL program.
  401.  
  402.           * You can view any file safely (without making changes).  But
  403.             when you turn Edit Mode ON, any changes you make are immedi-
  404.             ately saved to disk!
  405.  
  406.             ALWAYS make backup copies of files before you make major
  407.             changes to them -- especially while learning how to use PDT.
  408.  
  409.          We reserve the right to revise this manual and/or PDT and its
  410.          support files (if any) and to make changes to PDT's operation
  411.          interface or functionality, at any time, without notice and
  412.          without obligation to notify any person or entity of such
  413.          changes or revisions.
  414.  
  415.  
  416.          DISTRIBUTING THIS SOFTWARE
  417.          ═══════════════════════════════════════════════════════════════
  418.  
  419.          Shareware distributors, bulletin boards and user clubs may
  420.          distribute "user-supported" (or shareware) versions of this
  421.          software provided that:
  422.  
  423.           *  Your company name, literature, etc. do not promote or
  424.              include the words "freeware" or "free" software -- which
  425.              terms misrepresent "user-supported" software.  Expressly
  426.              prohibited from distributing any software by Pro~Formance,
  427.              Rob W. Smetana and/or Brandon S. Smetana are:  American
  428.              Freeware, California Freeware and U.S. Freeware.
  429.  
  430.           *  You include, unmodified, all files included with this
  431.              software including:
  432.  
  433.              PDT.Exe, PDT.Doc, PDT.Psl, Sample_1.Dat, Sample_2.Dat,
  434.              Sample_2.Str, and any other files mentioned in Readme.Bat
  435.              or Packing.Lst.
  436.  
  437.           *  You charge a "distribution fee" of no more than $8 (US).
  438.  
  439.           *  You clearly state that continued use of "user-supported"
  440.              software REQUIRES paying for the software.
  441.  
  442.                                                                        
  443.  
  444.  
  445.          The Six Parts of This Guide                                   d
  446.          ═══════════════════════════════════════════════════════════════
  447.  
  448.          To help you get up and running quickly, we've organized this
  449.          quick reference guide into six sections:
  450.  
  451.            I.  Introduction and Installation            (Please read!)
  452.           II.  Running and Customizing PDT; Getting Help
  453.          III.  Examples; Creating Structure Files
  454.           IV   Summary of Commands
  455.            V.  Command Reference
  456.           VI.  Appendices
  457.                  Appendix   I:  Customizing PDT         (Please read!)
  458.                  Appendix  II:  Creating Structure Files with Editors
  459.                  Appendix III:  Helpful Tips; Salvaging Data Files
  460.                  Appendix  IV:  Error Messages
  461.                  Appendix   V:  Other Programs by Pro~Formance
  462.                  Appendix  VI:  Registering; Ordering
  463.  
  464.          PDT may not run if it's installed improperly.  Installing
  465.          PDT is easy, but please read Section I thoroughly.
  466.  
  467.          Once you've installed PDT we strongly recommend you follow
  468.          the examples in Section III, which shows how to use PDT.
  469.  
  470.          It's much easier to explain and understand PDT with pictures
  471.          than with words.  So in Section III, we'll ask you to run PDT
  472.          and open the sample files we provided.  If you follow the step-
  473.          by-step examples, you'll SEE PDT's major features in action.
  474.          When you're done, the rest of this guide will make more sense.
  475.  
  476.  
  477.          Terms and Conventions We Use in This Guide
  478.          ═══════════════════════════════════════════════════════════════
  479.  
  480.          This phrase:    Means you should:
  481.          ──────────────  ───────────────────────────────────────────────
  482.  
  483.                    <cr>  Press the Enter or Return key on your keyboard.
  484.                   <Esc>  Press the Escape key on your keyboard.
  485.                    <F1>  Press Function Key F1 (or F2, F3, etc.).
  486.          <Y>es or (Y)es  Press the key you see in brackets or parentheses.
  487.  
  488.               alt-[key]  HOLD DOWN the Alt key, then press another key.
  489.              ctrl-[key]  HOLD DOWN the Ctrl key, then press another key.
  490.                       ^  Sometimes "ctrl" is abbreviated "^" as in ^S.
  491.  
  492.              click Left  Click the LEFT button on your mouse.
  493.             click Right  Click the RIGHT mouse button.
  494.  
  495.                 ctrl-O;  Whenever we discuss an option, we'll show you
  496.               File-Open  the "hotkey" you'd press AND the menu option
  497.                          you'd select to begin that option.
  498.  
  499.                          So, to open a file, EITHER press ctrl-O, or pull
  500.                          down the File menu and select the Open option.  
  501.  
  502.  
  503.          Quick Start                                                   e
  504.          ═══════════════════════════════════════════════════════════════
  505.  
  506.          We know.  Most people dislike reading manuals.  They'd rather
  507.          get started right away.  Frankly, this is risky with PDT.  It
  508.          must be installed correctly or, under early DOS versions, it
  509.          may not run.  Please read "Installing PDT" BEFORE you run PDT.
  510.  
  511.          But if you really need to get going, follow the steps below --
  512.          EXACTLY.  THEN read Section I:  Introduction; Installing PDT.
  513.  
  514.           1.  Install PDT.
  515.  
  516.               a. Copy these 3 files to any drive/directory (or "path"):
  517.                  PDT.Exe, PDT.Psl and PDT.Doc.
  518.  
  519.               b. Copy PDT's "sample files" (Sample_1.Dat and Sample_2.Dat)
  520.                  to the same drive/directory.
  521.  
  522.               c. Move to that path and run PDT (type PDT <cr>).  Now
  523.                  exit by pressing <Esc> and then <Y>es.
  524.  
  525.                  When you first run PDT, it creates the sub-directory
  526.                  "PDT.DIR" that it'll later use to save "structure files."
  527.  
  528.               d. Copy the sample "structure file" to PDT.DIR.  For
  529.                  example, if you installed PDT in a directory called
  530.                  "c:\pdt," type:  copy sample_2.str c:\pdt\pdt.dir.
  531.  
  532.  
  533.           2.  Run PDT.  Open and browse through Sample_1.Dat.
  534.  
  535.               a. For these examples, move to the drive/directory (ie.,
  536.                  "path") where you installed PDT.Exe.  Type:  pdt <cr>.
  537.  
  538.               b. Press ctrl-O (Open file).  A "file window" pops up.
  539.                  - Press "S" or the Down/Up cursor keys to until you
  540.                    highlight the file called SAMPLE_1.DAT.  Press <cr>.
  541.  
  542.                    Sample_1.Dat is a mess, right?
  543.  
  544.               c. Press alt-D to pull down the Define menu.  Highlight
  545.                  the option called "Force dBase Structure;" press <cr>.
  546.                  - Voila!  It's now laid out in logical rows and columns.
  547.  
  548.                  - Sample_1.Dat is a dBase file, but without the ".DBF"
  549.                    extension.  "Force dBase" told PDT to read the dBase
  550.                    header at the beginning of the file.
  551.  
  552.                  - If Sample_1.Dat was called Sample_1.DBF, PDT would
  553.                    have recognized it as a dBase file automatically!
  554.  
  555.               d.  Press the cursor pad keys, Tab, Shift-Tab and  ctrl-
  556.                   Right or Ctrl-Left.  Notice, at the bottom of your
  557.                   screen, how values change as you move around.
  558.                                                          continued . . .   
  559.  
  560.  
  561.           Quick Start  (continued)                                     f
  562.  
  563.  
  564.           3.  Now close Sample_1.Dat's window and open Sample_2.Dat.
  565.  
  566.               a. Press ctrl-C to Close the Sample_1.Dat file window.
  567.  
  568.               b. Press ctrl-O and Open Sample_2.Dat.  If you thought
  569.                  Sample_1 was a mess, Sample_2 is horrible, right?
  570.  
  571.               c. Press F5 (Read Structure).  You should now be looking
  572.                  at a file window showing you the "structure files"
  573.                  stored in PDT.DIR.  "Select" the structure file
  574.                  called SAMPLE_2.STR.
  575.  
  576.                  - Voila!  Sample_2.Dat has the same data in it that
  577.                    Sample_1 has.  But Sample_2.Dat is an EBCDIC file
  578.                    (like those found on large IBM computers.)
  579.  
  580.                  - When you pressed F5 (Read Structure), you loaded a
  581.                    structure file that told PDT:
  582.                    -- This is an EBCDIC file.  Display it in ASCII mode.
  583.                    -- What each field was and where each field starts.
  584.  
  585.                  - Press ctrl-D (Display Fields).  Notice the top line
  586.                    of the file window is now displaying the names of
  587.                    each field.
  588.  
  589.               d. Press alt-O (pull down the Options menu).  Then select
  590.                  the option called "View EBCDIC in ASCII."
  591.  
  592.                  - You just turned EBCDIC-to-ASCII OFF.
  593.                  - PDT still knows what each field is, but it's now
  594.                    displaying what's on disk -- the actual EBCDIC file.
  595.                  - Press alt-O and select "View EBCDIC in ASCII" again.
  596.  
  597.  
  598.           4.  Finally, customize PDT to your liking.  Press alt-O
  599.               (Options) and select the "Configure" option.  For
  600.               details, see Appendix I:  Customizing PDT.
  601.  
  602.  
  603.  
  604.                                                                        
  605.  
  606.  
  607.          ═══════════════════════════════════════════════════════════════
  608.                     SECTION I:  Introduction; Installing PDT         1.1
  609.          ═══════════════════════════════════════════════════════════════
  610.  
  611.          Topics:   Introduction
  612.                    Installing PDT
  613.                    Setting PDTDIR
  614.  
  615.          Introduction
  616.          ═══════════════════════════════════════════════════════════════
  617.  
  618.          Very simply, PDT is the finest data file editor available!  And
  619.          if you ever have a need to edit database, binary or EBCDIC
  620.          files, you'll find that PDT is an indispensable tool.
  621.  
  622.           * You can view and edit ANY type of file:  dBase files, other
  623.             types of data files, executable files (eg., .Exe or .Com
  624.             files), EBCDIC files, ASCII files, font files -- any file.
  625.  
  626.  
  627.           * You can view and edit ANY SIZE file -- up to two gigabytes!
  628.             Jump from the top to the bottom of any size file instantly.
  629.  
  630.             You can open up to 4 files at once.  View and compare
  631.             different files.  Or work in different areas of the same
  632.             file.  Since each file can be up to two gigabytes in size,
  633.             you can work with up to 8 gigabytes of data at once!
  634.  
  635.  
  636.           * You can manage database files like you've never been able to
  637.             before.  PDT offers unique features to help you manage dBase
  638.             or ANY fixed-length record file (data or font files, etc.).
  639.  
  640.             - PDT detects dBase ".DBF" files, formatting your "view" of
  641.               them so fields are automatically laid out for you.
  642.  
  643.             - With other fixed-length data files (like those created by
  644.               programs written in C, Pascal, BASIC, COBOL, etc.), PDT
  645.               lets you easily and quickly define their "structure."
  646.  
  647.               Once you define a file's structure, which is easy to do,
  648.               PDT formats your "view" of these files in logical rows and
  649.               columns and offers other features as well.
  650.  
  651.             - Once PDT knows the structure of a file, you'll be able to:
  652.               -- Easily view and edit the file, tabbing quickly from
  653.                  field to field.  You can even press a key to edit
  654.                  numeric fields stored in "packed binary" form.
  655.  
  656.               -- Mark blocks (either columns or records) and then:
  657.                  Export them, Copy them, Erase or Fill them, etc.
  658.  
  659.               -- Expand or Shrink the width of fields.  And, if you
  660.                  like, PDT will automatically update the dBase header
  661.                  and its own "structure" files to reflect the change.
  662.                                                          continued . . .  
  663.  
  664.  
  665.          Introduction (continued)                                    1.2
  666.  
  667.  
  668.           * PDT even manages EBCDIC files -- like those found on, or
  669.             downloaded from, large IBM computers.
  670.  
  671.            - PDT's dynamic EBCDIC-to-ASCII translation lets you view
  672.              AND edit EBCDIC files in easy-to-understand ASCII mode.
  673.              Changes you make to the file are saved to disk in EBCDIC.
  674.  
  675.            - PDT will even translate EBCDIC files to ASCII, or vice versa.
  676.  
  677.  
  678.           * PDT can also help you:
  679.  
  680.             - Repair files -- regardless of their type or size.
  681.  
  682.             - Determine a file's structure (record or field length, etc.).
  683.  
  684.             - Edit executable files to customize their messages or options.
  685.  
  686.  
  687.          * Finally, PDT is very logical and easy-to-use.  It offers
  688.            about 45 different options you may use to edit and manage
  689.            files.  And to make these easy to use, PDT offers pull-down
  690.            menus, mouse support, fast keyboard hotkeys and extensive
  691.            on-line help (which you can customize).
  692.  
  693.  
  694.          You should also know that PDT is VERY POWERFUL.  This power
  695.          can serve your needs very well.  But until you learn how to
  696.          use PDT, we urge you to make backup copies of files BEFORE
  697.          you edit them in PDT.
  698.  
  699.          As an example of these powers, we've said you can edit files
  700.          of ANY SIZE -- up to 2 gigabytes!
  701.  
  702.           * When you open a file, you'll be looking at what's on
  703.             disk, NOT a copy of it in memory.
  704.  
  705.           * If you turn Edit mode ON and change something, that change
  706.             is immediately saved to disk!
  707.  
  708.          This differs from, say, a word processor which loads files
  709.          into memory.  You can edit files, then decide NOT to save the
  710.          changes to disk.  But try loading a 2 gigabyte file into a
  711.          word processor.
  712.  
  713.          By not loading files into memory, we keep memory requirements
  714.          to a minimum and can help you can edit files of almost any
  715.          size.  But it also means that whenever you press PgDn, for
  716.          example, PDT must read the next "screen full" from disk.  It
  717.          does this very quickly.  But you'll enjoy PDT much more if you
  718.          avoid editing files on floppy disks, which are 10 - 20 times
  719.          slower than hard disks or RAM disks!
  720.                                                                        
  721.  
  722.  
  723.                                                                      1.3
  724.  
  725.                           
  726.          ┌───── Caution:  Editing Numeric Fields in EBCDIC Files ──────┐
  727.          │                                                             │▄
  728.          │   PDT offers three options to help you view, edit and       │█
  729.          │   manage EBCDIC (Extended Binary Coded Decimal Information  │█
  730.          │   Code) files.  These options let you:                      │█
  731.          │                                                             │█
  732.          │    1.  Translate EBCDIC files to ASCII format (for easier   │█
  733.          │        viewing and editing).                                │█
  734.          │                                                             │█
  735.          │    2.  Translate ASCII files to EBCDIC (to send them back   │█
  736.          │        to your large IBM computer).                         │█
  737.          │                                                             │█
  738.          │    3.  Dynamically re-display EBCDIC files in ASCII mode.   │█
  739.          │        The file on disk is unchanged.  PDT simply displays  │█
  740.          │        it differently.                                      │█
  741.          │                                                             │█
  742.          │                                                             │█
  743.          │   All three options rely on special character-by-character  │█
  744.          │   translation routines, which are very accurate regardless  │█
  745.          │   of which direction you're going.                          │█
  746.          │                                                             │█
  747.          │   You CAN safely use either EBCDIC-to-ASCII option (1 and   │█
  748.          │   3) to view AND edit any character (or text) fields in     │█
  749.          │   EBCDIC files.                                             │█
  750.          │                                                             │█
  751.          │   You CAN also edit numeric fields that are stored in       │█
  752.          │   normal text or character form.                            │█
  753.          │                                                             │█
  754.          │   But, you should NEVER edit PACKED numeric fields!  These  │█
  755.          │   packed numeric fields should be translated on a field     │█
  756.          │   basis rather than character-by-character.  Later versions │█
  757.          │   of PDT may include an EBCDIC numeric-field-translation    │█
  758.          │   feature.  But only character-by-character translation is  │█
  759.          │   offered in this PDT version.                              │█
  760.          │                                                             │█
  761.          └─────────────────────────────────────────────────────────────┘█
  762.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  763.  
  764.  
  765.  
  766.                                                                        
  767.  
  768.  
  769.          Installing PDT                                              1.4
  770.          ═══════════════════════════════════════════════════════════════
  771.  
  772.          Installing PDT is easy.  But if you don't follow the steps below,
  773.          you may find that, under certain DOS versions, PDT can't run.
  774.          On the next page we'll explain WHY these steps are necessary.
  775.  
  776.           1.  Copy these 5 files to any drive and directory:
  777.  
  778.                 PDT.Exe, PDT.Psl and PDT.Doc    <── Main program & help
  779.                 Sample_1.Dat and Sample_2.Dat   <── Sample files
  780.  
  781.               A good place to install PDT is in a directory that's
  782.               already mentioned in your PATH statement (type PATH <cr>
  783.               to see what's in your PATH statement).  As long as you
  784.               copy PDT.Exe to a drive/directory in your PATH, DOS will
  785.               be able to find and run PDT regardless of where you are.
  786.  
  787.               Many people have directories on their hard disk called
  788.               "Tools" or "Utility" or "DOS."  One of these would be good
  789.               places to install PDT.  But if you'd prefer to create a
  790.               separate directory for PDT, at the DOS prompt, type:
  791.  
  792.               c:     <enter>           'move to drive C: (or A: or B:)
  793.               cd \   <enter>           'change (move) to the root directory
  794.               md pdt <enter>           'make (create) a PDT directory
  795.               cd pdt <enter>           'change to the PDT directory
  796.               copy a:pdt.exe <enter>   'copy PDT.Exe from the A: drive
  797.                                        'to the path you're logged onto
  798.                ...repeat the last step for:  PDT.Psl, PDT.Doc and samples.
  799.  
  800.               Next, edit your Autoexec.Bat file and add "c:\pdt;" to your
  801.               PATH statement.  Note the semicolon at the end.
  802.  
  803.           2.  Run PDT.  Move to the drive/directory where you installed
  804.               PDT.Exe (this is important) and type:  pdt <cr>.
  805.  
  806.               Immediately exit:  press <Escape>, then press <Y>es when
  807.               PDT asks if you really want to exit.
  808.  
  809.               The first time you run PDT, it initializes itself AND
  810.               creates a special sub-directory (PDT.DIR) it'll later
  811.               use to store "structure files."  Let PDT do this so that
  812.               it initializes everything properly.
  813.  
  814.               "Structure files" (which we'll explain later) are crucial
  815.               to many of PDT's advanced features.  They must be stored
  816.               in PDT's special directory.  PDT takes care of this for you.
  817.  
  818.           3.  Copy the sample "structure file" (SAMPLE_2.STR) to PDT.DIR.
  819.               For example, type:  copy sample_2.str c:\pdt\pdt.dir <cr>.
  820.  
  821.  
  822.                                                                        
  823.  
  824.  
  825.          PDT may not run properly if it's installed incorrectly.     1.5
  826.          ═══════════════════════════════════════════════════════════════
  827.  
  828.          To run properly, PDT must be able to find:
  829.  
  830.           * Itself (PDT.Exe).
  831.  
  832.           * "Structure files" you create.
  833.  
  834.           * It's help files (PDT.Psl and PDT.Doc).
  835.  
  836.  
  837.          PDT must be able to locate itself for two important reasons.
  838.  
  839.          First, you can customize (or configure) the way PDT runs.
  840.          PDT stores this information in itself.  Then, the next time
  841.          you run it, PDT finds itself and reads the settings YOU chose.
  842.          Appendix I:  Customizing PDT explains how to configure PDT.
  843.  
  844.          Second, PDT's "structure files" are crucial to many of PDT's
  845.          advanced features.  As long as you store structure files in
  846.          PDT's special directory (PDT.DIR), these features are avail-
  847.          able to you automatically.
  848.  
  849.           * Structure files, which we'll explain in detail later, tell
  850.             PDT how data files are constructed (record length, the type
  851.             and length of each field, etc.).
  852.  
  853.           * We recommend that you save structure files with the SAME
  854.             NAME as your data files!   Then, whenever you open a data
  855.             file, PDT can automatically find and read your structure file.
  856.  
  857.             But if you saved this structure file to the same drive/direc-
  858.             tory containing your data file, you'd OVERWRITE (ie., destroy)
  859.             your data!  That's why structure files must be saved in their
  860.             own sub-directory.  NEVER copy data files to PDT.DIR.  Store
  861.             ONLY PDT's structure files in PDT.DIR.
  862.  
  863.  
  864.          PDT also offers you extensive on-line help.  To provide this
  865.          help, PDT must be able to find two files:  PDT.Psl and PDT.Doc.
  866.          PDT will look for itself, and then look only on that same
  867.          drive/directory for these help files.  If it can't find them,
  868.          PDT will run, but help won't be available.
  869.  
  870.          Until you're thoroughly familiar with PDT's many options and
  871.          how they work, we urge you to install PDT.Psl and PDT.Doc.
  872.          Later, if you no longer need help, you can delete these files.
  873.  
  874.                                                                        
  875.  
  876.          
  877.          How Does PDT Find Itself?  SETTING PDTDIR                   1.6
  878.          ═══════════════════════════════════════════════════════════════
  879.  
  880.          PDT uses two methods to locate itself.
  881.  
  882.          When you run it, PDT asks DOS to tell it the path to the
  883.          program that's running.
  884.  
  885.          But older versions of DOS (1.x and 2.x) can't do this.  So if
  886.          PDT can't find itself this way, it looks to see if you SET an
  887.          "environment variable" (PDTDIR) telling us where we should find
  888.          PDT.Exe.
  889.  
  890.          Therefore, if PDT tells you it can't find itself, just add the
  891.          following line to your Autoexec.Bat file:
  892.  
  893.                 SET PDTDIR=drive\directory
  894.  
  895.          Replace "drive\directory" with the drive/directory where
  896.          you installed PDT.EXE.  For example:  set pdtdir=c:\pdt.
  897.  
  898.          Notice there are NO spaces except after SET.  This format
  899.          is required by DOS when using SET.
  900.  
  901.  
  902.          If you'd prefer not to edit your Autoexec.Bat file, you could
  903.          run PDT using a batch file (eg., runpdt.bat) like this:
  904.  
  905.                 SET PDTDIR=drive\directory
  906.                 PDT
  907.                 SET PDTDIR=
  908.  
  909.          The last line clears "PDTDIR=drive\directory" freeing up
  910.          environment space memory.
  911.  
  912.          Be sure to place this batch file on a drive/directory that's in
  913.          your PATH so DOS can find it.
  914.  
  915.  
  916.  
  917.                                                                        
  918.  
  919.  
  920.          ═══════════════════════════════════════════════════════════════
  921.            SECTION II:  Running and Customizing PDT, Getting Help    2.1
  922.          ═══════════════════════════════════════════════════════════════
  923.  
  924.          Topics:  Running PDT; Your Main Screen
  925.                   Getting Help
  926.                   Customizing PDT
  927.  
  928.  
  929.          Running PDT
  930.          ═══════════════════════════════════════════════════════════════
  931.  
  932.          You can run PDT in two ways:   PDT <cr>  or  PDT filename <cr>
  933.          Press ctrl-X to exit PDT.
  934.  
  935.          1.  PDT <cr>
  936.          ────────────
  937.  
  938.          If you run PDT the first way (pdt <cr>), when it begins, it
  939.          displays it's main menu screen which looks like this.
  940.  
  941.  
  942.             File  Edit  Search  Block  Define  Options  Help  (F1)
  943.  
  944.  
  945.  
  946.                          ┌───────────────────────────────────────────┐
  947.                          │    Pro~Formance Data Tool  █▀█ █▀▄ ▀█▀    │
  948.                          │ <══════════════════════════█▄█═█ █══█════ │
  949.                          │                            █   █▄▀  █     │
  950.                          │                                           │
  951.                          │ Copyright 1987-92 Rob W. Smetana          │
  952.                          │ Registered to:  (your name here)          │
  953.                          │                                           │
  954.                          │ Press Alt-[key] for menus (alt-F = File)  │
  955.                          └───────────────────────────────────────────┘
  956.  
  957.          We'll explain how to open files in Section III:  Examples.
  958.  
  959.  
  960.          2.  PDT FileName <cr>
  961.          ─────────────────────
  962.  
  963.          If you run PDT the second way (pdt filename <cr>) PDT will open
  964.          and display the file you described in "filename."
  965.  
  966.           * If the file you want to open isn't on the "current drive/
  967.             directory," be sure to include the path in "filename."
  968.  
  969.           * For example, if you're on drive C: but want to open a file
  970.             on drive B:, you'd type something like:  PDT B:MYFILE <CR>.
  971.  
  972.          If PDT can't find the file you told it to open, an error
  973.          message will appear.  Press a key to clear the message, then
  974.          press ctrl-O to open a file.
  975.                                                                        
  976.  
  977.  
  978.          Customizing PDT                                             2.2
  979.          ═══════════════════════════════════════════════════════════════
  980.  
  981.          The first time you run PDT, we urge you to "customize" PDT
  982.          to your liking.  Just press alt-O (Options) to pull down the
  983.          Options menu.  Then press the down cursor key to highlight
  984.          the option "Configure."  Press <cr> to accept it.
  985.  
  986.          For details, see Appendix I:  Customizing PDT.
  987.  
  988.  
  989.          Getting Help
  990.          ═══════════════════════════════════════════════════════════════
  991.  
  992.          PDT offers extensive on-line help.  Once you run PDT you can:
  993.  
  994.           * Press alt-H (or F1) to pull down the Help menu.
  995.  
  996.             - Press the Down/Up cursor keys to highlight a topic, then
  997.               press either F1 or <cr>.  If you press F1, we'll display a
  998.               few help screens, then return to the Help menu.  If you
  999.               press <cr>, we'll display the same screens, then exit the
  1000.               Help menu.
  1001.  
  1002.             - The last option in the Help menu is "Browse through
  1003.               PDT.Doc" (this file, PDT.Doc).  Since this is a standard
  1004.               ASCII file, you can edit it with any editor or word
  1005.               processor, add your own reminders and tips, then browse
  1006.               through them while you're running PDT.
  1007.  
  1008.  
  1009.           * Pull down a menu and get help with (or an explanation of)
  1010.             any option in that menu.  For example, press alt-F to pull
  1011.             down the File menu.  Then:
  1012.  
  1013.             - Click the RIGHT mouse button on an option.  (See, there
  1014.               IS a use for that right mouse button.)
  1015.  
  1016.             - Or press the Down/Up cursor keys to highlight an
  1017.               option, then press F1.
  1018.  
  1019.  
  1020.           * Begin most any option, then press F1 for help with that option.
  1021.  
  1022.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1023.          │                                                             │▄
  1024.          │  If you ask for help and PDT can't find the files PDT.Psl   │█
  1025.          │  or PDT.Doc, an error message will pop up.                  │█
  1026.          │                                                             │█
  1027.          │  The error message will show you the drive/directory is     │█
  1028.          │  looking on to find these files (which should be where you  │█
  1029.          │  installed PDT.Exe).  To correct the problem, copy these    │█
  1030.          │  two files to the same "path" where PDT is stored.          │█
  1031.          └─────────────────────────────────────────────────────────────┘█
  1032.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1033.                                                                       
  1034.  
  1035.  
  1036.          ═══════════════════════════════════════════════════════════════
  1037.               SECTION III:  Examples, Creating Structure Files       3.1
  1038.          ═══════════════════════════════════════════════════════════════
  1039.  
  1040.          Topics:   Example 1:  Opening files, Browsing
  1041.                                PDT's File Windows
  1042.  
  1043.                    Example 2:  EBCDIC files
  1044.                                File Structures; Creating Structure Files
  1045.  
  1046.                    Command Summary
  1047.  
  1048.          BEFORE READING THIS:  We strongly urge you to run PDT, then
  1049.          try things as we describe them -- using the sample files we
  1050.          included.  Many things we'll describe below are easier to
  1051.          understand if you can see them happening.
  1052.  
  1053.          ┌─────────────┐
  1054.          │ Press ..... │  Boxes like this will explain what to do.
  1055.          └─────────────┘
  1056.  
  1057.           * Log onto the drive/directory where you installed PDT.Exe
  1058.             and the sample files Sample_1.Dat and Sample_2.Dat.  Log-
  1059.             ging onto PDT's drive/directory will simplify things.
  1060.  
  1061.           * Run PDT by typing:  pdt <cr>.  If you haven't yet customized
  1062.             PDT, or if you have a monitor which renders certain colors
  1063.             hard to see, press alt-O (Options), select the Configure
  1064.             option, then select the features you want.
  1065.  
  1066.             Note:  Most of the things you select in the Configure menu
  1067.             WON'T become effective until you exit PDT and re-start it.
  1068.             Just press ctrl-X, then re-run PDT.
  1069.  
  1070.  
  1071.          Example 1:  Viewing Sample_1.Dat
  1072.          ═══════════════════════════════════════════════════════════════
  1073.  
  1074.          ┌──────────────┐  Run PDT, then press ctrl-O (Open File).
  1075.          │ Press ctrl-O │  A "file list" will appear which will look
  1076.          └──────────────┘  something like this:
  1077.  
  1078.  
  1079.          Press the Down ┌─\PDT─────────────────────────────────────────┐
  1080.          cursor key to  │    ..           <DIR>      11-18-90 ...D.    ^
  1081.          highlight      │    PDT      DIR <DIR>      01-01-92 ...D.    ▒
  1082.          Sample_1.Dat─┐ │    PDT      DOC    200,000 01-01-92 ....A    ▒
  1083.                       └>│    SAMPLE_1 DAT      1,769 01-01-92 ....A    ▒
  1084.          Press <cr> to  │    SAMPLE_2 DAT      1,769 01-01-92 ....A    ▒
  1085.          select it.     │                                              v
  1086.                         │┌───┤ Alt-(drive letter) = Change Drives ├───┐│
  1087.          You could also ││A: B: C: D: E:                              ││
  1088.          click Left on  │└────────────────────────────────────────────┘│
  1089.          Sample_1.Dat   │(^S)=Sort (.)=ParentDir (F1)=Help (Esc)=Cancel│
  1090.          to select it.  └──────────────────────────────────────────────┘
  1091.                                                                        
  1092.  
  1093.  
  1094.          Example 1  (continued)                                      3.2
  1095.  
  1096.  
  1097.          Sample_1.Dat, like all files, exists on disk as a continuous
  1098.          stream of data -- with NO structure.  It'll look like this:
  1099.  
  1100.  
  1101.          ╔SAMPLE_1.DAT════════════════════════════════════════════════╗
  1102.          13\^X  OO                FIRST_NAME  C    0       LAST_NAME  ^
  1103.                    ADDRESS  C   k          CITY  C   C            STAT▒
  1104.          ║   ZIP    C    ,       Kim       Johnson       3300 South 18▒
  1105.          ║      CO 31002 (714) 525-9933 Dennis    Avery         127 Ea▒
  1106.          ║George      WA 98322 (801) 566-9112 Andrew    Youngman, Sr. v
  1107.          ╚════════════════════════════════════════════════════════════╝
  1108.          Path:C:\PDT\                    Row:1      Col:1      Depth:1
  1109.          Size:1,769     Header:0         Record Size:78    # Rcrds:23
  1110.          Dec:    Hex:   Field:           Type:  Value:
  1111.  
  1112.  
  1113.          ┌─────────────┐
  1114.          │ Press alt-D │  Pull down the Define menu.  Highlight the
  1115.          └─────────────┘  option "Force dBase Structure" and press <cr>.
  1116.  
  1117.  
  1118.          Sample_1.Dat is actually a dBase file, but without the normal
  1119.          ".DBF" extension.  By selecting the "Force dBase" option, you
  1120.          told PDT to read the dBase file "header" and re-format the way
  1121.          it displays Sample_1.Dat.
  1122.  
  1123.  
  1124.          Your screen should now look like this.  If Sample_1 had a
  1125.          ".DBF" extension, PDT would have automatically recognized it
  1126.          as a dBase file, and formatted your view of it like this:
  1127.  
  1128.  
  1129.           ╔SAMPLE_1.DAT═════════════════════════════════════════════╗
  1130.           1 Kim       Johnson     3300 South 18th Street  Venice    ^
  1131.             Dennis    Avery       127 South Temple        George    ▒
  1132.           ║ Andrew    Youngman    945 Van Ness Street     Concord   ▒
  1133.           ║ Sam       Henderson   9800 South 1000 West    Clarion   ▒
  1134.           ║ Cory      Ruddman     4400 South Delridge Way Bellevue  v
  1135.           ╚═════════════════════════════════════════════════════════╝
  1136.  
  1137.  
  1138.                                                                        
  1139.  
  1140.  
  1141.          Example 1 illustrates some very important things about PDT.  3.3
  1142.          ───────────────────────────────────────────────────────────
  1143.  
  1144.          As we mentioned, a file exists on disk as a continuous stream
  1145.          of data.  How PDT displays a file, and, therefore, your "view"
  1146.          of it depends on two things:
  1147.  
  1148.           * Whether the file HAS a fixed structure.
  1149.  
  1150.           * Whether PDT knows about that structure.
  1151.  
  1152.          By "structure" we simply mean:
  1153.  
  1154.           * Whether lines or records in the file all have the same
  1155.             fixed length, or whether they're variable-length.
  1156.  
  1157.           * Whether there's a "header" at the top of the file we
  1158.             should ignore (not display), or read (in the case
  1159.             of dBase files) to determine the record structure.
  1160.  
  1161.          If PDT knows the file's structure, it can take a chaotic
  1162.          stream of stuff and turn it into an orderly display of
  1163.          information that's easy to understand and edit.
  1164.  
  1165.          Some files have no structure.  Executable (.Exe or .Com) files
  1166.          have no lines in the traditional sense.  And text files often
  1167.          have lines of varying lengths.
  1168.  
  1169.           * For these types of files, changing the Record Length
  1170.             (by pressing ctrl-L) simply changes how wide a view PDT
  1171.             displays before it "wraps" the data around to the next row.
  1172.  
  1173.          But many database or data files have fixed-length records,
  1174.          with each record made up of fields (like Last Name, First
  1175.          Name, Address, Phone, etc.).
  1176.  
  1177.           * PDT automatically detects the structure of dBase files,
  1178.             provided they have a".DBF" extension.
  1179.  
  1180.           * For non-dBase files, you can easily tell PDT the file struc-
  1181.             ture.  And PDT can help you figure it out if you're unsure.
  1182.             Example 2 shows how easy it is to specify a file's structure.
  1183.  
  1184.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1185.          │                                                             │▄
  1186.          │  Our point here is that YOU can use several of PDT's options│█
  1187.          │  to change your "view" of a file.  You can change the Record│█
  1188.          │  length (ctrl-L) or the Header Length (ctrl-H) and PDT will │█
  1189.          │  display the file in different ways.  Try it!               │█
  1190.          │                                                             │█
  1191.          │  But the data on disk never changes.  It's still a continu- │█
  1192.          │  ous stream of stuff.  The only thing that changes is how   │█
  1193.          │  PDT displays it.                                           │█
  1194.          └─────────────────────────────────────────────────────────────┘█
  1195.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1196.                                                                        
  1197.  
  1198.  
  1199.          Moving Around in (or Between) File Windows; Editing Files   3.4
  1200.          ─────────────────────────────────────────────────────────
  1201.  
  1202.           * To move around, just press the same keys you would in your
  1203.             word processor.  As you move, watch the values change at
  1204.             the bottom of your screen.
  1205.  
  1206.                Right / Left  move 1 column right or left.
  1207.                 Down / Up    move 1 row/record down or up.
  1208.                 PgDn / PgUp  move 1 "screen" down or up
  1209.                 Home / End   move to the beginning or end of a row.
  1210.                ^Home / ^End  (^ = ctrl) move to first or last record
  1211.                              in a file, staying in the same column.
  1212.               ^Right / ^Left scroll 1 full screen right or left.
  1213.  
  1214.              Press Tab or Shift-Tab to move right or left.  If your file
  1215.              has fields, and PDT knows the file structure, Tab or Shift-
  1216.              Tab will quickly move you to the first column of the next
  1217.              or last field.  If your file has no fields, or you clear the
  1218.              structure, Tab and Shift-Tab move 10 spaces right or left.
  1219.  
  1220.  
  1221.           * Click Left on the scroll bar on the right edge of the file
  1222.             window to scroll down or up (the equivalent of PgDn/PgUp).
  1223.  
  1224.  
  1225.           * If you open 2 or more files, PDT displays each in its own
  1226.             window.  The "active" window (the one the cursor is in,
  1227.             the one you can edit or move around in) is surrounded by a
  1228.             double-line box.  Other windows are surrounded by a single-
  1229.             line box.  For example:
  1230.  
  1231.                  ╔══════╗  ┌──────┐  ┌──────┐  ┌──────┐
  1232.                  1 This ║  2      │  3      │  4      │
  1233.                  E  is  ║         │         │         │
  1234.                  ║Active║  │      │  │      │  │      │
  1235.                  ╚══════╝  └──────┘  └──────┘  └──────┘
  1236.  
  1237.             To switch to another window (ie., to "activate it"):
  1238.  
  1239.             - Click Left in a window (or on its scroll bar).
  1240.  
  1241.             - Or press alt-#, where "#" is the number of the window
  1242.               you want to activate.
  1243.  
  1244.             - Or press ctrl-PgDn (or ctrl-PgUp) to switch to the
  1245.               next (or last) window.
  1246.  
  1247.  
  1248.           * To edit or change anything in a file, Edit Mode must be ON.
  1249.  
  1250.             - If Edit is ON, "E" will appear at the window's left edge.
  1251.               Otherwise, this area will be blank.
  1252.  
  1253.             - In the examples above, Edit Mode is ON in window #1, but
  1254.               OFF in the other windows.                                
  1255.  
  1256.  
  1257.           PDT's File Window                                          3.5
  1258.           ─────────────────
  1259.  
  1260.                 File  Edit  Search  Block  Define  Options  Help  (F1)
  1261.  
  1262.          ┌──> ╔SAMPLE_1.DAT════════════════════════════════════════════╗
  1263.          ├──> 1 Kim      Johnson     3300 South 18th Street  Venice    ^
  1264.          ├──>   Dennis   Avery       127 South Temple        George    ▒
  1265.          │    ║ Andrew   Youngman    945 Van Ness Street     Sabastole ▒
  1266.          │    ║ Sam      Henderson   9800 South 1000 West    Clarion   ▒
  1267.          │    ║ Cory     Ruddman     4400 South Delridge Way Bellevue  ▒
  1268.          │    ║ Bill     Williamson  3300 East Western Ave.  Syracuse  ▒
  1269.          │    ║ John     Elsworth    2323 Indian School Dr.  Warton    v
  1270.          │    ╚════════════════════════════════════════════════════════╝
  1271.          │ ┌> Path:C:\PDT\                Row:1      Col:1    Depth:258
  1272.          │ ├> Size:1,769     Header:257   Record Size:80    # Rcrds:23
  1273.          │ ├> Dec:    Hex:   Field:              Type:  Value:
  1274.          │ │
  1275.          │ │
  1276.          │ │
  1277.          │ └─ We'll explain these three lines on the next page.
  1278.          │
  1279.          │
  1280.          │
  1281.          └───── * Near the top of the file window, PDT shows we have
  1282.                   opened Sample_1.Dat in file window "1."  The double-
  1283.                   line box around it tells us this is the "active" window.
  1284.                   "Active" means we can browse through it and edit it.
  1285.  
  1286.  
  1287.                 * Edit Mode is OFF (the spot beneath "1" is blank).  If
  1288.                   we press ctrl-E, we'd see a blinking "E" there.
  1289.  
  1290.  
  1291.                 * The top line of file windows shows file OR field names.
  1292.  
  1293.          ┌──────────────┐  When you press ctrl-D, PDT replaces the file
  1294.          │ Press ctrl-D │  name with the names of each field (First_Name,
  1295.          └──────────────┘  Last_Name, Address, etc.).  Obviously this
  1296.                            assumes PDT knows the field structure.
  1297.  
  1298.                            This is handy to see which fields are coming
  1299.                            up, and which are behind you.
  1300.  
  1301.  
  1302.          ┌──────────────┐  TAB and SHIFT-TAB are fast ways to move to 
  1303.          │ Press TAB or │  the next field.  And as you move right or 
  1304.          │ SHIFT-TAB    │  left, at the bottom of your screen PDT dis-
  1305.          └──────────────┘  plays the name of the field you've moved
  1306.                            into -- beside FIELD:.
  1307.  
  1308.  
  1309.                            For narrow fields, there simply not enough
  1310.                            room to display the full field name above it.
  1311.                            So if you're not sure where you are, glance
  1312.                            at FIELD: at the bottom of your screen.     
  1313.  
  1314.  
  1315.          PDT's File Window  (continued)                              3.6
  1316.  
  1317.  
  1318.          At the bottom of your screen PDT displays information about:
  1319.          the "active" file, your position in it, and the field and
  1320.          character your cursor is pointing at.
  1321.  
  1322.          If you open 2-4 file windows, as you switch among them (by
  1323.          pressing alt-# or ctrl-PgDn), PDT changes this information to
  1324.          reflect the active window.  And it displays this information
  1325.          in different colors (on color monitors) which match the color
  1326.          of the box around the active file window.
  1327.  
  1328.             /                                                           /
  1329.             ║ Bill      Williamson    3300 East Western Ave.  Syracuse  ▒
  1330.             ║ John      Elsworth      2323 Indian School Dr.  Warton    v
  1331.             ╚═══════════════════════════════════════════════════════════╝
  1332.          ┌> Path:C:\PDT                   Row:1      Col:1    Depth:258
  1333.          ├> Size:1,769      Header:257    Record Size:80    # Rcrds:23
  1334.          ├> Dec:    Hex:   Field:                Type:  Value:
  1335.          │
  1336.          └── * The first line shows the "Path" to the file (C:\PDT).
  1337.  
  1338.                It also shows us where our cursor is in the file --
  1339.                "Row:" (or Record number), "Column:"  and "Depth:"
  1340.                (or how many bytes into the file we are).
  1341.  
  1342.              * The second line shows us:
  1343.                - The file's total size in bytes.
  1344.                - How long the file header is.
  1345.                - What the record size is.
  1346.                - And how many records there are in this file.
  1347.                  If we change Record Size (ctrl-L), the number
  1348.                  of records might change as well.
  1349.  
  1350.              * The last line provides information about BOTH the char-
  1351.                acter at the cursor, AND the field the cursor is in.
  1352.  
  1353.                - "Dec:" and "Hex:" show us the Decimal (ASCII) and
  1354.                  Hexadecimal values of the character at the cursor.
  1355.  
  1356.                - If PDT knows about the fields in a file (ie., you open a
  1357.                  dBase file, or a file for which you created a structure):
  1358.  
  1359.                  "Field:" would show us both the number and name of the
  1360.                  field the cursor is in (eg., Field: 2  FIRST_NAME).
  1361.  
  1362.                  "Type:" would be a symbol indicating what type of field
  1363.                  it is (eg., C = Character; we'll define these later).
  1364.  
  1365.                - "Value:" shows us the value of that field.  This is
  1366.                  especially useful when looking at numeric fields stored
  1367.                  in "packed binary" form.
  1368.  
  1369.                  For example, an integer field might be stored as "n*"
  1370.                  but "Value:" would show you it's really 10862.        
  1371.  
  1372.  
  1373.          Example 2:  Sample_2.Dat; Loading/Creating Structure Files  3.7
  1374.          ═══════════════════════════════════════════════════════════════
  1375.  
  1376.          This example demonstrates several powerful features.
  1377.  
  1378.  
  1379.          ┌──────────────┐  Select SAMPLE-2.DAT from the file list window.
  1380.          │ Press ctrl-O │  Since you already have Sample_1 open in win-
  1381.          └──────────────┘  dow #1, PDT will ask if you'd like to open a
  1382.                            (H)orizontal or (V)ertical window.  Press "H".
  1383.  
  1384.          Sample_2 is a MESS, right?  Could you easily edit it?  Sample_2
  1385.          actually has the same data Sample_1 has!
  1386.  
  1387.          ┌──────────────┐  
  1388.          │ Press F5     │  Open (read) the "structure file" SAMPLE-2.STR.
  1389.          └──────────────┘  
  1390.  
  1391.          NOTE:  If you can't find or read SAMPLE-2.STR, press alt-O
  1392.          (Options) then select View EBCDIC in ASCII (be sure it reads ON).
  1393.  
  1394.          When you read Sample-2's structure file, your screen SHOULD be
  1395.          reformatted so you see exactly what you saw when viewing Sample_1:
  1396.  
  1397.            ╔SAMPLE_2.DAT════════════════════════════════════════════╗
  1398.            2 Kim      Johnson     3300 South 18th Street  Venice    ^
  1399.              Dennis   Avery       127 South Temple        George    ▒
  1400.            ║ Andrew   Youngman    945 Van Ness Street     Sabastole ▒
  1401.            ║ Sam      Henderson   9800 South 1000 West    Clarion   v
  1402.            ╚════════════════════════════════════════════════════════╝
  1403.  
  1404.          Notice the structure file dramatically changed our view of this
  1405.          data.  The data hasn't changed, but the way PDT displays it has.
  1406.  
  1407.          Sample_2 is stored on disk in EBCDIC format.  The structure
  1408.          file you loaded told PDT to display the EBCDIC file in ASCII
  1409.          mode -- and it's now easier to understand and safer to edit.
  1410.          The structure file also told PDT about the file's:  Header
  1411.          Length, Record Length and Fields.
  1412.  
  1413.                                                          continued . . .
  1414.  
  1415.                                                                        
  1416.  
  1417.  
  1418.          Example 2 (continued)  Creating Structure Files             3.8
  1419.  
  1420.  
  1421.          Now let's show you how easy it is to create structure files.
  1422.  
  1423.          ┌──────────────┐  Pull down the Define menu and select Clear
  1424.          │ Press alt-D  │  Structure to clear the field structure.
  1425.          └──────────────┘  Fields should no longer be displayed in
  1426.                            contrasting colors.
  1427.  
  1428.          Creating a structure file has 3 simple steps:  set the Header
  1429.          Length, set the Record Length, mark the beginning of each field.
  1430.  
  1431.          ┌──────────────┐  Set the Header Length.  When a window pops
  1432.          │ Press ctrl-H │  up, enter 257 -- the same sized header that
  1433.          └──────────────┘  Sample_1 (a dBase file) has.  Press <cr>.
  1434.  
  1435.          ┌──────────────┐  Set the Record Length.  When a window pops
  1436.          │ Press ctrl-L │  up, enter 80.  Press <cr>.
  1437.          └──────────────┘
  1438.  
  1439.          ┌──────────────┐  FIRST, move the cursor to Row 1, Column 1.
  1440.          │ Press F2     │  Press F2.  When a window pops up (see below), 
  1441.          └──────────────┘  enter "C" in the "Type" column.  Then press
  1442.                            <cr> and type in "Deleted Record Flag" under
  1443.                            "name."  BE SURE to press <cr> THEN <Esc>.
  1444.  
  1445.          Since Sample_2 has the same data as the dBase file Sample_1
  1446.          has, we preserved the Deleted Record Flag common in dBase files.
  1447.  
  1448.          ┌──────────────┐  For EACH of the 7 fields in Sample_2:
  1449.          │ Now . . .    │  - Move your cursor to the start of the field.
  1450.          └──────────────┘  - Press F2, then enter "C," press <cr> and
  1451.                              type in one of these field names:
  1452.  
  1453.                              First Name, Last Name, Address, City,
  1454.                              State, Zip Code, Phone Number.
  1455.  
  1456.          BE SURE to press <cr> after you enter each field name.  THEN
  1457.          press <Esc>.  If you press <Esc> with your cursor still in the
  1458.          Name column, PDT assumes you want to CANCEL the action.
  1459.  
  1460.          As you enter the last field name, the window you're working 
  1461.          in will look something like this:
  1462.           ┌────────────────────────────────────────────────┐
  1463.           │Col Typ Name                  Types       Length│
  1464.           ├────────────────────────────────────────────────┤
  1465.           │  1  C  Deleted Record Flag   (c)haracter    ?  │
  1466.           │  2  C  First Name            (t)iny Integer 1  │
  1467.           │ 12  C  Last Name             (i)nteger      2  │<──┐
  1468.           │ 26  C  Address               (l)ong Integer 4  │┌──┘
  1469.           │ 50  C  City                  (s)ingle MS    4  │└─We'll explain
  1470.           │ 62  C  State                 (j)ingle IEEE  4  │  Field Types
  1471.           │ 65  C  Zip Code              (d)ouble MS    8  │  shortly
  1472.           │ 71  C  Phone Number          (k)ouble IEEE  8  │
  1473.           └────────────────────────────────────────────────┘           
  1474.  
  1475.  
  1476.          Example 2 (continued)  Creating Structure Files             3.9
  1477.  
  1478.  
  1479.          ┌──────────────┐  SAVE the structure file you just created.
  1480.          │ Press F4     │  When PDT asks for a file name, BE SURE
  1481.          └──────────────┘  it reads SAMPLE_2.DAT -- exactly the same
  1482.                            name as the data file!  This is important
  1483.                            if you want automate many of PDT's features.
  1484.  
  1485.          ┌──────────────┐  
  1486.          │ Press ctrl-C │  Now close the Sample_2 file window.
  1487.          └──────────────┘
  1488.  
  1489.          ┌──────────────┐
  1490.          │ Press ctrl-O │  Immediately re-open Sample_2.Dat.
  1491.          └──────────────┘
  1492.  
  1493.  
  1494.          The first time you opened Sample_2.Dat, you saw a mass of
  1495.          EBCDIC data.  This time, IF you followed the steps above
  1496.          exactly, Sample_2 should load in easy-to-understand ASCII
  1497.          format, with fields laid out for you.  And you didn't have
  1498.          to press F5 to read a structure file -- it was all automatic!
  1499.  
  1500.  
  1501.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1502.          │                                                             │▄
  1503.          │  PDT's structure features greatly simplify working with     │█
  1504.          │  data files.  They also make editing files easier and safer.│█
  1505.          │                                                             │█
  1506.          │  And most of the benefits of structure files are AUTOMATIC, │█
  1507.          │  provided that you save them to PDT's special directory,    │█
  1508.          │  AND you save structure files with the SAME NAME as your    │█
  1509.          │  data files.  That's the only way PDT can automatically     │█
  1510.          │  link a structure file to a specific data file.             │█
  1511.          │                                                             │█
  1512.          │  Some people work with many different data files which      │█
  1513.          │  share the same structure (eg., monthly sales data).  So,   │█
  1514.          │  rather than save separate structure files for each data    │█
  1515.          │  file, they save a generic file, say, MONTHLY.DAT.  Then,   │█
  1516.          │  when they load any month's data file, they can simply      │█
  1517.          │  press F5 and read the Monthly.Dat structure file.          │█
  1518.          │                                                             │█
  1519.          └─────────────────────────────────────────────────────────────┘█
  1520.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1521.  
  1522.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1523.          │                                                             │▄
  1524.          │  We created our structure file using PDT.  But structure    │█
  1525.          │  files are simple ASCII files you can create with ANY       │█
  1526.          │  editor or word processor.  For details, see:               │█
  1527.          │                                                             │█
  1528.          │           Appendix II:  Creating Structure Files            │█
  1529.          └─────────────────────────────────────────────────────────────┘█
  1530.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1531.                                                                        
  1532.  
  1533.  
  1534.          Field "Types"                                              3.10
  1535.          ═════════════
  1536.  
  1537.          When you press F2 to enter field names, you also have an option
  1538.          to  specify what TYPE of field your cursor is in.  If PDT knows
  1539.          the type of each field, it:
  1540.  
  1541.           * Can display field "values" as you move from field to field.
  1542.  
  1543.           * Lets you press F6 (Edit Field) to change it.  This option is
  1544.             primarily intended to help you edit numeric fields stored in
  1545.             "packed binary" form.  The discussion of the EDIT menu has
  1546.             details on F6-Edit Field.
  1547.  
  1548.  
  1549.          Here are the symbols you'd enter to indicate different types
  1550.          of fields.  Notice the different symbols for dBase and non-
  1551.          dBase files.
  1552.  
  1553.  
  1554.          ══════ dBase Field Types ═════    ═══ Non-dBase Field Types ════
  1555.  
  1556.          Use This    For This     Field    Use This    For This     Field
  1557.           Symbol   Type of Field  Width     Symbol   Type of Field  Width
  1558.          ────────  ─────────────  ─────    ────────  ─────────────  ─────
  1559.  
  1560.             C      Character         ?        c      Character        ?
  1561.             N      Numeric           ?        t      Tiny Integer     1
  1562.             L      Logical           1        i      Integer          2
  1563.             M      Memo             10        l      Long Integer     4
  1564.             D      Date              8        s      Single MS *      4
  1565.                                               j      Single IEEE      4
  1566.                                               d      Double MS *      8
  1567.                                               k      Double IEEE      8
  1568.                                               $      Currency         8
  1569.  
  1570.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1571.          │                                                             │▄
  1572.          │  Note that symbols for dBase files are UPPER case, while    │█
  1573.          │  symbols for non-Dbase field types are all in lower case.   │█
  1574.          │                                                             │█
  1575.          │  In the non-dBase list, note the s/j and d/k pairs -- indi- │█
  1576.          │  cating Microsoft (MS) versus IEEE formats, respectively.   │█
  1577.          │                                                             │█
  1578.          │  CAUTION:  In this version of PDT, numeric fields in EBCDIC │█
  1579.          │  files aren't accomodated.  See notes on this elsewhere.    │█
  1580.          └─────────────────────────────────────────────────────────────┘█
  1581.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1582.  
  1583.  
  1584.          "Field Width" indicates how many characters or columns each
  1585.          field has.  Notice that Character fields (and dBase Numeric
  1586.          fields) are "?" wide -- they vary in width.  But other fields
  1587.          have fixed widths.  So, for example, Integers (which can range
  1588.          from -32768 to +32767 or 0 to 65535) are stored as 2 bytes.
  1589.                                                                        
  1590.  
  1591.  
  1592.          File Structures in Summary                                 3.11
  1593.          ──────────────────────────
  1594.  
  1595.          If it knows the structure of a file, PDT offers many conveni-
  1596.          ent, powerful features.
  1597.  
  1598.           * PDT displays rows and columns in orderly ways.
  1599.  
  1600.           * PDT highlights fields in contrasting colors so you can
  1601.             easily see where one field ends and the next one begins.
  1602.  
  1603.           * PDT can display field names both at the top of each file
  1604.             window and the bottom of your screen.
  1605.  
  1606.           * You can TAB from column-to-column, which makes getting
  1607.             around or editing fields faster, easier and safer.
  1608.  
  1609.           * PDT can display the "value" of fields, even numeric fields
  1610.             stored in "packed binary" form.  And you may even edit these
  1611.             fields by pressing F6.  PDT automatically saves what you
  1612.             enter in packed binary form!
  1613.  
  1614.           * PDT lets you expand or shorten the width of fields.  It will
  1615.             even change your structure files or dBase "file headers" to
  1616.             reflect the changes.
  1617.  
  1618.  
  1619.          PDT automatically determines the structure of dBase (.DBF)
  1620.          files.  If you're working with non-dBase files, PDT's easy-to-
  1621.          use "define" features let you easily map out a file's structure.
  1622.          Just set the header length (if there is a header) and the
  1623.          record length, mark the beginning of each field by pressing F2,
  1624.          then save the structure file.  That's it!
  1625.  
  1626.          And if you prefer, you can create structure files with any editor
  1627.          or word processor.  Appendix II: Creating Structure has details.
  1628.  
  1629.  
  1630.                                                                        
  1631.  
  1632.  
  1633.          ═══════════════════════════════════════════════════════════════
  1634.                         SECTION IV:  Summary of Commands             4.1
  1635.          ═══════════════════════════════════════════════════════════════
  1636.  
  1637.          Topics:  Using PDT's Menus
  1638.                   Summary of Hotkeys
  1639.  
  1640.          This section briefly summarizes how to use PDT's menus.  We'll
  1641.          also summarize PDT's hotkeys -- which you might want to print
  1642.          separately for a handy, 1-page quick reference guide.
  1643.  
  1644.          Using PDT's Menus                           
  1645.          ═════════════════
  1646.  
  1647.          The top line of your screen is your "menu bar:"
  1648.  
  1649.              File  Edit  Search  Block  Define  Options  Help  (F1)
  1650.  
  1651.          The first letter of each option will be highlighted.
  1652.  
  1653.  
  1654.          To pull down a menu:
  1655.          ────────────────────
  1656.  
  1657.          Click Left on a "menu topic," or press alt-KEY.  "KEY" means
  1658.          press the first letter of an option.  For example:
  1659.  
  1660.            To pull down the:       Press:        Or click Left on:
  1661.            ────────────────        ─────         ─────────────────
  1662.               File menu            alt-F              File
  1663.               Edit menu            alt-E              Edit
  1664.               Help menu            alt-H (or F1)      Help
  1665.  
  1666.          The FILE menu looks like this.  Notice that some options have
  1667.          "hotkeys," while other, infrequently-used options don't.  For
  1668.          example, ctrl-O means open a file window.  Hotkeys are the
  1669.          fastest way to choose options.
  1670.  
  1671.            FILE  edit  search  block  define  options  help  (F1)
  1672.          ┌──────────────────────────────────┐
  1673.          │ Open a new file window  (ctrl-O) │  <┬─ NOTE the hotkeys
  1674.          │ Close current window    (ctrl-C) │  <┘
  1675.          ├──────────────────────────────────┤
  1676.          │ Create a Directory               │  <┐
  1677.          │ Create a File                    │  <┤
  1678.          │ Delete a File                    │  <┤
  1679.          │ Rename a File                    │  <┼─ These have no hotkey
  1680.          │ Copy a File to a new location    │  <┤
  1681.          │ Combine two or more files        │  <┤
  1682.          │ Change File Size                 │  <┤
  1683.          ├──────────────────────────────────┤   │
  1684.          │ Translate File:  EBCDIC-to-ASCII │  <┤
  1685.          │ Translate File:  ASCII-to-EBCDIC │  <┘
  1686.          ├──────────────────────────────────┤
  1687.          │ Exit to DOS             (ctrl-X) │
  1688.          └──────────────────────────────────┘                          
  1689.  
  1690.  
  1691.          Using PDT's Menus  (continued)                              4.2
  1692.  
  1693.          To select an option in a menu you pulled down, either:
  1694.          ──────────────────────────────────────────────────────
  1695.  
  1696.           * Press the Up/Down cursor keys to move the highlight
  1697.             bar to an option.  Then press <cr> to accept it.
  1698.  
  1699.           * Or press the highlighted letter in the option you want.
  1700.  
  1701.             Normally, the first letter of each option is highlighted.
  1702.             But sometimes, two or more options begin with the same
  1703.             first letter.  For example, the File menu lets you Close
  1704.             a file, Create a file and Create a directory.  In these
  1705.             cases, we'll highlight a different letter for each option.
  1706.  
  1707.           * Or click Left on an option.
  1708.  
  1709.  
  1710.          To pull down a different menu:
  1711.          ──────────────────────────────
  1712.  
  1713.           * Press the Right or Left cursor keys.
  1714.  
  1715.           * Or click Left on another menu topic.
  1716.  
  1717.  
  1718.          To exit a menu without making a choice:
  1719.          ───────────────────────────────────────
  1720.  
  1721.           * Press <Esc>.
  1722.  
  1723.           * Or move the mouse cursor outside the menu, then click
  1724.             either the left or right mouse button.
  1725.  
  1726.  
  1727.          To get help with (or an explanation of) an option:
  1728.          ──────────────────────────────────────────────────
  1729.  
  1730.           * Press Up/Down to highlight it, then press F1.
  1731.  
  1732.           * Or click the Right mouse button on an option.
  1733.  
  1734.  
  1735.                                                                        
  1736.  
  1737.  
  1738.          Hotkeys                                                     4.3
  1739.          ═══════
  1740.  
  1741.          PDT's frequently-used options have convenient, fast "hotkeys."
  1742.          Some infrequently-used options have no hotkey.  Select these
  1743.          options, from a menu.  NOTE:  Pull down any menu.  Beside each
  1744.          option you'll see the hotkey for that option (if there is one).
  1745.  
  1746.          Here's a summary of PDT's hotkeys.  Notice that most of them
  1747.          are easy-to-remember mnemonics (O = Open, C = Close, E = Edit,
  1748.          etc.).  Also notice that most are ctrl-[key] hotkeys.  Function
  1749.          Keys plus INS and DEL are used for certain options.
  1750.  
  1751.          FILE                              BLOCK
  1752.          ──────────────────────────────    ──────────────────────────────
  1753.           ctrl-O  Open a file               ctrl-B  mark a Block
  1754.           ctrl-C  Close a file window       ctrl-M  Mark a column
  1755.                                             ctrl-U  Unmark
  1756.                                             ctrl-W  copy with overWrite
  1757.          SEARCH & REPLACE                   ctrl-I  copy with Insert
  1758.          ──────────────────────────────     ctrl-F  Fill a block
  1759.                                             ctrl-P  exPort a block
  1760.           ctrl-S  Search                       DEL  Delete a block
  1761.           ctrl-R  Replace                      INS  Insert spaces/records
  1762.  
  1763.  
  1764.          MODES/EDIT                        STRUCTURE
  1765.          ──────────────────────────────    ──────────────────────────────
  1766.  
  1767.           ctrl-E  turn Edit Mode on/off     ctrl-H  set Header length
  1768.           ctrl-T  Text view mode on         ctrl-L  set Record Length
  1769.           ctrl-D  turn Display Fields           F2  Mark Field
  1770.                   on/off                        F3  Edit file structure
  1771.               F6  Edit a Numeric Field          F4  Save a structure file
  1772.                                                 F5  Read a structure file
  1773.                                                 
  1774.  
  1775.          OTHER                              SWITCH FILE WINDOWS
  1776.          ──────────────────────────────    ──────────────────────────────
  1777.  
  1778.               F7  ASCII Chart               ctrl-PgDn/PgUp, or alt-#
  1779.               F9  Calculator                  "#" is the 1-4, or the
  1780.           ctrl-J  Jump to another spot        number of the file window
  1781.           ctrl-X  Exit to DOS, quit PDT       you want to switch to.
  1782.  
  1783.  
  1784.          These options have NO hotkey.  Select them from a menu.
  1785.          ────────────────────────────────────────────────────────────────
  1786.          Create a Directory             Translate file: EBCDIC-to-ASCII
  1787.          Create a File                  Translate file: ASCII-to-EBCDIC
  1788.          Delete a File
  1789.          Rename a File                  Expand Column or Field
  1790.          Copy a File                    Shrink Column or Field
  1791.          Combine Files
  1792.          Change File Size               Force dBase structure
  1793.                                         Clear Structure
  1794.                                         Configure (customize PDT)       
  1795.  
  1796.  
  1797.          ═══════════════════════════════════════════════════════════════
  1798.                          SECTION V:  Command Reference               5.1
  1799.          ═══════════════════════════════════════════════════════════════
  1800.  
  1801.          Topics:  Summary of Menus and Options
  1802.                   Tips, Hints, Unique Features
  1803.  
  1804.  
  1805.          In this section we'll present each of PDT's menus, and then
  1806.          describe each option in that menu.  Please pay particular
  1807.          attention to the TIPS & NOTES.
  1808.  
  1809.  
  1810.          The FILE Menu
  1811.          ══════════════════════════════════════════════════════════════
  1812.  
  1813.            FILE  edit  search  block  define  options  help  (F1)
  1814.          ┌──────────────────────────────────┐
  1815.          │ Open a new file window  (ctrl-O) │
  1816.          │ Close current window    (ctrl-C) │
  1817.          ├──────────────────────────────────┤
  1818.          │ Create a Directory               │
  1819.          │ Create a File                    │
  1820.          │ Delete a File                    │
  1821.          │ Rename a File                    │
  1822.          │ Copy a File to a new location    │
  1823.          │ Combine two or more files        │
  1824.          │ Change File Size                 │
  1825.          ├──────────────────────────────────┤
  1826.          │ Translate File:  EBCDIC-to-ASCII │
  1827.          │ Translate File:  ASCII-to-EBCDIC │
  1828.          ├──────────────────────────────────┤
  1829.          │ Exit to DOS             (ctrl-X) │
  1830.          └──────────────────────────────────┘
  1831.  
  1832.          To Exit PDT to DOS                      ctrl-X;  File-Exit
  1833.          ══════════════════
  1834.  
  1835.          Taking the last option first, press ctrl-X to quit PDT.  We'll
  1836.          close any files you've opened (so you needn't close them separ-
  1837.          ately).  If you've changed any structure files, we'll remind
  1838.          you they've been changed and ask if you want to save them.
  1839.  
  1840.          To Open a File                          ctrl-O;  File-Open
  1841.          ══════════════
  1842.  
  1843.           * Press ctrl-O (Open).
  1844.  
  1845.           * Or pull down the file menu (alt-F), make sure the first
  1846.             option (Open a New File/Window) is highlighted, then
  1847.             press <cr> to accept it.
  1848.  
  1849.          You may open up to 4 file windows at a time.  If you already
  1850.          have 4 windows open, and ask to open another one, PDT will tell
  1851.          you it can't open any more.  Close a window; THEN press ctrl-O
  1852.          to open another.                                              
  1853.  
  1854.  
  1855.                                                                      5.2
  1856.  
  1857.  
  1858.          When you ask to open a file, PDT displays a "file list window:"
  1859.  
  1860.          Active Directory─>┌─\PDT─────────────────────────────────────────┐
  1861.                          ┌>│    ..           <DIR>      11-18-90 ...D.    ^
  1862.             Directories ─┴>│    PDT      DIR <DIR>      01-01-92 ...D.    ▒
  1863.                          ┌>│    PDT      DOC    200,000 01-01-92 ....A    ▒
  1864.                   Files ─┼>│    SAMPLE_1 DAT      1,769 01-01-92 ....A    ▒
  1865.                          └>│    SAMPLE_2 DAT      1,769 01-01-92 ....A    ▒
  1866.                            │                                              ▒
  1867.                            │                                              v
  1868.                            │┌───┤ Alt-(drive letter) = Change Drives ├───┐│
  1869.          Available Drives─>││A: B: C: D: E:                              ││
  1870.                            ││                                            ││
  1871.                            │└────────────────────────────────────────────┘│
  1872.                   Options─>│(^S)=Sort (.)=ParentDir (F1)=Help (Esc)=Cancel│
  1873.                            └──────────────────────────────────────────────┘
  1874.  
  1875.  
  1876.          To Select a File:
  1877.          ─────────────────
  1878.  
  1879.           * Click Left on a file name.  (Click Left on the vertical
  1880.             scroll bar, if necessary, to scroll the file list down
  1881.             or up.)
  1882.  
  1883.           * Or press the first letter of the file you want to load.
  1884.             When PDT highlights the file you want, press <cr> to
  1885.             accept it.  If two or more files begin with the same
  1886.             first letter, press the letter a few times until the
  1887.             file you want to open is highlighted.
  1888.  
  1889.           * Or press the cursor pad keys (Down, Up, PgDn, PgUp, End
  1890.             and Home) until the file you want is highlighted, then
  1891.             press <cr> to accept it.
  1892.  
  1893.  
  1894.          NOTE:  The file list window above shows two directories (indi-
  1895.          cated by "<DIR>").  Directory names are always sorted by name.
  1896.  
  1897.          To sort file names, press ctrl-S (shown as ^S above).  PDT will
  1898.          then ask you how you want the list sorted:
  1899.  
  1900.          ┌───────────────────────────────────┐  Press:
  1901.          │ Sort Files by:::                  │  (N) to sort by NAME
  1902.          │ (N)ame (E)xt (S)ize (D)ate (A)ttr │  (E) to sort by EXTENSION
  1903.          └───────────────────────────────────┘  (S) to sort by SIZE
  1904.                                                 (D) to sort by DATE
  1905.                                                 (A) to sort by ATTRIBUTE
  1906.  
  1907.  
  1908.                                                          continued . . .  
  1909.  
  1910.  
  1911.          To Change Directories:                                      5.3
  1912.          ──────────────────────
  1913.  
  1914.          The first time you ask to open a file, the "active directory"
  1915.          will be the directory you were in when you ran PDT.  In the
  1916.          example above, the top of the file list window shows we're in
  1917.          a directory called "\PDT."  In the "Change Drives" section of
  1918.          the file window, we'd also see that "C:" was highlighted, mean-
  1919.          ing we're on drive C:.
  1920.  
  1921.  
  1922.          To change directories:
  1923.  
  1924.           * Highlight the name of a directory and press <cr>.  Direc-
  1925.             tories will appear in the file window with "<DIR>" beside
  1926.             their name.  Select "..   <DIR>" to move back one directory.
  1927.  
  1928.           * Press "." (the period) to move to the root directory, then
  1929.             select a new directory.
  1930.  
  1931.  
  1932.  
  1933.          To Change Drives:
  1934.          ─────────────────
  1935.  
  1936.           * Press alt-[drive letter].  For example, in the window
  1937.             above, PDT shows us we have 5 disk drives:  A - E.  For
  1938.             a directory of, say, drive A:, we'd press alt-a.
  1939.  
  1940.                                                                        
  1941.  
  1942.  
  1943.          To Close a File                        ctrl-C;  File-Close  5.4
  1944.          ═══════════════
  1945.  
  1946.           * Press ctrl-C.
  1947.  
  1948.           * Or select Close from the File menu.
  1949.  
  1950.  
  1951.          If you have 2 or more files open, PDT will re-draw the other
  1952.          windows to fill the screen.
  1953.  
  1954.  
  1955.          File Options:  Create Files or Directories       File-Create
  1956.          ══════════════════════════════════════════
  1957.  
  1958.          To create a new file or directory, select Create File or
  1959.          Create Directory from the File menu.  Just type in the name
  1960.          of the file or directory and press <cr>.
  1961.  
  1962.  
  1963.          File Options:  Rename, Delete, Copy            File-Rename/De-
  1964.          ═══════════════════════════════════                 lete/Copy
  1965.  
  1966.          To rename, delete or copy a file, select one of these options
  1967.          from the File menu.  PDT will display it's normal file list
  1968.          window.  Select a file.  If you asked to copy it or rename it,
  1969.          PDT will ask you to type in the new name.
  1970.  
  1971.  
  1972.          File Options:  Combine Files                    File-Combine
  1973.          ════════════════════════════
  1974.  
  1975.          This option lets you combine (or concatenate) up to 6 files.
  1976.  
  1977.           * Select Combine File from the File menu.
  1978.  
  1979.           * PDT's normal file window will appear.  Beneath it, another
  1980.             window will also appear.  It will tell you to:
  1981.  
  1982.             - First pick a main file.
  1983.  
  1984.             - Then pick up to 5 more files to add to the main file.
  1985.  
  1986.             - Press <Esc> when you're done selecting files to add.  PDT
  1987.               then asks if you want to proceed.  Press <Y>es or <N>o.
  1988.  
  1989.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  1990.          │                                                             │▄
  1991.          │ The main file WILL be altered:  the other files you chose   │█
  1992.          │ will be added (concatenated) to the end of it.  These other │█
  1993.          │ files won't be altered.                                     │█
  1994.          │                                                             │█
  1995.          │ To combine more than 6 files, just repeat this process.     │█
  1996.          └─────────────────────────────────────────────────────────────┘█
  1997.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1998.                                                                        
  1999.  
  2000.  
  2001.          File Options:  Change File Size               File-Change   5.5
  2002.          ═══════════════════════════════                    Size
  2003.  
  2004.          This very powerful option lets you change a file's size to:
  2005.  
  2006.           * Expand files -- to reserve space for data you plan to add.
  2007.  
  2008.           * Truncate files -- which is a v-e-r-y fast way to delete doz-
  2009.             ens, hundreds or millions of records in one, simple operation.
  2010.  
  2011.          To change the size of a file, first open it in PDT (ctrl-O),
  2012.          then select Change File Size from the File menu.  PDT then asks
  2013.          you how many bytes the file should have; enter 0-999 million.
  2014.  
  2015.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2016.          │                                                             │▄
  2017.          │ You may be UNABLE to undo this, even using file-recovery    │█
  2018.          │ tools!  And setting the file size to 0 destroys the file.   │█
  2019.          │                                                             │█
  2020.          │ When truncating a file, it might help to move the cursor to │█
  2021.          │ the end of the last record you want to keep.  At the bottom │█
  2022.          │ of the screen, notice the value of DEPTH: showing where you │█
  2023.          │ are in the file. ADD 1 to the number you see, then enter it.│█
  2024.          └─────────────────────────────────────────────────────────────┘█
  2025.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2026.  
  2027.          Translating Files:  EBCDIC/ASCII                File-Translate
  2028.          ════════════════════════════════
  2029.  
  2030.          PDT offers two options to translate EBCDIC files to ASCII
  2031.          format -- or vice versa.  This is especially handy if you've
  2032.          downloaded an EBCDIC file from, say, an IBM mainframe and want
  2033.          to view and edit it.  You can translate it to ASCII, edit it,
  2034.          then translate it from ASCII-to-EBCDIC and send it back.
  2035.  
  2036.          To do this:  Press alt-F (File Menu).  Select either "Translate:
  2037.          EBCDIC-to-ASCII" or "Translate: ASCII-to-EBCDIC."  Then, from
  2038.          PDT's file list window, choose a file and confirm that you
  2039.          really want to proceed.
  2040.  
  2041.          ALSO SEE:  Options - View EBCDIC in ASCII.
  2042.  
  2043.          The "Translate" options in the File menu re-writes the file.
  2044.          The "View EBCDIC in ASCII" option does NOT change the file.
  2045.          It simply tells PDT to display EBCDIC files in ASCII format.
  2046.  
  2047.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2048.          │                                                             │▄
  2049.          │ "Translate" can be used to "encrypt" files.  Either option  │█
  2050.          │ (used 1-3 times?) can help protect files from prying eyes.  │█
  2051.          │                                                             │█
  2052.          │ NOTE:  While PDT DOES correctly translate EBCDIC characters │█
  2053.          │ to ASCII and back again, this version does NOT translate the│█
  2054.          │ values of EBCDIC packed binary fields.                      │█
  2055.          └─────────────────────────────────────────────────────────────┘█
  2056.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  2057.  
  2058.  
  2059.          The EDIT Menu                                               5.6
  2060.          ═══════════════════════════════════════════════════════════════
  2061.  
  2062.            file  EDIT  search  block  define  options  help  (F1)
  2063.                ┌──────────────────────────────┐
  2064.                │ Edit is OFF         (ctrl-E) │
  2065.                │ Edit Numeric Field  (F6)     │
  2066.                └──────────────────────────────┘
  2067.  
  2068.          Edit Mode On/Off                       ctrl-E;  Edit/Edit
  2069.          ────────────────
  2070.  
  2071.          Also see:  Options/Configure -- to turn Edit Mode on by default.
  2072.  
  2073.          Unless you turn edit mode on by default, it'll be OFF when you
  2074.          open files.  Browse around, or search for things.  But to change
  2075.          files, you must turn Edit Mode ON.  To do so, press ctrl-E, or
  2076.          select Edit from the Edit menu.  Do the same to turn Edit OFF.
  2077.  
  2078.          When Edit Mode is ON, "E" will blink on the left edge of the
  2079.          file window.  If Edit Mode is OFF, this area is blank.  Remember,
  2080.          when edit mode's on, changes are IMMEDIATELY saved to disk!
  2081.  
  2082.                    ╔═══════════╗          ╔═══════════╗
  2083.                    E  Edit is  ║             Edit is  ║
  2084.                    ║    ON     ║          ║    OFF    ║
  2085.                    ╚═══════════╝          ╚═══════════╝
  2086.  
  2087.  
  2088.          Edit Numeric Field                     F6;  Edit/Edit Numeric
  2089.          ──────────────────
  2090.  
  2091.          This option is especially useful to edit numeric fields stored
  2092.          in "packed binary" form.  But, you can press F6 to edit any
  2093.          field up to 26 columns wide.  If you press F6 when your cursor
  2094.          is in a field wider than 26 columns, an error message pops up.
  2095.  
  2096.          "Packed binary" refers to the way numeric data is often stored,
  2097.          usually in fewer columns than would be needed to store the same
  2098.          numbers in ASCII form.  NOTE:  Since EBCDIC files store numeric
  2099.          fields in a unique format, in this version of PDT, the F6
  2100.          option may NOT be used with EBCDIC files.  ALSO NOTE:  dBase
  2101.          files store numeric fields in ASCII form.
  2102.  
  2103.          For example, suppose you move the cursor to a field and notice
  2104.          (beside "Value:" at the bottom of the screen) that the value is
  2105.          8,562.  You need to change that 10,562.
  2106.  
  2107.           * But 8,562 is a 2-byte integer stored in packed binary as "r!".
  2108.                          
  2109.           * What would you enter for 10,862?
  2110.  
  2111.             - You don't have to know!
  2112.  
  2113.             - Just press F6 and type in 10862.  When you press <cr>
  2114.               PDT will save the appropriate value -- "n*".             
  2115.  
  2116.  
  2117.          The SEARCH Menu                                             5.7
  2118.          ═══════════════════════════════════════════════════════════════
  2119.  
  2120.            file  edit  SEARCH  block  define  options  help  (F1)
  2121.                      ┌─────────────────────┐
  2122.                      │ Search     (ctrl-S) │
  2123.                      │ Replace    (ctrl-R) │
  2124.                      └─────────────────────┘
  2125.  
  2126.          Press ctrl-S to search for, or ctrl-R to replace something.
  2127.          You may search for or replace from 1 to about 75 characters.
  2128.          When you press ctrl-S or ctrl-R, a window like this pops up.
  2129.  
  2130.          ┌───────────────────────────────────────────────────────────────┐
  2131.          │Alt- ^(D)irection  Yes(I)gnore Case  No(B)lock Only  (F7) ASCII│
  2132.          │                                                               │
  2133.          │Search for:  (F1 = Help)                                       │
  2134.          │░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
  2135.          │Replace with:                                                  │
  2136.          │░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
  2137.          └───────────────────────────────────────────────────────────────┘
  2138.  
  2139.          Enter a character or phrase to search for and press <cr>.  If
  2140.          you pressed ctrl-R, enter the replacement character or phrase
  2141.          and press <cr> again.   While entering either phrase, press:
  2142.  
  2143.           alt-D  to tell PDT which Direction to search:  Up (above where
  2144.                  your cursor is in the file) or Down (below the cursor).
  2145.  
  2146.                  Press alt-D and the arrow beside (D)irection will change
  2147.                  from pointing up or down to the opposite.
  2148.  
  2149.           alt-I  to tell PDT to Ignore case.  If you say "Ignore case,"
  2150.                  we'll find the phrase regardless of how it's capitalized.
  2151.  
  2152.           alt-B  to say "search just the Block I marked."
  2153.  
  2154.              F7  to enter any ASCII character from 0-255.
  2155.  
  2156.          When you're done, PDT will begin searching your file.
  2157.  
  2158.           * If searching, PDT displays where it is in the file.  If PDT
  2159.             finds a match, it'll appear in the top left corner of the
  2160.             file window.  To find the next occurrence, press ctrl-S, <cr>.
  2161.             If replacing, PDT tells you how many items it has replaced.
  2162.  
  2163.           * In either case, you can press <Esc> to cancel the operation.
  2164.  
  2165.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2166.          │                                                             │▄
  2167.          │ You can Search for something with Edit Mode either on or    │█
  2168.          │ off.  But Edit Mode must be ON to Replace something.        │█
  2169.          │                                                             │█
  2170.          │ You can Replace something only with something else of the   │█
  2171.          │ SAME LENGTH.  Files can't expand or contract during replace.│█
  2172.          └─────────────────────────────────────────────────────────────┘█
  2173.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  2174.  
  2175.  
  2176.          The BLOCK Menu                                              5.8
  2177.          ═══════════════════════════════════════════════════════════════
  2178.  
  2179.            file  edit  search  BLOCK  define  options  help  (F1)
  2180.                              ┌───────────────────────────┐
  2181.                              │ mark Block       (ctrl-B) │
  2182.                              │ Mark Column      (ctrl-M) │
  2183.                              │ Unmark Block     (ctrl-U) │
  2184.                              ├───────────────────────────┤
  2185.                              │ copy w/overWrite (ctrl-W) │
  2186.                              │ copy w/Insert    (ctrl-I) │
  2187.                              │ Delete Block     (DEL)    │
  2188.                              │ Fill             (ctrl-F) │
  2189.                              │ exPort           (ctrl-P) │
  2190.                              ├───────────────────────────┤
  2191.                              │ insert Spaces    (INS)    │
  2192.                              ├───────────────────────────┤
  2193.                              │ Expand Column or Field    │
  2194.                              │ Shrink Column or Field    │
  2195.                              └───────────────────────────┘
  2196.  
  2197.          Block options fall into two categories:  those which require
  2198.          that you first MARK a block (and then copy, delete or fill it,
  2199.          etc.); and those which don't require a block to be marked
  2200.          (inserting spaces or records, or shrinking columns or fields).
  2201.  
  2202.          Marked Block Options
  2203.          ════════════════════
  2204.  
  2205.          Depending on what you want to do, you can mark blocks in two ways.
  2206.  
  2207.           * Press ctrl-B to mark a continuous stream of characters or
  2208.             records.
  2209.  
  2210.              - Press left/right cursor keys to expand the block left/right.
  2211.  
  2212.              - Press down/up cursor keys to mark the rest of the record
  2213.                you're on, and then move to the next/last record.
  2214.  
  2215.              - Press ctrl-B again to mark the end, or ctrl-U to unmark it.
  2216.  
  2217.           * Press ctrl-M to mark a column (or any rectangular area).
  2218.  
  2219.              - Press left/right cursor keys to expand the block left/right.
  2220.  
  2221.              - Press down/up cursor keys to move to the next/last record.
  2222.  
  2223.              - Press ctrl-M again to mark the end, or ctrl-U to unmark it.
  2224.  
  2225.          Note that the major difference here is what happens when you
  2226.          move up or down.   With ctrl-M, only the columns you included
  2227.          are marked.  But with ctrl-B, entire records are marked.
  2228.  
  2229.          Also, you can mark or unmark blocks with Edit Mode OFF.  But to
  2230.          use any block option that alters the file, Edit Mode must be ON.
  2231.                                                          continued . . .  
  2232.  
  2233.  
  2234.          Marked Block Options  (continued)                           5.9
  2235.  
  2236.          Once you mark a block, you may Copy, Delete, Fill or Export it.
  2237.          And as PDT works, it displays how much of the file is left to go.
  2238.  
  2239.          To COPY blocks, press ctrl-W or ctrl-I.
  2240.          ───────────────────────────────────────
  2241.  
  2242.          After marking a block, move your cursor to another spot (switch
  2243.          file windows if needed:  press alt-# or ctrl-PgDn).  Then press:
  2244.  
  2245.           * ctrl-W to OVERWRITE whatever is at that spot.
  2246.  
  2247.           * ctrl-I to INSERT the block at the spot.
  2248.  
  2249.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2250.          │                                                             │▄
  2251.          │ WARNING: Copying columns with Insert could damage dBase     │█
  2252.          │ files.  And you should not use it with files for which you  │█
  2253.          │ created a structure file.  INSTEAD, use Expand Column to    │█
  2254.          │ increase the column's width.  THEN use ctrl-W to copy with  │█
  2255.          │ Overwrite.  The reason for this is that Expand Column gives │█
  2256.          │ you options to update both the dBase header and the struc-  │█
  2257.          │ ture files.  Unless these are updated, you could destroy    │█
  2258.          │ your file!                                                  │█
  2259.          │                                                             │█
  2260.          │ Inserting Columns is a two step process.  PDT first copies  │█
  2261.          │ the column you marked to a temporary file, and then reads   │█
  2262.          │ it back in, inserting it where your cursor is.  PDT will    │█
  2263.          │ keep you informed of the progress of both operations.  This │█
  2264.          │ is the only time PDT uses temporary files.   Also, suf-     │█
  2265.          │ ficient disk space must be available to save this temp file.│█
  2266.          │ If there's too little disk space, PDT will let you know.    │█
  2267.          └─────────────────────────────────────────────────────────────┘█
  2268.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2269.  
  2270.  
  2271.          To DELETE blocks, press DEL.
  2272.          ────────────────────────────
  2273.  
  2274.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2275.          │                                                             │▄
  2276.          │ If you open a dBase file, mark a COLUMN, and then press DEL,│█
  2277.          │ PDT will urge you to use the "Shrink Column" option instead.│█
  2278.          │                                                             │█
  2279.          │ Shrink Column lets you update the dBase file header, but    │█
  2280.          │ DEL does NOT.  If you delete columns without updating the   │█
  2281.          │ header, programs (including PDT) might later tell you that  │█
  2282.          │ your file has been corrupted!                               │█
  2283.          └─────────────────────────────────────────────────────────────┘█
  2284.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2285.  
  2286.  
  2287.                                                          continued . . .  
  2288.  
  2289.  
  2290.          Marked Block Options  (continued)                          5.10
  2291.  
  2292.  
  2293.          To FILL blocks, press ctrl-F.
  2294.          ─────────────────────────────
  2295.  
  2296.          Tell PDT what to fill the block with.  Enter spaces to erase
  2297.          the area.  If you marked a continuous block, PDT repeats the
  2298.          "phrase" you entered to completely fill the block.
  2299.  
  2300.          If you marked a column, PDT begins each row with the "phrase"
  2301.          you entered.  If your phrase is narrower than the column you
  2302.          marked, PDT fills the rest of the column with blank spaces.
  2303.  
  2304.  
  2305.          To EXPORT blocks, press ctrl-P.
  2306.          ───────────────────────────────
  2307.  
  2308.          Export means to save the marked block to a file.  PDT will ask
  2309.          you for a file name.  If you marked a column, PDT will also ask
  2310.          you if you want each line saved with a Carriage Return/Line
  2311.          Feed (CR/LF) at the end.
  2312.  
  2313.           * If you tell PDT to export to a file that already exists,
  2314.             we'll ask you if you want to Overwrite it or Add to it.
  2315.  
  2316.  
  2317.          Other Block Options
  2318.          ═══════════════════
  2319.  
  2320.          To INSERT spaces or records, press INS (the Insert key).
  2321.          ────────────────────────────────────────────────────────
  2322.  
  2323.          When you press INS, PDT asks how many spaces you want to add --
  2324.          beginning where the cursor is.  The default is the record size.
  2325.  
  2326.          If you're working with a database file and want to add several
  2327.          blank records:
  2328.  
  2329.           * Move to column 1 (press Home).
  2330.  
  2331.           * Note the Record Size at the bottom of your screen.
  2332.  
  2333.           * Press INS and enter a multiple of the record size.  For
  2334.             example, if the record size is 400 and you want to add 6
  2335.             blank records, enter 2400.
  2336.  
  2337.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2338.          │                                                             │▄
  2339.          │ To widen or expand a column, use Expand Column not Insert.  │█
  2340.          │ Expand Column will insert spaces for each record.  And, if  │█
  2341.          │ you want, it'll also update the dBase file header and your  │█
  2342.          │ structure file.                                             │█
  2343.          └─────────────────────────────────────────────────────────────┘█
  2344.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2345.                                                         continued . . .
  2346.  
  2347.                                                                     
  2348.          EXPANDING columns or fields.                               5.11
  2349.          SHRINKING columns or fields.
  2350.          ───────────────────────────────────────────────────────────────
  2351.  
  2352.          These options let you widen (or shrink) fields or columns.
  2353.          They also offer options to update the dBase file header and
  2354.          your structure file AUTOMATICALLY.  They work in similar ways,
  2355.          so we'll explain them together.
  2356.  
  2357.  
  2358.          Move the cursor to the column you'd like to expand or shrink.
  2359.          Be sure Edit Mode is on (ctrl-E), then press alt-B to pull down
  2360.          the Block menu.  Select either Expand or Shrink column.  PDT
  2361.          will display one of these windows:
  2362.  
  2363.          ╔═══════╣ Insert Columns ╠═════╗ ╔══════╣ Delete Columns ╠═════╗
  2364.          ║                              ║ ║                             ║
  2365.          ║          Begin at Column: 33 ║ ║         Begin at Column: 33 ║
  2366.          ║        Number of Columns: 1  ║ ║       Number of Columns: 1  ║
  2367.          ║ASCII # of fill character: 32 ║ ║                             ║
  2368.          ║   Alter Structure? (Y/N): Y  ║ ║  Alter Structure? (Y/N): Y  ║
  2369.          ║  Alter DBF Header? (Y/N): Y  ║ ║ Alter DBF Header? (Y/N): Y  ║
  2370.          ║                              ║ ║                             ║
  2371.          ║         Begin? (Y/N):        ║ ║         Begin? (Y/N):       ║
  2372.          ╚══════════════════════════════╝ ╚═════════════════════════════╝
  2373.  
  2374.  
  2375.            * "Begin at Column" indicates where your cursor was when you
  2376.              began this operation (column 33 this example).  Change this
  2377.              number, if you like, to begin somewhere else.  Press <cr>.
  2378.  
  2379.  
  2380.            * Enter the number of columns you want to insert or delete.
  2381.              If you marked a column block (ctrl-M), you'll see the
  2382.              number of columns you marked (rather than 1).
  2383.  
  2384.  
  2385.            * IF you're expanding a column, enter the ASCII number of the
  2386.              character we should fill with.  "32" is Space; enter 0-255.
  2387.              If you're not sure what number to enter, press F7 to choose
  2388.              a character from PDT's ASCII table.
  2389.  
  2390.  
  2391.            * Next, press <Y>es or <N> to tell us if you'd like PDT to
  2392.              update the structure file, and, if appropriate, the header
  2393.              of the dBase (DBF) file.
  2394.  
  2395.              - This can be CRITICAL!
  2396.  
  2397.              - If you change the width of fields in dBase files and
  2398.                DON'T update the file header, programs may be unable to
  2399.                read the file correctly.
  2400.  
  2401.  
  2402.            * Finally, press <Y>es to begin, or <N>o or <Esc> to quit.
  2403.                                                          continued . . .
  2404.  
  2405.  
  2406.          Expanding or Shrinking Columns  (continued)                5.12
  2407.  
  2408.  
  2409.  
  2410.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2411.          │                                                             │▄
  2412.          │ If you change the width of fields in dBase files and DON'T  │█
  2413.          │ update the header, other programs may be unable to read     │█
  2414.          │ the file.  This could render the file USELESS!  Be careful. │█
  2415.          │                                                             │█
  2416.          │ With dBase files, PDT CANNOT:                               │█
  2417.          │  1. Change the first field (the Deleted Record Field).      │█
  2418.          │                                                             │█
  2419.          │  2. Delete a field (shrink it to 0).  Use PF-Mod.EXE (part  │█
  2420.          │     of PDT's Tool Kit) to modify or delete dBase fields.    │█
  2421.          │                                                             │█
  2422.          │  3. Delete columns across fields -- since this effectively  │█
  2423.          │     deletes the fields in the middle.  To shrink two or     │█
  2424.          │     more fields, shrink them separately.                    │█
  2425.          └─────────────────────────────────────────────────────────────┘█
  2426.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2427.  
  2428.  
  2429.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2430.          │                                                             │▄
  2431.          │ EXPAND columns inserts blank columns to the LEFT of the     │█
  2432.          │ "Begin at Column" (which is usually where the cursor was    │█
  2433.          │ when you invoked this option).                              │█
  2434.          │                                                             │█
  2435.          │ If this column is the LAST column of a field, inserting     │█
  2436.          │ blanks to the left will shift everything in the last column │█
  2437.          │ to the right.  If this happens, just:                       │█
  2438.          │                                                             │█
  2439.          │  1. Move right to the current end of the field.  Be sure    │█
  2440.          │     you're on the top row (press ctrl-Home).  Then mark a   │█
  2441.          │     single column from top-to-bottom by pressing:           │█
  2442.          │                                                             │█
  2443.          │            ctrl-M  ctrl-End  ctrl-M  ctrl-Home              │█
  2444.          │                                                             │█
  2445.          │  2. Now move left to where that column used to be (ie.,     │█
  2446.          │     the "Begin at Column").  Press ctrl-W to copy the       │█
  2447.          │     marked column to the column you're now in.              │█
  2448.          │                                                             │█
  2449.          │  3. Immediately press ctrl-F and Fill the marked column     │█
  2450.          │     with one blank space.                                   │█
  2451.          └─────────────────────────────────────────────────────────────┘█
  2452.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2453.  
  2454.                                                                        
  2455.  
  2456.  
  2457.          The DEFINE Menu                                            5.13
  2458.          ═══════════════════════════════════════════════════════════════
  2459.  
  2460.            file  edit  search  block  DEFINE  options  help  (F1)
  2461.                                     ┌───────────────────────────────┐
  2462.                                     │ Header length        (ctrl-H) │
  2463.                                     │ record Length        (ctrl-L) │
  2464.                                     │ Force dBase structure         │
  2465.                                     │ Display Fields: OFF  (ctrl-D) │
  2466.                                     │ Clear Structure               │
  2467.                                     ├───────────────────────────────┤
  2468.                                     │ Define Field         (F2)     │
  2469.                                     │ Edit Field Structure (F3)     │
  2470.                                     │ Save Structure File  (F4)     │
  2471.                                     │ Read Structure File  (F5)     │
  2472.                                     └───────────────────────────────┘
  2473.  
  2474.  
  2475.          This menu includes options to define the structure of files.
  2476.          It also has options affecting how PDT displays files (Force
  2477.          dBase, Display Fields and Clear Structure).
  2478.  
  2479.  
  2480.          Header Length                          ctrl-H;  Define-Header
  2481.          ═════════════
  2482.  
  2483.          Use this option to specify the top portion of a file you
  2484.          want PDT to treat as a "header" and not display.  To set
  2485.          the header length, press ctrl-H (or select Header Length from
  2486.          the Define menu), then enter the size of the header (0-999
  2487.          million bytes).
  2488.  
  2489.  
  2490.          Normally the header is a section of a file that isn't data
  2491.          and you simply want to skip it.  The next page has details.
  2492.  
  2493.          But if you're working near the middle or end of very large
  2494.          files, you can also set the Header Length to set the "top of
  2495.          the file."  This lets you press ctrl-Home or PgUp and move no
  2496.          higher than the first record you want to work with.  The rest
  2497.          of the file is still there, but we won't jump above the point
  2498.          you specify.
  2499.  
  2500.  
  2501.                                                          continued . . .
  2502.  
  2503.                                                                        
  2504.  
  2505.  
  2506.          What's a Header?                                           5.14
  2507.          ────────────────
  2508.  
  2509.          Many database files, like dBase ".DBF" files, begin with a
  2510.          header.  Programs read this header to determine how many fields
  2511.          a file has, as well as the length and type of each field.  The
  2512.          header is NOT data.  So you set the header length to tell PDT
  2513.          to skip it and begin displaying the file with the first record.
  2514.  
  2515.          PDT automatically recognizes dBase files (by the .DBF extension),
  2516.          reads the header and displays records and fields appropriately.
  2517.  
  2518.          But if your file is not a dBase file, AND it has a header, set
  2519.          the header length to help PDT properly display your data.
  2520.  
  2521.  
  2522.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2523.          │                                                             │▄
  2524.          │ Setting the header length is usually the FIRST STEP in      │█
  2525.          │ defining the "structure" of a file.   If a file has a       │█
  2526.          │ header, it's much easier figuring out the rest of the       │█
  2527.          │ file structure if you tell PDT not to display the header.   │█
  2528.          │                                                             │█
  2529.          │ Once you set the header, press F4 to save a structure file. │█
  2530.          │ The next time you open this file, PDT will set the header   │█
  2531.          │ size automatically.                                         │█
  2532.          └─────────────────────────────────────────────────────────────┘█
  2533.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2534.  
  2535.  
  2536.  
  2537.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2538.          │                                                             │▄
  2539.          │ If you open a dBase file and would like to see (and perhaps │█
  2540.          │ edit or fix) the header:                                    │█
  2541.          │                                                             │█
  2542.          │  * Press ctrl-H, enter "0" for Header Length.  Press <cr>.  │█
  2543.          │                                                             │█
  2544.          │  * Press ctrl-Home then Home to be sure you're at the first │█
  2545.          │    byte of the file.  You're now looking at the header.     │█
  2546.          │                                                             │█
  2547.          │ NOTE:  Registered users receive Fix-DBF.Hdr and Fix-DBF.Fld.│█
  2548.          │ These are very handy PDT structure files which can help you │█
  2549.          │ explore the header and field structure of dBase files.      │█
  2550.          │                                                             │█
  2551.          │ And these can be INVALUABLE if a dBase file is ever damaged.│█
  2552.          │ They can help you isolate and fix the corrupted areas.      │█
  2553.          └─────────────────────────────────────────────────────────────┘█
  2554.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2555.  
  2556.  
  2557.                                                                        
  2558.  
  2559.  
  2560.          Record Length                     ctrl-L;  Define-Record   5.15
  2561.          ═════════════
  2562.  
  2563.          Set the Record Length to tell PDT how long each "logical line"
  2564.          is in a file.
  2565.  
  2566.          Press ctrl-L (or select Record Length from the Define menu),
  2567.          then enter record length (1 to 9,999 bytes).
  2568.  
  2569.          Some files have no logical record length.  Executable (.Exe or
  2570.          .Com) files have no lines in the traditional sense.  And text
  2571.          files often have lines of varying lengths.
  2572.  
  2573.           * For these types of files, changing the Record Length simply
  2574.             changes how wide a view PDT displays before it "wraps" the
  2575.             data around to the next row.
  2576.  
  2577.          But many database or data files have fixed-length records, with
  2578.          each record made up of fields.  For example, a Customer database
  2579.          might have fields for Last Name, First Name, Address, Phone, etc.
  2580.          The same amount of space is reserved for a given field for every
  2581.          customer (eg., 20 spaces for Last Name).  So the total "record
  2582.          length" (or space reserved) is fixed for every customer.
  2583.  
  2584.          By telling PDT the correct record length, you help it display
  2585.          each record (each customer in our example) on a separate line.
  2586.          And the fields will fall into logical columns.
  2587.  
  2588.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2589.          │                                                             │▄
  2590.          │ Setting the record length is usually the SECOND STEP in     │█
  2591.          │ defining the "structure" of a file.   Once you do, just     │█
  2592.          │ press F2 at the beginning of each field and define each     │█
  2593.          │ "field."  Finally, press F4 to save the structure file.     │█
  2594.          │                                                             │█
  2595.          │ If you open a dBase file (one with a ".DBF" extension), PDT │█
  2596.          │ will automatically read the record length.   If your dBase  │█
  2597.          │ files DON'T have a ".DBF" extension, use Define-Force dBase │█
  2598.          │ to tell PDT to read the dBase file's header.                │█
  2599.          │                                                             │█
  2600.          │ ALSO SEE:  Options-Configure.  If you open non-dBase files, │█
  2601.          │ PDT uses two approaches to determine an "appropriate" record│█
  2602.          │ length.  Tell PDT which one to use in the Configure menu.   │█
  2603.          │  1.  By default, PDT sets the record length to the first    │█
  2604.          │      Carriage Return (CR) or, if none, the first Line Feed  │█
  2605.          │      (LF) character it finds (Chr$(13) or Chr$(10).  This   │█
  2606.          │      is very handy when working with fixed-length data files│█
  2607.          │      with each record ending in, say, a CR/LF.              │█
  2608.          │                                                             │█
  2609.          │  2.  But if you'd prefer that PDT set the record length     │█
  2610.          │      to the width of the file window (normally 78 or 38),   │█
  2611.          │      tell PDT to use <W>indow size to set record length.    │█
  2612.          │      This is appropriate if you normally work with files    │█
  2613.          │      that have no structure (like .Exe or .Com files) or    │█
  2614.          │      non-fixed length files (like text files).              │█
  2615.          └─────────────────────────────────────────────────────────────┘█
  2616.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  2617.  
  2618.  
  2619.          Force dBase                          Define-Force dBase   5.16
  2620.          ═══════════
  2621.  
  2622.          This option tells PDT to read the header of a dBase file to
  2623.          determine the file's record and field structures.  There are
  2624.          two reasons why you might need to do this.
  2625.  
  2626.           1. If you open a dBase file that does NOT have a ".DBF" exten-
  2627.              sion, PDT won't recognize it as a dBase file.  It therefore
  2628.              won't read the dBase header, and can't properly display
  2629.              records and fields.  Choose Force dBase Structure to tell
  2630.              PDT to read the dBase header.
  2631.  
  2632.           2. If you change the header or record lengths of dBase files,
  2633.              or edit or clear the structure, select Force dBase to
  2634.              restore the original layout.
  2635.  
  2636.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2637.          │                                                             │▄
  2638.          │ To simplify working with dBase files that don't have ".DBF" │█
  2639.          │ extensions, load them, select Force dBase Structure, then   │█
  2640.          │ immediately press F4 (Save Structure File).                 │█
  2641.          │                                                             │█
  2642.          │ As long as you save the structure file with the same name as│█
  2643.          │ your data file, PDT will load it whenever you open the file.│█
  2644.          └─────────────────────────────────────────────────────────────┘█
  2645.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2646.  
  2647.  
  2648.  
  2649.          Display Fields                   ctrl-D;  Define-Display Fields
  2650.          ══════════════
  2651.  
  2652.          Use this option to tell PDT to display column/field names on
  2653.          the top line of a file window (replacing the file name).  Or
  2654.          press ctrl-D to turn this features OFF.
  2655.  
  2656.           * This option helps you see which fields are coming up, and
  2657.             which are behind you.
  2658.  
  2659.           * On the last line of your screen, PDT always displays
  2660.             "FIELD: "  showing the name and number of the field your
  2661.             cursor is in.
  2662.  
  2663.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2664.          │                                                             │▄
  2665.          │ ALSO SEE:  Appendix I:  Customizing PDT.  In PDT's Configure│█
  2666.          │ menu you can turn this option ON by default.                │█
  2667.          │                                                             │█
  2668.          │ Narrow columns or fields may make it impossible to display  │█
  2669.          │ the full field name.  If you're not sure what a field is,   │█
  2670.          │ move the cursor to it, then glance at "FIELD:" on the bot-  │█
  2671.          │ tom line of your screen.                                    │█
  2672.          └─────────────────────────────────────────────────────────────┘█
  2673.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2674.                                                                        
  2675.  
  2676.  
  2677.          Clear Structure                   Define-Clear Structure   5.17
  2678.          ═══════════════
  2679.  
  2680.          Select Clear Structure to clear the field structure for a file.
  2681.  
  2682.           * Header and record lengths won't change.
  2683.  
  2684.           * But since PDT will no longer "know" where and what each
  2685.             field is, it will no longer:
  2686.  
  2687.             - Display fields in contrasting colors.
  2688.             - Display field names at the top and bottom of your screen.
  2689.             - Display the correct values of fields as you change fields.
  2690.             - Offer you the F6 (Edit Field) option since there aren't
  2691.               any fields any more.
  2692.  
  2693.          The main use for this option is to turn off the contrasting
  2694.          colors PDT uses to display fields.  This sometimes makes it
  2695.          easier to browse or edit records.  To restore the structure,
  2696.          use Force dBase or Read Structure -- depending on the type of
  2697.          file you're working with.
  2698.  
  2699.  
  2700.          Define Field/Edit Field            F2/F3;  Define-Define/Edit
  2701.          ═══════════════════════
  2702.  
  2703.          We're explaining two options together since you'll work in
  2704.          the same window for both of them
  2705.  
  2706.          Press F2 to Define a field.  This is the last step in creating
  2707.          a structure file (after setting the Header and Record lengths).
  2708.  
  2709.           * First move your cursor to the FIRST column of a field.  Al-
  2710.             though not strictly required, this simplifies things a lot.
  2711.             Let's assume you moved to column 1.
  2712.  
  2713.           * Press F2.  When you do, a window like this pops up.
  2714.  
  2715.             ┌─────────────────────────────────────────────────────────┐
  2716.             │  COL TYP NAME      1 <-Field#  WIDTH  TYPES        LEN  │
  2717.             ├─────────────────────────────────────────────────────────┤
  2718.             │    1  C                          81   (c)haracter    ?  │
  2719.             │   81  C  __Past End!                  (t)iny Integer 1  │
  2720.             │                                       (i)nteger      2  │
  2721.             │                                       (l)ong Integer 4  │
  2722.             │                                       (s)ingle MS    4  │
  2723.             │                                       (j)ingle IEEE  4  │
  2724.             │                                       (d)ouble MS    8  │
  2725.             │                                       (k)ouble IEEE  8  │
  2726.             │                                       ($)currency    8  │
  2727.             ├─────────────────────────────────────────────────────────┤
  2728.             │  (^A)dd   (^D)elete   (^T)runcate to End   (F1) = Help  │
  2729.             └─────────────────────────────────────────────────────────┘
  2730.  
  2731.          This window lists the non-dBase field types.
  2732.                                                          continued . . . 
  2733.  
  2734.  
  2735.                                                                     5.18
  2736.  
  2737.  
  2738.          If you're working in a dBase file and press F2, you'd see a
  2739.          window with different field "types" (see below).  NOTE:  If you
  2740.          open a ".DBF" file, PDT reads the field names and starting col-
  2741.          umns for you.  In this case, the COL, TYP and NAME columns would
  2742.          be already filled in for you!  They columns are blank here
  2743.          since, here, we simply want to show you the dBase field types.
  2744.  
  2745.             ┌─────────────────────────────────────────────────────────┐
  2746.             │  COL TYP NAME      1 <-Field#  WIDTH  TYPES        LEN  │
  2747.             ├─────────────────────────────────────────────────────────┤
  2748.             │                                       (C)haracter    ?  │
  2749.             │                                       (N)umeric      ?  │
  2750.             │                                       (L)ogical      1  │
  2751.             │                                       (D)ate         8  │
  2752.             │                                       (M)emo        10  │
  2753.             ├─────────────────────────────────────────────────────────┤
  2754.             │  (^A)dd   (^D)elete   (^T)runcate to End   (F1) = Help  │
  2755.             └─────────────────────────────────────────────────────────┘
  2756.  
  2757.  
  2758.           * The cursor would by in the TYP (or Type) column.  PDT ini-
  2759.             tially assumes each field is a Character field, so you'll see
  2760.             "C" or "c" there.  Press <cr> to accept Character, or enter
  2761.             one of the other symbols you see in parentheses under "Types."
  2762.  
  2763.  
  2764.           * Press <cr> and enter a field name under NAME.  Although op-
  2765.             tional, entering field names enables PDT to display them both
  2766.             at the top of file windows and the bottom of your screen.
  2767.  
  2768.             - Note:  PDT places NO restrictions on field names.  This
  2769.               differs from, say, dBase which capitalizes names and won't
  2770.               allow certain characters in them.  For example, "First Name"
  2771.               must be "FIRST_NAME" in dBase, since dBase prohibits spaces.
  2772.  
  2773.  
  2774.            * BE SURE to press <cr>, then press <Esc>.  If you press <Esc>
  2775.              while your cursor is still in the Name column, PDT will as-
  2776.              sume you want to cancel this action.  When you press <Esc>,
  2777.              PDT re-draws the fields in contrasting colors.
  2778.  
  2779.  
  2780.            * Now move the cursor to the start of field #2 and press F2.
  2781.              Repeat this process for each field.
  2782.  
  2783.  
  2784.                                                                        
  2785.  
  2786.  
  2787.          Defining and Editing Fields  (continued)                   5.19
  2788.  
  2789.  
  2790.          Press F3 to EDIT field structures.  PDT's field window pops up.
  2791.  
  2792.           * PDT will locate your cursor in the line that defines the
  2793.             field you were in when you pressed F3.  So, when you press
  2794.             F3, if you're in the 5th field in your data file, PDT will
  2795.             put you in line #5 of this window.
  2796.  
  2797.           * Edit the field type, name or starting column.  Press Tab or
  2798.             Shift-Tab to move between columns.  Or press:
  2799.  
  2800.             - ctrl-A to ADD (or insert) a field.
  2801.             - ctrl-D to DELETE the field definition your cursor is in.
  2802.             - ctrl-T to TRUNCATE the list, deleting everything from
  2803.               the cursor to the end of the list.
  2804.  
  2805.          Remember, BE SURE to press <cr> after you edit something.  Then
  2806.          press <Esc>.  If you press <Esc> with your cursor still in the
  2807.          column you edited, PDT assumes you want to cancel the action.
  2808.  
  2809.          Save a Structure File             F4;  Define-Save Structure
  2810.          ═════════════════════
  2811.  
  2812.          Press F4 to save a structure file.  A window pops up and PDT
  2813.          urges you to save the structure file with the SAME NAME as your
  2814.          data file.  Since PDT saves structure files only in PDT.DIR,
  2815.          there should be no chance of overwriting your data file.
  2816.  
  2817.          By using the same name as your data file, PDT will automatically
  2818.          load the structure file whenever you open the data file.  Perhaps
  2819.          the only times you would NOT use the same name are to save:
  2820.  
  2821.           * Generic structures for data files with the same structure.
  2822.  
  2823.           * Alternate views of the same data file.
  2824.  
  2825.  
  2826.          Read a Structure File             F5;  Define-Read Structure
  2827.          ═════════════════════
  2828.  
  2829.          Press F5 to read a structure file.  PDT will display its normal
  2830.          file list window listing the structure files saved in PDT.DIR.
  2831.          Click Left on the one you want, or highlight it and press <cr>.
  2832.  
  2833.          You may never have to do this.  If you save structure files with
  2834.          the same name as your data files.  PDT will read them automati-
  2835.          cally.  The only times you normally have to press F5 are if you:
  2836.  
  2837.           * Saved a structure file with a name different from a data file.
  2838.  
  2839.           * Edited the structure, and now want to restore the original.
  2840.  
  2841.           * Opened a dBase (.DBF) file and prefer the structure you
  2842.             created over the dBase structure.                          
  2843.  
  2844.  
  2845.          The OPTIONS Menu                                           5.20
  2846.          ═══════════════════════════════════════════════════════════════
  2847.            file  edit  search  block  define  OPTIONS  help  (F1)
  2848.                                       ┌────────────────────────────────┐
  2849.                                       │ Jump                  (ctrl-J) │
  2850.                                       │ Get ASCII Character   (F7)     │
  2851.                                       │ View EBCDIC in ASCII  OFF      │
  2852.                                       │ Text view mode        (ctrl-T) │
  2853.                                       │ Calculator            (F9)     │
  2854.                                       ├────────────────────────────────┤
  2855.                                       │ conFigure                      │
  2856.                                       │ Registration                   │
  2857.                                       └────────────────────────────────┘
  2858.  
  2859.  
  2860.          Jump                                 ctrl-J;  Options-Jump
  2861.          ════
  2862.  
  2863.          Press ctrl-J to jump to a different location in the active
  2864.          file.  PDT will then display this menu:
  2865.  
  2866.  
  2867.                              ┌───────────────────┐
  2868.                              │ ──── Jump To ──── │
  2869.                              │                   │
  2870.                              │     (P)ercent     │
  2871.                              │     (B)yte        │
  2872.                              │     (R)ecord      │
  2873.                              └───────────────────┘
  2874.  
  2875.           * Press (P) to jump to a location, say, 75% into the file.
  2876.           * Press (B) to jump to an absolute byte location.
  2877.           * Press (R) to jump to a specific record.
  2878.  
  2879.          Once you select an option, PDT will ask you to enter the
  2880.          percentage, byte or record to jump to.
  2881.  
  2882.  
  2883.  
  2884.          Get ASCII Character                  F7;  Options-Get ASCII
  2885.          ═══════════════════
  2886.  
  2887.          When editing a file, or when entering a phrase to search for or
  2888.          replace, press F7 to enter ANY ASCII character:  from 0 - 255.
  2889.  
  2890.          PDT will display an ASCII chart.  To select a character:
  2891.  
  2892.           * Click Left on it.
  2893.  
  2894.           * Or press the cursor pad keys until the character you want
  2895.             is highlighted, then press <cr>.  As you move, PDT will
  2896.             display the ASCII and Hexadecimal numbers of the character
  2897.             that's highlighted.
  2898.  
  2899.           * Press <Esc> to quit without selecting a character.
  2900.                                                                        
  2901.  
  2902.  
  2903.          The Options Menu (continued)                               5.21
  2904.  
  2905.  
  2906.          View EBCDIC in ASCII                  Options-View EBCDIC
  2907.          ════════════════════
  2908.  
  2909.          EBCDIC (or Extended Binary Coded Decimal Information Code) re-
  2910.          fers to the way information is stored on large IBM computers.
  2911.          On PCs, information is normally stored in ASCII format.
  2912.  
  2913.          If you open an EBCDIC file, select this option to ask PDT to
  2914.          display it in ASCII mode.  This lets you view and edit it in a
  2915.          format that's much easier to understand.
  2916.  
  2917.          NOTE:  Turning this option ON does NOT change the way the file
  2918.          is stored on disk.  It affects only how PDT displays it.  Any
  2919.          changes you make are saved to disk in EBCDIC format.
  2920.  
  2921.          When you select this option, the menu will toggle between ON
  2922.          and OFF, as in "View EBCDIC in ASCII  ON."
  2923.  
  2924.  
  2925.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2926.          │                                                             │▄
  2927.          │ WARNING:  As we've mentioned, this version of PDT does NOT  │█
  2928.          │ translate EBCDIC packed binary numeric fields!              │█
  2929.          │                                                             │█
  2930.          │  * You CAN use all of PDT's EBCDIC options with such files. │█
  2931.          │                                                             │█
  2932.          │  * But you should NEVER edit these packed binary numerics.  │█
  2933.          │                                                             │█
  2934.          │  * You CAN safely edit the CHARACTER portions of EBCDIC     │█
  2935.          │    files.  These changes are saved (correctly) in EBCDIC.   │█
  2936.          └─────────────────────────────────────────────────────────────┘█
  2937.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2938.  
  2939.  
  2940.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  2941.          │                                                             │▄
  2942.          │ ALSO SEE:  Options-Configure.  In PDT's Configure menu, you │█
  2943.          │ can turn this option ON by default.  This is convenient if  │█
  2944.          │ you'll always work with EBCDIC files.                       │█
  2945.          │                                                             │█
  2946.          │ ALSO SEE:  File-Translate.  In PDT's File menu are two      │█
  2947.          │ options letting you translate EBCDIC files to ASCII, and    │█
  2948.          │ back again.                                                 │█
  2949.          │                                                             │█
  2950.          │ SAVE a STRUCTURE FILE:  If you open an EBCDIC file, and     │█
  2951.          │ turn this option ON, immediately save a structure file --   │█
  2952.          │ even if you don't want to mark fields, set record size, etc.│█
  2953.          │ Then, whenever you open this file, PDT will read the struc- │█
  2954.          │ ture file, and turn EBCDIC view mode on for you.            │█
  2955.          └─────────────────────────────────────────────────────────────┘█
  2956.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2957.  
  2958.                                                                        
  2959.  
  2960.  
  2961.          Text View Mode                       ctrl-T;  Options-Text View
  2962.          ══════════════
  2963.  
  2964.          Since PDT "displays" all characters in files (rather than
  2965.          "acting" on them), it's not well-suited for browsing through
  2966.          or editing text files (with variable-length lines, all ending
  2967.          with a Carriage Return/Line Feed).
  2968.  
  2969.          But if you open a text file, and want to view it in normal text
  2970.          mode, press ctrl-T.  PDT will suspend all normal operations,
  2971.          and re-display the file from "roughly" where your cursor is.
  2972.          By "roughly" we mean within a PgUp or PgDn of where you are.
  2973.          Browse around, then press <Esc> to resume normal operations --
  2974.          again, roughly where you were when you pressed <Esc>.
  2975.  
  2976.  
  2977.          Calculator                       F9;  Options-Calculator   5.22
  2978.          ══════════
  2979.  
  2980.          Press F9 to pop up a 4-function calculator.  PDT will turn on
  2981.          NUMLOCK so you can enter numbers on the numeric keypad.
  2982.  
  2983.          One use for the calculator is to determine the Hexadecimal
  2984.          value of a Decimal number.  Just enter the decimal number,
  2985.          then press H to see its Hex equivalent.  But you can't do
  2986.          the reverse -- you can't enter a Hex number and get it's
  2987.          decimal equivalent.
  2988.  
  2989.          PDT will display Hexadecimal values in contrasting colors.
  2990.          Just press a key to restore the decimal value and resume.
  2991.  
  2992.  
  2993.          Configure                             Options-Configure
  2994.          ═════════
  2995.  
  2996.          Select this option to "customize" PDT to your liking.  See
  2997.          Appendix I for details.
  2998.  
  2999.  
  3000.          Registration                          Options-Registration
  3001.          ════════════
  3002.  
  3003.          This option simply displays the name of the registered user
  3004.          of the program you're using.
  3005.  
  3006.          When you order PDT from us, or when you run the program
  3007.          REGISTER.EXE (if you have a user-supported version), your
  3008.          name, address and phone number are embedded in PDT.
  3009.  
  3010.          This option lets you (or us) quickly determine who licensed
  3011.          this copy.  In unregistered, user-supported versions, this
  3012.          display simply reminds you that registration is required
  3013.          after using PDT beyond the trial period.
  3014.  
  3015.  
  3016.                                                                        
  3017.  
  3018.  
  3019.          The HELP Menu                                              5.23
  3020.          ═══════════════════════════════════════════════════════════════
  3021.  
  3022.            file  edit  search  block  define  options  HELP  (F1)
  3023.                                       ┌──────────────────────────────┐
  3024.                                       │ Introduction & Features      │
  3025.                                       │ Getting Help                 │
  3026.                                       │ Using the Menus              │
  3027.                                       │ Summary of Commands          │
  3028.                                       │ Using a Mouse                │
  3029.                                       │ Installing & Customizing PDT │
  3030.                                       ├──────────────────────────────┤
  3031.                                       │ To Order, or To Get Support  │
  3032.                                       ├──────────────────────────────┤
  3033.                                       │ Browse through PDT.Doc       │
  3034.                                       └──────────────────────────────┘
  3035.  
  3036.  
  3037.          To get help, press F1 almost anytime.  Or pull down the Help
  3038.          menu, highlight an option, and then either:
  3039.  
  3040.           * Press F1.  PDT will display 1 or more help screens, and
  3041.             then return to the Help menu.  Just select another topic,
  3042.             or press <Esc> to exit the Help menu, or select a different
  3043.             menu.
  3044.  
  3045.           * Or press <cr>.  PDT will display the same screens it would
  3046.             have if you pressed F1.  But when your done, it'll exit the
  3047.             Help menu.
  3048.  
  3049.  
  3050.  
  3051.                                                                        
  3052.  
  3053.          ═══════════════════════════════════════════════════════════════
  3054.                            SECTION VI:  Appendices                   A.1
  3055.          ═══════════════════════════════════════════════════════════════
  3056.          ═══════════════════════════════════════════════════════════════
  3057.             APPENDIX I:   Customizing PDT (Colors, Screen Rows, Etc.)
  3058.          ═══════════════════════════════════════════════════════════════
  3059.  
  3060.          PDT's OPTIONS menu has a Configure option which lets you cus-
  3061.          tomize how PDT operates.  To customize PDT:
  3062.  
  3063.           * Run PDT.  Then press alt-O to pull down the Options menu.
  3064.  
  3065.           * Select the Configure option (press F <cr> or click Left
  3066.             on Configure).
  3067.  
  3068.           * Select the options you prefer; press <Esc> when you're done.
  3069.  
  3070.          The Configuration menu looks like this.  Note the letters in
  3071.          parentheses near the left edge.  Also note the last line:  for
  3072.          your choices to take effect, you must exit PDT and re-start it.
  3073.  
  3074.                 ┌─────────────────────────────────────────────┐
  3075.                 │ (S) Screen Rows: 25, 43, 50, Automatic : 25 │
  3076.                 │                                             │
  3077.                 │ (C) Color, Monochrome or Automatic     :  A │
  3078.                 │                                             │
  3079.                 │ (E) Default to EBCDIC ON?    Y=Yes/N=No:  N │
  3080.                 │                                             │
  3081.                 │ (D) Default to Edit ON?             Y/N:  N │
  3082.                 │                                             │
  3083.                 │ (F) Default to Display Fields ON?   Y/N:  N │
  3084.                 │                                             │
  3085.                 │ (A) Ask before File Change or Exit? Y/N:  Y │
  3086.                 │                                             │
  3087.                 │ (W) Default Window Size C=<CR> W=Window:  C │
  3088.                 │                                             │
  3089.                 │ ─────────────────────────────────────────── │
  3090.                 │Click Left on option, or press S/C/E/D/F/A/W.│
  3091.                 │                                             │
  3092.                 │    Changes become effective next session.   │
  3093.                 └─────────────────────────────────────────────┘
  3094.  
  3095.          Notice that the first two options ("Screen Rows" and "Color
  3096.          or Monochrome") have an "Automatic" option.  If "A" appears
  3097.          to the right of these options, PDT will detect what type of
  3098.          monitor you're using, and automatically:
  3099.  
  3100.           - Display things in color if you have a color monitor, or
  3101.             in combinations of white and black if you have a mono-
  3102.             chrome or Hercules monitor.
  3103.  
  3104.           - Use the highest number of rows your monitor allows (25-50).
  3105.  
  3106.          To select options, EITHER press the letter you see in paren-
  3107.          theses, or click Left on an option.  In either case, the right
  3108.          side of the menu will change to reflect your choice.
  3109.                                                          continued . . .  
  3110.  
  3111.  
  3112.          Here's what each configuration option means: : :            A.2
  3113.  
  3114.          Press  To Select                               PDT will display
  3115.          ═════  ══════════════════════════════════════  ════════════════
  3116.  
  3117.           (S)   Screen Rows: 25, 43, 50, Automatic       25, 43, 50,  A
  3118.  
  3119.                 - Discussed above:  How many screen
  3120.                   rows, and therefore how much infor-
  3121.                   mation, PDT displays.
  3122.  
  3123.           (C)   Color, Monochrome or Automatic                C,  M,  A
  3124.  
  3125.                 - Discussed above:  Whether PDT displays
  3126.                   things in color or black and white.
  3127.  
  3128.           (E)   Default to EBCDIC View ON?      Y=Yes, N=No       Y,  N
  3129.  
  3130.                 - If you'll never work with EBCDIC files (de-
  3131.                   scribed elsewhere), just ignore this option.
  3132.  
  3133.                 - If EBCDIC View Mode is ON, when you open ANY
  3134.                   file, PDT will display them in easier-to-
  3135.                   understand and easier-to-edit ASCII mode.
  3136.  
  3137.                 - PDT offers two ways to turn EBCDIC view mode
  3138.                   on or off.  Here, you can set it permanently.
  3139.                   If you turn it ON here, PDT will assume EVERY
  3140.                   file you open is an EBCDIC file.  It'll dynam-
  3141.                   cally translate files and display them in ASCII.
  3142.  
  3143.                 - The Options menu also has and EBCDIC view
  3144.                   mode option.  Using this option, you can
  3145.                   open 1-4 files, and then selectively turn
  3146.                   EBCDIC view ON or OFF for each file.
  3147.  
  3148.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  3149.          │ As we've mentioned, this version of PDT does NOT translate  │█
  3150.          │ EBCDIC packed binary numeric fields!  It DOES correctly     │█
  3151.          │ translate all characters in EBCDIC files.                   │█
  3152.          └─────────────────────────────────────────────────────────────┘█
  3153.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3154.  
  3155.           (D)   Default to Edit ON?             Y=Yes, N=No       Y,  N
  3156.  
  3157.                 - By default, when you open a file Edit Mode
  3158.                   is OFF.  But if you prefer that Edit Mode be
  3159.                   turned on every time you open a file, set
  3160.                   the default to ON (or Yes) here.
  3161.  
  3162.                 - BEWARE:  Changes you make to files are
  3163.                   immediately saved to disk.  So it's safest
  3164.                   to leave this option set to OFF, and then
  3165.                   turn it ON only when needed (press ctrl-E).
  3166.  
  3167.                                                        continued . . .  
  3168.  
  3169.  
  3170.          Configuration Options (continued)                           A.3
  3171.  
  3172.  
  3173.           (F)   Default to Display Fields ON?   Y=Yes, N=No       Y,  N
  3174.  
  3175.                 - When working in data files, it's helpful to
  3176.                   know which field the cursor is in.  PDT can
  3177.                   show you the field names in two ways.
  3178.  
  3179.                   First, on the bottom line of your screen PDT
  3180.                   displays "Field: xxxxx".  As you move left or
  3181.                   right, "xxxxx" changes to show you the field
  3182.                   you're currently in.
  3183.  
  3184.                   Second, if you turn Display Fields ON, PDT
  3185.                   will also display field names at the top of
  3186.                   each file window.  Here we can display several
  3187.                   field names at once, helping you see what's
  3188.                   coming next, and what's behind the cursor.
  3189.  
  3190.                 - PDT gives you 2 ways to turn Display Fields ON.
  3191.  
  3192.                   If you'll always want it on, select Yes here.
  3193.                   Or you can open a file and press ctrl-D
  3194.                   (Display Fields) to toggle this on or off.
  3195.  
  3196.  
  3197.           (A)   Ask before File Change or Exit?   Y=Yes, N=No     Y,  N
  3198.  
  3199.                 - We've emphasized that PDT is a very powerful
  3200.                   program, and that it immediately saves to
  3201.                   disk many of the changes you make.
  3202.  
  3203.                 - But, when you're about to make major changes,
  3204.                   (like deleting a block), PDT will normally ask
  3205.                   you if you want to proceed.
  3206.  
  3207.                   If you want PDT to instantly do what you ask,
  3208.                   select "No" (Don't ask me) for this option.  Then,
  3209.                   if you ask to delete a file or a block, it's gone.
  3210.                   If you ask to Exit PDT to DOS, you're out.  Etc.
  3211.  
  3212.                                                          continued . . .  
  3213.  
  3214.  
  3215.          Configuration Options (continued)                           A.4
  3216.  
  3217.  
  3218.           (R)   Default Record Size           C=<CR> W=Window     C,  W
  3219.  
  3220.                 - "Record size" refers to how long each logical
  3221.                   line is in a file.  And this, in turn, affects
  3222.                   your "view" of files -- how PDT displays files
  3223.                   before it "wraps" a line to the next row on
  3224.                   your screen.
  3225.  
  3226.                 - If you open dBase files, or files for which
  3227.                   you've created a "structure file," PDT will
  3228.                   set the record size based on the information
  3229.                   stored in the dBase or structure.
  3230.  
  3231.                   But if you open non-dBase files (and you
  3232.                   haven't created a structure file), this
  3233.                   option determines how PDT sets the default
  3234.                   record size.  This will affect your "view" of
  3235.                   the file.
  3236.  
  3237.                 - If this option reads "W," PDT will set the
  3238.                   record size to the width of the window
  3239.                   you're opening (78 for full-width screens).
  3240.  
  3241.                   If this option reads "C," PDT scans the files
  3242.                   you open for the first Carriage Return (CR,
  3243.                   Chr$(13) or Line Feed (LF, Chr$(10)).  If PDT
  3244.                   finds one of these characters, it sets record
  3245.                   size to that length.  This is ideal if you
  3246.                   work with fixed-length data files, AND each
  3247.                   record ends in a CR/LF.
  3248.  
  3249.  
  3250.          PDT is "Self-Modifying"
  3251.          ───────────────────────
  3252.  
  3253.          When you choose options in the Configuration menu, PDT saves
  3254.          your settings to itself (ie., to PDT.EXE).  Your choices will
  3255.          NOT become effective until the NEXT TIME you run PDT.
  3256.  
  3257.           * Because PDT changes itself, it's known as a "self-modifying"
  3258.             program.
  3259.  
  3260.           * Some virus-protection programs object to executable programs
  3261.             modifying themselves.  They do this to prevent viruses from
  3262.             infecting (ie., changing) your programs.
  3263.  
  3264.             - Many virus-protection utilities will alert you when
  3265.               a program is about to be modified.  Most will ask you
  3266.               if it should allow the modification to continue.
  3267.  
  3268.             - Answer "YES, allow the modification" when PDT runs.  It
  3269.               must be able to read and modify itself.
  3270.                                                                         
  3271.  
  3272.  
  3273.          ═══════════════════════════════════════════════════════════════
  3274.          APPENDIX II: Creating Structure Files with Word Processors  A.5
  3275.          ═══════════════════════════════════════════════════════════════
  3276.                             
  3277.          To summarize, structure files "define" the structure of data
  3278.          files.  If PDT knows the structure of a file:
  3279.  
  3280.           * It displays records and fields in logical rows and columns.
  3281.  
  3282.           * It can display field names both at the top of each file
  3283.             window, and at the bottom of your screen.
  3284.  
  3285.           * It displays the "values" of fields.
  3286.  
  3287.           * It lets you edit the contents of fields, even fields stored
  3288.             in "packed binary" form (except EBCDIC packed binary fields).
  3289.  
  3290.           * You can tab from field-to-field to easily view or edit fields.
  3291.  
  3292.          A structure file is a simple ASCII file that MUST BE stored
  3293.          in PDT's special sub-directory:  PDT.DIR.  The easiest way
  3294.          to create or edit structure files is by using PDT.  Or use
  3295.          any editor or word processor -- they're very easy to create.
  3296.  
  3297.          NOTE:  When PDT saves structure files, it adds a column indi-
  3298.          cating the WIDTH of each field.  This can help you create
  3299.          "types" or "structures" in various programming languages.
  3300.          You do NOT have to add the Width column to structure files.
  3301.  
  3302.          Here's what a structure file looks like.  This is part of the
  3303.          structure file we included with PDT:  SAMPLE_2.STR.
  3304.  
  3305.                  PDT.STRUCTURE  │ Do NOT move or change this line! │
  3306.                     257  <Header Size
  3307.                      80  <Record Size
  3308.                  EBCDIC  <Data Type
  3309.                       1 , C , Deleted Record Flag
  3310.                       2 , C , FIRST_NAME
  3311.                      12 , C , LAST_NAME
  3312.                      26 , C , ADDRESS
  3313.                      50 , C , CITY
  3314.                      62 , C , STATE
  3315.  
  3316.          Lines 1-4 are REQUIRED.  They MUST be in the order and format
  3317.          shown.  And there must be NO blank lines before these, or
  3318.          between the lines of structure files.
  3319.  
  3320.           1.  The 1st line is PDT's "signature line."  PDT looks for
  3321.               this line to ensure that you don't overwrite your data
  3322.               files (since structure files are usually saved with the
  3323.               same name as your data files).
  3324.  
  3325.               If you try to save a structure file, and PDT can't find
  3326.               this signature, it may refuse to save the structure.
  3327.  
  3328.                                                          continued . . .  
  3329.  
  3330.  
  3331.           2.  The 2nd line defines how long the "file header" is.    A.6
  3332.  
  3333.               - "Headers" (which are usually at the beginning of files)
  3334.                 tell programs about a file's record and field structure.
  3335.                 Headers aren't data.  So by specifying a Header Size, you
  3336.                 tell PDT to not display the first "xxx" bytes of a file.
  3337.  
  3338.               - If your file has no header, enter:  0 <Header Size.
  3339.                 In other words, this line MUST still be there.
  3340.  
  3341.  
  3342.           3.  On line #3, enter the logical record length of each line
  3343.               of data in the file (excluding the header).  For example,
  3344.               if records are 689 bytes long, enter:   689 <Record Size
  3345.  
  3346.  
  3347.           4.  Line #4 must read "ASCII <Data Type" or "EBCDIC <Data Type."
  3348.  
  3349.               - Enter EBCDIC only if your data file is in EBCDIC format.
  3350.  
  3351.               - When you open this data file, PDT will automatically
  3352.                 turn on EBCDIC-to-ASCII view mode -- letting you view
  3353.                 the file in easier-to-understand (and edit) ASCII.  If
  3354.                 your file is NOT in EBCDIC format, using EBCDIC here
  3355.                 will result in screens-full of garbage.
  3356.  
  3357.  
  3358.           5.  From line 5 to the end, there should be one line defining
  3359.               each "field" in a record.  Each line has 3 sections:
  3360.  
  3361.               - Which column the field starts in.
  3362.               - What "type" of field it is (we'll define this later).
  3363.               - The name of the field.
  3364.  
  3365.               Notice you don't have to tell PDT how wide each field is.
  3366.               PDT calculates this based on the fields' starting columns.
  3367.  
  3368.               The field name is optional.  If you include it, PDT can
  3369.               show you which field you're in as you move around.
  3370.  
  3371.               These 3 sections MUST be separated by 2 (and only 2)
  3372.               commas.  And you MUST NOT use commas inside any section.
  3373.  
  3374.               For example, this line is illegal:  1,493, C, Comment Field
  3375.               Notice the 3 commas, not two, with the errant comma in
  3376.               "1,493."  The line should read:  1493, C, Comment Field
  3377.  
  3378.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  3379.          │                                                             │▄
  3380.          │ PDT treats the first byte of files as byte #1.  In some pro-│█
  3381.          │ gramming languages, the first byte in files is numbered 0.  │█
  3382.          │                                                             │█
  3383.          │ For example, a 250 byte header is in bytes 1-250, not 0-249.│█
  3384.          └─────────────────────────────────────────────────────────────┘█
  3385.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3386.                                                                        
  3387.  
  3388.  
  3389.          Field "Types"                                               A.7
  3390.          ═════════════
  3391.  
  3392.          If PDT knows the "type" of each field, it:
  3393.  
  3394.           * Displays the "value" of fields as you move the cursor to them.
  3395.  
  3396.           * Lets you press F6 (Edit Field) to edit fields.  This option is
  3397.             especially useful to help you edit numeric fields stored in
  3398.             "packed binary" form (except EBCDIC packed binary fields).
  3399.  
  3400.             The discussion of the EDIT menu has details on Edit Field.
  3401.  
  3402.          Here are the symbols you'd enter to indicate different types of
  3403.          fields.  Note the different symbols for dBase and non-dBase files.
  3404.  
  3405.          ══════ dBase Field Types ═════    ═══ Non-dBase Field Types ════
  3406.  
  3407.          Use This    For This     Field    Use This    For This     Field
  3408.           Symbol   Type of Field  Width     Symbol   Type of Field  Width
  3409.          ────────  ─────────────  ─────    ────────  ─────────────  ─────
  3410.  
  3411.             C      Character         ?        c      Character        ?
  3412.             N      Numeric           ?        t      Tiny Integer     1
  3413.             L      Logical           1        i      Integer          2
  3414.             M      Memo             10        l      Long Integer     4
  3415.             D      Date              8        s      Single MS        4
  3416.                                               j      Single IEEE      4
  3417.                                               d      Double MS        8
  3418.                                               k      Double IEEE      8
  3419.                                               $      Currency         8
  3420.  
  3421.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  3422.          │                                                             │▄
  3423.          │  Note that symbols for dBase files are UPPER case, while    │█
  3424.          │  symbols for non-Dbase field types are all in lower case.   │█
  3425.          │                                                             │█
  3426.          │  In the non-dBase list, note the s/j and d/k pairs -- indi- │█
  3427.          │  cating Microsoft (MS) versus IEEE formats, respectively.   │█
  3428.          │                                                             │█
  3429.          │  CAUTION:  In this version of PDT, numeric fields in EBCDIC │█
  3430.          │  files aren't accomodated.  See notes on this elsewhere.    │█
  3431.          └─────────────────────────────────────────────────────────────┘█
  3432.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3433.  
  3434.          "Field Width" indicates how many characters/columns each field
  3435.          was allocated.  Notice that Character fields (and dBase Numeric
  3436.          fields) are "?" wide -- they vary in width.  But other fields
  3437.          have fixed widths.  So, for example, while Integers range from
  3438.          -32768 to +32767 or 0 to 65535, they're are stored in 2 bytes.
  3439.  
  3440.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  3441.          │ Some people declare all fields to be Character fields.  In  │▄
  3442.          │ this case, PDT won't be able to correctly display values.   │█
  3443.          └─────────────────────────────────────────────────────────────┘█
  3444.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 
  3445.  
  3446.  
  3447.          ═══════════════════════════════════════════════════════════════
  3448.           APPENDIX III:  Helpful Tips; Salvaging Damaged Data Files  A.8
  3449.          ═══════════════════════════════════════════════════════════════
  3450.  
  3451.          Exploring or Determining File Structures
  3452.          ────────────────────────────────────────
  3453.  
  3454.          To determine a file's structure, open it and, starting at the
  3455.          first column of row 1, look for two or three types of patterns.
  3456.  
  3457.          First try to see if there's a header.  Its pattern often dif-
  3458.          fers from the pattern of data records.
  3459.  
  3460.          For example, in the file below, there's a pattern of capital-
  3461.          ized field names (followed by some symbols), followed by a dif-
  3462.          ferent pattern of names, addresses, etc.
  3463.  
  3464.          As a "rough guess" of the header's length, move the cursor to
  3465.          the spot in front of "Kim," note the "Depth:" near the bottom
  3466.          of your screen, then press ctrl-H and enter this number as the
  3467.          Header Length.
  3468.  
  3469.          13\^X  OO               FIRST_NAME  C    0       LAST_NAME  ^
  3470.                    ADDRESS  C   k          CITY  C   C             STAT
  3471.             ZIP    C    ,           Kim       Johnson       3300 South 1
  3472.                CO 31002 (714) 525-9933    Dennis    Avery         127 Ea
  3473.          George      WA 98322 (801) 566-9112    Andrew    Youngman
  3474.  
  3475.  
  3476.          Next, determine the record length.  Again, look for patterns.
  3477.          For example, notice the first names here: Kim, Dennis and
  3478.          Andrew.  For a "rough guess" of the record length, put your
  3479.          cursor on the "K" in Kim, press ctrl-B, then move down and
  3480.          right.  As you mark the block, PDT shows you how many bytes
  3481.          you've marked.  When you reach the space before "Dennis" press
  3482.          ctrl-L and enter the number of bytes PDT says you marked.
  3483.  
  3484.  
  3485.          ┌─────────────────────── TIPS & NOTES ────────────────────────┐
  3486.          │                                                             │▄
  3487.          │ When determining Record Length, watch for DIAGONAL patterns.│█
  3488.          │                                                             │█
  3489.          │ ...........xxxxxxxxxxx---------**********^^^^####!!!!!!@@@@@│█
  3490.          │ @@@@@...........xxxxxxxxxxx---------**********^^^^####!!!!!!│█
  3491.          │ !!!!@@@@@...........xxxxxxxxxxx---------**********^^^^####!!│█
  3492.          │                                                             │█
  3493.          │ Diagonal patterns like these indicate BOTH that this is a   │█
  3494.          │ fixed-length record file, AND that record size isn't right. │█
  3495.          └─────────────────────────────────────────────────────────────┘█
  3496.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3497.  
  3498.                                                                        
  3499.  
  3500.  
  3501.          Salvaging Damaged Data Files                                A.9
  3502.          ────────────────────────────
  3503.  
  3504.          This section, sent to registered users in a special Salvage.Doc,
  3505.          offers tips to help you salvage corrupted data files.
  3506.  
  3507.          Also sent to registered users are two files called: Fix_DBF.Hdr
  3508.          and Fix_DBF.Fld.  These PDT Structure Files can be invaluable
  3509.          when you need to inspect of fix dBase files.  They let you
  3510.          examine the Header or the Field Structure, respectively.  Tips
  3511.          on using these files are included with registered versions.
  3512.  
  3513.  
  3514.  
  3515.          ══════════════════════════════════════════════════════════════
  3516.                          APPENDIX V:  Error Messages
  3517.          ══════════════════════════════════════════════════════════════
  3518.  
  3519.          We try to prevent errors from disrupting your work.  For
  3520.          example, we check to see if there's enough room on the disk
  3521.          when you try to copy or expand files.  And, unless you tell us
  3522.          NOT to ask your permission before overwriting files, we'll tell
  3523.          you when you're about to do so.
  3524.          
  3525.  
  3526.          Most errors are likely to be DOS errors.  Most of these will be
  3527.          DISK or FILE errors like:
  3528.  
  3529.           * You try to write to an unformatted disk.
  3530.           * You try to read from a floppy disk with the drive door open.
  3531.           * A disk is damaged and can't be written to.
  3532.           * You tell PDT to read the structure of a dBase file, but
  3533.             it's not a dBase file.
  3534.  
  3535.  
  3536.          In most cases, PDT will tell you an error occurred, stop what
  3537.          it was doing, then let you continue.  If you can, fix the error
  3538.          and try again.
  3539.  
  3540.          Other errors might be fatal -- PDT will abort.  Frankly we
  3541.          haven't found a situation where this has happened.  But it's
  3542.          possible.
  3543.  
  3544.          ┌─────────────────────────── NOTES ───────────────────────────┐
  3545.          │                                                             │▄
  3546.          │  If a FATAL error occurs, or if an error occurs repeatedly, │█
  3547.          │  PLEASE let us know.  Describe exactly what you were doing, │█
  3548.          │  what happened, and what error number or message appeared   │█
  3549.          │  (if any).  We'll be glad to fix any errors or bugs we can. │█
  3550.          │                                                             │█
  3551.          │  For a fast response to the problem, call:  (415) 863-0530. │█
  3552.          └─────────────────────────────────────────────────────────────┘█
  3553.            ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  3554.  
  3555.                                                                        
  3556.  
  3557.  
  3558.          ══════════════════════════════════════════════════════════════
  3559.          APPENDIX VI:  Other Programs by Pro~Formance & Company    A.10
  3560.          ══════════════════════════════════════════════════════════════
  3561.  
  3562.                  Here's a summary of many of our other programs.
  3563.  
  3564.          ══════════════════════════════════════════════════════════════
  3565.          Professional Scribe (Pro~Scribe)              PS Express (PSE)
  3566.          ══════════════════════════════════════════════════════════════
  3567.  
  3568.          Pro~Scribe and PSE help you improve anything you write (or help
  3569.          you improve the writing of others -- your staff, students, etc.)
  3570.  
  3571.          Pro~Scribe is used around the world in companies like IBM,
  3572.          Hewlett Packard, AT&T, Lockheed, Citicorp and Bank of America to
  3573.          help improve memos, letters, manuals, documentation, contracts,
  3574.          promotional material, etc.  Here's how Pro~Scribe and PSE help:
  3575.  
  3576.           * They examine your writing for many types of writing mistakes.
  3577.  
  3578.           * You can look at overall results for an entire letter,
  3579.             report, etc.  Or, if you like, they'll look at your
  3580.             writing line-by-line.
  3581.  
  3582.           * They show suspect problems, and offer suggestions.
  3583.  
  3584.           * Results are shown numerically, and with colorful graphs.
  3585.  
  3586.           * They come with two manuals (plus a Quick Reference Guide)
  3587.             - One covers basics: To install/run PS, and basic guidelines.
  3588.             - "Effective, High-Impact Writing" has more writing tips.
  3589.  
  3590.           * They're colorful, fast, fun, and a terrific value:
  3591.             $39 for both!
  3592.  
  3593.          How are Pro~Scribe and PSE different?   First, PS Express is a
  3594.          RAM-resident program.  That means it's always ready to help
  3595.          when you need help most--while you're actually writing.  Run
  3596.          PSE, then run your word processor and start writing.  Need
  3597.          help? Just press a key.
  3598.           * When PSE pops up, just mark the text you want PSE to examine.
  3599.             A window pops up instantly with feedback on your writing.
  3600.           * PSE is like having an English teacher looking over your
  3601.             shoulder, gently coaching you as you write.
  3602.  
  3603.          Pro~Scribe gives you everything PSE does, and much, much more.
  3604.          It reads files saved by your word processor, or you can type
  3605.          text directly into PS.  Like PSE, Pro~Scribe shows how complex
  3606.          your writing, words and sentences are.  It also offers you:
  3607.  
  3608.           * Feedback on "Word Wasters"  (5 categories of writing errors).
  3609.           * Three RGL (Running Grade Level) options (line-by-line feedback).
  3610.           * An option to flag complex words and Word Wasters in each line.
  3611.           * A Personal Interest score showing if you write as you speak.
  3612.           * Options to: Customize the program, send results to your printer.
  3613.                                                                       
  3614.  
  3615.          ══════════════════════════════════════════════════════════════
  3616.          Multi-Print                The ultimate text printing utility!
  3617.          ══════════════════════════════════════════════════════════════
  3618.  
  3619.          Multi-Print (MP) prints ASCII text files (like this manual) on
  3620.          HP LaserJets -OR- Epson -OR- Toshiba printers (or compatibles).
  3621.  
  3622.           * Print 1, 2 or 4 PAGES of text on each SHEET of paper.  Print
  3623.             in portrait mode on BOTH sides of the paper on ANY printer,
  3624.             Or print sideways on LaserJets, Epson or Toshiba printers.
  3625.             - Choose "Booklet" mode to print books.  Print the front
  3626.               side, then the back, then just fold and staple!
  3627.  
  3628.             - Choose "Left-to-Right" to print pages side-by-side, first
  3629.               on the left side of the page, then on the right.
  3630.  
  3631.             - Choose "1 Column" per sheet to print up to 250 characters
  3632.               per line (this is great for printing spreadsheets).
  3633.  
  3634.             - And with the last 2 options, you can choose to print 2-sided
  3635.               or 1-sided.  Then use them as-is, or slip them into a 3-ring
  3636.               binder.  (Booklets are always printed 2-sided).
  3637.  
  3638.           * Four fonts are included.
  3639.             - Our 9-point Times Roman font is a better-looking substi-
  3640.               tute for the LaserJet's "Line Printer" font (though you
  3641.               can use the Line Printer font if you wish).  With our 6-
  3642.               point Roman font, print up to 250 characters/line and 80
  3643.               lines/page (eg., spreadsheets).
  3644.  
  3645.             - Other fonts let MP print "sideways" on Epson and Toshiba
  3646.               printers.
  3647.  
  3648.           * The four fonts contain almost all ASCII characters.  Print:
  3649.             - Lines, boxes, shading, Big! Fonts (tm).
  3650.  
  3651.             - French, German, Spanish and other language characters.
  3652.  
  3653.             - "Control codes" (with ASCII values below 32) which are
  3654.                useful when you want to add arrows, "bullets," "check
  3655.                boxes" and other symbols to your text.
  3656.  
  3657.             - NOTE: Original LaserJets and LaserJet + can't print the last 2.
  3658.  
  3659.           * MP offers many printing options:
  3660.             - Print TITLES:  page numbers, the date, and the name of the
  3661.               file you're printing (or a "custom title") - in any com-
  3662.               bination. Print titles at the TOP or BOTTOM of each page
  3663.               in several "styles."
  3664.  
  3665.             - Print "both" sides, or just the "front" or "back" side.
  3666.  
  3667.             - Control Top, Left and Right Margins.  "Wrap" long lines of
  3668.               text (LaserJets only).  Print to LPT1, 2 or 3 or "to a file."
  3669.  
  3670.           * MP is menu-driven; choose options using a mouse or the keyboard.
  3671.                                                                        
  3672.  
  3673.  
  3674.          ══════════════════════════════════════════════════════════════
  3675.          inform-Z (also see Mail Call below)  Professional Forms Design
  3676.          ══════════════════════════════════════════════════════════════
  3677.  
  3678.          inform-Z is a complete form system.  Built-in features include:
  3679.          easy form design, math, "auto-edit," high quality printing, etc.
  3680.  
  3681.          Design, edit and print forms with inform-Z.
  3682.  
  3683.           * Draw lines or boxes, or add shading, in several styles.
  3684.  
  3685.           * Enter text, auto-centered inside boxes if you like.
  3686.  
  3687.           * Automatically date, sequence number and time-stamp forms.
  3688.  
  3689.           * Add "formulas" for spreadsheet convenience, speed & accuracy.
  3690.  
  3691.           * Quick, easy block options:  Copy, Move, Erase, Shading.
  3692.  
  3693.           * Vary fonts, type styles, line spacing.
  3694.  
  3695.           * inform-Z is very easy to use.  And it's "lesson forms" cut
  3696.             the learning time dramatically.
  3697.  
  3698.  
  3699.          Then use inform-Z or Mail Call to fill out forms.
  3700.  
  3701.           * "Auto-Edit" fields lets you quickly skip through a form,
  3702.             editing just fields you "marked."  On order forms, for
  3703.             example:  Quantity, Description, Price per Unit.  Math
  3704.             options will do the math for you!
  3705.  
  3706.           * Let Mail Call fill in other information for you -- pulling
  3707.             names, addresses, etc. from your database, putting them
  3708.             where you want them.
  3709.  
  3710.          Produce high-quality, professional looking forms in minutes
  3711.          with Epson printers or HP LaserJets (+/500/Series II or later).
  3712.          And you DON'T need expensive font cartridges or soft fonts for
  3713.          lines, boxes, shading, etc.  We use built-in features for
  3714.          these.  "But, I don't have a LaserJet or an Epson" you say.
  3715.          Not to worry. inform-Z has two other printer options so it
  3716.          works with any printer.
  3717.  
  3718.          Together, inform-Z and Mail Call can help you manage almost
  3719.          every piece of paper in your office.
  3720.  
  3721.            Forms:       Invoices, Purchase Orders, Personnel Forms, Work
  3722.                         Orders, Work Schedules, Travel or Expense Reports,
  3723.                         Accounting Forms, Application Blanks, Org. Charts
  3724.  
  3725.            As Well As:  Letters, Memos, Envelopes, Mailing Labels,
  3726.                         Personalized Documents (ie., form letters),
  3727.                         Reports, Client or Employee lists, etc.
  3728.                                                                        
  3729.  
  3730.          ══════════════════════════════════════════════════════════════
  3731.          Mail Call and MC Express (MCE)           Our mailing assistant
  3732.          ══════════════════════════════════════════════════════════════
  3733.  
  3734.          Mail Call (MC) is a full featured mailing assistant.  Add names
  3735.          to a database, then Browse, Search, Print, Sort, etc.
  3736.  
  3737.           * Print envelopes in several sizes.
  3738.  
  3739.           * Print mailing labels (several sizes plus a "roll-your-own-
  3740.             size" option) 1 to 99 copies of each label, 1 to 3 columns
  3741.             across.
  3742.  
  3743.           * Print personalized documents (or form letters).
  3744.  
  3745.           * Print forms -- with "auto-edit," date, sequence number and
  3746.             math features!
  3747.  
  3748.           * Print reports, phone books, appointment schedules, etc.
  3749.  
  3750.          Mail Call offers UNlimited capacity -- use as many database
  3751.          files as you want.  And its "Mail Merge" option lets you
  3752.          Import or Export names to files used by word processors or
  3753.          other database programs.
  3754.  
  3755.          MC Express, a "RAM-resident" program, that lets you:  1) print
  3756.          envelopes while INSIDE your word processor; and, 2) lets you
  3757.          "write out" names & addresses to a file you can later "import"
  3758.          into MC (no re- typing).  MCE, optional, works with ALL
  3759.          versions of the HP LaserJet.
  3760.  
  3761.                                                                        
  3762.  
  3763.          ══════════════════════════════════════════════════════════════
  3764.          P~F Presents  (PFP)              A DESKTOP PRESENTATION System
  3765.          ══════════════════════════════════════════════════════════════
  3766.  
  3767.          P~F Presents comes with several programs to help you create,
  3768.          manage and display presentations.  The two main programs are
  3769.          P-Screen and PFP.
  3770.  
  3771.          With P-Screen you:       (See below for more on P-Screen)
  3772.          ──────────────────
  3773.  
  3774.           * Design screens (or "slides").
  3775.  
  3776.           * Save screens in libraries (or print them, or save them to
  3777.             ASCII files, or executable ".COM" files.)
  3778.  
  3779.           * NOTE: We offer TWO "screen-capture" programs to help you
  3780.             capture screens from existing applications.  One captures
  3781.             text screens.  The other captures ANY type of screen!
  3782.  
  3783.  
  3784.          With PFP you:
  3785.          ─────────────
  3786.  
  3787.           * Create presentation agendas ("slide shows") which can include:
  3788.  
  3789.             - Menus which "branch" to various parts of your presentation,
  3790.               depending on the option your viewer selects.  For example:
  3791.  
  3792.               -- Which product do you want information on?
  3793.               -- Which topic (in a tutorial) do you want to review?
  3794.  
  3795.             - Timed slides (PFP pauses, then automatically shows the next)
  3796.  
  3797.             - Special effects:  animation, sound, loops, exploding windows
  3798.  
  3799.           * Display your presentations, or let others do it by them-
  3800.             selves. A "use monochrome" option lets you display presen-
  3801.             tations on virtually any monitor.
  3802.  
  3803.          The Possibilities are Endless:
  3804.          ──────────────────────────────
  3805.  
  3806.           * Sales presentations          * Management/Staff briefings
  3807.           * Training programs            * Tutorials or Demos
  3808.           * Meetings                     * Highlight product information
  3809.           * Investment opportunities     * Advertising on disk (SoftAds)
  3810.           * Customer information         * Tourist guides
  3811.           * Restaurant guides            * Directories (Names, phone #s)
  3812.  
  3813.                             And on and on and . . .
  3814.  
  3815.  
  3816.                                                                        
  3817.  
  3818.  
  3819.          ══════════════════════════════════════════════════════════════
  3820.          P-Screen & P-Screen Professional     QuickBASIC screen support
  3821.          ══════════════════════════════════════════════════════════════
  3822.  
  3823.          P-Screen is a screen: "design," "library/database" and
  3824.          "display" system all in one.  Use it to design screens for
  3825.          programs you write, or for program demos, prototyping, word
  3826.          processing, batch files, etc.
  3827.  
  3828.          * Draw/Join lines or boxes, in several styles
  3829.          * Shade or Paint entire screens or selected areas
  3830.          * Enter text, auto-centered inside lines or boxes if you like
  3831.          * Quick, easy block options:  Copy, Move, Erase, Shade, Paint,
  3832.            UnDo.
  3833.  
  3834.          Save/Load/Libraries
  3835.  
  3836.          * Save screens to or Load screens from ASCII files or Libraries.
  3837.            You can also save executable "Com" screens -- colors and all!
  3838.            - We include Capture to "grab" screens from other applications.
  3839.  
  3840.          * Libraries give you the convenience of 1 file to store up to 50
  3841.            screens -- in color, complete with names and descriptions.
  3842.  
  3843.          Using screen libraries in your programs, demos, etc.
  3844.  
  3845.          * We supply routines to display your screens from QuickBASIC
  3846.            programs (QB 3-4.x).
  3847.  
  3848.          * It's easy to write programs to access screen libraries.
  3849.            - You can load and display 1 screen at a time.
  3850.            - Or load 2 or more screens into arrays, then pop them up
  3851.              instantly.
  3852.  
  3853.          P-Screen Professional even writes your QB programs for you!!
  3854.          And it comes with several other subprograms you can use in any
  3855.          program.   Call for **significant** details.
  3856.  
  3857.                                                                        
  3858.  
  3859.          ══════════════════════════════════════════════════════════════
  3860.          The Survey Catalyst      (A commercial program, not Shareware)
  3861.          ══════════════════════════════════════════════════════════════
  3862.  
  3863.          The Survey Catalyst (TSC) is for anyone who works with attitude
  3864.          or opinion surveys.  It helps you create surveys in minutes or
  3865.          hours -- not days!
  3866.  
  3867.           * TSC includes a database of thousands of survey items--like
  3868.             items used in most Fortune 1000 companies' employee surveys.
  3869.  
  3870.             - You can review items, edit them or add new ones.
  3871.  
  3872.             - OR, when you see an item you want to add to a survey, just
  3873.               press a key and add it--fast and simple.
  3874.  
  3875.           * TSC also comes with dozens of response scales.  When you print
  3876.             surveys, TSC prints the right response scale--automatically.
  3877.  
  3878.           * And speaking of printing, TSC's many options let you create
  3879.             "camera-ready" copy--as you want it, fast!
  3880.  
  3881.             - Group items by Category, by Response Scale, or Randomize them.
  3882.  
  3883.             - Print response scales Above or Beside items (or not at all).
  3884.  
  3885.             - Print key punch instructions (optional)
  3886.  
  3887.             - Print a title--at the top or bottom of each page.
  3888.  
  3889.             - Or, print your survey "to a file"--to dress it up later.
  3890.  
  3891.          ══════════════════════════════════════════════════════════════
  3892.          Pro~Stamp                             Stamp Collection Manager
  3893.          ══════════════════════════════════════════════════════════════
  3894.  
  3895.          Pro~Stamp is our full-featured stamp collection manager.
  3896.  
  3897.           * It's very easy to use:  pull-down menus, extensive on-line
  3898.             help; Calculations done for you, select "Type" & "Condition"
  3899.             from menus, and more.
  3900.  
  3901.           * Your worksheets are set up like most popular collectors'
  3902.             manuals (eg., Scott).
  3903.  
  3904.           * Track small to huge stamp collections, with ease and convenience.
  3905.  
  3906.           * Multiple file options add flexibility (subsets of collections)
  3907.  
  3908.           * Automatic calculations (Values of each stamp, Increase in
  3909.             value) give you spreadsheet conveience.
  3910.  
  3911.           * Sort:  On any of several fields.
  3912.  
  3913.           * Print:  Entire worksheets or a range you specify.
  3914.  
  3915.           * It's customizable:  Edit menu items or printer codes your way. 
  3916.  
  3917.          ══════════════════════════════════════════════════════════════
  3918.          Ram-Man                              RAM-resident file browser
  3919.          ══════════════════════════════════════════════════════════════
  3920.          Ram-Man is a RAM-resident (TSR) program to turn ANY text file
  3921.          into a pop-up quick-reference guide (or manual).  For example,
  3922.          keep THIS MANUAL at your fingertips while learning inform-Z!
  3923.  
  3924.           * Pop up your text file while you're working in virtually any
  3925.             text-based (not graphics) program (including inform-Z).
  3926.           * BROWSE through it.
  3927.           * SEARCH, looking for a topic or phrase you're interested in.
  3928.           * LOOK UP words, which we'll read directly from your screen!
  3929.  
  3930.          We supply the RAM-resident "engine," you supply the text.  Ram-
  3931.          Man preserves DOS memory by keeping ONLY its engine in memory.
  3932.          It displays your text from disk (hard or RAM disk recommended).
  3933.  
  3934.          You can change which file you're viewing without unloading
  3935.          Ram-Man.  That means you load Ram-Man once, then change ref-
  3936.          erence guides as your needs or the programs you use change.
  3937.                                            
  3938.          Now, regardless of which text-based program you're using (or
  3939.          even at the DOS prompt), you can have on-line, pop-up help
  3940.          available -- at any time, at the press of a key.
  3941.  
  3942.          Examples:       
  3943.           * The complete, on-disk manual for a program you're using.
  3944.           * A series of help screens or "Quick Reference Guides"
  3945.             (eg., tips on using DOS, tips on using a program).
  3946.             - You can display standard DOS text files, like those
  3947.               you create using an editor or word processor.
  3948.             - Or you can display special "screens" you create with
  3949.               programs like our P-Screen Screen Designer.
  3950.           * Appointment Calendars, To Do Lists. . . . etc.
  3951.  
  3952.          Other features:   (<R> = REGISTERED versions.)
  3953.  
  3954.           * BROWSE through files -- line by line or page by page.  And
  3955.             you can jump to the top or bottom of small -or- huge text
  3956.             files in 1/2 second or less.
  3957.  
  3958.           * SEARCH for topics relevant to your needs.
  3959.  
  3960.           * <R> "LOOK UP" reads a word directly off your screen THEN
  3961.             searches for it!  BE SURE to read the section on Look Up for
  3962.             uses (eg., Quick reference, spelling, thesaurus, quotations).
  3963.  
  3964.           * UNLOAD Ram-Man and reclaim the memory it uses.
  3965.  
  3966.           * <R>  RUN-TIME OPTIONS let you choose:
  3967.             - The "hotkey" you want to use to call Ram-Man up.
  3968.             - The size of the screen you want to use -- to let you
  3969.               switch between 25, 43 or 50 row screens at will.
  3970.             - The colors we use to display text.
  3971.  
  3972.               These options help ensure that Ram-Man's hotkey, colors
  3973.               and screen modes never conflict with the programs you use. 
  3974.  
  3975.  
  3976.          ══════════════════════════════════════════════════════════════
  3977.          SPARKLE & MENU MAGIC     Add some sparkle to your batch files.
  3978.          ══════════════════════════════════════════════════════════════
  3979.  
  3980.          Sparkle is an AMAZING utility to enhance batch files, use from
  3981.          DOS, or use through other programs (via "shell").  And Sparkle
  3982.          now includes Menu Magic which lets you quickly create scrolling
  3983.          bar menus (see Menus below) and writes your batch files for you!
  3984.  
  3985.          One small (9k) program offers these many features:
  3986.  
  3987.           * MENUS      Sparkle offers 3 menu options.  Turn ANY screen
  3988.                        into a menu.  Or turn ANY text screen into a
  3989.                        Vertical or Horizontal"scrolling bar" menu.
  3990.  
  3991.           * SOUND      Over 35 sound effects, ranging from simple to
  3992.                        the William Tell Overture!
  3993.  
  3994.           * WINDOWS    Create windows (boxes) on screen in over 250
  3995.                        styles, with/without shadows, and in any color.
  3996.  
  3997.           * QuikPRINT  Display text anywhere on the screen in any color.
  3998.  
  3999.           * ASK        Ask the user to press a key -- to get a menu
  4000.                        choice or to simply pause.
  4001.                        - You can display any message you like in any color.
  4002.                        - You can specify which keys are "valid."  For
  4003.                          example, suppose your menu had 3 choices and
  4004.                          you ask someone to press 1, 2 or 3 to choose
  4005.                          one of them.  Just tell Sparkle that "123" are
  4006.                          your "valid keys."  Sparkle will wait until one
  4007.                          of these keys (or Escape) is pressed -- then
  4008.                          tell you which one was pressed.
  4009.  
  4010.           * PAUSE      You can pause for brief moments (1/3 second) or
  4011.                        for several minutes.  And Sparkle even gives you
  4012.                        the option to let your users "press a key" to
  4013.                        interrupt a pause and move on.
  4014.  
  4015.           * MONITOR    Determine what type of monitor is active.
  4016.  
  4017.                                                                        
  4018.  
  4019.          ══════════════════════════════════════════════════════════════
  4020.          VIDLIB               A commercial-quality Video Tape Librarian
  4021.          ══════════════════════════════════════════════════════════════
  4022.  
  4023.          VIDLIB has every feature that every other video tape program
  4024.          offers.  And the author guarantees to add any feature another
  4025.          program has that VIDLIB doesn't.  ANY feature ... GUARANTEED!
  4026.  
  4027.          VIDLIB stores 27 different pieces of information about each
  4028.          tape in your collection.
  4029.  
  4030.            - Tape number, recording's title, Category (adventure,
  4031.              romance, sci-fi, etc.), Rating (G, PG, R, etc.), orgin
  4032.              (purchased, television, home recording, HBO, etc), stars
  4033.              appearing, director, studio, color or B&W, cost, date re-
  4034.              corded, recording speed, recording length, footage start
  4035.              and end, what language is spoken, subtitles?, cabinet
  4036.              and/or shelf where tape is stored, date the tape was
  4037.              loaned, who borrowed it.
  4038.  
  4039.            - No field is required!  Use or ignore any information field
  4040.              you like.  Use what you want; ignore what you don't.
  4041.  
  4042.            - Use 2 word processor-like windows to describe each record-
  4043.              ing on a tape and describe its honors, awards or nominations.
  4044.  
  4045.            - Depending on YOUR tastes, use the unique 5 star rating
  4046.              system to Rate each individual recording.
  4047.  
  4048.            - Many fields can be redefined by the user.
  4049.  
  4050.          VIDLIB handles an unlimited number of tapes with an unlimited
  4051.          number of recordings per tape.
  4052.  
  4053.          VIDLIB offers easy-to-use, yet surprisingly powerful printout
  4054.          support.
  4055.  
  4056.            - Print 3 different Avery labels available from your local
  4057.              office supply store:  labels for the tape spine, tape face
  4058.              and the tape box.
  4059.  
  4060.            - Print 2 Rolodex and 3 index card formats and sizes.  VIDLIB
  4061.              supports pin-feed Avery formats, too.
  4062.  
  4063.            - Three report formats including a beautiful catalog sheet
  4064.              and a special report for your insurance company!
  4065.  
  4066.            - Supports dot-matrix, laser or letter quality printers.
  4067.  
  4068.          VIDLIB is exceptionally fast on any computer, even XT's and PC's.
  4069.          It works handsomely on color or monochrome (black/white) monitors.
  4070.  
  4071.          And VIDLIB uses the popular dBase (DBF) file structure.  So
  4072.          you can access, read and edit VIDLIB databases using dBase III,
  4073.          dBase III+, dBase IV, Clipper -- or our own PDT program.
  4074.  
  4075.                                                                        
  4076.          ══════════════════════════════════════════════════════════════
  4077.                      APPENDIX VII:  Registering and Ordering
  4078.          ══════════════════════════════════════════════════════════════
  4079.  
  4080.          Because we offer so many programs, our order form has 2 pages.
  4081.  
  4082.          * This page lists our programs and the cost, per-copy. of each.
  4083.            The section immediately above describes each of our programs.
  4084.  
  4085.          * The next page is the actual order form.
  4086.  
  4087.            - On the next page, fill in the name of each program you're
  4088.              ordering.  PLEASE BE CAREFUL here and use the names listed
  4089.              below.  If we're not sure which program you're ordering,
  4090.              we may have to return you're order (or call collect?).
  4091.  
  4092.            - If ordering by Visa or MasterCard, fill in the section
  4093.              for credit card orders.  BE SURE TO SIGN it.
  4094.  
  4095.          Program Name                                          Per Copy
  4096.          ──────────────────────────────────────────────────────────────
  4097.  
  4098.          Multi-Print      Recommended! ($19 w/ purchase > $100)  $29
  4099.  
  4100.          PDT              The Pro~Formance Data Tool             $99
  4101.          PDT Tool Kit  The COMPLETE PDT Tool Kit (Pgms, Files +) $39
  4102.            Set #1      Tool Kit Set 1:  Fields, Create, DBF-DBF  $19
  4103.            Set #2      Tool Kit Set 2:  Fields, DBF-ASC, ASC-DBF $19
  4104.  
  4105.          inform-Z         Professional Forms Design              $49
  4106.  
  4107.          Mail Call        With MC Express                        $49
  4108.            "    "         Without MC Express                     $45
  4109.  
  4110.          Pro~Scribe & PS Express                                 $39
  4111.  
  4112.          P~F Presents     Professional                           $79
  4113.           "     "         Plus (with intro. copyright)           $49
  4114.  
  4115.          P-Screen Professional                                   $49
  4116.              "    Plus                                           $29
  4117.  
  4118.          Pro~Stamp        Stamp Collection Manager               $29
  4119.  
  4120.          Ram-Man          RAM-resident Text File Browser         $19
  4121.  
  4122.          Sparkle, Sparkle2 AND Menu Magic                        $29
  4123.  
  4124.          VidLib           Video Tape Librarian and Database      $39
  4125.  
  4126.          The Survey Catalyst                                    $595
  4127.           "    "        "   Demo Disk (refunded with purchase)    $5
  4128.          ─────────────────────────────────────────────────────────────────
  4129.          PACKAGE DISCOUNTS  Call about quantity discounts & site licenses.
  4130.          ─────────────────────────────────────────────────────────────────
  4131.          inform-Z AND Mail Call                                  $79
  4132.  
  4133.          P-Screen Pro AND P~F Presents (Pro versions of both)   $109   
  4134.  
  4135.  
  4136.    ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄  To Order  ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  4137.  
  4138.    For FASTEST delivery of your programs, CALL with your Visa/MC card number.
  4139.  
  4140.  
  4141.    F ____________________________________________  M    Rob W. Smetana
  4142.                                                         Pro~Formance
  4143.    R ____________________________________________  A T  132 Alpine Terrace
  4144.                                                         San Francisco, CA 94117
  4145.    O ____________________________________________  I O  (415) 863-0530
  4146.  
  4147.    M ____________________________________________  L    Make checks payable to
  4148.                                                             Rob W. Smetana
  4149.    Phone (      ) ______-________  Date ___/___/___
  4150.  
  4151.   ┌──────────────────────────────────────────────────────────────────────────┐
  4152.   │                       For Visa or MasterCard Orders                      │
  4153.   ├──────────────────────────────────────────────────────────────────────────┤
  4154.   │                                                                          │
  4155.   │Credit Card Number:  __________________________________   Expires: ___|___│
  4156.   │                                                                          │
  4157.   │Signature (Required for credit card orders): _____________________________│
  4158.   │                                                                          │
  4159.   │ Be sure your name at the top matches how it appears on your credit card. │
  4160.   └──────────────────────────────────────────────────────────────────────────┘
  4161.  
  4162.   ────────────────────────────────────────────────────────────────── pdt 2.3 ─
  4163.   Program/Package Name (see last page)    # of Copies  Price/Copy     Total
  4164.   ────────────────────────────────────────────────────────────────────────────
  4165.  
  4166.   ________________________________________  ________  x  ______   =  $_______
  4167.  
  4168.   ________________________________________  ________  x  ______   =  $_______
  4169.  
  4170.   ________________________________________  ________  x  ______   =  $_______
  4171.  
  4172.   ________________________________________  ________  x  ______   =  $_______
  4173.  
  4174.   ________________________________________  ________  x  ______   =  $_______
  4175.  
  4176.   ________________________________________  ________  x  ______   =  $_______
  4177.  
  4178.   ────────────────────────────────────────────────────────────────────────────
  4179.  
  4180.   Shipping & Handling::: Total Number         @ $4/copy (US/Canada)
  4181.   of Programs (and Copies)    ----->>  _____  @ $8/copy (Elsewhere) $ _______
  4182.  
  4183.   ─────────────────────────────┬──────────────────────────────────────────────
  4184.                                │                          Subtotal  $ ________
  4185.    INTERNATIONAL ORDERS: : :   │
  4186.                                │ California residents, add 8.5% tax $ _______
  4187.    * US funds only please.     └─────────────────────────┬────────────────────
  4188.    * Money order, check drawn a                          │
  4189.      US bank, or VISA/MasterCard                         │   TOTAL  $ ________
  4190.   ───────────────────────────────────────────────────────┴────────────────────
  4191.  
  4192.  
  4193.