







                     *******************************
                     *                             *
                     *   CMFiler -- Version 6.0    *
                     *                             *
                     *******************************




                       SHAREWARE DISK/FILE MANAGER


                   Copyright 1991-96 Charles F. Martin

                      President, NoVaSoft - Member

                           3239 Riverview Dr.

                     Triangle, VA  22172-1421  USA


            Phone (703) 221-1471/1833   CompuServe 72130,1400


                    Internet 72130.1400@compuserve.com


       Home page: http://ourworld.compuserve.com/homepages/novasoft2










                Assembled using Wolfware Assembler WASM Ver 2.22x,
                         (c) 1985-1991 Eric Tauck, Wolfware


    CMFiler Ver 6.0
    ~~~~~~~~~~~~~~~

    FOREWORD:
    ____________________

    CONCERNING SHAREWARE AND CMFiler:

    Definition of Shareware. . .

      Shareware distribution gives users a chance to try software before
    buying it.  If you try a shareware program and continue using it, you
    are expected to register it.  Individual programs differ on details -
    some request registration while others require it, some specify a
    maximum trial period.  With registration, you get anything from the
    simple right to continue using the software to an updated program with
    printed manual.

      Copyright laws apply to both shareware and commercial software, and
    the copyright holder retains all rights, with a few specific
    exceptions as stated below.  Shareware authors are accomplished
    programmers, just like commercial authors, and the programs are of
    comparable quality.  (In both cases, there are good programs and bad
    ones!)  The main difference is in the method of distribution.  The
    author specifically grants the right to copy and distribute the
    software, either to all and sundry or to a specific group.  For
    example, some authors require written permission before a commercial
    disk vendor may copy their shareware.

      Shareware is a distribution method, not a type of software.  You
    should find software that suits your needs and pocketbook, whether
    it's commercial or shareware.  The shareware system makes fitting your
    needs easier, because you can try before you buy.  And because the
    overhead is low, prices are low also.  Shareware has the ultimate
    money-back guarantee - if you don't use the product, you don't pay for
    it.

      CMFiler is a copyrighted shareware program by Charles F. Martin,
    President, NoVaSoft and author member of the Association of Shareware
    Professionals.  The evaluation edition of CMFiler is offered at no
    charge to any potential user for evaluation.  Feel free to share the
    evaluation edition with your friends.  The essence of "user-supported"

    software is to provide personal computer users with quality software
    without high prices, and yet to provide incentive for programmers to
    continue to develop new products.


    Special Thanks. . .

    . . .to Nick Capik, Tom Vavoso, Dave Herman, Gene Feaster and Edward
    Mendelson, who found most of the subtle bugs, pushed CMFiler far past
    my expectations, and challenged me to include features that turned out
    to be useful to us all;  to Eric Tauck, who provided an excellent and
    inexpensive Assembly language programming environment, then tailored
    it to my needs, and gave me some inside dope on several undocumented
    DOS features;  and to Wolfgang Stiller, who offered advice on
    CMFiler's self-checking features. Eric Tauck's Wolfware Assembler WASM
    can be had by sending $10 to Eric Tauck, 1304 Deerpass Road, Marengo,
    IL  60152. Wolfgang Stiller's Integrity Master anti-virus and data
    security system can be had by sending $39.50 to Stiller Research, 2625
    Ridgeway St., Tallahassee, FL  32310.


    Ombudsman Statement:

      This program is produced by a member of the Association  of
    Shareware Professionals (ASP). ASP wants to make sure that the
    shareware principle works for you. If you are unable to resolve a
    shareware-related problem with an ASP member by contacting the member
    directly, ASP may be able to help. The ASP Ombudsman can help you
    resolve a dispute or problem with an ASP member, but does not provide
    technical support for members' products. Please write to the ASP
    Ombudsman at 545 Grover Road, Muskegon, MI 49442 or send a CompuServe
    message via CompuServe Mail to ASP Ombudsman 70007,3536.


    CMFiler Disclaimer . . .

      Users of CMFiler must accept this disclaimer of warranty:  CMFiler
    is supplied as-is. The author disclaims all warranties, expressed or
    implied, including, without limitation, the warranties of
    merchantability and of fitness for any purpose. The author assumes no
    liability for damages, direct or consequential, which may result from
    the use of CMFiler.


                                      ii

    CMFiler Ver 6.0
    ~~~~~~~~~~~~~~~

    CONTENTS
    ____________________

    FOREWORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  i

    INDEX TO TOPICS AND OPERATIONS:. . . . . . . . . . . . . . . . . Ind-7


    OVERVIEW:. . . . . . . . . . . . . . . . . . . . . . . . . . . . Ov-17

    File Contents . . .                                              Ov-17
    Program Logical and Physical Organization . . .                  Ov-19
    Security Features . . .                                          Ov-21
    Monitor Options . . .                                            Ov-22
    Precautions and Limitations . . .                                Ov-22
    Assumption about User's Familiarity with DOS . . .               Ov-24
    Additional Note for Windows Users . . .                          Ov-24


    TUTORIAL - Chapter 1: File Handling. . . . . . . . . . . . . . . 1-25

    Getting Started , or the "Kernel" and the "Overlay": . . .       1-25
    Rename CMFILER to Spare My Fingers . . .                         1-25
    The Screen . .  .                                                1-27
    The Help Area . . .                                              1-27
    More on the "Modifier Keys". . .                                 1-28
    Two Panels . . .                                                 1-28
    Color Palette . . .                                              1-29
    Alphabetic Case Options . . .                                    1-30
    Cursor Movement . . .                                            1-30
    Switching Drives or Disks . . .                                  1-31
    Subdirectories . . .                                             1-31
    Swapping Panels . . .                                            1-32
    Jump Command . . .                                               1-32
    Path Alias Facility . . .                                        1-33
    Copy Some Files, then Do It with Tags . . .                      1-33
    Tagging, Backing Up . . .                                        1-34
    Moving Files . . .                                               1-35
    Deleting a File . . .                                            1-35
    File Splitter . . .                                              1-36
    The Tagging Convention Expounded on . . .                        1-37
    Renaming a File or a Directory . . .                             1-37
    Some Additional Tagging Options . . .                            1-39
    Copy with Rename . . .                                           1-39
    The Floppy "Filler". . .                                         1-39
    The File Freshener . . .                                         1-40
    Different Ways to Show the Files . . .                           1-40
    The Data Entry Window . . .                                      1-40
    Integer Kilobytes versus Actual File Size . . .                  1-41
    File Attributes . . .                                            1-42
    Changing the Date/Time Stamp of a File . . .                     1-42
    "Alt-Tagging" and Appending . . .                                1-42
    Printing a File . . .                                            1-43
    Making Some Notes About Your Files . . .                         1-44
    Notes in Version 6 and Windows 95 Long Filename Support . . .    1-44
    About Win95 Long Filename Aliases . . .                          1-46
    Printing a Directory Listing . . .                               1-47
    Comparison Mode . . .                                            1-47
    Hide Mode . . .                                                  1-47
    Mask Template . . .                                              1-48
    Displaying System Date and Time . . .                            1-48
    Changing or Adding a Volume Label . . .                          1-48
    Some Safeguards . . .                                            1-48
    Saving User Setup Options . . .                                  1-48
    Help . . .                                                       1-51
    Custom Configurations on Networks . . .                          1-51
    Command Line Parameters . . .                                    1-52
    Formatting Floppy Diskette . . .                                 1-52
    Copying Floppy Diskettes . . .                                   1-53
    Scanning a Diskette Sector-by-Sector . . .                       1-53
    Quitting CF . . .                                                1-54


    TUTORIAL - Chapter 2: File Viewing and Editing. . . . . . . . .  2-55

    Viewing a File . . .                                             2-55
    Record Delimiters . . .                                          2-55
    Information Area . . .                                           2-55
    Line Wrapping  . . .                                             2-56
    Cursor Movement . . .                                            2-56
    Find a String . . .                                              2-57
    Leading and Trailing Blanks in the Data Window . . .             2-57
    Editing a File . . .                                             2-58
    Edit Mode Limitations . . .                                      2-58
    Typeover vs Insert . . .                                         2-58
    Editing a Line . . .                                             2-58
    More on Record Delimiters . . .                                  2-59
    Alt-Keypad and Alt-N . . .                                       2-59
    Changing Case. . .                                               2-59
    Pop-up ASCII Table . . .                                         2-59
    Block Operations . . . or the REAL Power of CF's Editor . . .    2-60
    Marking a Block, and the Copy Buffer . . .                       2-60
    Delete, Copy, Move . . .                                         2-60
    Restoring from Inadvertent Block Deletion  . . .                 2-61
    Sending a Block of Text to the Printer . . .                     2-61
    Replace and Global replace . . .                                 2-61
    Leaving Edit Mode . . .                                          2-62
    Saving File in Mid-Session . . .                                 2-62
    Creating a New File with the Editor . . .                        2-63
    Help . . .                                                       2-63


    TUTORIAL - Chapter 3: The TREE Functions. . . . . . . . . . . .  3-65

    Tree Image Facility . . .                                        3-65
    The Display . . .                                                3-66
    Copying structures . . .                                         3-67
    The "Copy Into" Function . . .                                   3-69
    Moving structures . . .                                          3-70
    Copying Just the Files . . .                                     3-70
    Copying Just the Directory Array . . .                           3-70
    Deleting Structures . . .                                        3-71
    Delete Just the Files . . .                                      3-72
    Show the File List . . .                                         3-72
    Find (Goto) a File . . .                                         3-72
    Goto a Directory . . .                                           3-73
    Find Text . . .                                                  3-74
    Viewing or Editing Files . . .                                   3-74
    Deleting Files from the File List . . .                          3-74
    Print a Hard Copy of the Tree or Found Files . . .               3-75
    Precaution Regarding ~TRASH~ . . .                               3-75
    Help . . .                                                       3-75
    Leaving the Tree Functions . . .                                 3-75


    TUTORIAL - Chapter 4: Launching User Applications . . . . . . .  4-77

    Terminology: User Application as "Child" Program . . .           4-77
    Resident Footprint of CF . . .                                   4-77
    "Shelling" to DOS . . .                                          4-78
    Review of DOS Command Line Structure . . .                       4-78
    Launching a Program from the Main Screen . . .                   4-79
    Immediate Execution . . .                                        4-79
    Execution with Command Tail . . .                                4-79
    Execution with a Single File Name in the Command Tail . . .      4-80
    "Seeding" the Command Tail . . .                                 4-80
    Changing the Command Tail "Seed" Delimiter . . .                 4-81
    Customizing Your User Application File Specifications . . .      4-82
    A Further Execution Option - Instant ZIPping/UNZIPping . . .     4-84
    ZIP a File . . .                                                 4-84
    Now UNZIP a File . . .                                           4-85
    Tailoring CF for custom ZIP/UNZIP spec . . .                     4-85
    Using Other Compression Utilities . . .                          4-89
    Specifying a Password for Access from Screen Saver . . .         4-87


    REFERENCE - Description by Operation . . . . . . . . . . . . .Op-Ref-89

    DISK/DIRECTORY OPERATIONS:                                    Op-Ref-89
    FILE OPERATIONS:                                              Op-Ref-90
    FILE EDITING/VIEWING:                                         Op-Ref-93
    TREE OPERATIONS:                                              Op-Ref-94
    APPLICATION LAUNCHING (CHILD PROCESSES):                      Op-Ref-96
    DISPLAY ENHANCEMENT FEATURES:                                 Op-Ref-98
    MISCELLANEOUS:                                                Op-Ref-100


    MEMORY MAPS - Information on Memory Allocation:               Back cover

    
    
    CMFiler Ver 6.0
    ~~~~~~~~~~~~~~~
    
    INDEX TO TOPICS AND OPERATIONS:
    ______________________________
    
    Topic or Operation            Module   Command            Page 
    
    Appending files: 
     to target panel               Main    Alt-T, then C      1-42 
     to source panel               Main    Alt-T, then B      1-42
    
    Alias path; define             Main    Alt-A              1-33
    
    Alias path; jump to            Main    Alt-1 - Alt-9      1-33
    
    Application launching:  See 
     Child process execution
    
    ASCII entry with keypad:       Edit    Alt-Keypad         2-59
    
    ASCII table                    Edit    Ctrl-A             2-59
    
    Attributes, directory: 
     toggle "Hide", at curs        Main    2                  1-42
     toggle "Hide", at curs        Tree    2                  3-67
    
    Attributes, file: 
     toggle "Read", at curs        Main    1, no tags         1-42
     toggle "Read", tagged         Main    1, w/ tags          " 
     toggle "Hide", at curs        Main    2, no tags          " 
     toggle "Hide", tagged         Main    2, w/ tags          " 
     toggle "Sys", at curs         Main    3, no tags          " 
     toggle "Sys", tagged          Main    3, w/ tags          " 
     toggle "Arcv", at curs        Main    4, no tags          " 
     toggle "Arcv", tagged         Main    4, w/ tags          " 
     zero all attrs, at curs       Main    0, no tags          " 
     zero all attrs, tagged        Main    0, w/ tags          "
    
                               Ind-7
    Back up files in directory:                               1-34 
     file at cursor                Main    B, no tags 
     tagged files in direc         Main    B, w/ tags
    
    Block operations:              Edit                       2-60
    
    Case options:                  Main    Ctl-E              1-30
    
    Change directories: 
     to directory at cursor        Main    Enter              1-32 
     to parent directory           Main    P                   "        
     show direc in opp panel       Main    Shf-Enter           " 
     show parent in opp panel      Main    Shf-P               " 
     to root directory             Main    \                   " 
                                   Tree    Home               3-67
    
    Change to new drive or disk:   Main    N                  1-31 
                                   Tree    N                  3-67
    
    Child process execution: 
     Shell to DOS                  Main    S                  4-78 
     quick execute file at         Main    Q                  4-79 
      cursor, no command tail 
     ready file at cursor          Main    X                  4-79
      for execution 
     seed command tail with        Main    Alt-C              4-80 
      full path spec to file 
      at cursor 
     seed command tail with        Main    Alt-T              4-80 
      name of file at cursor 
     edit command tail and         Main    Alt-X               " 
      execute readied file 
     execute readied file,         Main    Shf-X               "    
      no edit of command tail 
     execute readied file,         Main    Ctl-X               " 
      first adding name of 
      file at cursor to 
      command tail 
     assign executable files       Main    Shf-F10            4-82
      to Function Keys
                               Ind-8
    Color palette:                 Main    Ctl-P              1-29
    
    Command line parameters:                                  4-78
    
    Compare mode, toggle:          M/T     Ctl-C              1-47, 3-67
    
    Concatenating files: 
     to target panel               Main    Alt-T, then C      1-42 
     to source panel               Main    Alt-T, then B       "
    
    Configuration file:                                       1-49
    
    Copy disKette:                 Main    Shf-K              1-53
    
    Copy operations:
     file at cursor to target      Main    C, no tags         1-33 
     tagged files to target        Main    C w/ tags           " 
     freshen one directory         Main    Shf-F              1-40
     from another 
     structure, incl files         Tree    C 3-67
     structure w/o files           Tree    Alt-C              3-70 
     text in marked block          Edit    Alt-C              2-60
    
    Copy with rename:              Main    Alt-R              1-39
    
    Create new file:               Main    F                  2-63
    
    Cursor movement: 
     in directory listings         Main                       1-31 
     in tree structures            Tree                       3-67 
     in editor                     Edit                       2-58
    
    Data entry window:             All                        1-40
    
    Date/time, change file:        Main    Alt-F              1-42
    
    Date/time, display system:     Main    5                  1-48
    
                               Ind-9
    Definitions: 
     ~TRASH~ directory                                        1-35 
     Child process                                            4-77 
     Compare mode                                             1-47
     Hide mode                                                 " 
     Kernel                                                   1-25 
     Module                                                   Ov-20,1-25 
     Overlay                                                  1-25 
     Source panel                                             1-28 
     Target panel                                             1-29
    
    Delete operations: 
     "soft" vs "hard"                                         1-36 
     resetting D to hard                                      1-49 
     file at curs, soft            Main    D, no tags         1-36 
     file at curs, hard            Main    Ctl-D, no tags      " 
     tagged files, soft            Main    D, w/ tags          " 
     tagged files, hard            Main    Ctl-D, w/ tags      " 
     directory at cursor           Main    D, dir void        1-32 
     structure at curs, soft       Tree    D                  3-71 
     structure at curs, hard       Tree    Ctl-D               " 
     text in marked block          Edit    Alt-Y              2-60 
     line of text                  Edit    Ctl-Y              2-58 
     word of text                  Edit    Ctl-T               " 
     text to end of line           Edit    Ctl-D               "
    
    Directory: 
     delete (only if empty)        Main    D                  1-32 
     delete direc structure        Tree    D or Ctl-D         3-71 
     make new                      Main    M                  1-31 
                                   Tree    M                   
     rename                        Main    R                  1-35, 1-37 
                                   Tree    R                  3-67 
     display subdir in srce        Main    Enter              1-32 
     display subdir in trgt        Main    Shf-Enter           " 
     display parent in srce        Main    P                   " 
     display parent in trgt        Main    Shf-P               " 
     display root in source        Main    \                   " 
     display root in target        Main    Shf-\               " 
     display source in trgt        Main    Shf-*               "
    
                               Ind-10
    Diskette copying               Main    Shf-K              1-53
     formatting                    Main    Shf-M              1-52
    
    Display options:  
     show Hidden files,            Main    Ctl-H              1-47 
      dirs; toggle                 Tree    Ctl-H              3-67 
     Compare mode, toggle          Main    Ctl-C              1-47 
                                   Tree    Ctl-C              3-67 
     define filename Mask          Main    Ctl-M              1-48 
     Find text                     Tree    Shf-F              3-74
     Goto (find) directory         Tree    Alt-G              3-73 
     Goto (find) file              Tree    G                  3-72 
     Show file list                Tree    S                   " 
     attrs, size in K              Main    -                  1-42 
     no attrs, full size           Main    +                   "
    
    DOS, Shell to:                 Main    S                  4-78
    
    Edit file at cursor:           Main    E                  2-58
    
    Edit file from notes screen    Main    Alt-E              1-44
    
    Edit file from tree file       Tree    E                  3-74
     list:
    
    File Masking:                  Main    Ctl-M              1-48
    
    File sorting:                  Main    Ctl-O              1-40
    
    Fill floppies from source      Main    Shf-i              1-39 
    
    Find file:                                                3-72
      from main module             Main    Shf-T, then G 
      from tree module             Tree    G
    
    Find string:                   Edit    Alt-F              2-57
    
    Find text:                     Tree    Shf-F              3-74
    
                               Ind-11
    Form feed printer:             Main    Ctl-F/2            1-43 
                                   Tree    Ctl-F/2 
                                   Edit    Ctl-F/2
    
    Format diskette                Main    Shf-M              1-52
    
    Freshen directory from         Main    Shf-F              1-40 
     opposite panel:
    
    Function Keys: 
     assign applications to        Main    Shf-F10            4-82 
      Function keys 
     ready app at F1-F9            Main    Fn                 4-83 
      for execution 
     execute readied Fn app        Main    Alt-X,             4-83 
        Shf-X, or 
        Ctl-X 
     execute app to operate        Main    Ctl-Fn             4-83 
      on file at cursor 
     execute app to operate        Main    Shf-Fn             4-83 
      on constructed command line
    
    Global replace string:         Edit    Alt-G              2-61
    
    Goto file:                     Main    G, then name       1-31 
                                   Tree    G, then name       3-72 
    
    Goto subdirectory:             Main    Alt-G, name        1-31 
     (See also Jump)               Tree    Alt-G, name        3-73
    
    Help, on-line:                 Main    H                  1-51
                                   Tree    H,F1               3-75 
                                   Edit    Alt-H , F1         2-63
    
    Hide mode, toggle:             M/T     Ctl-H              1-47, 3-67
    
    Integrity data:
      Change file name             Main    Alt-I              Ov-22
    
    Jump to path:                  Main    J                  1-32
    
                               Ind-12
    Kernel, resident, set size:    Main    K                  4-77
    
    Launching applications: See 
      Child process execution
    
    Limitations: 
      dir size (300,600,1200)      Main                       Ov-22 
      file size in edit mode       Edit                       Ov-23 
      memory required (240 kb)                                  " 
      tree entries (1700 dirs)     Tree                         " 
      dir nesting (8 levels)       M/T                          "
    
    Make new directory:            Main    M                  1-31 
                                   Tree    M                  
    
    Masking, in direc listing:     Main    Ctl-M              1-48
    
    Monitor options:                                          Ov-22
    
    Moving operations: 
     files                         Main    Shf-C              1-35 
     structures                    Tree    Shf-C              3-70 
     block of marked text          Edit    Alt-V              2-60
    
    New drive or disk, change:     Main    N                  1-31 
                                   Tree    N                  3-67
    
    Notes: edit                    Main    Ctl-N              1-44 
      view                         Main    Shf-N               "
    
    NULL character, entering       Edit    Alt-N              2-59
    
    Options, user, saving          Main    Shf-S              1-48
    
    Options, user, setting         Main    Shf-O              1-49
    
    Ordering scheme, select:       Main    Ctl-O              1-40
    
    Password, entering:            Main    Shf-F10            Ov-21, 4-87
    
                               Ind-13
    Printing: 
     put file in print queue       Main    L                  1-43
      look at print queue          Main    Shf-L               " 
     cancel print queue            Main    Ctl-L               " 
     print directory listing       Main    Alt-L               " 
     print directory listing       Main    Shf-N or Ctl-N,     " 
      with notes                               then Alt-L
      print tree structure         Tree    Alt-L              3-75 
     Print marked text block       Edit    Alt-P              2-61 
     Output block to file          Edit    Alt-O               "
    
    Quitting: 
     to DOS from main module       Main    Esc-other, or      1-54 
                                           Alt-Q 
     to DOS from tree module       Tree    Alt-Q              3-75 
     to main from tree module      Tree    Esc or Enter        "
     to main from file edit        Edit    Esc                2-62 
     to main from file view        Edit    Esc or Enter        "
    
    Relist panel from disk         Main    Shift-R            1-31
                                   Tree    Shift-R
    
    Remove (Delete) directory:     Main    D (must be void)   1-32
    
    Rename file or directory at    Main    R                  1-25, 1-37 
      cursor:                      Tree    R                  3-67
    
    Replace string:                Edit    Alt-R              2-61
    
    Resident kernel, set size:     Main    K   4-77                
    
    Screen saver: 
     normal timeout to             Main                       Ov-21
     forcing before timeout        Main    Ctl-S              Ov-21
      freshening directories       Main                       Ov-24, 1-48 
      after return, switch 
      setting
    
    Security features: 
     cleared slack space                                      Ov-22 
     password access denial        Main                       Ov-21, 4-87
    
                               Ind-14
    Self-checking:                 Main                       Ov-21
    
    Setup options:                 Main    Shf-O              1-49
    
    Shell to DOS:                  Main    S                  4-78
    
    Sorting of (Ordering) files:   Main    Ctl-O              1-40
    
    Splitting files:               Main    Alt-S              1-36
    
    Startup options:                                          1-52
    
    Subdirectories: 
     make new                      Main    M                  1-31 
                                   Tree    M                   
     rename                        Main    R                  1-25, 1-37
                                   Tree    R                  3-67
    
    Tagging operations on files: 
     toggle Tag at cursor          Main    T or Space         1-33 
     toggle All tags in direc      Main    Ctl-A              1-39
     clear or set All tags         Main    A                  1-33 
     all files same naMe as        Main    Alt-M              1-39 
     all files same Ext as         Main    Alt-E               " 
     all files Newer               Main    Alt-N               " 
     all files Older               Main    Alt-O               " 
     all files same Date           Main    Alt-D               " 
     tag in oPposite panel         Main    Alt-P               " 
     "Append" or "Alt" Tag         Main    Alt-T              1-42
    
    Time/date, change file:        Main    Alt-F              1-42
    
    Time/date, display system:     Main    5 or %             1-48
    
    Tree image options:            Tree    Ctl-O
    
    TSR's, precaution about:                                  Ov-22
    
    UNZIPping with PKZIP utils:
     with command line edit        Main    U                  4-85
     no command line edit          Main    Shf-U               "
    
                               Ind-15
    View file at cursor:           Main    Enter              2-55
    
    View file from tree file list: Tree    V                  3-74
    
    Volume label, setting:         Main    V                  1-48
    
    ZIPping with PKZIP utils:
     with command line edit        Main    Z                  4-84
     no command line edit          Main    Shf-Z               "
     designating files to ZIP      Main    T/Alt-T             " 
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
                               Ind-15
    






    OVERVIEW:
    ____________________

    File Contents . . .

      The following files are contained in a complete copy of the
    registered edition of CMFiler Version 6.0:


      o  CMFILER.COM - The main program file. Run by typing CMFILER at the
         DOS prompt.

      o  CMFILER.OVY - The overlay for the main program.  CMFILER.COM loads
         the overlay, which becomes part of the executable code. The user
         should put CMFILER.OVY in the same directory as CMFILER.COM.

      o  BRIEF.TXT - A two-page quick guide to CMFiler's command structure.

      o  SUPLMENT.TXT - Any additions and corrections to this manual
         reflecting the differences between the current version and 6.02.

      o  CHANGES.TXT - A verbose history of all significant changes since
         Version 5.32.

      o  SETUP.EXE - Windows installation program

      o  SETUP.INI - Initialization file for SETUP.EXE

      o  DOSINST.BAT - Installation batch program.

      o  CONV_NAR.COM - A small utility to convert old CMFiler-style
         NARATIVE.CF files into NDOS/4DOS DESCRIPTION files.

      o  CONV_NAR.TXT - Documentation for CONV_NAR.COM.


                                    Ov-17 
      o  CMFILER.PIF - Windows program information file provided as a
         reference. It may not be suitable in your system.

      o  CMFILER.ICO - Windows icon definition file provided by a CMFiler
         user.

      o  READ_ME.TXT - Installation/uninstallation instruction.

      o  TESTIMON.IAL - Unsolicited user and media testimonies.


      The registered edition of CMFiler may not be further distributed.
    The shareware edition is offered  for evaluation and distribution
    unaltered to others, with the understanding that, if used past the 60-
    day trial period, the user will pay a registration fee of $30.  I am
    so convinced of CMFiler's wide usability and appeal that I will send
    any registered user an instant $10 commission each and every time
    someone else registers a copy and cites her or him as the source of
    it!  Registered users may make as much money on commissions by passing
    the evaluation (shareware) edition of CMFiler to others as they care
    to.  CMFiler must be passed as an unaltered collection of the
    shareware file set.

      CMFiler provides a quick, simple, "one-touch" operating environment
    for your IBM-compatible 80x86-based computer running under DOS Version
    3 or later.  While its name implies it is a file manager, it is much,
    much more. Once you have used CMFiler for a few sessions, you will not
    want to struggle with the DOS COMMAND.COM command processor or your
    other file managers ever again!  CMFiler was painstakingly written in
    Assembly language over an eight-year period, carefully factoring in
    the suggestions of dozens of the world's pickiest software critics.
    It is compact and lightning fast.

      CMFiler is capable of doing everything your DOS COMMAND.COM
    processor or other file manager can do, and more, but with ease! -
    displaying two directories side-by-side; copying one or more files
    from one directory to another; backing up files in the same directory;
    deleting or renaming files and directories; setting file and directory
    attributes; concatenating (stringing together) multiple files; viewing
    and editing files; making and removing subdirectories; printing files
    in the "background" while you perform other tasks; setting disk volume
    labels; printing directory listings; keeping notes; displaying two

                                    Ov-18 
    disk structures side-by-side as "trees", and performing a full set of
    operations on their structures; and launching other programs - all
    with a minimum number of keystrokes and maximum "transparency".

      Operations are keyed to single-letter mnemonics, making CMFiler
    intuitive and easy to learn.  For example, the letter C means "copy",
    the letter D "delete", and so forth.  Almost everything you need to
    know about CMFiler is contained in a two-line prompt at the bottom of
    the screen, or can be summoned instantly with a single keystroke
    (surprise! H for "help"), with no delay for external file reading,
    since the help is imbedded in the program code.  There are only a few
    things for which you will need to refer to this manual once you begin
    using CMFiler.

      CMFiler employs the BIOS and DOS disk service routines which are
    embedded in ROM or loaded into RAM when your computer boots, and the
    DOS file operation safeguards and error flags are employed, such as
    denying access to remove non-void subdirectories.  I have added a few
    of my own, such as protection of files against being overwritten by
    zero-length files of the same name (resulting from an occasional DOS
    read-write failure).

      CMFiler performs most operations immediately, and does not ask for
    confirmation as other file managers do, unless file destruction is
    involved.  You must confirm with a separate keystroke, for example,
    that you really do want to delete files, or that you really do want to
    overwrite a more recent version of a file during a copy operation.
    Otherwise CMFiler takes for granted that you are doing exactly what
    you had in mind, on the basis that a mistake can be recovered from
    with just a few more keystrokes.  The "mass" operations, like copying
    or deleting large numbers of tagged files, all have an Esc bailout.


    Program Logical and Physical Organization. . .

      The CMFiler program code is organized "logically" (in the
    programmer's sense) into three sections, or "modules". These will be
    referred to variously as the "main module" or "main screen";  the
    "editor module" or "editor"; and the "tree module" or "tree
    functions".  Each module performs some major function or group of
    functions which is fundamentally different from the rest, discussed
    further below.  On the other hand, the program is broken physically

                                    Ov-19 
    into two main pieces, in this case two files, namely, the file
    "CMFILER.COM", sometimes referred to herein as the "kernel"; and the
    file "CMFILER.OVY", or the "overlay". The kernel contains the most
    vital part of the main module, the "starter", and the overlay, which
    the kernel loads contiguous to itself in memory, contains the rest of
    the main module, plus the editor and tree modules.  A memory map is
    included at the end of this manual for those interested.

      The main module displays one directory on the left side of the
    screen, or two directories in side-by-side panels.  The names of the
    subdirectories of each directory are always shown at the top of the
    listing in alphabetical order, following by the names of the files in
    one of nine user-specified ordering schemes.  Commands operate on a
    subdirectory or one or more files in one panel (the source panel).
    Some commands, like Copy, write to the directory in the other panel
    (the target panel).  The main module gives a somewhat myopic or
    "microscopic" view of your disk, one directory at a time, but does so
    with the most complete set of file and directory services available in
    any file manager today.  The other two modules (editor and tree) are
    accessed from the main, and the editor may also be accessed from the
    tree.

      The editor is called to create, edit or view a file.  To edit or
    view an existing file in the main module, just put the cursor on it
    and press E or Enter.  To create a file, press F and type in a name
    for the new file.

      The tree module is called from the main module with Shift-T. It
    displays the entire directory tree structure of one disk in the left
    panel, or two trees for the same or different disks in side-by-side
    panels. Whole structures ("branches") of a tree, or if you wish just
    the files in one directory, may be copied, moved or deleted in their
    entirety. Some file manager documentation call this kind of capability
    "prune-and-graft". This capability is "macroscopic" in scope, compared
    to the main module, as it deals with the big picture of your disk
    organization. But CMFiler does much more in this mode than most file
    managers. In addition to the "macroscopic" prune-and-graft-type
    operators, you may do some microscopic things as well, like display
    the files in each subdirectory as you navigate through the tree, find
    a specific file anywhere on the disk, search for a text string in all
    or some of the files on the disk - even view or edit a file, and
    delete it without having to return to the main file services module.

                                    Ov-20 
    This latter feature in particular makes disk cleanup a breeze!


    Security Features. . .

      CMFiler incorporates security features which support its use on
    systems containing sensitive information:

      o  You may specify a password, and change it at any time during a
    session, which must be given back to reenter CMFiler once it has gone
    to screen-saver mode (about 1-1/2 minutes after last keystroke from
    main screen display). This password is the bottom-most field in the
    data entry screen presented by the key combination Shift-F10 -
    discussed in further detail in Chapter 4.

      o  You may force CMFiler into screen-saver mode with the key
    combination Ctrl-S. This is so that, if you want to secure access to
    your computer immediately, you don't have to wait the 1-1/2 minutes
    for the screen-saver and password to automatically be invoked.

      o  During any file copy operation, CMFiler always fills in the
    "slack space" in the last sector with the string "cfcfcf  . . . ", to
    ensure that no sensitive information residual in the DOS I/O buffers
    is inadvertently passed into the last sector slack space.

      o  If you set the option "wipe old files before HARD  Delete, " on
    the Shift-O user Options screen, CMFiler overwrites all the data
    sectors of old files with "cfcfcf . . . " before calling the DOS file-
    delete service (which does not destroy data, but alters only the
    directory table). This feature ensures complete data destruction and
    is useful if you deal with sensitive information.

      o  CMFiler employs a rudimentary check-summing routine to check the
    .COM and .OVY files each time they are loaded.  This routine will
    sense any changes in the execution code and fixed data areas of either
    file, and warn the user of the corruption. Files may become corrupted
    as a result of an operating system error during data transmission, a
    sector going bad on a disk, or external tampering by a person or a
    virus. This check-summing feature can detect (and has detected) the
    presence of some older file infecting viruses, but may be foiled by
    modern stealth viruses, so do not count on it for virus protection.
    There is no substitute for good antivirus software. I use and strongly

                                    Ov-21 
    recommend Wolfgang Stiller's Integrity Master. He is President of
    Stiller Research and a member of the ASP's Virus Information Panel,
    and a recognized expert in the anti-virus community.

      o  CMFiler also protects the file integrity signature data created
    by your anti-virus software from being overcopied. The default
    integrity data file name is ZZ##.IM, the default assigned by Stiller's
    Integrity Master, but this name may be changed with Alt-I (for "ID
    name change").

      o  CMFiler's floppy diskette formatter positively overwrites all
    data on the diskette, ensuring the destruction of any sensitive or
    classified information.


    Monitor Options. . .

      CMFiler should work with all reasonably current IBM-compatible
    CGA/EGA/VGA and monochrome monitors, though I have heard of some
    problems with machines under very early BIOS (Basic Input/Output
    System) versions.

      When first run, if CMFiler cannot find a .CFG file containing
    previously specified user option data, and does not sense a monochrome
    video card installed (which only supports one color set), it knows it
    cannot tell for sure what you have installed and will ask you to
    specify a monitor type by pressing C, V, L, T, E or M. Your choice is
    recorded by CMFiler creating a .CFG file. If you have an LCD monitor
    other than Tandy or Epson, you may invoke a generic LCD color set with
    the letter L. For Tandy or Epson LCD's try T or E. If you are not
    satisfied with the result, try the choices available in the Shift-O
    user Option screen, lines 10 and 11, until one seems to work.

      If you have a "monochrome" monitor being driven by a color card,
    CMFiler senses the color card's presence, not the monitor's. Press M
    for this case to force the monochrome color set.

      When running CMFILER.COM from the DOS prompt, you may put one of
    these six letters in the command line, preceded by the character @,
    and bypass the initial question.



                                    Ov-22 
    Precautions and Limitations. . .

      There are a few precautions and limitations the user should be aware
    of:

      o  Terminate-and-Stay-Resident programs should not be launched
    from CMFiler. At best you will end up with a fragmented
    memory when you exit CMFiler, and at worst you will have a
    system crash.

      o  CMFiler requires a minimum of 252 kb of free memory to run.  This
    permits generous memory allocations for the directory listings, a
    print spooler buffer, and a copy buffer. During application launching,
    however, the resident portion of CMFiler can be made to occupy as
    little as 22 kb, using the "Small" footprint option of the "Kernel"
    command (letter K pressed from the main screen - discussed more in
    Chapters 1 and 4). This is the default selection on initial start-up.

      o  Maximum directory size recognized by the main module varies from
    300 to 2400 entries, depending on free memory available. If the
    directory size limit is reached, an informational note is given. The
    rest of the directory is inaccessible, as though it were hidden. This
    is a benign, non-damaging limitation.

      o  The algorithms used by the editor module place certain
    limitations on it in "edit" mode which do not apply in "view" mode. If
    you attempt to edit a file which exceeds these limitations, the editor
    reverts to view mode automatically:

         -  Files too large to fit in available memory in one shot, or
         -  Files with more than 16,380 lines.
         -  Files with lines longer than 8190 characters if editing in
            "NoWrap" mode.

      o  The tree module limits the number of entries in a directory tree
    structure to 1700 total subdirectories. The limit on number of files
    is strictly a function of available memory.

      o  The main and tree modules both limit the depth of directory
    nesting to eight levels (e.g., "C:\1\2\3\4\5\6\7\8" is an example of
    the most deeply nested path allowed), and the length of path
    specifications to 66 characters (this is a DOS limitation).

                                    Ov-23 
      o  A limitation of DOS itself which users frequently run into and
    are puzzled by, because of the cryptic error message DOS returns, is
    the maximum number of entries permitted in the root directory. This
    number is 112 for 5.25" disks formatted at 360kb and 3.5" @ 720kb; and
    224 for 5.25" @ 1.2Mb and 3.5" @ 1.44Mb. The error message returned is
    "Access denied creating file". Be aware that the volume label and each
    subdirectory is an "entry", as well as each file.


    Assumption about User's Familiarity with DOS. . .

      It is assumed that the user knows at least a smattering about DOS
    system operation, and has at least a beginner's understanding of the
    use of the DOS COMMAND.COM processor, or other file management
    programs.  I assume terms like "file", "subdirectory" and "path" need
    not be defined. If these are alien notions, however, there are many
    books on DOS within easy reach of any user.


    Additional Note for Windows Users. . .

      Though not designated as a Windows application, CMFiler is operating
    satisfactorily as a DOS program in the Windows environment (3.1, 3.11,
    and Win 95). One nuisance feature will probably need to be corrected
    if you are running it under Windows, however. The default assumption
    on return from screen saver mode is that the disk directories have not
    been altered while CMFiler has been idling. Under Windows, this is not
    necessarily a valid assumption, since another foreground application
    may have operated on the directories CMFiler was selected to when it
    went into the background. Therefore for Windows there is a switch
    which may be set in the Shift-O user Option screen telling CMFiler to
    refresh the directory listing on return from the screen saver.











                                    Ov-24 






    TUTORIAL - Chapter 1: File Handling:
    ____________________

    Getting Started , or the "Kernel" and the "Overlay":

      As mentioned in the OVERVIEW above, I refer to the 22 kb CMFILER.COM
    file as the "kernel", the vital part of the main module, and the 134
    kb CMFILER.OVY file as the "overlay", which contains the rest of the
    main module and the editor and tree modules. Physically breaking the
    program into two files served two purposes - it got around an arcane
    64 KB limit on .COM files imposed by DOS, and it let me give you two
    options for how much of the program to leave resident in memory when
    launching applications from CMFiler (more in Chapter 4).

      For now, copy CMFILER.COM and CMFILER.OVY into the root directory of
    your hard disk or a working floppy using your good ol' DOS COMMAND.COM
    processor, and save a write-protected copy for your library.  With the
    DOS system prompt showing the drive these two files are now on, run
    the kernel CMFILER.COM by entering "cmfiler" or "CMFILER". The DOS
    command processor will load and execute CMFILER.COM, which in turn
    will find and load the overlay CMFILER.OVY.  The whole 156 kb (22 +
    134) is now residing in memory, ready to respond to commands.

      The first thing you will likely see is a request for monitor
    information.  CMFiler cannot distinguish between a color monitor and
    an LCD monitor, and the default color set for the color monitor is a
    poor choice for most LCD monitors. When you see the message, press C,
    V, M, L, E or T for the monitor you think most closely describes
    yours. (It can be changed later).  CMFiler will create a file of user
    configuration data (called CMFILER.CFG) in the same directory the .COM
    file is in. It will update this file as you select other setup
    options.


    Rename CMFILER to Spare My Fingers . . .

      Now, feel free to rename CMFILER.COM to "CF.COM" for short, and the
    overlay and configuration files from CMFILER.OVY and CMFILER.CFG to
    "CF.OVY" and "CF.CFG".  (It is important to keep all these files named

                                     1-25 
    the same, by the way.)  In fact I will refer to them simply as "CF"
    from here on, since that results in fewer keystrokes for me!  Put the
    cursor on the line reading "CMFILER  COM" and press the letter R (for
    "rename"). A window will open up at the bottom that says:

       Rename      CMFILER.COM
         to       >CMFILER.COM<

    with the cursor blinking on the first position in the data entry field
    denoted by the ">  <" pair.  (CMFiler is assuming that you want to
    rename just the  CMFILER.COM file, since the most frequent use of the
    rename facility is renaming single files; and is offering you the same
    name as the "default" entry in the new name field, since often when
    you rename a file, you may be only changing a few characters.)

      In this case we want to rename all the files that start with
    "CMFILER";  that is, we would really like to use the DOS "wild card"
    convention "*".  If we were renaming this family of files from the DOS
    prompt, we would type in the command "ren cmfiler.* cf.*".  In the
    CMFiler rename facility, the upper line is the first parameter of the
    DOS rename command, the lower line the second.  We therefore want the
    upper line to read "CMFILER.*".  To do this, press either the up arrow
    or PgUp, and press Tab to move over to the "C" in "COM". Type "*". and
    press Enter or down arrow.  Now the window reads:

       Rename     CMFILER.*
         to      >CMFILER.*<

      Simply type "CF.*" and press Enter.  The files are now renamed.

      This quick exercise sounded complicated when you read it, but won't
    be when you try it.  And it illustrates a few "nice touches" I have
    tried to build in to minimize your keystrokes.

      From here on the explanations are not so detailed.  I recommend you
    fiddle with scratch directories initially, until you are familiar with
    all of CF's capabilities.  If you are running DOS Version 2, put CF,
    both the .COM and .OVY files, on one of the paths defined in a DOS
    "path" command, so that it can "find" itself after running other
    applications.  Under DOS Version 3 and later, it is only necessary
    that both be in the same directory, which need not be in the DOS path
    environment.




                                     1-26 
    The Screen . .  .

      You should by now have noted an economy of screen usage.  The left
    panel shows the contents of the current directory on the default
    drive. Line 1 of this active panel shows the disk volume name if any,
    and a prompt area for four display enhancement features: the key
    combination Ctrl-O (denoted by ^O to save space) allows selection of
    one of nine file Ordering schemes; ^H toggles the "Hide" mode switch;
    ^C toggles the "Compare" mode switch; and ^M allows specifying a file
    "Mask". Line 2 shows the path to the current directory. In 25 line
    video display mode, the first 20 entries, directories first, then
    files, are displayed in lines 3-22.  Line 23 gives vital information
    about the disk, such as room left, and lines 24-25 contain an
    abbreviated help screen.

      The thick versus thin sections of the vertical line to the left of
    the file list denote the relative position and size of the current
    screen display within the full directory listing.

      If you do not press a key within about 1-1/2 minutes, the screen
    goes into screen-saver mode.  Just press any key to return to the main
    display.  You may force the screen-Saver mode with Ctrl-S.


    The Help Area . . .

      The two-line help area at the bottom of the screen contains a set of
    abbreviated cues to assist with the recollection of the mnemonic
    single-key commands.  With no "modifier" keys pressed [i.e., the
    Shift-, Alt-and Ctrl- keys all up], the help area shows the operations
    available with the unmodified keys, with the mnemonic code
    highlighted. These are typically the most frequently used operations;
    the letter C for "Copy file(s), E for "Edit file", D for "Delete file
    or directory", T for "Tag file", the number 1 for "toggle the file
    Read-only attribute", and so forth.

      Additional commands are available which use similar mnemonic
    devices, but with the keyboard modified by Shift-, Alt- or Ctrl-.
    Press one of the Shift- keys, and notice the change in the bottom
    lines. These are the commands enabled by the letters shown in
    highlight, modified by the key you are holding down.  Press Ctrl- and
    Alt- in turn. All these operations, both "unmodified" and "modified",
    will be explained as we go along. Just be aware that the visual cues
    for the modifier keys are there when you want them.


                                     1-27 
    More on the "Modifier Keys" . . .

      Incidentally, there is some rationale for which of the Shift-, Alt-
    or Ctrl- keys was used as the modifier for a particular "modified"
    operation, and there are some devices which may help you remember the
    modified keys as well as the more straightforward mnemonic devices of
    the unmodified keys:

      o    The modifier "Shift-" is often used for operations involving
    transfers of control or data to or from the other panel.  For example,
    Shift-Enter, when the cursor is on a subdirectory entry, means display
    this subdirectory in the other panel and jump across to it. Other
    commands which follow this convention, and which you will encounter in
    more detail, are Shift-Left/Rt Arrow, Shift-P, Shift-*, Shift-\, and
    Shift-F.

      o    The modifier "Ctrl-" is most often used to "toggle" the state
    of a "switch" or "tags" - that is, to invert something.  For example,
    Ctrl-H toggles the state of the "hide switch" , i.e., if Y ("yes" or
    "on") it goes to N ("no" or "off"), if N it goes to Y.  Other examples
    include Ctrl-O, Ctrl-M, Ctrl-C, Ctrl-A, and Ctrl-L.

      o    The modifier "Alt-" is most often used just to indicate an
    operation associated with a mnemonic alphabet key, but for which the
    unmodified key was already in use as a mnemonic for a more frequent
    operation.  For example, C means "Copy", and is one of the most
    frequent operations; Alt-C means "add file spec to Command tail", and
    is used far less frequently.  (In the editor, Alt-modified keys are
    used a lot, since the unmodified keys are used for typing text!)


    Two Panels . . .

      Each  "panel" corresponds to a "path" to files, in the DOS
    vernacular, and the terms "panel" and "path" are used interchangeably
    throughout. Open the right panel by pressing the right arrow.  You
    will be prompted at the bottom of the screen to specify a drive
    letter. (The bottom lines become the "dialog" area for information to
    you about what CF is doing, or what it is waiting for you to do.)
    Just press the letter corresponding to a valid drive - don't press
    Enter, just a letter key. The current directory of that drive will be
    shown in the right panel in the same format as the left panel. The
    bright yellow color of the path specification on line 2 and the
    blinking cursor now identify the right panel as the "source" path.
    The left panel has become the "target" or "destination" path for the

                                     1-28 
    copy , append and move operations. Ctrl-W sWaps the panels left and
    right.

      Whenever CF is in "Compare" mode and the cursor is on the name of a
    file in the source panel that also happens to exist anywhere in the
    target path, the target panel display is adjusted so that the file
    appears in the panel, and its date/time signature is put in high-
    intensity to catch your eye and show you the duplication. If the date,
    time and size of the two files are not the same, the date/time
    signature of the newer file will blink. You can toggle compare mode
    off and on with the key combination Ctrl-C (for "Compare").


    Color Palette . . .

      For display in CGA/EGA/VGA systems, CF has four choices of color
    palettes.  The command Ctrl-P (for Palette) lets you cycle through the
    choices with the spacebar, and select a different color scheme with
    Enter or return to the original one with Esc.  The choice may be
    permanently recorded in the .CFG file (discussed in more detail
    later).

      In addition, each palette can now be edited by pressing E within the
    palette facility.  Each of five colors in the file list display can be
    selected by arrowing around an 8x8 color array, and pressing the
    spacebar when the desired color is reached.  The affect of each
    selection is shown as the arrow is moved around the color array, so no
    guesswork is required.

      This facility is best used with both panels open, and some files
    tagged in one of the panels, since the file tagging color and both the
    source and target path line colors are independently variable.  When
    finished editing one palette, hit Enter to return to the original
    level of the palette facility, and either Enter to set that palette as
    the default choice, or another key to rotate to the next palette.  The
    editor and tree displays are not independently adjustable, but take
    their colors from the current palette.

      The palette edit routine (Ctrl-P, E) also has the option to
    toggle the  high-intensity bit selectively for each color field.  The
    command "T" in the color menu toggles between high- and normal-
    intensity foreground color attribute.

      In addition, the color palette exit sequence has the option to
    set an internal flag which causes a "pip" to be shown in front of the

                                     1-29 
    extension of each file with today's date stamp, and colors the
    extensions of certain "preferred" files differently from the normal
    file color.  The initial setting of this flag is "on", and the
    "preferred" extensions which are specified for the special colors are
    the executables - .COM, .EXE, .BAT and .BTM.  The flag may be turned
    off, and the preferred extension colors may be edited:

         1.  When you leave the palette menu with the Enter key, you will
    be asked if you want to flag today's files and the "preferred" files. If
    you answer No, the exit sequence is complete.

         2.  If you answer Yes, you will be given an opportunity to edit
    the colors for each of the preferred extensions in the same way as you
    edited the main palette colors.  When you are finished, exit this
    secondary color facility with the Enter key.

      The preferred extensions may themselves be edited in the Ctrl-O
    Order menu.


    Alphabetic Case Options . . .

      CF also has four options for the alphabetic cases used in the panel
    displays.  The command Ctrl-E (for casE) lets you cycle through the
    choices with the spacebar, as in the Palette above, which are:  1)
    files and directories all upper case, 2) directories in upper case,
    files in lower, 3) all in lower case, and 4) all in "modified-Tauck"
    convention, where all letters are lower case except the first and any
    that follows a non-alphabetic character (e.g., Cmfiler.Com or Read-
    Me.1St).  Case 2 is the default, but I find case 4 easiest to read.


    Cursor Movement . . .

      Shift back and forth with the left and right arrow keys.  You are in
    effect switching source and target paths.  Use the up/down arrows,
    PgUp/PgDn, Home and End keys to move the cursor within a panel. PgUp
    moves the cursor to the top of the panel if it was not already there,
    and then moves up one page in the directory. PgDn is similar for the
    opposite direction.  Home goes to the first line of the directory, End
    to the last.

      If a mouse driver is installed, CF will respond to mouse movement by
    opening a five-symbol menu bar beside the highlighted entry. Click the
    left button on the triangular up or down arrow symbol for PgUp or

                                     1-30 
    PgDn. Click on the triangular left or right arrow symbol to jump
    across to the opposite panel.

      The command G (for "Go to...") lets you type in a file name to move
    the cursor to within the directory listing. As you type, the cursor is
    repositioned to the first file described by the character string you
    are building. When you have come to the file you want, press Enter or
    Esc. Alt-G is the equivalent "Go to. . ." for subdirectories.

      In Compare mode, whenever there is a duplicate file name highlighted
    in the opposite panel, you may jump directly across to it with the
    move Shift-Left/Right Arrow, vice the unmodified arrows.

      The default cursor configuration is a block shape, to make it easy
    to find on the screen. You may reduce the size of the cursor by
    pressing Ctrl-K (for "Kursor" height - shown as "Kursht" in the prompt
    area). Each press decreases the height. This configuration can be
    saved to the CF.CFG file.


    Switching Drives or Disks . . .

      CF cannot tell when you have changed disks in the drive whose
    contents are shown on one of the screen panels.  You have to tell it
    by putting the cursor in that panel and pressing Shift-R (for
    "Relist"), or N (for "New disk"), and then the letter designator for
    that drive at the ensuing prompt. If you want to switch drives, say
    from A to B for the right-hand panel, put the cursor to the right,
    press N and B.

      Alternatively, click the left button on the three-line menu symbol
    in the mouse bar, click on the "New drive" line, and highlight and
    click on the letter of the desired drive.

      Sometimes when you are doing single-panel operations, like
    constructing a note set or editing files, it is a distraction to have
    both screen panels open at once.  To close the right-hand panel and
    return to single left-hand panel display, put the cursor in the right-
    hand panel and press N and Enter.


    Subdirectories . . .

      Make a new subdirectory in the source path by pressing Ins while the
    cursor is on a directory, or M (for the DOS command "Mkdir") and

                                     1-31 
    entering a name.  CF will create this directory and put the cursor on
    it. Press Enter. Note the new path on line 2 of the screen display,
    and only the "<Parent>" entry in the file listing.  Go back to the
    parent directory by pressing Enter with the cursor on the "<Parent>"
    entry, or P (for "Parent") with the cursor anywhere in the panel.  You
    can navigate down and back up through the directory levels in a path
    this way, one level at a time.  If you are several levels deep, there
    is another quicker way back to the root directory than by hitting P
    repeatedly, and that is by pressing the backslash key \.  It works
    like the DOS command "cd \".

      To change directories using the mouse, highlight the directory name
    by moving the mouse up or down, move the mouse left to highlight the
    left-arrow symbol, and click the left button. (Clicking on this
    leftmost mouse bar arrow symbol always has the same effect as hitting
    the Enter key.)

      To put a subdirectory from the current source panel list into the
    target panel, put the cursor on its name and press Shift-Enter. The
    subdirectory is listed in the opposite panel, and the cursor shifts
    over to it.  In similar fashion, Shift-P puts the source panel's
    parent directory into the opposite panel, and Shift-\ puts the
    source's root into the opposite panel.  Finally, Shift-* puts the
    source directory itself into the target.  This is handy for quickly
    setting up the same directories side-by-side for ZIPping/UNZIPping,
    discussed in Chapter 4.

      Remove a subdirectory by placing the cursor on it and pressing Del
    or D (for "Delete", which I use interchangeably for file deletion and
    subdirectory removal).  Note that the subdirectory has to be empty
    first - a DOS safeguard that I have preserved.


    Swapping Panels . . .

      In the main and tree modules, you can quickly swap panels left-for-
    right and right-for-left, keeping the cursor in the same panel, left
    or right, with the command Ctrl-W (for sWap).


    Jump Command . . .

      The Jump command may be used to jump to another path. In either
    panel, press J, and type in the new path, including drive if desired.
    If the path exists, CMFiler will read and display its directory

                                     1-32 
    contents and set it as the new path for that panel.


    Path Alias Facility . . .

      A "path alias" facility is available in the main module. This
    allows assigning the commands Alt-1 through Alt-9 to your nine most
    frequently used directories, for instant navigation from any drive and
    path.  To assign a path to the alias list, first go to the
    subdirectory you want to add, then press Alt-A (for Alias).  The Alias
    menu shows a list numbered 1 through 9, each with a user-definable
    title and path.  Pick a free number, press it and type in the title
    you want as your key for the path.  Hitting Enter saves the alias.

      To navigate to that aliased path instantly, either press Alt- and
    the number you assigned (if you remember), or press Alt-A, look over
    the list, and while still holding down the Alt-key press the number.
    The alias facility can also be used in place of pressing a drive
    letter after the New drive command, or when arrowing over to the
    right-hand panel when it is blank.  The Shift- key, used with Alt-1
    through Alt-9, puts the aliased path into the opposite panel and goes
    across to it, in much the same way as Shift-\, Shift-P and Shift-Enter
    on a directory name act to put the selected directory into the
    opposite path and jump across.


    Copy Some Files, then Do It with Tags . . .

      Put the cursor on a file name and press the letter C.  This copies
    the file from the source to the target path.  "Tag" several files with
    the letter T or the Spacebar or with the mouse right button.  Now
    press C to copy this group from source to target.  Clear all the tags
    with A (tag/untag All).  Press A again, and see that all the files are
    now tagged.  Untag an individual file with T. ("T" actually toggles
    the state of an internal tag bit assigned to each file and used for
    temporary marking purposes only. "A" clears all the tags if any were
    set, or sets all the tags if all were clear. No information is changed
    on the disk itself.  These are "volatile" tags, maintained only until
    the directory is re-read for some reason, such as a file deletion or a
    copy operation into the directory.)

      Copying files is also a selection in the mouse menu, popped up by
    clicking on the three-line symbol in the mouse bar.

      CF looks first at the space available on the target path before it

                                     1-33 
    starts to copy.   If it doesn't see enough room free, it doesn't start
    the operation, and alerts you to this limitation.  This prevents write
    errors, messed up file allocation tables and incomplete files that can
    result when space runs out during a copy operation.

      CF has several special features in the copy operation:

      o  If an identical file exists in the target path - same name,
    extension, date, time and size - CF does not normally copy the source
    to the target, as this would be wasted motion, on the assumption that
    the files are identical.  This "no overcopy" feature is controlled by
    one of the switches which may be toggled in the user options menu
    brought up with the command Shift-O.  It is sometimes useful to change
    its state.

      o  If a file by the same name but newer date/time is found on the
    target, CF will ask you specifically to verify that you really do want
    the newer file overwritten.

      o  If the source and target files have the same date/time but the
    source is a different size, CF will ask for overwrite confirmation.
    If the source file has length 0 bytes, it will never overwrite a non-
    zero-length target. Zero-length target files will always be
    overwritten by non-zero-length source files of the same name,
    regardless of age. These features provide some protection against
    overwriting  good files with ones which have become corrupted by
    previous copy errors.

      o  If a file by the same name but with the read-only attribute set
    is found on the target, CF will ask you to verify that you want it
    overwritten.  (Likewise if the target file is hidden and the hide
    switch is on.)


    Tagging, Backing Up . . .

      With a couple of files tagged, look at the line just below the last
    line of the directory listing. You will see the space in use in the
    current directory ("KB Used"), the amount of disk space occupied by
    any tagged files ("Tagd") and the space still free ("Free"). Also, in
    the line below will appear after each tagging operation the current
    number of files tagged. Disk space is expressed in kilobytes, rounded
    up to the nearest integer value.

      Assuming the amount of space represented by tagged files is less

                                     1-34 
    than or equal to space available, press B to back up all the tagged
    files. CF's convention for assigning backup file names in this
    operation is to reuse the name and the first two letters of the
    extension (filling blanks with exclamation points if necessary), and
    then make the last letter of the extension a tilde character (~).Thus
    the backup should always immediately follow the primary file in any
    alphabetical listing.


    Moving Files . . .

      With the panels selected to different subdirectories on the same
    disk, one or more files may be "moved" from one subdirectory to the
    other. This operation does not read and write the file data clusters,
    but only changes the subdirectory table entries, so large files may be
    moved around quickly. Tag files if desired, as with Copy, and press
    the move command Shift-C (instead of C - think of moving as just
    another kind of "copying", but you are "shifting" files to a different
    directory instead).

      If the conditions are not satisfied for moving the files (e.g. the
    directories are not on the same disk), CF will copy the files to the
    target path, and then ask for confirmation that you want to hard-
    delete the source files to complete the move operation. This
    encumbrance is deliberate; because CMFiler is so fast, I have made it
    require confirmation whenever any file destruction is involved.


    Deleting a File . . .

      With the cursor on a file and no files tagged, pressing Del or D
    results in deleting the file at the cursor, after confirmation. If one
    or more files are tagged, they will be deleted after confirmation, not
    the file at the cursor. Alt-Tags, discussed below, are  treated the
    same as normal tags as far as the delete operation is concerned.

      On hard disks, the default configuration of CF actually performs
    what I will call a "soft" delete for this operation. The files are not
    deleted using the DOS delete function, but rather are moved into a
    "trash can" directory created by CF, called "~TRASH~". If you delete
    files from your hard disk by mistake, they are reliably recoverable
    just by switching to the ~TRASH~  directory and moving them back to
    the directories they came from using Shift-C.

      If you delete a second file by the same name as a file already

                                     1-35 
    collected in the ~TRASH~ directory by a previous soft delete
    operation, CF tries to rename this second file by replacing the last
    character in the extension with a "1". If this name is already in use,
    it tries to rename with a "2" instead, then a "3", and so on, through
    "9". Thus, you are assured under all reasonable circumstances of not
    losing any deleted files, even duplicates.

      Each time you select a new drive in the main module, CF looks to see
    if it is a hard drive (A and B are always taken to be floppies), and
    then looks in ~TRASH~ if it exists for the presence of files. If it
    finds any, it will ask you if you want to purge them - that is,
    perform the "hard" DOS file delete on the current trash. You have the
    options "yes", "no", or "Enter to view" to see what is in the trash
    can. You probably want to keep the ~TRASH~ as uncluttered as possible,
    just to avoid tying up disk space needlessly. If you prefer to "empty
    the trash" less often than daily, be prepared to be pestered with the
    same question the first time you select that disk each day!  (The D
    command always performs a "hard" delete in the ~TRASH~ directory -this
    is the one exception.)

      This "soft" delete facility is not intended as a means of backing up
    files, but rather is built in solely for the purpose of reliable
    recovery from inadvertent file deletion.

      An additional delete option is available - Ctrl-D, or "hard" delete.
    This operation performs the DOS delete always, regardless of the type
    disk selected.  Use it when you know you will not want to recover the
    deleted files. If you wish to obliterate all data in files before
    issuing the hard delete command, set the flag "Wipe old files . . . "
    in the Shift-O user Options screen.

      And if you are really sure of yourself, you can turn D from soft
    delete to hard delete.  There is a switch available for this purpose
    also in the Shift-O user Options menu mentioned above.


    File Splitter . . .

      The main module has a file splitter, called by Alt-S. With the
    target panel set up as the destination path for the split files,
    position the cursor on a file in the source panel and press Alt-S.
    CMFiler first asks for confirmation that you desire to split the file
    into smaller files, with extensions .A00, .A01, - , .A99, .B00, etc.
    Then it asks for the file size for the split files, in kilobytes.
    Split files are created in the target path, and the original file is

                                     1-36 
    left untouched in the source.  The file splitter provides the option
    to split files at the nearest end-of-line (defined by a carriage
    return, a line feed, or the combination in either order), which is
    useful in splitting text files.  The file splitter also works with a
    single panel open.


    The Tagging Convention Expounded on . . .

      For all the above commands (copy, delete, move, back up), the
    operation is performed on all the tagged files in the source panel, if
    any are tagged, and only on the file at the cursor if none are tagged.
    Some file managers offer different commands for "copy tagged" and
    "copy file at cursor", and so forth. I have always found this
    unnecessarily complicated. For the few occasions in which you have a
    bunch of files tagged to do one of these operations (say you want to
    copy them), and you discover just before you start that you really
    wanted to do some other operation on just one of them first (say you
    realize one of them is out-of-date and you want to delete it), you
    will have to either untag them all with A, do the operation on the one
    file, then retag and do the original operation; or just postpone the
    one-file operation. For this example, it is easier just to toggle the
    tag on the one out-of-date file off with T, copy the other bunch,
    clear the tags, and delete the one. It becomes just a matter of a
    little thought about the order in which you do things.

      The "view" operation (discussed in Chapter 2) does not clear
    existing tags.  So, suppose you are cleaning up a disk, tagging files
    that you recognize by name as no longer needed in preparation for a
    single, massive delete, and you come to one you aren't sure about. Put
    the cursor on it, press Enter (the "view" command), browse through it
    and decide if it's a keeper, and Esc from view mode. Note the
    previously placed tags are still there, and the cursor is still on the
    mystery file waiting for you to decide whether or not to tag it.


    Renaming a File or a Directory . . .

      Since we've already done this, I'll just briefly say that it works
    for directories, too. A word about the wild card character "*". In the
    earlier exercise, we used it in the first window to declare that we
    wanted to rename all the files with "CMFILER" as the name, and any
    extension, to "CF" with the same extension. You may use the "*" in the
    name field of the first window instead of the extension, but not in
    both. Used in the name field, it means "change this extension,

                                     1-37 
    wherever it appears, to this other extension". This option is less
    useful.

      If used in the first data window, the "*" must also be used in the
    second window in the same position.  CF always senses the use of "*"
    in the first window, and seeds the second window with this character
    in the right position.

      The "*" may be used in the second window, even if not in the first,
    as a shorthand for "keep the same name (extension)". For example, if
    you wanted to rename just "PACKING.LST" to "PKG.LST", put the cursor
    on "PACKING.LST" in the source panel, press R, type "PKG.*" in the
    lower window, and Enter.  Saves some keystrokes. This is a wild card
    convention taken from DOS.  (Sorry to you DOS heavies - for simplicity
    I chose not to complicate things by including "?" in the wild card
    library for this facility!)

      There is a special file name-swapping feature that lets you quickly
    swap system files like AUTOEXEC and CONFIG for special-purpose
    backups. If you tag exactly two files and press R, the rename facility
    asks if you want to swap the names of the two tagged files. If you
    decline, the normal rename facility is activated for the file at the
    cursor.

      The rename facility supports Windows 95 long filenames.  If CF
    detects Win95 as the operating system, it will add a note to the
    rename prompt area telling you to press the Down Arrow key for long
    filename support.  Pressing Down Arrow opens a box next to the
    filename for long filename entry.

      Win95 long filenames may be up to 255 characters. Win95 assigns an
    "alias" filename in regular DOS 8.3 convention consisting of the first
    six non-white-space characters of the long filename plus a tilde (~)
    and a number, followed by the extension assigned to the long filename.
    In using Win95 long filenames, it is advisable to pick the first word
    in a way that the alias 8.3 filename will mean something to you.  For
    example, if you name all your correspondence files "Letter to Jim 2-3-
    96", "Letter to Sally 4-5-95", and so forth, the file listing in CF
    (which uses the 8.3 aliases) will look like this "LETTER~1",
    "LETTER~2", and so forth.

      You can see the full long filenames using the notes facility in CF,
    discussed later.



                                     1-38 
    Some Additional Tagging Options . . .

      In addition to T or spacebar (which toggles the state of an
    individual file's "normal" Tag) and A (which clears or sets All tags),
    there are some more tagging operations.  Alt-T applies an "append
    tag", discussed later. Alt-M tags all the files in the panel with the
    same naMe as the file under the cursor, Alt-E same Extension.  Alt-D
    tags all files in the panel with the same Date as the file at the
    cursor, Alt-N tags all files Newer, and Alt-O Older.  Alt-P tags in
    the oPposite panel all the files with the same names as files tagged
    in the source panel.  And finally, Ctrl-A toggles the state of All
    tags in the panel.

      If, for example, you wanted to copy all .COM files, put the cursor
    on any .COM file, press Alt-E, and C.  Or suppose that, at the end of
    the day, you wanted to copy/update all the files written or revised
    today. Just put the cursor on any file with today's date and press
    Alt-D and C. Then suppose you wanted to delete all the earlier files.
    Press A to clear the tags, Alt-O and D, and confirm the deletion as
    requested, after a final check of the screen.


    Copy with Rename . . .

      You may copy a file and rename it in one operation.  Only one file
    at a time may be copied in this way.  The command is Alt-R (copy with
    Rename).  It operates only on the file at the cursor. Pressing Down
    Arrow enables Win 95 long filename support for the file to be renamed.


    The Floppy "Filler" . . .

      CF can fill a collection of floppy disks from a hard disk directory.
    This is good for making wholesale backups. Select in one panel the
    directory from which you want to fill  (the source). Tag all the files
    you want to copy (CF will tag them all if none were tagged), and press
    Shift-i (for "f i ll"). CF will first ask which floppy drive to fill
    to, and how much space you want to reserve on each floppy for future
    growth. Then it will copy as many files as it can to that drive, and
    prompt you to insert the next disk. If the disk is not already
    formatted, CF will ask what density you want, and then format the disk
    before continuing with filling. CF will repeat this process until the
    whole directory is copied.

      This floppy filler is "smart". It first looks at each floppy to see

                                     1-39 
    if there are existing files that need to be updated, and copies them
    first. Then it copies other files to fill the remaining space if it
    can. Thus the floppy filler can be used to update a set of existing
    backups as well as create a new set.

      After each floppy disk is filled, the source files that were
    successfully copied are untagged. You may interrupt the fill operation
    and then resume it where you left off, as long as you leave the source
    panel with its tagged files as-is.


    The File Freshener . . .

      CF can also freshen the files in one directory from another. The
    convention is to freshen the source from the target, so it works
    opposite the floppy filler. With the source panel set up on the
    directory to be freshened, and the files tagged that you want
    freshened (CF will tag them all if none are tagged), CF will update
    the directory by copying from the target all the newer files whose
    names match tagged files in the source.


    Different Ways to Show the Files . . .

      Ctrl-O (for "Order") sets a screen which gives nine choices for file
    ordering, with the current selection highlighted.  Press a number key
    1 through 9.  The files will now be reordered in the new scheme.  You
    may toggle the sort algorithm between "bubblesort" and "quicksort"
    with the letter A.

      Pressing E in this screen allows editing three "preferred
    extensions." These are file extensions which will be highlighted by
    special colors, which may be selected in the Ctrl-P Palette menu.
    Files with preferred extensions may be listed first by toggling the
    switch in this screen with P.


    The Data Entry Window . . .

      The data entry window defined by the "> <" pair you encounter for
    input data  responds to most of the usual line-editing key presses:

      o  The Insert key toggles between Typeover and Insert mode.  The
    mode indicated as an "i" or "t" in front of the ">",stays set for each
    subsequent entry.  In Typeover mode, any default entry is cleared if

                                     1-40 
    the first keystroke is an alphanumeric character.

      o  Ctrl-Lf/Rt Arrow and Tab/Shift-Tab go right or left to the space
    following the next blank or punctuation mark.

      o  Home goes to the beginning of the field. End goes to the first
    blank following the last non-blank character.

      o  Lf/Rt Arr, Bksp and Del perform the usual functions.

      o  Alt-Keypad permits entry of any ASCII code as a decimal number.
    Hold down the Alt-key while you type in a number from 1 to 255 on the
    numeric keypad.  When you lift the Alt-key, the IBM symbol for that
    ASCII code will appear in the window, and the cursor will advance a
    space.

      o  Ctrl-D deletes to the end of the line.

      o  Esc cancels the operation.

      o  Down Arrow is equivalent to Enter.  In some cases, Up Arrow
    moves up a line.  (The rename facility in the main module and the
    "replace string" facility in the editor use this keystroke to move up
    to the entry above.)

      For entering file names and subdirectories, all letter keys are
    registered as upper case, regardless of Caps Lock or Shift-key
    positions, just for the sake of uniformity and ease of alphabetizing.
    For command lines parameters, which may be case-sensitive, both cases
    are enabled.


    Integer Kilobytes versus Actual File Size . . .

      Now take a look at the file listing.  You see the name of the file,
    date, time and size in kb.  As with the disk space information just
    below the file list display, size is in integer multiples of
    kilobytes. If you want to see exactly how big a file is, in bytes,
    press "+" to expand the size field. (I had to give away the file
    attributes to do this and still keep the two panels readable.)  Shift
    back to the "contracted" kilobyte form of file size with "-".





                                     1-41 
    File Attributes . . .

      Also in the file list, to the far right in each panel, you will
    probably see A's.  This means that the DOS "Archive" attribute bit is
    set in the file attribute byte.  DOS sets this bit every time it
    operates on a file.  CF lets you operate on this bit and the other
    bits in the DOS file attribute byte - "Read-only", "Hidden", and
    "System".  Before doing this exercise, look at the top line of the
    display.  If you see "^Hide=N", that means that files with the DOS
    "Hidden" attribute set will be displayed anyway - i. e., the CF "Hide
    switch" is off.  Chances are you will see "N" instead of "Y", meaning
    that the Hide switch is off - the default setting.  In the "Y"
    setting, files will disappear from view as you set the DOS hidden
    attribute, so you need to ensure the hide switch is set to "N".  Press
    Ctrl-H if necessary to toggle the hide switch off.

      Either tag one or more files, or position the cursor on the file
    whose attribute(s) you want to set, and press 1 to toggle the state of
    the Read-only attribute, 2 to toggle the Hidden attribute, 3 to toggle
    the System file attribute, 4 to toggle the Archive attribute, or 0
    (zero) to clear all attributes.  You may also toggle the hidden
    attribute (with 2) of a subdirectory, but this may be done one
    subdirectory at a time. Note that "hiding" a file makes it invisible
    to CF only when the hide switch is set on, as shown in the top line.
    Decide for yourself which setting of the hide switch you prefer.  Some
    people like to hide the "overhead" files and directories on their
    disks, and leave the hide switch on as the default setting to "clean
    up" the display.


    Changing the Date/Time Stamp of a File . . .

      You may change the date/time of a file by putting the cursor on it
    and pressing Alt-F.  Data windows open for you to enter the new date
    and time, with the old date/time as default. You may set a group of
    files to the same date/time by tagging them first, then pressing Alt-
    F, and confirming the operation for the group.


    "Alt-Tagging" and Appending . . .

      Suppose you have two files that you want to concatenate (stick
    together as one, heel-to-toe).  Tag them with "append" tags with the
    key combination Alt-T or Alt-spacebar in the order in which you want
    them to be concatenated, and press C.  CF will offer you a file name

                                     1-42 
    for the new concatenated file consisting of the name of the first file
    Alt-Tagged plus the extension "APF" (for APpended File). You may edit
    or accept this name as given.Then CF creates this file in the target
    path and appends into this  file each of the Alt-Tagged source files
    in order.  You may concatenate up to 35 files at a time this way.  The
    order in which the file was Alt-Tagged is shown in the character that
    appears to the left of the file name as it is tagged (1-9, then a-z).
    Or, if you had pressed B instead of C after affixing the Alt-Tags, the
    concatenated file would have been written as a backup into the source
    path instead of the target.


    Printing a File . . .

      You can print a file to the parallel printer just by putting the
    cursor on the file and pressing L (print fiLe).  A menu will appear as
    follows:


    ----------------------------------------------------------------

         Move cursor with Up/Dn Arrow; type option desired.

              Form feed after print, if not one already? Y
              Print header with file name and date/time? N
                      Set left margin of 0/5/10 spaces   0
                            Send file to  LPT1 or LPT2?  1

         Press Esc to cancel file print, Enter to proceed.

    ----------------------------------------------------------------

      Modify the defaults as desired, and press Enter to print the file.

      The file will be put into a special print "queue" for printing to
    the parallel port of your choice as a background process while you are
    doing other things, like editing another file, updating disks, etc.
    Up to five files may be put in the print queue, which may be viewed
    with Shift-L.

      At times the printer may halt momentarily during disk operations. CF
    gives preference to disk operations over printing, to avoid any
    conflict in time-critical operations. You may terminate printing with
    Ctrl-L. This actually clears the entire print queue. To force a form
    feed at the end of the file you have just queued, press Ctrl-F before

                                     1-43 
    you queue the next file. CF sets an internal flag to check that the
    last character sent to the printer from that file is a form feed. If
    it is not, then it sends one. (Ctrl-F is active when no file is
    printing, also, as a way of form-feeding the printer from the
    keyboard.)


    Making Some Notes About Your Files . . .

      If you are like me, you sometimes forget what a program with a
    strange name does, or what a particular data file is. CF lets you
    write notes to yourself about any file. Press Ctrl-N and a Notepad
    opens up in the opposite panel for editing. You can type a description
    for each file or subdirectory in the directory. The editing keys work
    much the same as in the line editor. Each time you call up the
    notepad, it appears as it did the last time you edited it. You may
    just browse with the up/down arrows, PgUp/Dn, Home/End, edit or add,
    etc. Leave the notepad with Esc or Ctrl-Enter. If you use Esc and did
    any editing, you will be asked if you want to save that edit of the
    notes. Exiting with Ctrl-Enter automatically saves the edit.

      A "view Notes" command Shift-N simply replaces the target panel
    display with the notes for the source panel, but all the file and
    directory service commands, including the source-to-target commands,
    such as Copy and move (Shift-C), are still active. However, the
    blinking feature in the directory comparison mode is disabled while
    the opposite panel is showing the notes.

      The notepad is contained in a file called "DESCRIPT.ION", following
    the convention of NDOS/4DOS, and notes follow the file when it is
    copied or moved to another path or renamed.  If you delete a file, its
    notes will be lost the next time you call up the notepad.  You may
    make the DESCRIPT.ION file Hidden and/or Read-only with user Options
    in the Shift-O menu.


    Notes in Version 6 and Windows 95 Long Filename Support . . .

      CMFiler now fully recognizes Windows 95 long filenames, and
    preserves them in all copy and move operations in the main module and
    tree module. The editor preserves the long filename when editing a
    file, but not in the original file when saving it as a backup.  The
    notes facility in CF imports long filenames as notes.  The Make
    directory and make File commands, as well as the Rename command, allow
    creation of new directories and files with long filenames.

                                     1-44 
      File and directory make and rename functions, F, M and R, go
    initially to standard DOS 8.3 format.  However, one press of the Down
    Arrow key selects Win95 long filename mode, if Windows 95 is
    installed.

      In Version 6, the old CF note file format, NARATIVE.CF, is retired,
    and notes are now kept in the standard DESCRIPT.ION file format
    established by 4DOS and NDOS. Before running CF Version 6 the first
    time, run the companion utility CONV-NAR.COM in the CF file set.  This
    utility examines every directory on any hard disk you request, and
    does the following:

      a.  Reads and loads as an image in memory the DESCRIPT.ION file for
    this directory, if one exists.

      b.  Determines if Win95 is the operating system, and if so, finds
    all long filenames and imports them into the memory image of the
    DESCRIPT.ION file.

      c.  Reads and translates into DESCRIPT.ION format the NARATIVE.CF
    file for this directory, if one exists, and adds to the memory image.

      d.  Reads and translates the DIRN-???.DAT file for this directory,
    if one exists, and adds to the memory image.

      e.  Removes duplicates, then checks each note to see if it has a
    corresponding directory entry, removing extraneous notes, and writes a
    new DESCRIPT.ION file into the directory.

      f.  If the new DESCRIPT.ION was made without error, deletes the old,
    now superfluous NARATIVE.CF file.

      The heirarchy in consolidating existing notes into the new
    DESCRIPT.ION file is: (1) existing DESCRIPT.ION entry; (2) Win95 long
    filename; (3) existing NARATIVE.CF entry; and (4) existing DIRN-
    ???.DAT entry.  The CF view-notes and edit-notes facilities also
    perform the same consolidation in the specific directory in which they
    are called, so information will not be lost by not running CONV-
    NAR.COM first.  However, for efficiency, it is recommended that CONV-
    NAR be run before CF Version 6.

       As an assist in quickly loading DESCRIPT.ION files with many (>300)
    notes, CF also creates a file called DESCRIPT.PTR, which is a table of
    pointers to the starting address of each note in memory.  This
    companion file to DESCRIPT.ION is non-essential, and is for time-

                                     1-45 
    savings only. It may be deleted if there is some indication it has
    become corrupt, such as loss of notes in the view-Notes facility.

      The previous limit of 39 characters on notes viewed or made in CF no
    longer applies with this changeover in Version 6.  Notes may be up to
    260 characters long.  Win95 users should be aware that Win95 puts a
    system limitation of 255 characters for long filenames on files and
    directories, and 260 characters total for full path specifications
    using long filenames.


    About Win95 Long Filename Aliases . . .

      When a long filename (LFN) is created in Win95, Win95 also assigns
    an "alias" filename in standard DOS 8.3 format. This alias generally
    consists of the first six characters of the long filename, not
    counting whitespace, plus the "~" character and a number, starting
    with 1, plus the LFN's extension, if it exists.  Thus the alias Win95
    would try to assign to the long filename "This is a long filename.txt"
    would be THISIS~1.TXT.  However, if a file by this 8.3 name already
    exists in the directory ("folder"), then Win95 increases the numerical
    tail until it finds a unique alias.

      CF still uses the 8.3 filename as the primary sort and display name
    for all files, even Win95 LFNs.  It is possible to have the same 8.3
    LFN aliases representing different files in different directories.
    They may appear to be the same file in the CF side-by-side listings,
    but they may or may not be the same.  During copy and move operations,
    however, CF uses the actual LFNs for establishing the identity of
    files, and applies the safety nets for overcopying newer files with
    older of the same LFN, or read-only files with non-read-only files
    with the same LFN. Likewise, if you copy one file with a given LFN
    alias from one directory into another which has an entry with the same
    LFN alias, but a different LFN (i.e., is actually a different file),
    CF will copy the file using the Win95 extended LFN file services, and
    let Win95 assign a different alias.  In this way, CF prevents any
    possibility of inadvertent file destruction resulting from confusion
    over LFN aliases.

      However, what this also means is that you may have to use the CF
    view-notes facility (Shift-N) when comparing directories side-by-side,
    to see whether same-named LFN aliases represent the same or different
    files. A good practice in assigning long filenames is to use unique
    first words or character combinations.  Avoid naming every letter
    "Letter to Jim", "Letter to Sarah", but rather try "Jim Jones letter

                                     1-46 
    1-3-96", "Sarah Smith letter 2-5-95", and so forth.


    Printing a Directory Listing . . .

      Press Alt-L to send a directory Listing to line printer 1. If you do
    this from either of the Notes displays, you also get a listing of the
    notes, and the file size entries are either the abbreviated or full
    values, depending on the display mode set in the directory table
    (toggled with + and -).


    Comparison Mode . . .

      At the top of the screen you see a message "^Comp=Y". The "Y" means
    comparison mode is enabled, so that any file in the target panel whose
    name is the same as the file in the source panel will be shown and its
    date-time stamp highlighted for easy identification. If the files have
    different date-time, the newer version will be blinking, except when
    viewing notes. You may toggle this switch with the key combination
    Ctrl-C.

      In comparison mode there is a useful feature which enables you to
    get quickly to a file with the same name in the opposite panel. In
    arrowing back and forth between panels in comparison mode, with some
    files by the same name in each panel, you probably noticed that the
    target panel shifted as necessary to bring the duplicate name into
    view, but as soon as you shifted over to the target panel, it
    "remembered" and adjusted the display back to where the top line and
    cursor had been left, and you lost the duplicate file from view. But
    suppose you had seen a more recent file in the target panel, as
    evidenced by the blinking highlight, and you really wanted immediately
    to arrow over to it and copy it into the source.  The Shift-Left/Rt
    Arrow combination does this. It resets the target panel display
    parameters so the cursor goes right to the matched file name.


    Hide Mode . . .

      Also at the top is the message "^Hide=Y". The "Y" means that hide
    mode is enabled - the screen display will not show any hidden files -
    those with the hidden attribute set. This is handy for cleaning up
    your displays - just hide the overhead! You may toggle the state of
    this switch with the key combination Ctrl-H.  The current state of the
    Hide and Compare switches is set as the default any time you do a

                                     1-47 
    Shift-O user Options, a Shift-S options Save, or a Shift-F10 edit,
    discussed in Chapter 4 on application launching.


    Mask Template . . .

      Also at the top is the message "^Mask=*.*". This is a mask that lets
    you sift out all but files with a certain characteristic. For example,
    if you want to see only the .EXE files, press Ctrl-M, Tab, type "EXE",
    and Enter. Tab and Shift-Tab position the cursor on the extension and
    name fields, respectively. The left and right panel masks can be set
    independently. As a visual reminder, the mask blinks whenever it is
    other than *.*.


    Displaying System Date and Time . . .

      The display of system date and time may be toggled on or off with
    the "5" key. There is no obvious mnemonic; however, one user suggested
    that 5 o'clock is Miller "Time".


    Changing or Adding a Volume Label . . .

      Press V and a data window opens at the bottom for you to enter a new
    volume label for your disk. The existing volume label is offered as a
    default for editing ease.


    Some Safeguards . . .

      As noted above, you can't remove a directory unless it is void of
    files. This is a built-in DOS safeguard that CF passes along to you,
    since it uses the DOS file handling services. In addition, CF asks you
    to verify any requested delete operation; any requested copy operation
    that would overwrite a file of the same name but newer date/time in
    the target path, a read-only or system file, or a hidden file with the
    hide switch on.


    Saving User Setup Options . . .

      You have already read about three cases in which features can be
    reset from their default (or "as-delivered") condition using a special
    user Option menu summoned by Shift-O. The "soft" delete can be

                                     1-48 
    redefined as a "hard" delete, the DESCRIPT.ION notes file can be
    defined as Hidden and/or Read-only, and the identical-file overcopy
    switch may be set on or off. There are twelve such features, total,
    available for setting to your specifications. When you visit this menu
    and then leave by pressing Enter, the configuration file CF.CFG is
    updated so that these switches settings are remembered the next time
    you run CF. The nature of these thirteen switches is such that you
    probably will not change them often. They represent your preferences
    as to a standard configuration of features.

      When you press Shift-O, you will see the following menu:

    -------------------------------------------------------------------

        Move cursor with Up/Dn Arrow.  Type option desired.

                                           Define F1 as Help? Y
                                 Redefine "D" as HARD Delete? N
                           Wipe old files before HARD Delete? N
                     Overcopy files with same date/time/size? N
               Refresh directory contents after Screen Saver? N
                     Assign Hidden attr to DESCRIPT.ION file? N
                  Assign Read-only attr to DESCRIPT.ION file? N
                        Turn off DESCRIPT.ION file updating?  N
                                       Turn Screen Saver off? N
                       Use European date convention dd-mm-yy? N
                 Invert function of high intensity color bit? N
         Cga/ega, Vga, Mono:    LCD: Tandy, Epson, other Lcd  V
                                  VGA display: 25/43/50 lines 4

            Press Esc to cancel changes, Enter to accept.

    --------------------------------------------------------------------

      These thirteen  "switches" represent setup features that various
    users have asked for.  The default settings are as shown for the first
    ten.  Any switch may be toggled between Y and N by putting the cursor
    on it using the Up/Dn Arr keys, and pressing the spacebar or the
    letter N or Y.  When you have reconfigured the way you wish, press
    Enter. Esc exits with no changes. Here is an explanation of each
    feature:

      1.   In keeping with the convention most often used by other
    programs, the F1 key is assigned as a "Help" call in the editor and
    tree modules, and this is the default setting for the main module.

                                     1-49 
      2.   For those who do not wish to use the "soft" delete feature nor
    be bothered with the ~TRASH~ directory, the D key may be reconfigured
    to "HARD Delete", identical to Ctrl-D, by resetting this switch to Y.

      3.   Setting this switch causes all files to be "wiped" (their data
    overwritten with "cfcfcf . . . ") before deleted with the DOS file
    delete service, to ensure complete destruction of files.

      4.   In the default setting, CF does not waste time during file copy
    operations overcopying any file in the target path that is reported by
    DOS to be the same date/time and size as a tagged file in the source
    path. However, sometimes you might want to mass-overwrite files on a
    backup directory or disk that are suspect, even though they may appear
    to be identical. Just set the overcopy switch to Y.

      5.   For Windows users, if you run CF in a window, it does not have
    any way of knowing when it returns from the background to the
    foreground whether any other application has written to the
    directories that it is selected to. In the default setting, it does
    not refresh the file listing (reread the directory tables). Windows
    users may want to reset this switch to Y.

      6. and 7.  The DESCRIPT.ION file, created in each directory as
    necessary to contain file and sub-directory notes, may be assigned the
    Hidden and / or Read-Only file attributes for neatness of directory
    display and / or protection from inadvertent deletion. The default
    values are No.

      8. Unless you turn it off, CF will always update the DESCRIPT.ION
    file when a file with a note is copied into the directory, deleted
    from the directory, or removed.

      9.  The automatic Screen Saver may be turned off with this switch,
    if you have a favorite resident screen saver installed.

      10.  European users will want to see dates in the form dd-mm-yy in
    all of CMFiler's displays, and will want to toggle this switch to Y.

      11. Certain LCD displays invert the action of the high-intensity
    color bit. If the display is all high-intensity except for the line
    the cursor is on, try changing the switch to Y.

      12.  The color attribute set may be changed by pressing C, V, M, T,
    E or L. If, for example, your system has a color card driving a green-
    screen monochrome monitor, you probably would be more satisfied with

                                     1-50 
    the monochrome color set invoked by M than the default color set C.

      13.  If you have an EGA or VGA monitor, 43-line and/or 50-line
    display mode is probably accessible to CMFiler. You may set this
    variable to 4 or 5.

      There are other features of CF, particularly in the display options,
    which you may reset lots of times in process, but which don't need to
    be recorded permanently each time you change one. For example, I leave
    the file ordering scheme set at the default value of "1" (straight
    alphabetical), but sometimes I want to look at files in the order I
    last modified them. I will temporarily reorder using the Ctrl-O
    command, but I still want CF to come up with ordering scheme "1" next
    time I run it.

      These values are savable. The other in-process option features that
    are savable are the Compare and Hide mode switches, the resident
    Kernel size, and the system date/time display on or off. They are
    saved  1) whenever the Shift-O setup Option menu is exited with Enter,
    2) whenever the Shift-F10 user-defined application menu (discussed in
    Chapter 4) is exited with Ctrl-Enter, or 3) by pressing Shift-S (Save
    options).


    Help . . .

      In addition to the two-line mini-help area at the bottom of the
    screen, a help facility may be summoned on-line at any time in the
    main module of CF by pressing H or F1.  Arrow or PgUp and PgDn through
    the help screens, or press the first letter of the keyword you are
    looking up. For example, to move instantly to the page with
    information on tagging, press T. Esc exits back to the main screen.


    Custom Configurations on Networks . . .

      Different users on a network using a common copy of the CF program
    files may specify their own .CFG file through an environment parameter
    CF-CFG. For example, if your configuration file is MY.CFG in the path
    U:\SETTINGS, include a DOS set command SET CF-CFG=U:\SETTINGS\MY.CFG
    in the batch file that runs CF for you.





                                     1-51 
    Command Line Parameters . . .

      CF supports optional command line parameters to specify the initial
    path for the left panel, right panel, file mask and color set, in the
    syntax:

        cf [pathspec1[\mask1] [pathspec2[\mask2]]] [@color]

    where pathspec1 and pathspec2 are directory specifications to the
    initial directories to be displayed in the left and right panels,
    mask1 and mask2 are any valid mask specifications, and color is C, V,
    M, L, E or T for the CGA/EGA/VGA, monochrome, generic LCD, Epson or
    Tandy LCD color attribute sets. The masks may be attached to either
    pathspec or stand alone, but must be of the form "*.ext". The color
    specification may appear anywhere. Examples of valid command lines
    might be:

        cf c:\assembly\*.asm c:\pcw @c
        cmfiler c:dos @m
        CF UTILS WP51\*.DOC
        CMFILER @C *.EXE
        cf c:\dos\*.com  d:\utils\*.exe


    Formatting Floppy Diskette . . .

      Floppy diskettes may be formatted without leaving CF. The command is
    Shift-M (forMat). Double- and high-density 3.5" and 5.25" formats are
    recognized. If an existing format is detected, CF requests
    confirmation to proceed. Diskettes cannot be "unformatted" after this
    command is used, so be certain the disk contains no valuable files
    before using. All data sector are overwritten with the format "fill"
    character hex F6, so, unlike the FORMAT.COM of MS-DOS 5 and later, the
    CF formatter is good for obliterating sensitive data.

      This formatter is also called during operation of the floppy filler,
    if needed, so unformatted diskettes may be used for filling. If the
    formatter encounters a bad sector on the diskette, it will alert you,
    and will not complete the formatting. You should simply discard this
    diskette. (Other formatters mark bad sectors in the FAT table and
    complete the formatting. NoVaSoft's philosophy is that, with the high
    quality and low cost of diskettes on the market today, defective media
    is such a rarity that, when a bad sector is encountered, the diskette
    should just be discarded as a cheap safety measure.)


                                     1-52 
      The formatting routine also places a "boot-through" code on the
    floppy boot sector.  If you boot your computer with a CF-formatted
    diskette in the boot preference floppy drive, this boot routine will
    first check its own integrity, as a rudimentary test of whether it has
    been infected with a boot sector virus, and then load and transfer
    boot control to the C drive if it is present.


    Copying Floppy Diskettes . . .

      A built-in diskette copier is accessible with the command Shift-K (
    for disKopy). Double- and high-density 5.25" and 3.5" floppies are
    recognized. You specify hard drive to store master diskette image on,
    drive to make copies on, number of copies to make and whether each
    track should be verified as it is written. Number of copies left to go
    in the batch is displayed after each successful copy.

      If disKopy encounters a bad sector while formatting or writing the
    copy, it will alert you that the diskette is bad, and not complete the
    copy. As discussed above, you should simply discard this diskette.

      The disKopy facility allows a diskette image to be saved as a file
    on your hard disk for reuse. After the diskette is read, CF asks if
    you wish to save it on the designated hard drive. If you answer Y, you
    will be asked to provide a file specification for the saved file. You
    may enter a full file spec with path, or put the file on the current
    directory selected on the hard drive by typing in just a file name.

      The saved image file may be used to create more diskettes. When you
    press Shift-K, CF first asks if you want to use an image file to
    create the diskette copy. If you answer Y, CF seeds the entry line
    with the name of file that the cursor is on. This gives you a handy
    way of reusing a diskette image file: just put the cursor on the name
    of the image file, press Shift-K, then Y, then Enter to accept the
    seeded file name.


    Scanning a Diskette Sector-By-Sector . . .

      You can look at the absolute contents of a diskette with the scan
    facility, Shift-A (for scAn). Apparently empty diskettes may contain
    all sorts of interesting information, because the DOS file delete does
    not obliterate the data, just reallocates the clusters via the File
    Allocation Table.


                                     1-53 
    Quitting CF . . .

      There are two commands for exiting CF: Esc followed by another key,
    and Alt-Q. The Esc-other key combination reestablishes the default
    drive and its current directory as CF found them. The Alt-Q
    combination leaves the default drive and its current directory as it
    appears in the source panel. In either case, if you were printing a
    file, you will be asked if you really want to quit, since the print
    spooler does not stay resident and quitting will terminate file
    printing. You may answer N.




































                                     1-54 


    CMFiler Ver 6.0
    ~~~~~~~~~~~~~~~


    TUTORIAL - Chapter 2: File Viewing and Editing:
    ____________________ 

      CF has a built-in colorized line editor, which simplifies file
    viewing and editing - even .COM and .EXE files.  Since it is part of
    the package, there is no loading delay.  It is ready when you are.


    Viewing a File . . .

      Want to see what's in a file?  Put the cursor on a file and press
    Enter.  CF loads the selected file in memory for viewing.

      If the file is a .COM or .EXE file, CF asks if you want to execute
    the file instead of view it. Press N. If the file is a .ZIP, .LZH,
    .ARJ, .ARC, .BIN or .EXE compressed file, the editor will first search
    for and display the names of all the files in the compression. Pick a
    text file and not a compressed or executable file for this exercise.


    Record Delimiters . . .

      The default color display mode for "record delimiters" [carriage
    return (CR), line feed (LF), and the combinations CR+LF and LF+CR] is
    to show their color values, which are cued in the legend at the bottom
    (blue=CR, green=LF, cyan=CR+LF, magenta=LF+CR). In addition, the end
    of the file is denoted with a red End-of-File (EOF) mark. Sometimes it
    is very useful to know exactly what delimiter combination your word
    processors use, so you can duplicate it when you edit with CF. You can
    toggle the colored delimiter symbols off and on with Alt-Minus or the
    gray minus key. (This is also covered in a help screen you can get by
    pressing Alt-H or F1.)


    Information Area . . .

      The name of the file being viewed is shown in the lower left prompt
    area.  The lower right prompt area shows the ASCII value of the
    character at the cursor (decimal and hex), the position of that

                                     2-55 
    character in the file (starting with 1), the line (called "record")
    the cursor is on, and the position of the cursor within the line
    (called "Column", which for a long record is not necessarily the same
    as the screen column).  This information display may be toggled off
    and on with Alt-Plus or the gray plus key.

      When the modifier key Alt- or Ctrl- is pressed, this information
    area displays the block, navigation and special editing commands
    enabled by the modifier key.


    Line Wrapping . . .

      The default display mode is line wrapping, where any line longer
    than 80 characters is wrapped to the next screen line, so that all
    text is visible.  This mode can be toggled between "Wrap" and "No
    Wrap" (see the Wr/NW at upper right for current status) with Alt-W.
    In the NoWrap mode, each line longer than 80 characters simply extends
    off the screen to the right, but is accessible for viewing by putting
    the cursor on it and [Ctrl- or Shift-] Rt Arrow-ing (see below) to any
    place on the line.


    Cursor Movement . . .

      The arrow keys, either on the cursor keypad or numeric keypad, move
    the cursor one line up or down and one character left or right. Ctrl-
    Left/Rt Arrow move left or right one word at a time, and Shift-Left/Rt
    Arrow and Home/End move to the beginning or end of the line, as in
    PCWrite. A second press of the Home/End key moves to the top/bottom of
    the page, and a third press moves to the beginning/end of the file
    contents in memory.

      PgDn/PgUp moves the display up or down one page frame (20, 38 or 45
    lines), and leaves the cursor on the same relative video line. Ctrl-
    PgUp/PgDn moves the display by 10 page frames for fast paging through
    a file. Shift-Up/Down Arrow moves to the top/bottom of the current
    page. Alt-B/E moves to the Beginning/End of the file contents in
    memory.

      The mouse moves the cursor similar to the arrow keys. A special
    mouse feature allows variable speed scrolling as well. Hold the right
    button down and move the cursor down a little bit. The file begins to
    scroll slowly up the screen. Move the mouse down a little more and the
    scroll rate increases, through a total of four speeds. Moving the

                                     2-56 
    mouse up reverses the direction.

      For very long files, exceeding available memory, the editor loads
    only as much as fits. When you get to the end of that section (i.e.,
    the current "file contents in memory" referred to above), the next
    operation that asks for another page or line causes the editor to load
    in the next section, remembering the file position of the start of the
    previous section so it can backtrack if you want. (It actually loads
    the next section with some overlap to the previous section, so that a
    little bit of backtracking does not result in reloading the whole
    previous section.) This "heel-and-toe" sequential loading is limited
    to 50 sections.


    Find a String . . .

      Want to look for a particular word or string of characters?  The key
    combination Alt-F (for "Find") opens up a data window at the bottom
    for you to enter a short string.  The data window is seeded with the
    word the cursor is on. The previous entry can be recalled with the
    UpArrow. After you press Enter, CF will find the first appearance of
    the string from the current cursor position, and put the cursor on it.
    Alt-X (for "neXt") finds the next appearance, and can be used
    repeatedly until the string no longer appears, which is signalled at
    the bottom of the screen. The search process starts at the cursor
    location and goes, if necessary, to the end of the current file
    contents in memory.

      If the file is long and is being viewed by the editor module in
    sections as discussed above, only the current section in memory is
    available to the Find operator.  The search is case-insensitive.

      If the cursor is placed on a word that you want to find the next
    appearance of, a quick search mode is available by pressing Ctrl-G. CF
    locates the next appearance of that word (all the text between "white
    spaces"), even if it has to recycle to the beginning of the file.


    Leading and Trailing Blanks in the Data Window . . .

      The data entry routine truncates leading and trailing blanks, but
    blanks may be included as leading or trailing characters by enclosing
    the string at either or both ends with quotes (") Suppose, for
    example, you wanted to find all of the appearances in a file of the
    word "mark", but not "remark". Press Alt-F and, in the data entry

                                     2-57 
    window enter: Find string: >" mark               <.  This works for
    the replace string as well.


    Editing a File . . .

      Exit view mode with either Esc or Enter. The mouse left button is
    the same as Enter. (Note that any tags in the source panel are still
    there.) Now you are ready to edit!  Position the cursor on a file that
    you have an extra copy of somewhere, and press E (for Edit). CF again
    loads the selected file, but this time with an internal "switch" set
    which tells the editor module to support editing. (Or, in View mode,
    press Alt-S, for "Switch to edit".)


    Edit Mode Limitations . . .

      CF permits edit mode only if the file fits all at once into
    available memory, has fewer than 16,380 records, and (in NoWrap mode)
    has no record longer than 8190 bytes. CF will revert to view mode if
    these conditions are not all satisfied.  If you have a lot of memory
    tied up in resident programs or RAM disk/cache, then you may not be
    able to edit extremely large files. Chances are, however, that this
    will never be a practical limitation.


    Typeover vs Insert . . .

      Look at the small reverse video box in the upper right corner of the
    screen.  "T/O" or "Ins", then CF is in edit mode. Toggle between
    typeover (T/O) and insert (Ins) modes with the Insert key. Typing
    action is just like any word processor.  In typeover mode, the Bksp
    key does not pull the text left. This is to avoid unintentionally
    shortening the file when editing length-sensitive files, such as .COM
    and .EXE files.


    Editing a Line . . .

      You operate on a line at a time, and the "normal" editing keys work
    - i.e. Bksp, Del, Tab, Shift-Tab, the unmodified and modified arrow
    keys discussed above, and any ASCII-code keys. To create a new line,
    just Shift-Arrow to the beginning or end of the current line,
    depending on whether you want the new line above or below the current
    one, and hit Enter. This inserts the default delimiter combination,

                                     2-58 
    CR+LF, into the text to set up a new line void of text, but ready for
    you to start typing. The combination Ctrl-Enter gives you a menu
    screen from which you may select a different record delimiter. Join
    two lines by deleting the record delimiter at the end of the first
    line to be joined. Delete a line with Ctrl-Y ("Yank"). Delete from the
    cursor to the end of the line with Ctrl-D. Delete a word and its
    associated whitespace with Ctrl-T.


    More on Record Delimiters . . .

      On CGA/EGA/VGA monitors, the record delimiter appears as a single
    colored "blank" character at the end of the line, whether it is
    actually two characters (e.g., CR+LF) or one (e.g., LF). It may be
    deleted to join two lines, but not over-struck - it always pushes
    right, even when you are in typeover mode. The red "End-of-File" (EOF)
    marker is not actually part of your file, but rather is only a visual
    aid for you to see where the text ends. When the cursor is on the EOF
    marker, the "byte number" in the legend corresponds to the number of
    the next character, if you were to type one. The EOF marker also
    always pushes right, and cannot be deleted.  The height of the cursor
    shows the status of the "Caps Lock" switch.


    Alt-Keypad and Alt-N . . .

      Any ASCII code from 1 through 255 can be entered from the numeric
    keypad using the Alt-key modifier. A special combination is provided
    for ASCII zero ("NULL"), since Alt-Zero is not recognized by any
    keyboard drivers I have seen.  It is Alt-N (for "Null").


    Changing Case . . .

      Pressing Ctrl-U/L/I on a letter forces it into upper or lower case,
    or inverts the case.


    Pop-Up ASCII Table . . .

      Ctrl-A pops up a convenient table of ASCII symbols for use in file
    editing. Just navigate to the symbol you want with the arrow keys or
    mouse, and press Enter to insert the symbol into the text.



                                     2-59 
    Block Operations . . . or the REAL Power of CF's Editor . . .

      All the block operations - there are six - are keyed to Alt-key
    combinations, and they are all intuitive (sort of). They are: Alt-{
    Mark, Yank (delete), moVe, Copy, Print and Output }.


    Marking a Block, and the Copy Buffer . . .

      You may also manipulate blocks of lines. First mark a block by
    putting the cursor on the first (or last) line of the block you want
    to do something with, press Alt-M (for "Mark"), move down (or up) with
    arrows, PgDn/Up, etc., and mark the last (or first) line of the block,
    again with Alt-M. The marked text is written into a dedicated internal
    copy buffer for later use. If you made a mistake, a third press of
    Alt-M clears the marks, but leaves the copy buffer intact. The
    contents of this copy buffer remain available for multiple use until a
    new block is marked. You may exit the editor back to the main module,
    and edit another file, and because the editor copy buffer is a
    dedicated chunk of RAM in the main and editor modules, the buffer is
    still intact.  Just copy it into the next file with Alt-C.

      When you are marking a block, note that the information box at the
    bottom left of the screen expands to show you the attributes of the
    marked block - the number of the first and last records marked, and
    the number of bytes in the painted area. There is an arbitrary 32 KB
    limit on the copy buffer. The upper right-hand information box shows
    "Blk" (for "blocked") instead of "T/O" or "Ins", meaning that normal
    editing is not permitted while you have a block marked.


    Delete, Copy, Move . . .

      Delete the block with Alt-Y ("Yank"). Or put the cursor in an
    unpainted area of the file, and copy the block into that area, just
    ahead of the line where you put the cursor, by pressing Alt-C
    ("Copy"). Or move it with Alt-V ("moVe"). As noted above, the block
    previously "marked" into the copy buffer is available for multiple
    use.  Just put the cursor where you want the block to be copied and
    hit Alt-C again.






                                     2-60 
    Restoring from Inadvertent Block Deletion . . .

      If you just deleted a block in error, put the cursor where you want
    to restore it, and press Alt-C to copy the buffer back into the file.


    Sending a Block of Text to the Printer . . .

      Print the copy buffer to the parallel printer with Alt-P ("Print").
    After printing, if you want a form feed, press Ctrl-F ("Form feed" -
    note the use of Ctrl- vice Alt- as the modifier key, since Alt-F was
    already used for "Find").


    . . . or to a File . . .

      Finally, output the copy buffer to a file in the same path as the
    file being edited by pressing Alt-O (letter "O" for "Output"). A
    window opens at the bottom for typing the name of the file for CF to
    create (if it doesn't already exist) or append to if it does. (The
    file will be created or opened in the current directory on the default
    drive. Therefore the characters ":" and "\" will not be recognized.)


    Replace and Global replace . . .

      In addition to the Alt-F "find" feature, there is an Alt-R "replace"
    and an Alt-G "global replace" feature. Just press Alt-R or Alt-G and
    enter the find and replace strings when prompted. (If you see a
    mistake in the find string while you are typing the replace string,
    just arrow back up a line and reedit it.) For Alt-R, CF will find the
    first match and ask you to confirm the replacement. It continues
    finding and requesting confirmation until you press Q (for "Quit
    replacing") or Esc. Alt-X reactivates either the find or replace
    routine, whichever was used last. Alt-G replaces all appearances of
    the find string with no confirmation. It may be terminated with any
    key press. When global replace is thus terminated, Alt-X reactivates
    the confirmatory replace, not the global replace.








                                     2-61 
    Leaving Edit Mode . . .

      After editing is complete, press Esc. When leaving the editor after
    editing an existing file, there are several decisions you have to
    make: 1) under what name to save the edited file; 2) whether to use
    the current date/time or the original date/time of the edited file as
    the save-file's date/time stamp; 3) whether to rename the original
    file so it is also saved; and 4) whether to return to the editor after
    the save operation.

      The default selections for these options - the ones most often used
    - are: 1) save the edited file under the original file's name; 2) do
    not reuse the original date/time stamp; 3) do not rename and save the
    original file; and 4) do not return to the editor. You can accept
    these default options by pressing Enter, or Y, or if you had hit Esc
    by mistake, you can press Esc again to return where you were in the
    editor. If the defaults are not acceptable, press N, and CF will take
    you through each option.

      In the first option, CF offers the original file name as the save-
    file name, but you can edit it, including adding a path to have it
    saved in a different directory. If you do not want to save the edited
    file at all, press Esc.

      In the second option, you may press Y to reuse the original
    date/time stamp of the file that was edited.

      In the third option, CF offers a default name to rename the original
    file, replacing the last character of the extension with an
    exclamation point. You can edit the name, or press Esc to avoid
    renaming the original file.

      In the fourth option, you may press Y to return to the editor.


    Saving File in Mid-Session . . .

      The command Ctrl-S lets you save a file in mid-session while
    editing. This is prudent during a long session just to make sure you
    don't lose the edit to a power failure. Ctrl-S provides a sequence and
    defaults similar to the exit sequence above except that you return to
    the editor instead of leaving.




                                     2-62 
    Creating a New File with the Editor . . .

      A new file may be created from the main module by pressing the
    letter F ("new File") and entering a name for the new file in the data
    entry line. The new file will appear in the directory from which the F
    command was issued.


    Help . . .

      A  help facility may be summoned on-line at any time in the editor
    with the command F1 or Alt-H.  Operation is identical to main module.


































                                     2-63 






    TUTORIAL - Chapter 3: The TREE Functions:
    ____________________

      CF lets you view and operate on the subdirectory structure of your
    disk in the format of a "tree", so-called because that is what it
    looks like, with each subdirectory being a "limb" for the finer
    "branches" in its substructure. This feature is invoked with the
    command Shift-T (for "Tree"). The command conventions in the tree
    module are the same as you have encountered in the main screen, except
    on a much smaller scale.

      The path(s) on entry are preserved from the main screen, and the
    selected subdirectory structure in the source panel is highlighted as
    a block. This source block may be copied, moved or (with great
    caution) deleted. A fast machine can wipe out a lot of files in a big
    hurry, and because of this I have added a second confirmation of any
    delete operation that involves file destruction.


    Tree Image Facility . . .

      In Version 6, the tree module has a feature that captures to a
    subdirectory ~TREES~ (which CF creates for this purpose) an image file
    of the tree and of its filenames for each drive when that drive is
    first accessed.  These image files are then available for use as a
    quick alternative to rereading the whole drive the next time the tree
    module is entered and that drive is selected.  The image files load
    the tree structure in a fraction of the time it takes to read the
    whole drive and construct the directory and file lists.  The ~TREES~
    directory will be created on the path in the configuration environment
    parameter CF-CFG, if one has been specified by a SET command.
    Otherwise it will be created on the root of C.

      The first time Version 6 is run in tree mode, CF explains three
    basic setup options to help the user use this new feature in the best
    way.  In one option, you can tell CF to ask permission to reread the
    drive and refresh the tree image on file after copying a structure
    into the drive tree. It is often convenient, if you have several
    structures to copy, to wait until the last before rereading the drive

                                     3-65 
    and refreshing the tree image.













































                                     3-66 
      The tree image can also be manually updated using Shift-R (Refresh
    tree). The tree image option menu can be brought up with Ctrl-O (for
    image Options).


    The Display . . .

      If you entered the tree feature with both panels open, you see that
    the source/target panel relationship is preserved, and the paths
    displayed at the top and indicated by the cursor highlights in the
    tree structure itself are as existed from the main screen. The
    structure under the cursor in the source panel, namely the selected
    directory and all its files and subdirectories and their files, is
    shown as a highlighted block with a bright background, while the
    current directory selected in the target structure is shown
    highlighted with a reverse video background.

      If you entered the tree module with the right-hand panel closed, you
    may open it the same way as you would from the main screen - right
    arrow, then press a drive letter at the prompt.

      Line 1 at the top of the screen gives the status of two display
    enhancement switches. The "hide" and "compare" switches are passed
    from the main module, and have the same function. When the hide switch
    is on (^Hide=Y), subdirectories with the hidden attribute set are
    masked (i.e., not displayed). When the compare switch is on (^Comp=Y),
    any match in the target panel to the currently selected path in the
    source panel will be highlighted in a high-intensity color, similar to
    the highlighting of file matches in the main screen. The hide and
    compare switches may be toggled using Ctrl-H and Ctrl-C (shown as ^H
    and ^C); their states are transmitted back to the main module on
    return.

      The "Goto" string also appears on the top line when the Goto file or
    Goto directory command is given (G or Alt-G). More on that later.

      Information about the selected structures is contained in the two
    lines at the bottom of the screen. In each panel, there are two pairs
    of numbers, one pair for the amount of disk space used by the files in
    the structure, a second pair for the number of files in the
    structure.The first number in each pair describes the files in the
    immediate directory that the cursor is on (think of this as the "root"
    of the structure), and the second number in each pair describes  the
    file ensemble in the entire highlighted structure.


                                     3-67 
      Cursor movement is much the same in the tree display as in the main
    screen.  Left/right arrows switch panels, up/down arrows move one line
    up and down the tree, PgUp/Dn move up and down the tree several lines
    at a time, Home/End move to the very top or bottom of the tree, and P
    (for "Parent") moves the cursor up to the directory's parent. Two
    additional cursor moves are Shift-Up/Dn Arrow, which moves the cursor
    up or down one directory in the same level; and Shift-Lf/Rt Arrow,
    which moves the cursor directly across to the match if you are in
    compare mode and have a path in the target matching the path of the
    currently selected structure in the source (same feature as in main
    module).

      Mouse action is much the same as in the main file services module.
    Changing disks or drives (Shift-R or N), renaming subdirectories (R),
    setting the hide attribute for a subdirectory (2), and toggling the
    hide and compare switches (Ctrl-H and -C) also all work the same as in
    the file services module, except that no wild cards are permitted in
    the rename function.


    Copying structures . . .

      If you, as I, never previously thought or visualized much about the
    structure of the data on your hard disk, and never thought in terms of
    moving around big blocks, the conventions about to be described will
    take a little getting used to.  However, you will come to find these
    operations a great convenience.

      Select in the target panel a path under which you want to replicate
    a substructure from the source panel. Pick a small structure in the
    source panel for starters. Now picture the source block that is
    highlighted in red (if you're in the default color - in reverse video
    if monochrome) appearing under the top subdirectory  in the shaded
    area of the target panel. Press C. The structure selected in the
    source panel is reproduced, subdirectory-by-subdirectory, file-by-
    file, under the target path.  (One prohibition - CF does not permit
    copying a structure onto itself.  That is, if you have the same drive
    selected in both panels, a structure in the source and its host (the
    subdirectory it originates from) in the target, the command C will be
    ignored.)

      This copy operation is good for backing up major structures hard
    disk-to-hard disk or hard disk-to-floppy. Once a backup structure
    exists on another medium, you may keep it up to date the same way.
    Just remember to set the path in the target panel to the host

                                     3-68 
    directory of the structure you are backing up. Updating is possible
    because the file copying and protection convention used in the tree
    module is the same as that employed in the main program of CF. Namely:

      o  Files encountered in the target structure with the same date/time
    stamp and size are presumed identical, and not rewritten, unless the
    "file overcopy" switch is on.  As with the "hide" and "compare"
    switches, the current state of the "overcopy" switch is passed from
    the main to the tree module.

      o  Files of the same name encountered in the target that are newer
    than the source, or that are read-only and the source is not, or that
    are system files, require confirmation to be overwritten.

      o Files of zero length in the source structure are not allowed to
    overwrite files in the target. Non-zero-length files in the source
    structure always overwrite zero-length files in the target of the same
    name.

      Copying in progress may be terminated using Esc. Any errors during
    file copying cause a pause in the tree copy operation, and the user
    must confirm continuing.

      The copy function tries to anticipate the disk space required in the
    target for the structure being copied, and will proceed without delay
    if it finds there is enough free space on the target disk to assure
    the completeness of the copy. It does not attempt to check the target
    path for possible file duplications with the source block and take for
    credit as "available space" the space occupied by files which will be
    overwritten. If it senses not enough space to cleanly copy the whole
    structure, it will alert you to the possibility of an incomplete copy,
    and ask for confirmation to proceed anyway. Then, as the copy
    operation proceeds, it checks disk free space before each file is
    copied. If there is insufficient space for that file, it tells you so,
    and asks whether you want to try copying the next file. The answer "N"
    terminates the whole operation.

      When backing up structures on your hard disk using the tree
    structure copy function, if the backup floppy is at all tightly
    packed, you will get this advisory message. If you know there is a lot
    of file duplication between the source structure and the backup
    floppy, you may proceed with the copy operation with confidence that
    all the files will be properly updated.

      A final word on the copy function, and the move function  discussed

                                     3-69 
    below.  The original cursor position in the target panel, which
    specified the target path for the operation, is reset after the copy
    or move operation to show the top line of the new structure just
    created or moved, so that you can see that the copy or move actually
    took place and check using the information at the bottom of the screen
    that all the files were reproduced or moved. However, on the next
    keystroke, the target path is reset again to its original position.


    The "Copy Into" Function . . .

      As seen above, the copy function replicates, as a structure under
    the target directory, the source block. The structure has the same
    "name" in both cases, meaning that the top line of the block in the
    source panel is the same as the top line of the replicated structure
    in the target panel. Another way to view this is that the subdirectory
    which serves as the "root" of both structures has the same name.

      While this seems a convenient way to copy structures between two
    large mass storage devices, as it forces a uniform convention on the
    naming and construction of the structures themselves, it may not
    always be the most convenient way to backup structures from a large
    mass storage device to a smaller one. This sounds very cryptic, so let
    me try an example. Suppose one of the major structures in your hard
    disk is a directory under the root, containing all your files
    pertaining to your word processor. Let's call this directory WORDS. In
    it are all the program support files (the editor, the printer, the
    configuration files, etc.), and two subdirectories, NOTES and LETTERS.
    If you were to copy the structure with WORDS as its "root" to a virgin
    floppy, the screen would end up looking like this:

    C:\                                   A:\
    |-ANYOLD.DIR                     [    |-WORDS
    |-WORDS        ]     ----------> [      |-LETTERS
    | |-LETTERS    ]-----|           [      '-NOTES
    | '-NOTES]     ]
    '-ZLAST.DIR

      But suppose you plan to dedicate this floppy exclusively to the
    backing up of the files in the WORDS structure, and so you really
    wanted to put the word processor program and its support files into
    the root directory of the disk in A:, and have the LETTERS and NOTES
    be directories of the root, not of a directory WORD. That is, you want
    not to create the unnecessary layer of a directory called WORDS, but
    you want the A: disk tree to look like this:

                                     3-70 
    A:\ <Where the programs and support files are here in the root>
    |-LETTERS
    '-NOTES

      This is where the command "Copy Into" does the job. Just press the
    letter I instead of C, and the contents of the structure in the source
    panel block are copied  Into the target directory, instead of being
    replicated as a new, complete substructure. Because of the subtle
    difference between the commands C and I, a confirmatory message is
    displayed on the screen when you use the copy Into command.


    Moving structures . . .

      In much the same way, structures may be moved within the same disk
    with the commands Shift-C (which moves the structure to under the
    target directory, similar to Copy) and Shift-I (which moves the
    structure into the target, like Copy Into). The condition for moving
    is that the target path is not currently the host of the structure
    selected in the source panel. When the move is within the same disk,
    it is accomplished using the DOS rename service,  and no copying of
    any file data itself is performed, just modifications to the directory
    tables, and so this is a quick way of doing major reorganizations of
    your hard disk.

      "Move" (Shift-C) and "move into" (Shift-I) default to straight
    "Copy" and "copy Into" if different disks are selected in the source
    and target panels, followed by confirmation to hard delete the source
    structure. Moving may be terminated with Esc.


    Copying Just the Files . . .

      The command J (for  copy Just files) works somewhat like the copy
    Into command, but copies just the files in the source subdirectory
    into the target path, and not the subdirectories and their files and
    subdirectories, etc.


    Copying Just the Directory Array . . .

      The command Alt-C is similar to C, but copies just the skeleton of
    the structure, the directory array and no files, under the target
    path. Alt-I, similar to I, copies just the directory structure Into
    the target path.

                                     3-71 
    Deleting Structures . . .

      This is the scariest of all the tree functions, because a couple of
    false keys and a fast hard disk and you're destroying files real fast.
    For this reason, I have added a second confirmation step which warns
    you how many files are about to be destroyed before it starts, and,
    for hard disks, have used the same "soft" delete convention for the
    operator D as discussed in Chapter 1 on the delete function in the
    main module. (If the structure selected consists entirely of empty
    subdirectories, CF doesn't bother asking for the second confirmation,
    since directories are a whole lot easier to re-create than files.)
    Thus, when file destruction is involved, three keystrokes are required
    to delete a structure - D, Y, and Y - and, for a hard disk, the files
    deleted will reappear in the ~TRASH~ directory. As in the main module,
    the alternative "hard" delete function is Ctrl-D.

      Esc terminates tree deletion in progress. CF deletes all the files
    in each subdirectory shown in the tree structure - hidden and read-
    only, as well as normal.

      The move and delete operations use a routine to remove the (assumed
    empty) tree structure in the cursor block in the source panel after
    all the files have been moved or deleted. If there is a hidden
    subdirectory in this structure, and the hide switch is set to "Y",
    however, it will not be seen by the file moving or file deleting
    routines, as well as the directory removal routine, and a strange-
    looking error message will be returned, namely "Access denied" during
    directory removal.  This is classic DOSese, at least most of the time,
    for "there is something still in there." Toggle the hide switch with
    Ctrl-H and reexamine the remnants of the structure you tried to
    delete.

      To save you time, CF does not reread the tree from the disk after a
    piece has been deleted, but rather marks the image it made in memory
    of the tree structure to note the part has been deleted and should not
    be used in drawing the tree. As a consequence, the statistics - files
    and KB used by the directories above the deleted portion -- will not
    be accurate.  After several deletes, you can refresh the tree data
    from disk with Shift-R (Relist).







                                     3-72 
    Delete Just the Files . . .

      The companion delete operation to the "copy Just files" command is
    Alt-D - delete just the files in the source subdirectory.  This is a
    "hard" delete.


    Show the File List . . .

      The command S, for "Show files", is the way to get a look at the
    file names in a subdirectory without leaving the tree environment.
    This command opens a window in the target panel showing the first 16
    files in the directory at the cursor in the source panel. You may
    continue to scroll up are down through the source panel as before, but
    now the file window changes as you do to show the contents of the
    current directory. You may do any other operations that involve only
    the source window, such as toggle the hide mode, make a new directory,
    delete a portion of the tree, even get a new drive. Two-panel
    operations such as copy and move are blocked in this mode by the
    presence of the "Show files" window.

      To see more than the first 16 files, arrow across with the left or
    right arrow to the file window and scroll up and down using the
    up/down arrows, PgUp/PgDn, Home and End, or use the mouse. View or
    edit the file with Enter or E, as in the main module.  Move between
    the tree and its file list with the right or left arrow keys. To
    return to the main module and perform an operation on a file in the
    file list, press Shift-Enter with the cursor on that filename. CF
    immediately returns to the main module, to the directory selected, and
    places the cursor on that file, ready for you to edit, view, execute,
    copy, etc. Leave the "Show files" mode with Esc or S from either
    panel.


    Find (Goto) a File . . .

      One of the most powerful functions in the tree arsenal is the
    filename finder.  There are lots of file-finding utilities around, but
    most of them tell you where a file is by giving you its path which you
    have to type into a DOS "change directory" command. Cumbersome.

      CMFiler offers a file finder which gives you an instant visual cue
    to the directory(ies) containing the file you are looking for. Simply
    press G (for "Goto file", just as in the main module). A data window
    opens at the bottom for you to type the name of the file to search on.

                                     3-73 
    It supports the "?" and "*" wildcards.  When you type the first
    letter, the "Show files" list opens in the opposite panel, and both
    the tree display and file list dynamically adjust to show current
    matches.  Keep typing until the matches have been narrowed down as far
    as you need to go, and press Enter or Esc.

      Assuming there is at least one file that fits that specification,
    note that several things have happened:

      o  At least one directory name in the tree is highlighted with a
    blinking "pip";

      o  The cursor has automatically repositioned to the topmost
    subdirectory containing a filename match; and

      o  All the file matches are listed in alphabetical order at the top
    of the window, and are also highlighted with the same blinking pip.

      If you have a long tree structure with subdirectories out of view
    off the bottom of the panel, you may not see all of the highlighted
    subdirectories containing file matches. If there are some
    subdirectories in the tree containing matches but which are off the
    screen above or below, a flashing "More" will appear at the top or
    bottom in the tree display. The cursor movement in the "Goto file"
    mode that lets you quickly position up or down to the next directory
    containing a file match is Shift-Up/Down Arrow. Use Shift-Up/Down
    Arrow to navigate to all the directories with a match. Otherwise
    navigation and services are the same as Show files mode.

      If there are matching files out of view above or below the file
    window, a flashing "More" will appear at the top or bottom of the file
    window frame. Quit "Goto file" mode with Esc, G or Alt-G.


    Goto a Directory . . .

      There is also a quick way to navigate to a subdirectory anywhere in
    the tree that, like the "Goto file" command, mimics a command in the
    main module. It is Alt-G, and it behaves similarly to G above, except
    that the file list is not opened in the other panel, and the tree
    display is changed dynamically to highlight the directory name matches
    and position on the topmost match. Type the name of the directory you
    are looking for, and when it has been singled out to your
    satisfaction, type Enter or Esc. Matches are also highlighted in the
    target tree, if any exist. Shift-Up/Down Arrow to the next match up or

                                     3-74 
    down; otherwise navigation and services are normal. Quit "Goto
    directory" mode with Esc, G or Alt-G.


    Find Text . . .

      Another powerful operation in CMFiler's tree services, to complement
    the filename finder, is a file text finder. Press Shift-F (Find text).
    Enter the text to be found (the search is case-insensitive), and then
    enter up to eight filenames describing the types of files you want
    included in the search, separated by + signs. The pipe symbol (|,
    ASCII 124) placed in front of a filename means "do not include this
    type".  So, for example, the entry:

    CMFILER.*+|*.COM+|*.OVY+*.TXT

    would result in a search of all files with the name CMFILER except
    CMFILER.COM and CMFILER.OVY, plus all files with the extension .TXT.

      CF's guess at this point on what part of the disk to search is that
    you wanted to look only in the selected portion of the tree - the
    structure at and below the cursor. Just to be sure, it asks for
    confirmation, and will allow you to extend the search to the whole
    disk if you wish.

      An option for the text search string is the character "*", which
    means "accept any text". This is useful, for example, if you wanted to
    see all the files of several different descriptions in the tree, but
    didn't want to do each at a time using the filename finder (which only
    supports one entry), and didn't care what they contained. Suppose you
    want to see all the executable files on your disk.  Just press Shift-
    F, enter * as the text, and *.COM+*.EXE+*.BAT as the names to search
    on.


    Viewing or Editing Files . . .

      The editor is accessible directly from the tree module. In either
    the Show files or Goto file mode, with the cursor in the file list
    window on a file name, press Enter to view or E to Edit the file.


    Deleting Files from the File List . . .

      Another feature in the Show files and Goto file modes that speeds

                                     3-75 
    disk cleanup is individual file deletion while the cursor is in the
    file list. The following commands are available, which mimic commands
    in the main file services module: Tag (or spacebar) toggles the tag on
    an individual file; tagAll clears or sets all tags; D soft Deletes
    file(s) to ~TRASH~ (unless the D key was redefined as hard delete in
    the main module); and Ctrl-D hard delete file(s) off the disk. This
    feature gives you a more macroscopic view of your disk while you are
    cleaning it up.


    Print a Hard Copy of the Tree or Found Files . . .

      Except in the Goto file and Find text modes, the command Alt-L (same
    syntax as in the main module) prints a copy of the tree structure to
    the parallel printer. In Goto file or Find text mode, however, Alt-L
    prints an alphabetical listing, organized by directory, of all the
    files identified by the preceding search. The date, time, disk volume
    and search parameters are all printed at the top of listing.


    Precaution Regarding ~TRASH~ . . .

      The directory ~TRASH~ is not permitted as the source for a copy or
    move operation. Since this directory contains deleted files, files in
    this directory may only be moved/copied from the main module, and only
    after confirmation.


    Help . . .

      A help facility like that in the main module may be summoned on-line
    at any time within the tree module with the command F1 or H.


    Leaving the Tree Functions . . .

      There are three ways to leave the tree display. Enter goes back to
    the main program display, with the path(s) for the left (and right, if
    open) panel(s) as selected on the respective trees. Esc goes back to
    the main program with the path(s) set as they were on entry. And
    finally, Alt-Q has the same convention as in the main program - quit
    CF altogether, with default drive and current directory as selected in
    the tree source panel.



                                     3-76 


    CMFiler Ver 6.0
    ~~~~~~~~~~~~~~~

    TUTORIAL - Chapter 4: Launching User Applications:
    ____________________ 

      So far, you have seen the features that make CF useful for file and
    directory  management - neatness of file display, flexibility in
    manipulating directories and files, transparency of operation, and
    even the ability to edit files without leaving the environment of CF.
    What really makes CF useful as an operating environment, though, is
    its ability to execute user applications with an economy of
    keystrokes.

      Running programs in the DOS environment is one of the more
    cumbersome and confusing aspects of DOS, and therefore, by its nature,
    this chapter is not terribly straightforward.  I will make it as
    simple as I know how.


    Terminology: User Application as "Child" Program . . .

      A "user application" is nothing more than a "child" program,
    executed by the DOS operating system under the command of the "parent"
    program, which stays resident and waits for the "child" program to
    finish. When you ran CF from the DOS system prompt, it was as a
    "child" of the DOS COMMAND.COM command processor. Some word processors
    permit you to "shell" to DOS, leaving the word processor program code
    resident in memory. What the word processor program is actually doing
    is running the DOS COMMAND.COM command processor as a child. From this
    DOS "shell", you could run yet another program as a child of
    COMMAND.COM. The more layers of child programs you have at any time,
    the more RAM you eat up for the currently running program with the
    resident program code of generations of parents waiting to resume
    control.


    Resident Footprint of CF . . .

      If you use your computer for more than just one task, therefore, you
    may find CF useful as an "inner shell" of your operating environment.
    You may let all 156 kb stay resident (the CF.COM kernel plus the

                                     4-77 
    CF.OVY overlay) while the child is running, or if you are memory-
    limited you may force CF to give back to DOS for allocation to the
    child all but 22 kb for the CF.COM kernel. This option is exercised by
    pressing K (for "Kernel"), and then pressing either L or S at the
    prompt (for "Large" or "Small"). "Small" is the initial default
    setting. This setting is updated to the current option any time the
    .CFG file is saved.

      There is a trade-off here. The large kernel option ties up more RAM
    that could be used by the child if it is a humongous program, but the
    return to the CF environment after it finishes is instantaneous. The
    small kernel option is good for freeing the maximum amount of RAM for
    the child, but there is a small delay in returning to CF while the
    resident kernel reloads the overlay. With today's hard drives, this
    delay is hardly noticeable. You be the judge.  The best thing is that
    you can decide before each launch, if you want, at the cost of only
    two keystrokes!


    "Shelling" to DOS . . .

      You may "shell" to DOS - that is, execute the DOS command processor
    - any time you want from the main screen just by pressing S. A prompt
    will tell you to return to CF when you are done by entering the DOS
    "exit" command. This is the most elemental child process in CF.


    Review of DOS Command Line Structure . . .

      Before talking about how CF launches applications, let's review how
    it's done from the DOS command processor. Say you are in the root of
    the C drive, and you want to start your PCWrite word processor, which
    is named ED.EXE and is in a directory called PCW off the root.
    Further, let's say you want ED.EXE to edit a file called USER.LST in a
    subdirectory of PCW called DATA.  At the C:\> prompt you could type:

        C:\>PCW\ED.EXE C:\PCW\DATA\USER.LST

      What this command tells DOS is: 1) leaving C as the default drive
    and the root \ as the current directory, go to directory \PCW, find
    and execute ED.EXE, and pass the string "C:\PCW\DATA\USER.LST" along
    to it as a "command tail", so it knows what you want it to do.  (The
    "command tail" is nothing more than everything in the DOS command line

                                     4-78 
    after the program specification (in this case PCW\ED.EXE).)

        C:\>PCW\ED.EXE C:\PCW\DATA\USER.LST
         |Cprog specD| |C command tail   D|

      If you have typed a lot of DOS command lines, you know how
    tedious they can become, particularly if there is more than one
    parameter in the command tail after the program specification. But you
    know that most of the time, the one or more parameters in the command
    tail are filenames or file specifications (filenames with full path
    specifications in front of them), and sometimes there are parameters
    the program will use to configure what it does - command line options.

      The ensuing discussion may be simpler if you think about each step
    in launching an application from CF as having to do with constructing
    either the program specification (the first argument in the command
    line, which tells DOS what program to run), or the command tail (which
    tells the program what to do once it's running).


    Launching a Program from the Main Screen . . .

      You can run any "executable" (.COM, .EXE, .BAT or .BTM) file from
    CF, as a child program, anytime you want, from the main screen. There
    are several ways to do it:


    Immediate Execution . . .

      This is the quickest way. Just position the cursor on an executable
    file entry on the screen and press Q (for "Quick execute"), or hit
    Enter twice, or the mouse left button twice with the arrow symbol
    highlighted on the mouse bar. This is ideal if the program is located
    in the same directory as any files it might look for, and it does not
    need a command tail to tell it what files to operate on or what
    optional switches to set.  This is just like typing in the name of the
    program at the DOS command line, once you are selected to the
    directory containing the program.


    Execution with Command Tail . . .

      However, as discussed above many programs expect data in the command

                                     4-79 
    tail, such as the name of a file to operate on, and CF has provided
    several ways of constructing the DOS command line.

      The simplest is this: First, position the cursor on the file you
    want to execute and press X (for "eXecute"). This constructs the
    "program specification" for the DOS command line. A prompt message
    will tell you this file is ready for execution, its path and name put
    into a special buffer in RAM, lined up and waiting for the launch
    command from you to commence execution as soon as you select a
    "default path" -- the current drive and directory the program will be
    looking on for its files. Select the default path in either panel,
    and, with that panel set as the source panel, press Alt-X. A data
    entry window opens at the bottom, in which you may enter a command
    tail for the program's use. Enter any file names or other command tail
    data your application expects, and hit Enter to run.


    Execution with a Single File Name in the Command Tail . . .

      The simplest case of the command tail is a single file name. CF
    offers a shorthand way of running a program with a one-filename
    argument as the command tail. Put the cursor on the name of the
    program file you want to run and press X as before. The program is
    ready to run. Now find the directory containing the file you want this
    program to operate on, put the cursor on the filename, and press Ctrl-
    X. It's off and running, editing (or whatever other operation it's
    doing on) that file. Two keystrokes. Ctrl-X means "add the name of the
    file at the cursor to the command tail and execute immediately."

      It is a good idea to have the program file and its supporting files
    in the same directory as the "operand" files when you use this method
    of execution, unless the program is smart enough to locate its
    supporting files in another directory in the DOS path environment.


    "Seeding" the Command Tail . . .

      In some cases, the above quick way to specify a one-filename command
    tail is not enough. You may find a need to put into the command tail
    the names of several files on the default path, or the full
    specifications of several files not on the default path, or both.

      In CF, there are shorthand ways of "seeding" the command tail window

                                     4-80 
    with file specifications and filenames. These may be used either
    before or after readying the program file for eXecution with X.

      o  To seed the command tail with the full specification (path
    plus name) of a file on which you want the program to operate, put the
    cursor on the filename and press Alt-C (the C in this case is a
    mnemonic for "build Command tail").  The information window at the
    bottom will show you the command tail in its current state. This
    procedure may be repeated to build a command tail as long as there is
    room in the command tail buffer. The command tail is limited by DOS to
    125 characters.

      o  Just before pressing Alt-X to show the command tail window
    for final pre-launch editing, you may normal-Tag or Alt-Tag one of
    more files in the default path. These file names, without paths
    specifications, will all appear in the command tail in the order they
    were Alt-Tagged or in the order listed on the screen if normal-Tagged.

      Now press Alt-X to open the data window with the seeded command
    tail.  Once you have edited the command tail the way you want it, hit
    Enter, and the program is off and running. After the launched program
    finishes and returns control to CF, its file specification stays in
    the "execute queue" until you ready another executable file with X, so
    you may perform multiple runs of the same program just by seeding the
    command tail again as above, and pressing Alt-X again. As a further
    time-saving feature, you may recall the previous command tail by
    pressing the up arrow or PgUp while in the command tail edit window at
    the bottom of the screen.

      Once you get used to the above conventions, you will find that in
    many situations you don't need to edit the seeded command tail, and
    the key sequence Alt-X-Enter seems cumbersome. For those cases I have
    included the option Shift-X. Use it after you have seeded the command
    tail using Alt-C and/or T/Alt-T, and avoid the extra Enter stroke. Its
    effect is to commence execution of the program with the as-seeded
    command tail, with no edit.


    Changing the Command Tail "Seed" Delimiter . . .

      You probably noticed that there was always a space between multiple
    entries in the seeded command tails created using the Alt-C and T/Alt-
    T seeding operators by the procedures above. But what if your

                                     4-81 
    application looks for commas as the field delimiters for data in the
    command tail, instead of blanks? Just press Ctrl-Enter from the main
    screen to pick from three choices for default command tail field
    delimiters - space, comma, and semicolon.


    Customizing Your User Application File Specifications . . .

      Got a few pet applications that you run more than most?  Save the
    aggravation of hunting them down and pressing Q or one of the X key
    sequences each time you run them. You can call them with just a touch
    of one of the function keys F1 through F9! To set this up, press
    Shift-F10. You will see a data entry screen that lets you specify up
    to nine executable file names in the entries "F1 = ", "F2 = ", etc.,
    and an optional default command line parameters entry for each,
    labelled "F1 Cmd Line Parms  = ", etc. Further down the page, you will
    see places for similar entries for compression and extraction
    utilities, and a bottom entry labelled "Password = ". (You may use
    this last entry to specify a password which must be entered to get
    back to the main screen from the screen-saver mode - a handy way of
    blocking undesired access to your files.)

      In any "Fn = " data window, just type in the filename, including
    extension, of an executable file you use frequently. Optionally, in
    the "Fn Cmd Line Parms =" line, type any frequently used command line
    parameters that you would like to show up as a default entry in the
    command tail construction. You do not need to include the path in the
    file specification if the file is on one of the paths listed in the
    DOS path environment (via a previous "path" command from the DOS
    system level) - CF will hunt it down and update its internal record of
    where that file is, so it doesn't have to hunt the next time you call
    it. However, if you do include a path specification, be sure it is
    complete (e.g., "C:\LETTERS\ED.EXE").

      Once you have made all the entries you wish, press Ctrl-Enter to
    record the new entries and leave the F-key data entry screen. (Esc
    will abort the edit.) CF will then find and update the CF.CFG
    configuration data file to add the customized F-key information.

      There are three ways to now use these F-key options:

      o  Press the F-key corresponding to an application you specified
    with the Shift-F10 operation. (This may be done from either the main

                                     4-82 
    screen or the F-key information screen shown by pressing just F10.)
    You will get the message at the bottom that that  file is readied for
    execution, just as though you had hunted it down, put the cursor on
    it, and pressed X. Seed the command tail and set up the default path
    desired in the source panel as before, and press Alt-X to get the
    command tail entry window, also as before. This time, though, if you
    had specified  default command line parameters for this F-key, they
    would appear in the command tail window, in front of any  seeded
    entries. Edit the command tail if desired, and press Enter to start
    execution.

      o  A nearly equivalent method is to seed the command tail
    first, set-up the default path, and press Alt-F-Key to ready the
    program and show the command tail for editing.

      o  If you know the command tail will be the way you want it,
    and you are bugged by the extra Enter keystroke to accept the seeded
    command tail, seed the command tail with Alt-C if you want, set up the
    source panel to the default directory, Tag/Alt-Tag any files from this
    directory you want to appear in the command tail, and hit Shift-F-key.
    The program will run immediately with the seeded command tail, with
    the default F-key command line parameters between the Alt-C seeds and
    the T/Alt-T seeds.

      o  If you are just operating on one file, put the cursor on the
    name of that file and press a Ctrl-F-key for instant one-key
    execution. In this case, the F-key default command tail offering will
    appear in the command tail preceding the name of the file the cursor
    was on.  (This is the feature I use most.)

      There is, in fact, a rule as to where the F-key default command line
    parameters get placed during the construction of the command tail.
    They are inserted at the point that the F-key itself (or F-key
    modified by Shift- or Ctrl-) is pressed. The file names Tagged/Alt-
    Tagged in the current directory always appear last.  In an exotic
    case, for example, you could: (1) Alt-C a file spec, (2) press F1, (3)
    Alt-T a file name, and press Shift-X to execute with no edit of the
    command tail. The program assigned to the F1 key would run, with a
    command tail consisting of the file spec Alt-C'd in (1), plus the F1
    default command line parameters, plus the file name Alt-T'd in (3),
    all separated by the command tail delimiter character last selected
    from the main screen with Ctrl-Enter.


                                     4-83 
      The business above may seem cumbersome, but if you spend a lot of
    time typing the same old things in at the DOS command processor
    prompt, you will find it is worth the investment of time to figure out
    and use.


    A Further Execution Option - Instant ZIPping/UNZIPping. . .

      Phil Katz' PKZIP.EXE and PKUNZIP.EXE (c) have become  dominant file
    compression and decompression programs in the shareware market, so
    much so that I wrote a special explicit feature to employ them with
    just a few keystrokes. The commands which invoke these programs from
    the main menu are Z and U, respectively. CF can find these programs as
    long as you have not renamed them from PKZIP.EXE and PKUNZIP.EXE, and
    they are on one of the paths that you specified in a DOS path
    environment. If for some reason you want to rename them or put them on
    a path not listed in the DOS path environment, you may specify them
    explicitly via the Shift-F10 data screen.


    ZIP a File . . .

      1.  Decide where you want the compressed file to go, and select that
    path in one of the panels. If you are updating an existing .ZIP file,
    Tag or Alt-Tag it while you are there.

      2.  Now switch to the other panel, and select the path to the files
    you want to compress. Tag them, or Alt-Tag them in the order in which
    you want PKZIP to compress them if order is important to you. If none
    are tagged, CF assumes you want them all to be ZIPped, and puts the
    command line argument *.* in place of a file list.

      3.  Now then press Z.  CF will show you a command tail at the bottom
    of the screen, in the PKZIP syntax (options first, then .ZIP file,
    then list of files to be ZIPped.)  Since the files to be ZIPped are in
    the current source path as set up by CF when you Alt-Tagged them, no
    explicit path is included for them. You may edit the command tail.
    Once you are satisfied with the command tail, press Enter.

      [In step 2 above, if you do not Tag or Alt-Tag any files for
    compression in the source path, CF assumes you want to ZIP them all,
    and places "*.*" in the file list argument of the PKZIP command tail.]


                                     4-84 
      [In step 1 above, if you do not Tag or Alt-Tag a target .ZIP file,
    CF assigns a default compressed  file name for PKZIP to create, which
    is either:

        (1) the first Tagged or Alt-Tagged file in the source path from step
    2, or;

        (2) if no source files are Tagged or Alt-Tagged in step 2, the name
    of the file the cursor is on.  (PKZIP attaches the default .ZIP
    extension).]

      [In step 3 above, if you know you don't have to edit the command
    tail, you can bypass the extra Enter keystroke to enter the command
    tail by pressing Shift-Z instead of Z.]


    Now UNZIP a File . . .

      1.  Set up one panel with the target path for the UNZIPped files.

      2.  Switch to the other panel, select the path with the .ZIP file to
    be UNZIPped, and put the cursor on it.

      3.  Press U, edit the command tail if necessary, and press Enter. As
    with ZIPping above, if you know you don't have to edit the command
    tail, press Shift-U instead.

      The PKZIP/UNZIP utilities are available from most bulletin boards,
    or may be had for a $47 registration fee from PKWARE, Inc., 9025 N.
    Deerwood Drive, Brown Deer, WI 53223   (BBS 414-354-8670).


    Tailoring CF for custom ZIP/UNZIP spec . . .

      If for some reason you want to specify an explicit path to
    PKZIP/PKUNZIP, you may include an explicit file specification using
    the Shift-F10 feature. Just follow the procedure and precautions under
    "Customizing Your Executable File Specifications" above, and operate
    on the " Compress = " and "Extract = " fields.

      If you are familiar with Phil Katz' option switch syntax and find
    yourself using one or more switches most of the time, you may enter
    standard options in the indicated fields ("Compress Options =" ,

                                     4-85 
    "Extract Options = ") while you are at it.

      Once you are comfortable using the ZIP/UNZIP feature of CF, and you
    find you are not having to edit the ZIP/UNZIP command tail most times,
    you may start getting bugged about having to always hit Enter when you
    see the command tail displayed. There is an alternative! Just like
    with the tailored F-keys, hit Shift-Z/U for instant ZIPping/UNZIPping.


    Using Other Compression Utilities

      As it happens, some other compression utilities use the same command
    line construction as the PKWare utilities. Specifically, the ARJ
    utility by Jung and the LHA utility by Yoshizaki use command lines of
    the form:

          archiver options archivefile file1[, file2[ , . . . ] ]

    where archiver is program spec, options is the collection of commands
    and switches to accomplish the desired operation, archivefile is the
    spec to the file which will contain the compressed data, and file1,
    file2, etc., are the specs of files to be compressed.

      The CF ZIP/UNZIP facility may be used to accomplish compression and
    extraction with either ARJ or LHA, and perhaps others as well. Here is
    how to do it with ARJ as an example:

      o  Make sure the file ARJ.EXE is on one of the paths specified in
    your DOS path environment, so that CF can find it.

      o  In CF, press Shift-F10 to bring up the user-defined applications
    screen for editing, and down-arrow to the line "Compress = ". Type in
    ARJ.EXE. Do the same for the line "Extract = ", since for this
    utility, unlike the PKWare set, the same program does both tasks.

      o  For the most rudimentary compression and extraction options with
    ARJ, the only parameter required for the "Compress Options = " line is
    the letter a, and for the "Extract Options = " line, the letter x.
    These parameters tell ARJ whether to add (a) or extract (x). Type them
    in, and press Ctrl-Enter to save the new data.

      Compressing and extracting now work just the same as previously
    described for the PKWare utilities. To compress, optionally Tag or

                                     4-86 
    Alt-Tag the archive file in one panel, go to the other panel, find the
    directory with the files to be compressed  (the same path is
    permitted) and Tag or Alt-Tag them, edit the command tail if necessary
    and press Enter. To extract, set up one panel with the destination
    path for the extracted file (may be the same as the source), arrow
    across to the other panel, put the cursor on the file to be extracted
    and press U. Edit the command tail and press Enter.


    Specifying a Password for Access from Screen Saver . . .

      At the very bottom of the Shift-F10 screen you see a data line for
    password.  You may enter any combination of alphanumeric characters up
    to six letters. This password must be given to restore access to CF
    from screen saver mode. The password routine is case insensitive.





























                                     4-87 





    REFERENCE -- Description by Operation:
    _____________________________________


    DISK/DIRECTORY OPERATIONS:


    N - New drive - Selects a new disk drive for the source panel.  N or
              Shift-R must be used to announce disk media changes.  In
              right-hand panel,  Enter after N closes the panel.

    Ctrl-W - sWap panels

    Shift-R - Relist panel from disk after media change.

    Enter - display subdirectory in source panel -  With the cursor on a
              subdirectory or the "<Parent>" line, changes to that
              subdirectory or parent in the source panel.

    Shift-Enter - display subdirectory in target panel - Displays the
              subdirectory at the cursor in the target panel, and changes
              to it.

    P - display Parent directory in source panel - Quick way of returning
              to the parent directory with the cursor positioned anywhere
              in the listing of a subdirectory.

    Shift-P - display source directory's Parent directory in target panel
              -Quick way of showing the parent of the current directory in
              the target panel and switching to it.

    \ - display root directory in source panel.

    Shift-\ - display root directory of source disk in target panel.

    Shift-* - display source directory in target panel.

    Alt-G, followed by a typed string - move cursor to ("Go to...") the
              directory described by that string.

    J - Jump to a new directory


                                        OpRef-89 
    Alt-1 to Alt-9 - jump to a predefined "alias" path

    Alt-A - define an "Alias" path

    M  - Make subdirectory (Mkdir) - With the cursor anywhere in the
              listing, pressing M opens a data window at the bottom of the
              screen for entering the name of a new subdirectory you want
              to make. CF checks the entry for validity; if invalid, the
              window simply clears and waits for another entry. A valid
              entry appears in the proper alphabetic position on the
              screen.

    D - Delete - With the cursor on a subdirectory and no files tagged,
              removes that subdirectory if it is empty ("void"). If the
              cursor is on a subdirectory and files are tagged, deletes
              the files.

    Alt-L -  print directory Listing - Prints a listing of the current
              directory if cursor in directory panel, and includes notes
              if cursor in one of the Notes modes (Shift-N or Ctrl-N).

    Shift-T  - transfer control to the Tree module.  Displays the disk(s)
              selected in the panels in their directory tree structures,
              and puts the cursor(s) on the structure(s) pointed to by the
              current path(s).

    Shift-M - forMat - formats a floppy diskette in drive A or B.

    Shift-K - disKopy - copies a floppy diskette in drive A or B.

    Shift-A - scAn diskette in drive A or B


    FILE OPERATIONS:

    G, followed by a typed string - move cursor to ("Go to...") file
              described by that string.

    Shift-Lf/Rt Arr - Jump across to identical file name in opposite panel
              when highlighted in comparison mode.

    T or Space - Tag file - Applies or clears a "normal" tag to the file
              at the cursor (i.e., toggles the state of the tag). Window
              at bottom of screen shows number of files tagged.

    Alt-T or Alt-Space - Alternate-Tag file - Applies or clears an
              "alternate" (sometimes referred to as "append" because of

                                        OpRef-90 
              its principal function) tag to a file.  "Alt-Tags" are
              numbered (1-9, a-z) to show the order of application, for
              the order-critical operation of file concatenation,
              discussed below.

    A - Tag All files - Applies or clears normal tags to all files.

    Ctrl-A - toggle the state of All normal tags.

    Alt-M/E - tag all files with same naMe/Extension as file at cursor;
              does not reset tags already present.

    Alt-N - tag all files Newer than file at cursor.

    Alt-O - tag all files Older than file at cursor.

    Alt-D - tag all files same Date as file at cursor.

    Alt-P - tag same files in oPposite panel as tagged in source.

    (NOTE ON TAGS: Tags are aids for quickly performing multiple file
              operations, but are "volatile", and generally go away with
              any operation that changes or updates a panel. Tags are not
              applied in any way to the magnetic media.)

    C - Copy - Copies tagged files from source to target, or the one file
              at the cursor if none tagged. Does not overwrite identical
              files, asks for verification before overwriting newer files
              or read-only or system files, and protects against some
              cases of overwriting good files with files created in error.
              With files "Alt-Tagged", creates "concatenated" file in
              target with same name as first "Alt-Tagged" file, but
              extension ".APF", and permits editing file name. If
              insufficient room on target  path, does not perform
              operation, and signals the user.

    Shift-C - move - Moves files from one subdirectory to another on the
              same disk. If conditions are not satisfied for moving (i.e.,
              same disk, different directories), defaults to copy and hard
              delete.

    B - Back up - Copies tagged files (or file at cursor if none tagged)
              from source to source, assigning to each new file an
              extension consisting of the first two letters of the
              original extension (! in place of blanks) plus the tilde "~"
              character. This results in backup files with unique names
              unless two files differ only in the third letter of the

                                        OpRef-91 
              extension..

    Alt-S - Split a file in source panel into smaller files to target
              panel

    D - Delete - Deletes all tagged files on source path. If no files are
              tagged, deletes only the file at the cursor. Treats normal
              tags and "Alt-Tags" the same. Requests confirmation before
              file destruction. On hard disks, this operation is a "soft"
              delete, in which files are redated to current date/time and
              moved to directory ~TRASH~ (created by CF). Thus good files
              inadvertently deleted are readily recoverable. On floppy
              drives, this operation is a "hard" delete, using the DOS
              delete file function. "Undeleting" is not available in the
              CF environment; other utilities contain "undelete"
              facilities, but these are not always reliable.

    Ctrl-D - "hard" Delete - Uses DOS delete function regardless of disk
              type.

    Shift-F - Freshen files - "Freshens" the files in the source panel
              from the opposite panel. Useful in updating backup disks. If
              no files tagged in source, tags all in source, then tags in
              opposite all newer versions of same-named tagged source
              files and copies them to source. If any files were tagged in
              source, only these files are looked for in the opposite
              panel, vice all files in source.

    Shift-i - fill floppy disks from source. Fills tagged files (or all
              files if none tagged) to floppy disks in drive A or B. Disks
              may be unformatted.

    R - Rename file or directory - Prints name of file at cursor, and
              opens window below it for new name, offering the current
              name as the "seed". Type/edit new name and press Enter. Or
              first arrow up and edit the current name field, for example
              to use the "*" wildcard. One use of "*" is permitted (either
              the name or extension). If used in the current name field,
              it must be followed in the new name field.  Names are
              checked for legality before renaming is attempted.

    Alt-R - copy with Rename -  Copies the one file at the cursor in the
              source panel to the target, after entry of new name in data
              window.

    Enter - display file - With the cursor on a file, views that file.


                                        OpRef-92 
    F - make new File - With the cursor anywhere in the listing, pressing
              F opens a data window at the bottom of the screen for
              entering the name of a new file to be created. Entry is
              checked for validity. If valid, control is transferred to
              the line editor for file creation and editing.

    0, 1, 2, 3, 4 - toggle file attribute - Pressing the number 0 clears
              all attributes for any files tagged, or for the file at the
              cursor if none are tagged.  1 toggles the Read-only
              attribute, 2 the Hidden attribute, 3 the System attribute,
              and 4 the Archive attribute.  (Only the number keys at the
              top of the keyboard are active for setting file attributes.
              The numbers on the keypad are mapped to their corresponding
              cursor movement functions, even when the NUM LOCK is set.
              (The command syntax can be remembered as "1234=-RHSA".)

    L - print fiLe - Put the file at the cursor into the queue for
              printing as a background process while in CF or any child of
              CF. (Printing is suspended during any DOS functions, such as
              disk read/write.) Up to five files may be thus queued.
              Shift-L displays the print queue. Ctrl-L clears the print
              queue. Ctrl-F while files are printing from the print queue
              sets an internal flag which causes a form feed to the
              printer at the end of the file most recently added to the
              print queue if the file itself does not have a form feed as
              its last character.
    (At times when the printer is not in use by CF, Ctrl-F sends a form
              feed immediately.)

    V - Volume label - Permits entry of a new  volume label for the disk.

    Shift-O - set user Option switches - Permits the resetting of twelve
              user-specified option switches .

    Alt-F - change File date/time stamp.


    FILE EDITING/VIEWING:

    Enter -view a file - When the cursor is placed on a file, Enter lets
              you view the file on the screen.  In this mode, the lower
              right screen display gives information about the byte the
              cursor is on. Alt-H displays help screen.  Alt-Plus and Alt-
              Minus toggle the bottom information display and the color-
              enhanced display of record delimiters (CR, LF, CR+LF,
              LF+CR).  Esc or Enter exits View mode. If the file is a
              compressed format, a list of filenames will first be shown.

                                        OpRef-93 
    E - Edit a file -  When the cursor is placed on a file as above, E
              lets you edit the file.  Cursor positioning is the same.
              Additional control keys are Bksp, Delete Tab/Shift-Tab;
              Insert (toggles mode between Insert and Typeover); Enter
              (inserts the record delimiter previously selected with Ctrl-
              Enter; default is CR+LF). Ctrl-Y deletes line; Ctrl-D
              deletes to end of line.  F1 or Alt-H provides a one-page
              help screen. Block operations are performed with Alt- {M
              (Mark), Y (Yank), V (moVe), C (Copy), O (Output to file),
              and P (Print)}. Ctrl-F form-feeds the printer. Enter any
              ASCII code through Alt-Keypad numerical combinations, except
              NULL, which is entered by Alt-N.



    TREE OPERATIONS:

    Cursor Movement - Up/Down Arrow moves one screen line at a time.
              PgUp/PgDn moves several lines. Home/End moves to very
              top/bottom of tree. Shift-Up/Down Arrow moves up/down one
              directory at same level (to next subdirectory up or down in
              parent directory), or, in "Goto file", "Goto  directory" and
              "Find text" modes, to next directory with a match to the
              find string.  P moves up to parent. Left/Right Arrow changes
              panels, making the other panel the source. Shift-Left/Right
              Arrow moves across to the path match in compare mode.

    N - New drive - Allows changing drives, as in main module.

    Ctrl-W - sWap panels

    Shift-R - Relist panel from disk after media change.

    Ctrl-O - edit tree image Options list

    M - Make new directory under path at cursor.

    2 - toggle directory's hide attribute.

    Alt-L - print a hard copy of the tree Listing shown on the source
              panel side of the screen in straight tree mode. Prints a
              listing of all the file matches while in Find file or Find
              text mode.

    D - Delete structure - deletes the entire structure highlighted in the
              cursor block in the source panel.  This is a "soft" delete
              on hard disks, in which the deleted files are collected in

                                        OpRef-94 
              ~TRASH~
    Ctrl-D - "hard" Delete structure.  Uses the DOS file delete function
              regardless of disk type.

    Alt-D - Delete just the file in the source directory.  This is a
              "hard" delete.

    C - Copy structure under target path - Replicates the structure in the
              source panel's cursor block under the directory selected in
              the target panel.

    Shift-C - move structure under target path - If both panels selected
              to the same disk, moves the structure in the source panel's
              cursor block under the directory selected in the target
              panel. If different disks selected, defaults to copy
              followed by hard delete.

    Alt-C - Copy just the directory array under target directory, no files
              copied.

    I - copy structure Into target path - Similar to copy, but does not
              replicate the highest level subdirectory in the source
              block, but rather puts its files directly into (vice under)
              the target subdirectory, and replicates its substructure
              under the target path.

    Shift-I - move structure Into target path - Moves the source structure
              into (vice under) the target subdirectory, as with I.

    J - copy Just the files in source directory to target directory.

    Shift-J - move Just the files from the source subdirectory to target.

    S - Show files in opposite panel. Arrow across to file list if
              desired, then up/down with normal cursor moves. In file
              list, Shift-Enter returns to main module, to directory and
              file selected. Arrow back to tree. Esc or S cancels "Show
              files". From file list, Enter or E views or edits a file.

    G - Goto file - Type filename for search.  Wildcards are supported.
              Positions to first match; directories with matches and
              matching files are highlighted. Shift-Up/Down Arrow seeks
              next directory up or down with match.  Arrow across to file
              list as in "Show files", move up or down, arrow back to
              tree, or Shift-Enter to file in main module for file
              operation.  Esc, G or Alt-G to cancel "Goto file" mode. From
              file list, Enter or E to view or edit a file.

                                        OpRef-95 
    Alt-G - Goto directory - Type directory name for search. Navigation
              within tree and exit are same as G.
    Shift-F - Find text -  Specify text to search for, and up to eight
              filenames with wildcards. Directories and files with matches
              are highlighted.

    Ctrl-H - toggle the Hide switch and redisplay trees. With switch on
              (=Y), directories with hidden attribute are not displayed.
              With switch off (=N), hidden directories are displayed, and
              are denoted with a highlighted "*H"

    Ctrl-C - toggle the Compare switch.  With switch on (=Y), target disk
              is searched for any path that matches that currently
              selected in source, and, if one is found, adjusts screen if
              needed so it is visible, and highlights it in high-intensity
              yellow.

    Enter - From tree structure, return to main module with currently
              selected path(s), and cursor positioned to top of listing.
              From file list in "Show files" or "Goto file" mode, views
              file. Shift-Enter from file list returns to main module with
              cursor on file.

    Esc - Return to main module with path(s) as set on entry.

    Alt-Q - Quit CF altogether; default path as selected in source.


    APPLICATION LAUNCHING (CHILD PROCESSES):

    S - Shell to DOS -  Sets up a DOS shell and do any DOS operations.
              Exit DOS with the "exit" command when finished. CF then
              looks for and tries to reestablish the current directories
              as they appeared in the panels at shell execution.

    Q - Quick execute - Immediately executes file at cursor, if extension
              is .COM, .EXE or .BAT. Paths are as selected, ie, default
              drive/current subdirectory is same as the executable file is
              in, and the current subdirectory for any other drive is as
              last set in the panels. Also Enter-Enter

    X - prepare to eXecute with command line - Readies file at cursor for
              execution. File remains ready awaiting execution, initiated
              by one of the followup key combinations Alt-X, Shift-X or
              Ctrl-X after paths are set and command tail seeded as
              desired.


                                        OpRef-96 
    Alt-X - edit command line and initiate eXecution - Opens a window for
              editing the command tail containing any "seeds" placed by
              Alt-C and/or T or Alt-T. Execution of the readied
              application starts by pressing Enter. The previously used
              command tail may be summoned by pressing the Up Arrow or
              PgUp.

    Shift-X - initiate eXecution, no editing of command tail. Same as Alt-
              X, except file executes with command tail as-seeded, with no
              editing. Tagged files in active panel are added to command
              tail.

    Ctrl-X - initiate eXecution, no editing of command tail, and only the
              file name at cursor is added as last entry in seeded command
              line. Tagged files in active panel are ignored.

    Alt-C - seed Command tail with file specification. Adds the full
              specification, including path, of the file at the cursor to
              the command tail buffer, and shows status of command tail
              being built. Command tail may be added to using this feature
              before or after executable file is readied with X.

    T or Alt-T - Tag the file names in order for addition to the command
              tail. Tagged files are added to the seeded command tail as
              the final step after Alt-X or Shift-X is pressed.

    Ctrl-Enter - select delimiter for use by the "seeding" operations Alt-
              C and T or Alt-T between entries of command tail. Choices
              are blank, comma, semicolon.

    Shift-F10 - specify a user-defined executable file specification and
              optional default command line offering for up to 9
              applications, assigned to F1-F9.  Also specify
              Compress/Extract command line default parameters, and an
              access password. Ctrl-Enter to record selections in current
              copy of configuration file, or Esc to cancel edit. Ctrl-
              Enter also saves the state of all the configurable user-
              option switches.

    F10 - Display current entries F1-F9, Compress/Extract options,
              password. The commands F1-F9, Shift-F1-F9, and Ctrl-F1-F9
              may all be issued from this display.

    F1-F9 - ready a user-defined executable file spec -  Effect is same as
              locating the file with the cursor and hitting X. F-key
              default command line parameters are added to command tail,
              which may already have seeded entries.

                                        OpRef-97 
    Alt-F1-F9 -- Same effect as F1-F9 followed by Alt-X.

    Shift-F1-F9 - ready user-defined executable, add its default command
              line parameters to the command tail being built, add any
              Tagged files in current directory, and execute immediately.
              Same effect as F1-F9 followed by Alt-X, Enter.

    Ctrl-F1-F9 - ready user-defined executable file, add its default
              command line parameters to the command tail being built, add
              only the file name under the cursor, and execute
              immediately.  Tagged files in active panel are not added to
              the command tail before execution.

    Z - Compression -  Be sure PKZIP.EXE or other compression utility is
              on one of the paths in your DOS path command, or specify the
              complete path spec to it using Shift-F10.

    To ZIP, select in one panel a target path for the compressed .ZIP
              file, and optionally Tag or Alt-Tag an existing .ZIP file.
              Then switch to the other panel and select a source path,
              optionally Tag or Alt-Tag files to compress in order of
              desired appearance on command line, press Z, edit command
              line if necessary, and press Enter. To avoid this extra
              Enter keystroke, hit Shift-Z instead.

    U - Extraction - As above, be sure PKUNZIP.EXE or other extraction
              utility is on a path set in your DOS path command, or
              specify the complete path spec to it with Shift-F10.

    To UNZIP, select in one panel a target path for the extracted files,
              switch panels, select the directory with the .ZIP file to be
              extracted, place the cursor on it, and press U. Edit command
              line, if necessary, and press Enter. Alternatively, for
              instant UNZIPping, use Shift-U.


    DISPLAY ENHANCEMENT FEATURES:

    "+" and "-" - Shift the file size display to expanded and contracted
              mode.  Expanded mode shows explicit size, but uses the file
              attribute field.  Contracted mode is in KB or MB.

    H - Help - Help facility.

    Ctrl-N - edit Notes - Displays the directory notepad in the opposite
              panel for viewing/entering/editing narrative comments about
              files. Pulls in Win95 long filenames as notes if not alrealy

                                        OpRef-98 
              in DESCRIPT.ION. All the editing and cursor control key
              combinations work.  Notes follow the files around when
              copied. CF updates the file on exit (Ctrl-Enter or Esc).
              Files may be viewed/edited from the Notes screen with Alt-
              V/Alt-E, tagged with Ctrl-T or Alt-T for subsequent mass
              action after exit from edit Notes.

    Shift-N - view Notes - Displays Notes in opposite panel, but leaves
              full access to all directory and file services in the source
              panel, including commands like Copy which operate to the
              target path. Also pulls in Win95 long filenames as notes.

    Ctrl-O - select file Ordering mode - Permits selection of one of nine
              modes of file ordering.  Highlight shows current selection.

    Ctrl-H - toggle Hide switch - Changes the state of the hide-enable
              switch, shown at the top of the screen. With the switch on
              ("Y" for Yes), CF does not display files whose hide
              attribute is set.  With the switch off ("N" for No), all
              files are shown.

    Ctrl-C - toggle Compare switch -- Changes the state of the compare-
              enable switch. In compare mode ("Y"), any file in the target
              path whose name is the same as the file in the source path
              under the cursor will be shown and highlighted.

    Ctrl-M - Mask - Allows editing the Mask template for the panel, whose
              initial value is *.* Tab moves cursor to the extension
              field, Shift-Tab to the name field. Press Enter to enter the
              template modification and redisplay the panel.

    5 - toggle date/time display on main screen.

    Ctrl-P - color Palette selection - allows user to change color scheme
              to any of four sets on color monitors. A palette may be
              edited by pressing E.

    Ctrl-E - alphabetic casE selection - Offers a choice of four case
              conventions: dirs and files all caps; dirs in caps, files in
              lower; all in lower, and "modified-Tauck", where the first
              letter of the file and each letter following a non-
              alphabetic character is capitalized.






                                        OpRef-99 
    MISCELLANEOUS:

    Shift-O - set up user Options.

    Alt-I - specify filename for antivirus software Integrity data files.
              CF protects these files during copy operations. Default is
              Integrity Master's ZZ##.ID.

    Alt-Q or Esc-other key - Quit CF - Terminate to DOS. Esc-other key
              reestablishes the default drive/directory CF encountered on
              execution; Alt-Q leaves as currently set in source panel.

    Password Protection - Bottom entry in Shift-F10 screen is a password
              entry window. If a password is entered, it must be given to
              return to main screen from the screen-saver mode.

    Ctrl-S - forces main screen into Screen-saver mode immediately, rather
              than waiting 1-1/2 minutes. Good for instantly invoking
              password protection.

    Shift-S - Save display options. Saves current values of all user
              configuration options, such as Hide and Compare switches,
              file Ordering scheme, resident Kernel size selection and
              date/time display on/off.

    Ctrl-F - Form feed parallel printer at LPT1.

    Ctrl-2 - Form feed parallel printer at LPT2.




















                                       OpRef-100 
