home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-03-03 | 171.0 KB | 3,764 lines |
-
-
-
-
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
-
-
-
- SHAREWARE DISK/FILE MANAGER
-
-
- Copyright 1992 Charles F. Martin
-
- President, NoVaSoft - Member ASP
-
- 3239 Riverview Dr.
- Triangle, VA, USA 22172-1421
-
- Phone (703) 221-1471/1833 CompuServe 72130,1400
- Internet 72130.1400@compuserve.com
-
-
- _______
- ____|__ | (R)
- --| | |-------------------
- | ____|__ | Association of
- | | |_| Shareware
- |__| o | Professionals
- -----| | |---------------------
- |___|___| MEMBER
-
-
-
-
- Assembled using Wolfware Assembler WASM Ver 2.22x,
- (c) 1985-1991 Eric Tauck, Wolfware
-
- Manual developed using PC-Write Ver 3.04,
- (c) 1983-90 Bob Wallace, Quicksoft
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- TABLES OF CONTENTS:
- _____
-
- INDEX TO TOPICS AND OPERATIONS:
- _____
-
- OVERVIEW:
-
- Program Logical and Physical Organization. . . Ov-3
- Security Features. . .
-
- Monitor Options. . . Ov-4
- Precautions and Limitations. . .
-
- Assumption about User's Familiarity with DOS. . . Ov-5
-
- Additional Note for Windows Users. . . Ov-6
- Assertion. . .
- Special Thanks. . .
- _____
-
- TUTORIAL -- Chapter 1: File Handling:
-
- GETTING STARTED, or the "Kernel" and the "Overlay". . . 1-1
-
- Rename CM_FILER to Spare My Fingers. . . 1-2
-
- The Screen. . . 1-3
- The Help Area. . .
-
- The Modifier Keys. . . 1-4
- Two Panels. . .
-
- Cursor Movement. . . 1-5
- Switching Drives or Disks. . .
- Subdirectories. . .
-
- Copy Some Files, then Do It with Tags. . . 1-6
-
- Tagging, Backing Up. . . 1-7
- Moving Files. . .
-
- Deleting a File. . . 1-8
-
- The Tagging Convention Expounded on. . . 1-9
- Renaming a File OR a Directory. . .
-
- Some Additional Tagging Options. . . 1-10
-
-
-
- The File Freshener. . . 1-11
- Different Ways to Show the Files. . .
- The Data Entry Window. . . 1-12
-
- Disk Space Occupied versus Actual File Size. . . 1-13
- File Attributes. . .
-
- Changing the Date/Time Stamp of a File. . . 1-14
- "<Alt>Tagging" and Appending. . .
- Printing a File. . .
-
- Making Some Notes About Your Files. . . 1-15
- Printing a Directory Listing. . .
- Comparison Mode. . .
-
- Hide Mode. . . 1-16
- Mask Template. . .
- Displaying Date and Time. . .
- Changing or Adding a Volume Label. . .
-
- Some Safeguards. . . 1-17
- Help. . .
- Date/Time Display. . .
- Quitting CF. . .
- _____
-
- TUTORIAL -- Chapter 2: File Viewing and Editing:
-
- Viewing a File. . . 2-1
- Record Delimiters. . .
- Information Area. . .
- Cursor Movement. . .
-
- Find a String. . . 2-2
-
- Leading and Trailing Blanks in the Data Window. . . 2-3
- Editing a File. . .
- Edit Mode Limitations. . .
- Overstrike vs Push Right. . .
- Editing a Line. . .
-
- More on Record Delimiters. . . 2-4
- <Alt> Keypad and <Alt>N. . .
- Block Operations. . .or the REAL Power of CF's Editor. . .
- Marking a Block, and the Copy Buffer. . .
-
- Delete, Copy, Move. . . 2-5
- Restoring from Inadvertent Block Deletion. . .
- Sending a Block of Text to the Line Printer. . .
- . . .or to a File. . .
-
- Replace and Global replace. . . 2-6
- Leaving Edit Mode. . .
- Backup File Protection. . .
- Creating a New File. . .
- Help. . .
-
- CM_FILER -- Table of Contents ii
- _____
-
- TUTORIAL -- Chapter 3: The TREE Functions:
-
- The Display. . . 3-1
-
- Copying structures. . . 3-2
-
- The "Copy Into" Function. . . 3-4
-
- Moving structures. . . 3-5
- Copying Just the Files. . .
- Copying Just the Directory Array. . .
- Deleting Structures. . .
-
- Delete Just the Files. . . 3-6
- Show the File List. . .
-
- Find a File. . . 3-7
-
- Print a Hard Copy of the Tree. . . 3-8
- Precaution Regarding CF_TRASH.CAN. . .
- Leaving the Tree Functions. . .
- Help. . .
- _____
-
- TUTORIAL -- Chapter 4: Executing Child Processes:
-
- Child Process Defined. . . 4-1
- Resident Footprint of CF. . .
-
- "Shelling" to DOS. . . 4-2
- Executing a Program from the Main Screen. . .
- Immediate Execution. . .
- Execution with Command Line. . .
-
- Execution with a Single File Name in Command Line. . . 4-3
- "Seeding" the Command Line. . .
-
- Changing the Command Line "Seed" Delimiter. . . 4-4
- Customizing Your Child Process File Specifications. . .
-
- A Further Execution Option -- Instant ZIPping/UNZIPping. .4-6
-
- ZIP a File. . . 4-7
- Now UNZIP a File. . .
-
- Tailoring CF for custom ZIP/UNZIP spec. . . 4-8
- Specifying a Password for Access from Screen Saver. . .
- _____
-
- REFERENCE -- Description by Operation:
- _____
-
- MEMORY MAPS -- Information on Memory Allocation:
-
-
- CM_FILER -- Table of Contents iii
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
-
- INDEX TO TOPICS AND OPERATIONS:
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Appending files:
- to target panel Main <Alt>T, then C 1-14
- to source panel Main <Alt>T, then B 1-14
-
- Application launching: See
- Child process execution
-
- ASCII entry with keypad: Edit <Alt>Keypad 2-4
-
- Attributes, directory:
- toggle "hide", at curs Main 2 1-13
- toggle "hide", at curs Tree 2 3-2
-
- Attributes, file: 1-13
- toggle "read", at curs Main 1, no tags
- 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 "arch", at curs Main 4, no tags
- toggle "arch", tagged Main 4, w/ tags
- zero all attrs, at curs Main 0, no tags
- zero all attrs, tagged Main 0, w/ tags
-
- Back up files in directory: 1-7
- file at cursor Main B, no tags
- tagged files in direc Main B, w/ tags
-
- Block operations: Edit 2-4
-
- Change directories: 1-6
- to directory at cursor Main <Rtn>
- to parent directory Main P
- show direc in opp panel Main <Shf><Rtn>
- show parent in opp panel Main <Shf>P
- to root directory Main \
- Tree <Home> 3-2
-
- Change to new drive or disk: Main N 1-5
- Tree N
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Child process execution:
- Shell to DOS Main S 4-2
- quick execute file at Main Q 4-2
- cursor, no command
- line
- put file at cursor into Main X 4-2
- queue for execution
- seed command line with Main <Alt>C 4-3
- full path spec to file
- at cursor
- seed command line with Main <Alt>T 4-4
- name of file at cursor
- edit command line and Main <Alt>X 4-2,4-3
- execute file in queue
- execute file in queue, Main <Shf>X 4-4
- no edit of command
- line
- execute file in queue, Main <Ctl>X 4-3,4-4
- first adding name of
- file at cursor to
- command line
- assign executable files Main <Shf>F10 See Function
- to Function Keys Keys
-
- Compare mode, toggle: M/T <Ctl>C 1-15,3-1
-
- Concatenating files:
- to target panel Main <Alt>T, then C 1-13
- to source panel Main <Alt>T, then B 1-14
-
- Copy operations:
- file at cursor to target Main C, no tags 1-6
- tagged files to target Main C w/ tags 1-6
- freshen one directory Main <Shf>F 1-11
- from another
- structure, incl files Tree C 3-2,3-4,3-5
- structure w/o files Tree <Alt>C 3-5
- text in marked block Edit <Alt>C 2-5
-
- Create new file: Main F
-
- Cursor movement:
- in directory listings Main 1-5
- in tree structures Tree 3-2
- in editor Edit 2-1
-
- Data entry line: All 1-12
-
- Date/time, change file: Main <Alt>F 1-14
-
-
- CM_FILER -- Index Ind-2
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Date/time, display system: Main <Space> 1-16
-
- Definitions:
- CF_TRASH.CAN directory 1-8
- Child process 4-1
- Compare mode 1-15
- Hide mode 1-16
- Kernel 1-1
- Module Ov-3,1-1
- Overlay 1-1
- Source panel 1-4
- Target panel 1-4
-
- Delete operations:
- "soft" vs "hard" 1-8,1-9
- resetting D to hard 1-9
- file at curs, soft Main D, no tags 1-8
- file at curs, hard Main <Ctl>D, no tags 1-9
- tagged files, soft Main D, w/ tags 1-8
- tagged files, hard Main <Ctl>D, w/ tags 1-9
- directory at cursor Main D, dir void only 1-6
- structure at curs, soft Tree D 3-6
- structure at curs, hard Tree <Ctl>D 3-6
- text in marked block Edit <Alt>Y 2-4
- line of text Edit <Ctl>Y 2-4
- word of text Edit <Ctl>T 2-4
- text to end of line Edit <Ctl>D 2-4
-
- Directory:
- delete (only if empty) Main D 1-5
- delete direc structure Tree D or <Ctl>D 3-2
- make new Main M 1-5
- Tree M 3-2
- rename Main R 1-2,1-9
- Tree R 3-2
- display subdir in srce Main <Rtn> 1-5
- display subdir in trgt Main <Shf><Rtn>
- 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>*
-
-
-
-
-
-
-
-
-
- CM_FILER -- Index Ind-3
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Display options:
- show Hidden files, Main <Ctl>H 1-13,4-5
- dirs; toggle Tree <Ctl>H 3-2
- Compare mode, toggle Main <Ctl>C 1-11,4-5
- Tree <Ctl>C 3-2
- define filename Mask Main <Ctl>M 1-16
- Find file Tree F 3-7
- Show file list Tree S 3-6
- file time, size in K Main - 1-13
- no file time, full size Main + 1-13
-
- DOS, Shell to: Main S 4-2
-
- Edit file at cursor: Main E 2-3
-
- File Masking: Main <Ctl>M 1-16
-
- File sorting: Main <Ctl>O 1-11
-
- Find file: 3-7
- from main module Main <Shf>T, then F
- from tree module Tree F
-
- Find string: Edit <Alt>F 2-2
-
- Form feed printer: Main <Ctl>F 1-14
- Tree <Ctl>F
- Edit <Ctl>F
-
- Freshen directory from Main <Shf>F 1-11
- opposite panel:
-
- Function Keys:
- assign applications to Main <Shf>F10 4-4
- Function keys
- put app at F1-F9 into Main Fn 4-5
- queue for execution
- execute queued Fn app Main <Alt>X, 4-4
- <Shf>X, or
- <Ctl>X
- execute app to operate Main <Ctl>Fn 4-6
- on file at cursor
- execute app to operate Main <Shf>Fn 4-6
- on constructed
- command line
-
-
- Global replace string: Edit <Alt>G 2-6
-
-
-
- CM_FILER -- Index Ind-4
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Go to file, first letter... Main G, then letter 1-5
- to subdirectory, 1st ltr Main <Alt>G, ltr 1-5
-
- Help, on-line: Main H Ov-2,1-17
- Tree H 3-8
- Edit <Alt>H 2-7
-
- Hide mode, toggle: M/T <Ctl>H 1-16,3-1
-
- Kernel, resident, set size: Main K 4-1,4-5
-
- Launching applications: See
- Child process execution
-
- Limitations:
- dir size (300,600,1200) Main Ov-4
- file size in edit mode Edit Ov-5
- memory required (182 K) Ov-4
- tree entries (500 dirs) Tree Ov-5
- dir nesting (8 levels) M/T Ov-5
-
- Make new directory: Main M 1-5
- Tree M 3-2
-
- Masking, in direc listing: Main <Ctl>M 1-16
-
- Monitor options: Ov-4
-
- Moving operations:
- files within disk Main <Shf>C 1-7
- structures w/in disk Tree <Shf>C 3-5
- block of marked text Edit <Alt>V 2-5
-
- New drive or disk, change: Main N 1-5
- Tree N 3-2
-
- Notes, view and edit: Main O 1-15
-
- NULL character, entering Edit <Alt>N 2-4
-
- Ordering scheme, select: Main <Ctl>O 1-11
-
- Overcopy switch, toggling: Main <Shf>O 1-6
- Tree <Shf>O 3-3
-
- Password, entering: Main <Shf>F10 Ov-3,4-8
-
-
-
-
-
- CM_FILER -- Index Ind-5
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Printing:
- put file in print queue Main L 1-14
- look at print queue Main <Shf>L 1-14
- cancel print queue Main <Ctl>L 1-14
- print directory listing Main <Alt>L 1-15
- print directory listing Main O, then <Alt>L 1-15
- with notes
- print tree structure Tree <Alt>L 3-8
- Print marked text block Edit <Alt>P 2-5
- Output block to file Edit <Alt>O 2-5
-
- Quitting:
- to DOS from main module Main <Esc>-<Esc>, or 1-16
- <Alt>Q
- to DOS from tree module Tree <Alt>Q 3-8
- to main from tree module Tree <Esc> or <Rtn> 3-8
- to main from file edit Edit <Esc> 2-6
- to main from file view Edit <Esc> or <Rtn> 2-6
-
- Remove directory: Main D (must be void) 1-6
-
- Rename file or directory at Main R 1-2,1-9
- cursor: Tree R 3-2
-
- Replace string: Edit <Alt>R 2-6
-
- Resident kernel, set size: Main K 4-1,4-5
-
- Screen saver:
- normal timeout to Main Ov-3
- forcing before timeout Main <Ctl>S Ov-3
- freshening directories Main Ov-6
- after return, switch
- setting
-
- Security features:
- cleared I/O buffers Ov-3
- password access denial Main Ov-3
-
- Shell to DOS: Main S 4-2
-
- Sorting of files: Main <Ctl>O 1-11
-
- Subdirectories:
- make new Main M 1-5
- Tree M 3-2
- rename Main R 1-2,1-9
- Tree R 3-2
-
-
-
- CM_FILER -- Index Ind-6
-
-
- Topic or Operation Module Command Page
- ------------------ ------ ------- ----
-
- Tagging operations on files:
- toggle Tag at cursor Main T 1-6,1-9
- toggle All tags in direc Main <Ctl>A 1-10
- clear or set All tags Main A 1-6,1-9
- all files same naMe as Main <Alt>M 1-10
- all files same Ext as Main <Alt>E 1-10
- all files as New as Main <Alt>N 1-10
- all files as Old as Main <Alt>O 1-10
- tag in oPposite panel Main <Alt>P 1-10
- "Append" or "Alt" Tag Main <Alt>T 1-10,1-14
-
- Time/date, change file: Main <Alt>F 1-14
-
- Time/date, display system: Main <Space> 1-16
-
- TSR's, precaution about: Ov-4
-
- UNZIPping with PKZIP utils:
- with command line edit Main U 4-7
- no command line edit Main <Shf>U 4-7
-
- View file at cursor: Main <Rtn> 2-1
-
- Volume label, setting: Main V 1-16
-
- ZIPping with PKZIP utils:
- with command line edit Main Z 4-7
- no command line edit Main <Shf>Z 4-7
- designating files to ZIP Main <Alt>T 4-7
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Index Ind-7
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- OVERVIEW:
-
- There are five files in the CM_FILER Version 5.22 package --
-
- CM_FILER.COM - The "kernel" of the program
-
- CM_FILER.OVY - Its supporting overlay
-
- CM_FILER.DOC - This manual, which is the full documentation
-
- CM_FILER.BRF - A brief summary of features for quick reference
-
- CM_FILER.REG - A file containing the registration form, an
- explanation of the Shareware concept, and a
- statement of the Association of Shareware
- Professionals concerning its ombudsman services
- for registered users of Shareware applications.
-
-
- CM_FILER is not "public domain" software or "freeware". It is offered to
- you as Shareware for your evaluation and distribution unaltered to
- others, with the understanding that, if you find you are using it after a
- 30-day trial period, you will pay a registration fee of $30. Please
- refer to CM_FILER.REG for registration information and a definition of
- Shareware. I am so convinced of CM_FILER's wide usability and appeal
- that, once you register your copy, I will send you an instant $10
- commission each and every time someone else registers a copy and cites
- you as the source of it! You may make as much money by passing CM_FILER
- to others as you care to. CM_FILER MUST be passed as an UNALTERED
- collection of the above five files, together on one disk, or as a
- compressed file, e.g., using the PKZIP (c) utility.
-
- The form in which I prefer to pass CM_FILER, because it requires no
- external decompression utilities, is as the self-extracting file
- CM_FILER.EXE, which on execution extracts all five files. A perfectly
- suitable alternative form, preferable if you have the PKZIP utilities
- because it takes up less space, is as the Zip file CM_FILER.ZIP, which on
- unZipping yields all five files. Any package that contains all five
- files unaltered is acceptable.
-
-
-
- CM_FILER provides a quick, simple, "one-touch" operating environment
- for your IBM-compatible 80x86-based computer running under DOS Version 2
- or later. While its name implies it is a file manager, it is much, MUCH
- more. Once you have used CM_FILER for a few sessions, you will not want
- to struggle with the DOS COMMAND.COM command processor or your other file
- managers ever again! CM_FILER was painstakingly written in Assembly
- language over a three-year period, carefully factoring the suggestions of
- a dozen of the world's pickiest electrical, mechanical and nuclear
- engineers with whom I work. It is compact and lightning fast.
-
- CM_FILER 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 and 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 disk
- structures side-by-side as "trees", and performing a full set of
- operations on their structures; and executing child processes -- all with
- a minimum number of keystrokes and maximum "transparency".
-
- Operations are keyed to single-letter mnemonics, making CM_FILER
- 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 CM_FILER 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 CM_FILER.
-
- CM_FILER 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).
-
- CM_FILER 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 CM_FILER 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 large numbers
- of tagged files, all have an <Escape> bailout.
-
-
- CM_FILER -- Overview Ov-2
-
-
- _____
-
- Program Logical and Physical organization. . .
-
- The CM_FILER 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". The
- distinction betwenn modules is that each performs some major function or
- group of functions fundamentally different from the rest. On the other
- hand, the program is broken PHYSICALLY into two main pieces, in this case
- two files, namely, the file "CM_FILER.COM", sometimes referred to herein
- as the "kernel"; and the file "CM_FILER.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 all of the editor and tree
- modules. A memory map is included for those interested.
-
- _____
-
- Security Features. . .
-
- CM_FILER 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 CM_FILER 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 <Shf>F10 --discussed
- in further detail in Chapter 4.
-
- o You may force CM_FILER into screen-saver mode with the key
- combination <Ctl>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 to automatically be invoked.
-
- o CM_FILER attempts to locate and overwrite all the DOS
- input/output buffers with the continuous string "CFCFCFCF..." before
- starting any file writing operations. This way, the file being
- written cannot contain any stray data at the end of its last sector
- that was hanging around in the buffers from a previous read operation.
- A word of caution, however: I have seen and factored in the two
- different conventions I have observed in DOS Versions 2 and 3 for coaxing
- DOS to divulge where its buffers are. The buffers are better hidden in
- DOS Version 4; under this version and most certainly 5 as well, CM_FILER
- will simply report that it used UNCLEARED buffers during each copy
- operation. Otherwise, it will report that it used cleared buffers.
-
-
-
-
-
- CM_FILER -- Overview Ov-3
-
-
-
- An even more secure version 5.22x is available on request which
- simply ignores any command that would result in file writing if the DOS
- buffer structure cannot be located for clearing.
-
- _____
-
- Monitor Options. . .
-
- CM_FILER 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.
- If you have an LCD monitor other than Tandy, you may invoke the special
- color set using the letter "L" in the command line. For Tandy LCD's use
- "T". (Tandy for some unfathomable reason inverts the function of the
- high-intensity bit in the color attribute.) If you have a "monochrome"
- monitor being driven by a color card, CM_FILER senses the color card's
- presence and defaults to the "color" vice "monochrome" color set. You
- may find the color attributes indistinct in this case. Try running
- CM_FILER with the letter "M" in the command line. This instates the
- special monochrome attribute set. The letter "C" in the command line
- forces the default color set.
-
- _____
-
- 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 run as child
- processes of CM_FILER. At best you will end up with horribly
- fragmented memory when you exit CM_FILER, and at worst you will
- have a SYSTEM CRASH.
-
- o CM_FILER requires a minimum of 186KB of free memory to run. This
- permits generous memory allocations for the directory listings,
- a print spooler buffer, and a large copy buffer. During
- execution of child processes, however, the resident portion of
- CM_FILER can be made to occupy as little as 16KB, using the
- "Small" footprint option of the "Kernel" command (letter "K"
- pressed from the main screen -- discussed more in Chapters 1
- and 4).
-
- o Maximum directory size recognized by the main module varies from
- 300 to 1200 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.
-
-
-
-
- CM_FILER -- Overview Ov-4
-
-
-
- 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:
-
- o Files too large to fit in available memory in one
- shot, or files with more than 16,380 records.
- o Files with any record longer than 8190 characters.
-
- o The tree module limits the number of entries in a directory tree
- structure to 500 total subdirectories.
-
- o The main and tree modules both limit the depth of directory
- nesting to eight levels (eg, "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 63 characters.
-
- 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.
-
- o Finally, CM_FILER does not yet support mouse or 43/50 line
- EGA/VGA display capability. I have concentrated on packing the
- MOST COMPLETE set of useful operational features into the
- smallest, most intuitively organized package I could, and have
- not yet had the time (and do not yet have the hardware
- capability myself) to write and debug these additional user
- interface features. With respect to the mouse, my feeling is
- that ease of use has less to do with the HARDWARE interface
- between the user and the computer than the LOGICAL interface,
- and I have concentrated on writing the best logical interface
- possible. (In other words, a cumbersomely constructed program
- remains cumbersome, EVEN when you add a mouse!)
-
- If there is overwhelming response to CM_FILER requesting
- addition of mouse capability and/or 43/50 line display, I will
- add it. Otherwise I will stick with the basics.
-
-
- _____
-
- 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
-
-
- CM_FILER -- Overview Ov-5
-
-
- 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 any
- number of books on DOS written to different levels of proficiency
- which may be consulted as a resource.
-
- _____
-
- Additional Note for Windows Users. . .
-
- Though not designed as a Windows application, CM_FILER appears to be
- operating satisfactorily in the Windows environmemt. 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 CM_FILER
- has been idling. Under Windows, this is not necessarily a valid
- assumption, since another foreground application may have operated on the
- directories CM_FILER was selected to when it went into the background.
- Therefore for Windows users there is a switch which may be set telling
- CM_FILER to refresh the directory listings on return from the screen
- saver. After you have read Chapter 2 on file editing, select
- CM_FILER.COM for editing. On about the fourth line down you will see a
- line "REFRESH AFTER SCREEN SAVE=N". Be sure you are in Overstrike mode,
- and just change the "N" to "Y".
-
- _____
-
- Assertion. . .
-
- I believe CM_FILER Version 5.22 is the most powerful and transparent
- file manager code you will ever find anywhere for its price and size. It
- is being offered as a Shareware utility in the hope that you will find it
- useful, and further that you will remit the required registration fee of
- $30 for the convenience it offers. Please remember that the Shareware
- industry depends on the integrity, encouragement and financial support of
- its user public.
-
- _____
-
- Special Thanks. . .
-
- . . .to Nick Capik and Tom Vavoso who found most of the subtle bugs
- by pushing CM_FILER past my expectations, and challenged me to include
- features that turned out to be useful to us all; and 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. His Wolfware Assembler WASM can be
- had by sending $10 to Eric Tauck, 1304 Deerpass Road, Marengo, IL 60152.
-
-
-
-
-
- CM_FILER -- Overview Ov-6
-
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- TUTORIAL -- Chapter 1: File Handling:
-
-
- GETTING STARTED , or the "Kernel" and the "Overlay":
-
- As mentioned in the OVERVIEW above, I refer to the 17 KB
- CM_FILER.COM file as the "kernel", the vital part of the main module, and
- the 74 KB CM_FILER.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 Version 2, and it let me give you
- two options for how much of the program to leave resident in memory when
- running child processes (more in Chapter 4).
-
- For now, copy CM_FILER.COM and CM_FILER.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 CM_FILER.COM by entering "cm_filer". The DOS command processor
- will load and execute CM_FILER.COM, which in turn will find and load the
- overlay CM_FILER.OVY. The whole 91 KB (17+74) is now residing in
- memory, ready to respond to commands.
-
- Before anything else, press "K" (for "resident Kernel" option). You
- will see two choices, "L" for "large footprint" and "S" for "small
- footprint", and under the cursor a capital "L" or "S" ("L" if you are
- running a virgin copy of CM_FILER) showing the current selection. "L"
- signals CM_FILER to leave the whole 91 KB (CM_FILER.COM + CM_FILER.OVY)
- resident in RAM when it executes other programs ("child processes"), "S"
- signals CM_FILER to turn back over to the DOS system the 74 KB occupied
- by the overlay for use by the child process. For now, select "L", since
- a 91 KB resident footprint is not a great sacrifice. If the original
- setting (the letter under the cursor) had been "S", we need to embed in
- the CM_FILER.COM file the new setting. Press <Shf>F10 (the screen will
- change completely -- this is the user-defined "child process"
- specification page discussed in more detail in Chapter 4 -- don't worry
- about it for now!), and then <Ctl><Rtn>. You should see the disk that
- CM_FILER.COM is on being accessed. The new "Kernel size" option is now
- embedded right in that file.
-
- (As an aside, this little exercise points out a fairly unusual
- feature of CM_FILER, namely that the information about user-selected
- options is embedded right into the program code file itself, not carried
- in some external configuration file. No extra files, all self-contained,
- no hassle.)
-
-
- _____
-
- Rename CM_FILER to Spare My Fingers. . .
-
- Now, feel free to rename CM_FILER.COM to "CF.COM" for short, and the
- overlay CM_FILER.OVY to "CF.OVY". (It is important to keep these two
- files named 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 "CM_FILER COM" and press "R" (for
- "rename"). A window will open up at the bottom that says:
-
- Rename CM_FILER.COM
- to >CM_FILER.COM<
-
- with the cursor blinking on the first "C" in the data entry field denoted
- by the "> <" pair. (CM_FILER is assuming that you want to rename just
- the CM_FILER.COM file, since this is the most frequent use of the rename
- facility, and further is offering you the same name as the "default" or
- starting 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
- "CM_FILER"; that is, we would really like to use the DOS "wild card"
- convention "*" and have the upper line read "CM_FILER.*". To do this,
- press either the up arrow or <PgUp> to move the data entry window up to
- the "Rename. . ." line, and press <Tab> to move over to the "C" in "COM".
- Type "*" and press <Rtn> or down arrow. Now the window reads:
-
- Rename CM_FILER.*
- to >CM_FILER.* <
-
- Simply type "CF.*" and press <Rtn>. 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 disks 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 child processes. This is not
- necessary under DOS Version 3 and later.
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-2
-
-
- _____
-
- The Screen. . .
-
- You should by now have noted an economy of screen usage. The left
- panel shows the contents of the root 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
- "<Ctl>O" (denoted by ^O to save space) allows selection of one of seven
- 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, whose first 20 entries 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-½ 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 "<Ctl>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 keys <Shift>,
- <Alternate shift>, <Control> 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 <Shf>, <Alt> or <Ctl>. Press
- one of the <Shf> 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 (and shown in shorthand notation at the
- upper left of the two-line help). Press <Ctl> 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.
-
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-3
-
-
- _____
-
- The "Modifier Keys". . .
-
- Incidentally, there is some rationale for which of the <Shf>, <Alt>
- or <Ctl> 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 "<Shf>" is most often used for operations involving
- transfers of control or data to or from the other panel. For example,
- "<Shf><Rtn>", 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 "<Shf> Lf/Rt Arr", "<Shf>P" and "<Shf>F".
-
- o The modifier "<Ctl>" is most often used to "toggle" the state of
- a "switch" or "tags" -- that is, to invert something. For example,
- "<Ctl>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 "<Ctl>O", "<Ctl>M", "<Ctl>C", "<Ctl>A", and "<Ctl>L".
-
- o The modifier "<Alt>" is most often used just to indicate an
- operation associated with a mnemonic alphabet key, but which key was
- already tied up in its "unmodified" form 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 line",
- 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 of two "panels" corresponds to a "path" to files, in the DOS
- vernacular. Open the right panel with the right arrow, and you will be
- prompted at the bottom of the screen to specifiy a drive letter.
- (Lines 24-25 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 <Rtn>, just a
- letter key. The root 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 copy and append
- operations.
-
- 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
-
-
- CM_FILER -- Chapter 1 1-4
-
-
- 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 "<Ctl>C" (the mnemonic is "compare").
-
- _____
-
- 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 19 lines in the directory. <PgDn> is similar
- for the opposite direction. <Home> goes to the first line of the
- directory, <End> to the last.
-
- The command "G" (for "Go to...") moves the cursor in the directory
- to the first file whose first character has an ASCII value equal to or
- greater than a character you specify. This is most useful for moving
- quickly to a general area of a large alphabetically-ordered directory,
- based on knowledge of at least the first letter of the filename you are
- looking for. "<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 <Shf><Left/Right Arrow>, vice the unmodified arrows.
-
- _____
-
- 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 "N" (for New disk), and
- then the letter designator for that drive at the ensuing prompt.
- Likewise, 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".
-
- To close the right-hand panel, press "N" and "<Rtn>".
-
- _____
-
- Subdirectories. . .
-
- Make a new subdirectory in the source path by pressing "M" (for the
- DOS command Mkdir) and entering a name. Find it in the display in
- alphabetical order, move the cursor to it and press <Rtn>. 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 <Rtn> with
-
-
- CM_FILER -- Chapter 1 1-5
-
-
- the cursor on the "<Parent>" entry, or "P" 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 the backslash key "\". It works
- like the DOS command "cd \".
-
- To put a subdirectory from the current source panel into the target
- panel, put the cursor on it and press "<Shf><Rtn>". The subdirectory is
- listed in the opposite panel, and the cursor shifts over to it. In
- similar fashion, "<Shf>P" puts the source panel's parent directory into
- the opposite panel, and "<Shf>\" puts the source's root into the opposite
- panel. Finally, "<Shf>*" puts the source directory itself into the
- target. This is handy for quickly setting up the same panels side-by-
- side for ZIPping/unZIPping, discussed in Chapter 4.
-
- Remove a subdirectory by placing the cursor on it and pressing "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.
-
- _____
-
- 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". 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.)
-
- CF looks first at the space available on the target path before
- it starts to copy. If it doesn't see enough room free, it doesn't
- start the operation, and alerts you to the problem. 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 copy the source to
- the target, as this would be wasted motion, on the assumption that the
- files are identical. This feature may be toggled with the command
- <Shf>O. (The mnemonic can be seen at the bottom of the screen when you
- press <Shf>, and is "Overcopy=N" for no overcopying of identical files,
-
-
- CM_FILER -- Chapter 1 1-6
-
-
- or "...=Y" for yes, do overcopy identical files. You might, for example,
- want to set the switch to Y to rewrite files on a disk where the
- directory table is intact but you suspect corruption of data sectors.)
-
- 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 file has length 0 bytes, or if the source and
- target files have the same date/time but the source is smaller, CF will
- ask for overwrite confirmation. This provides some protection against
- overwriting a good file with one which has become corrupted by a previous
- copy error.
-
- 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, in integer multiples
- of the disk media cluster size, so what you see is the amount of space
- ACTUALLY tied up on the disk. (If your disk is a 5.25" DSDD floppy its
- clusters are probably one KB each. Every file takes up at least one
- cluster, so a 1-byte file takes up a one KB of disk space, the same as a
- 1024-byte file.)
-
- Assuming the amount of space represented by tagged files is less
- 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 make the first letter of the extension an underscore
- character ("_"), and then add the first two characters of the original
- file extension.
-
- _____
-
- 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
-
-
- CM_FILER -- Chapter 1 1-7
-
-
- the move command "<Shf>C" (instead of C -- think of moving as just
- another kind of "copying", but you are "shifting" files instead). If
- the conditions are not satisfied for moving (i.e., directories on same
- disk), CF will default to copy mode.
-
- _____
-
- Deleting a File. . .
-
- With the cursor on a file and no files tagged, pressing "D" results
- in deleting the file under the cursor, after your confirmation. If one
- or more files are tagged, they will be deleted after confirmation, not
- the file under the cursor. "<Alt>Tags", discussed below, are treated the
- same as normal tags as far as the delete operation is concerned.
-
- On your hard disks, 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 redated to the current date and time, and
- moved into a directory created by CF, called "CF_TRASH.CAN". If you
- delete files from your hard disk by mistake, they are RELIABLY
- recoverable just by switching to the CF_TRASH.CAN directory and moving
- them back to the directories they came from using <Shf>C.
-
- If you delete a second file by the same name as a file already
- collected in the CF_TRASH.CAN directory by a previous soft delete
- operation, CF tries to rename this second file by replacing the last
- character in the file name 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. The only problem is that you
- may have trouble telling which duplicate is the original, as CF redates
- each of them during the "soft" delete.
-
- 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), creates
- the directory CF_TRASH.CAN if it is not already present, and then looks
- in CF_TRASH.CAN for the presence of files with any date earlier than the
- current date. If it finds any, it will ask you if you want to purge them
- -- that is, perform the "hard" DOS file delete on yesterday's trash. .
- You have the options "yes", "no", or "<Rtn> to view" to see what is in
- the thash can. You probably want to keep the CF_TRASH.CAN 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 each time you select that disk! (The "D" command
- performs a "hard" delete in the CF_TRASH.CAN directory -- this is the one
- exception.)
-
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-8
-
-
- 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 -- "<Ctl>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.
-
- And if you are REALLY sure of yourself, you can turn "D" from soft
- delete to hard delete. There is a switch available only by editing the
- CF.COM file. On the fifth line from the top of the screen on the first
- video page, you will see "D IS HARD DELETE=N". With overstrike edit
- mode, change the N to Y.
-
- _____
-
- 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 the
- 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 <Rtn> (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 on the mystery file
- waiting for you to decide whether or not to tag it! (Another nice
- touch!)
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-9
-
-
- _____
-
- Renaming a File OR a Directory. . .
-
- Since we'e 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 "CM_FILER" 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, 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 "CM_FILER.DOC" to CF.DOC", put the cursor on
- "CM_FILER DOC" in the source panel, press "R", type "CF.*" in the lower
- window, and <Rtn>. 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!)
-
- _____
-
- Some Additional Tagging Options. . .
-
- In addition to "T" (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>N" tags all
- files in the panel of the same date or Newer as the file at the cursor,
- "<Alt>O" same date or Older. "<Alt>P" tags in the oPposite panel all the
- files with the same names as files tagged in the source panel. (This is
- good for updating to a floppy only the files which were already on it.)
- And finally, "<Ctl>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>N" and "C". Then suppose you wanted to delete all the earlier
- files. Press "<Ctl>A" and "D", and confirm the deletion as requested,
- after a final check of the screen.
-
- Or suppose you have a large subdirectory on your C drive hard disk
-
-
- CM_FILER -- Chapter 1 1-10
-
-
- containing more files than fit on a single floppy. The first time you
- make up a multiple-floppy backup set, you will want to organize the files
- into the backup disks in some way that makes sense to you, perhaps with
- files of a type together, and with some free space on each disk for file
- growth. Each subsequent time that you update this backup set, follow this
- simple procedure: 1) set up one panel as the path to the directory on
- the C drive whose files you are backing up; 2) put the first backup disk
- in drive A or B and select it as the source panel; 3) tag all the files
- on this backup disk; 4) press "<Alt>P" to tag in the C drive directory
- all the files that appear on the backup floppy; 5) arrow across to the C
- drive directory as the source, and press "C" to update all the tagged
- files to the floppy. Repeat with the other floppies.
-
- _____
-
- The File "Freshener". . .
-
- In the example above, the "<Alt>P" operator was used to tag the
- duplicate files in the opposite panel to facilitate "freshening" the
- files in backup floppies from the primary directory. The sequence
- described, however, has two minor drawbacks:
-
- o First, it takes a lot of keystrokes from when you stick a backup
- floppy into drive A, say, to when you have a freshened backup disk.
- Namely, you would have to insert the floppy in A drive and press:
- "N" and "A" to announce the presence of the disk change in drive A and
- display the backup floppy's root directory; "A" to tag all the files in
- the backup floppy; "<Alt>P" to tag all matching files in the primary
- directory in the opposite panel (the primary directory); "Lf Arr" or "Rt
- Arr" to get across to the opposite panel; "C" to copy all its tagged
- files to the backup, and then possibly "n" one or more times to protect a
- file on the backup floppy which happens to be newer; and finally "Rt Arr"
- or "LF Arr" to get back to the A drive to repeat the process for the
- second backup floppy.
-
- o Second, the "<Alt>P" operator is indescriminant with regard to
- date and time -- it tags any file in the opposite panel with the same
- name as any tagged file in the source panel, regardless of whether it is
- newer or older. But in the file freshening example, we really only want
- to overwrite older files on the backup floppy with newer versions of
- files from the primary directory, and not newer with older.
-
- For these reasons I added a file freshener command, "<Shf>F". In
- the above example, with the target panel set up with the primary
- directory whose files you are backing up, put the backup floppy in drive
- A, press "N" and "A" to bring up its root directory in the source panel,
- and then just press "<Shf>F". CF tags all the files in the source if
- none were already tagged, or leaves existing tags as-is if some were
- tagged: then tags all the files in the opposite panel with the same name
- as tagged files in the source but which are NEWER; then copies those to
- the source; and finally updates the source panel display, leaving the
-
-
- CM_FILER -- Chapter 1 1-11
-
-
- target panel (primary directory) display tagged to show you what was
- copied. Just three key strokes!
-
- _____
-
- Different Ways to Show the Files. . .
-
- Press the combination <Ctl>O (the letter "O"). You will see a
- screen which gives seven choices for file ordering, with the cursor
- blinking on the current selection. Press a number key "1" through
- "7". The files will now be reordered in the new scheme. The options for
- ordering by date/time are particularly useful in the visual sense when
- backing up just the files revised today, as in the example above.
-
- _____
-
- The Data Entry Window. . .
-
- The data entry window you encountered in the renaming exercise
- responds to most of the usual line-editing key presses:
-
- o <Insert> toggles the mode between Overstrike and Push Right.
-
- o <Ctl><Lf/Rt Arrow> and <Tab>/<Shf><Tab> go right or left to the
- space following the next blank or punctuation mark.
-
- o <Shf><Lf/Rt Arrow> go to beginning or end of data field. <Home>
- goes to the beginning of the field.
-
- o <Lf/Rt Arr>, <Bksp> and <Del> perform the usual functions.
-
- o <End> goes to the blank after the last non-blank character.
-
- 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 ASSCII code will appear in the window, and
- the cursor will advance a space.
-
- o <Ctl>D deletes to the end of the line.
-
- o <Esc> aborts the operation.
-
- o <Down Arrow> is equivalent to <Rtn>. 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 convention.)
-
- For entering file names and subdirectories, all letter keys are
- registered as upper case, regardless of <Caps Lock> or <Shf> key
- positions, just for the sake of uniformity and ease of alphabetizing.
- For command lines, which may be case-sensitive, both cases are enabled.
-
-
- CM_FILER -- Chapter 1 1-12
-
-
- When a default entry is offered, it will be deleted if the first keypress
- is an alphanumeric character. The one exception to this rule is the file
- rename window following a use of "*" in the extension of the old name.
-
- _____
-
- Disk Space Occupied 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
- clusters occupied. 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 time to do this and still keep the two panels readable.) Shift
- back to the "contracted" kilobyte form of file size with "-".
-
- _____
-
- 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 everytime 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 "cHide=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 "Y" instead of "N", meaning
- that the Hide switch is on -- the default setting. In this setting,
- files will disappear from view as you set the DOS hidden attribute, so we
- need to toggle the hide switch to "N". Press "<Ctl>H" 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 hide
- attribute (with "2") of a subdirectory, but this must 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. Toggle
- this hide mode off and on with the combination "<Ctl>H" (discussed
- further below). Decide for yourself which mode 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.
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-13
-
-
- _____
-
- Changing the Date/Time Stamp of a File. . .
-
- You may change the date and/or time of a file by putting the cursor
- on it and pressing "<Alt>F". A data window opens for you to first enter
- the new date, using the current date in the file's date/time stamp as the
- default, and then the time.
-
- _____
-
- "<Alt>Tagging" and Appending. . .
-
- Suppose you have two files that you want to stick together as
- one, heel-to-toe. Tag them with "append" tags with the key
- combination "<Alt>T" in the order in which you want them to be
- concatenated, and press "C". CF will create a file in the target path
- with the same name as the first "<Alt>Tagged" file in the source path,
- but with extension ".APF" (for "APpended File"). Then it appends into
- this target 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). If you had
- pressed "B" instead of "C" after affixing the "<Alt>Tags", the
- concatenated file would have been assigned the "backup" form of the
- append extension, namely "._AP", and been written 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" (for Line print). The file will
- be put into a special print "queue" for printing to line printer 1 on the
- parallel port 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 "<Shf>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. Also, if
- you shell to DOS while a file is printing from CF, printing will be
- suspended for as long as you stay in the COMMAND.COM processor, for a
- similar reason as above. You may terminate printing with "<Ctl>L". This
- actually clears the entire print queue. To force a form feed at the end
- of the file you have just queued, press "<Ctl>F" before 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. ("<Ctl>F" is active when no file is printing, also, as a way of
- form-feeding the printer from the keyboard.
-
-
- CM_FILER -- Chapter 1 1-14
-
-
- _____
-
- 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 the letter "O", and a
- nOtepad opens up in the opposite panel. You can type a little narrative
- for each file in the directory. The editing keys work much the same as
- in the line editor, except that you are limited to 39 characters for each
- entry. 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 <Ctl><Rtn>. If you use <Esc> and did any editing, you will be asked
- if you want to save that edit of the notes.
-
- The notepad is contained in a hidden file call "NARATIVE.CF", 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.
-
- _____
-
- Printing a Directory Listing. . .
-
- Press "<Alt>L" to send a directory listing to the line printer. If
- you do this from the nOtes field, you also get a listing of the notes,
- and the file size entries is either the abbreviated or full value, de-
- pending on the display mode set in the directory table (toggled with +-).
-
- _____
-
- Comparison Mode. . .
-
- At the top of the screen you see a message "^Comp=Y". The "Y" means
- "yes", the compare "switch" 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.
- You may toggle this switch with the key combination "<Ctl>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 "remebered" 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
-
-
- CM_FILER -- Chapter 1 1-15
-
-
- it into the source. The <Shf><Lf/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". This 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 "<Ctl>H". The current state of these two
- switches is set as the default any time you do a "<Shf>F10" edit,
- discussed in the chapter on child processes.
-
- _____
-
- 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 "<Ctl>M", <Tab>,
- type "EXE", and <Rtn>. <Tab> and <Shf><Tab> position the cursor on the
- extension and name fields, respectively. The space character is also
- accepted, and has the effect of fixing the length of the mask.
-
- _____
-
- Displaying Date and Time. . .
-
- The display of system date and time may be toggled on or off with
- the spacebar. The display appears in the middle of the two-line prompt
- area at the bottom of the screen. The current state of this switch is
- stored, along with the hide and compare mode switches, by "<Shf>F10-
- <Ctl><Rtn>".
-
- _____
-
- Changing or Adding a Volume Label. . .
-
- Press "V" and a data window opens at the bottom for you to enter a
- new volume name for your disk. The existing volume label is offered as a
- default for editing ease.
-
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 1 1-16
-
-
- _____
-
- 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 file, or a hidden file with the hide switch on.
-
- In addition, if you attempt to copy or move any files out of the
- CF_TRASH.CAN directory, you will be asked to confirm that you REALLY want
- to do that. This precaution is taken because, when files are put in the
- "trash can" by a delete operation, their date/time stamp is changed to be
- the date and time they were DELETED. Therefore it is probable that files
- in the trash can will appear to be NEWER than identically named files in
- other parts of the disk. For this reason, files should only be moved or
- copied out of CF_TRASH.CAN with GREAT CAUTION, lest they overwrite files
- that are actually more up-to-date.
-
- _____
-
- Help. . .
-
- In addition to the two-line mini-help area at the bottom of the
- screen, a three-page summary may be summoned on-line at any time in the
- main module of CF by pressing "H". <PgUp> and <PgDn> page through the
- help, and <Esc> exits back to the main screen.
-
- _____
-
- Date/Time Display. . .
-
- A date/time display can be toggled on and off with the spacebar. It
- appears in the middle of the two-line prompt area at the bottom of the
- screen, and its state is stored as the default by <Shf>F10-<Ctl><Rtn>.
-
- _____
-
- Quitting CF. . .
-
- There are two commands for exiting CF; "<Esc>-<Esc>" and "<Alt>Q".
- The <Esc>-<Esc> combination reestablishes the default drive and its
- current directory as it 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".
-
-
-
-
- CM_FILER -- Chapter 1 1-17
-
-
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- TUTORIAL -- Chapter 2: File Viewing and Editing:
-
- CF has a built-in 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 over a file -- any
- file will do; ASCII text, PC-Write, .COM, .EXE -- and press <Rtn>. CF
- loads the selected file in memory for viewing.
-
- _____
-
- Record Delimiters. . .
-
- The default 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 with "<Alt>-" and back on with "<Alt>+". (This is
- also covered in a three-page help screen you can get by pressing <Alt>H.)
-
- _____
-
- 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 character in the
- file (starting with 1), the file record the cursor is in, and the
- position of the cursor within the record (called "Column", which for a
- long record is not necessarily the same as the screen column).
-
- _____
-
- Cursor Movement. . .
-
- The arrow keys move the cursor one line up or down and one
-
-
- character left or right. <Ctl><Left/Rt Arrow> move left or right
- one word at a time, and <Shf><Left/Rt Arrow> move to the beginning
- or end of the line, as in PCWrite.
-
- For lines longer than 80 characters, only the first 80 are shown
- on the screen. To see more of the line, put the cursor on the line,
- and move right with <Rt Arrow> or <Ctl><Rt Arrow>. When the cursor
- reaches the end of the screen, the line shifts 20 spaces left, and
- keeps doing so until you get to the end of the line -- ie, to the next
- record delimiter. For non-ASCII-text files, like graphics files, there
- can be a LOT of stuff between bytes of data that happen to have a value
- of 10 or 13 (ASCII codes for LF and CR).
-
- <PgDn/PgUp> moves the display up or down 20 records, and leaves the
- cursor on the same video line. <Ctl><PgUp/PgDn> moves the display by
- 200 records (10 video pages) for fast paging through a file. <End> moves
- to the bottom of the current page; <Home> moves to the top. <Alt>B moves
- to the Beginning of the file contents in memory; <Alt>E moves to the End.
-
- 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. After you press <Rtn>, CF
- will find the first appearance of the string from the current cusor
- 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 is available to the
- Find operator. Also, the search is case-sensitive. For example, the
- search string "mark" will not find the text string "Mark". The work-
- around for this is to use as the search string all but the first letter
- of a word that might be capitalized.
-
-
-
-
- CM_FILER -- Chapter 2 2-2
-
-
- _____
-
- 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 double 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 window
- enter: >" mark <. This works for the replace string as
- well.
-
- _____
-
- Editing a File. . .
-
- Exit view mode with either <Esc> or <Rtn>. (Note that any tags in
- the source panel are still there.) Now you are ready to edit! Position
- the cursor over a file that you have an extra copy of somewhere, and
- press "E" (for Edit, obviously!). CF again loads the selected file, but
- this time with an internal "switch" set which tells the editor module to
- support editing.
-
- _____
-
- 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 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.
-
- _____
-
- Overstrike vs Push Right. . .
-
- Look at the lower right. If you see "Edit Mode = Overstrike", or
- "Edit Mode=Push Right", then CF is in edit mode. Toggle between "Push
- Right" and "Overstrike" with the <Insert> key. Typing action is just
- like any word processor. In overstrike 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>, <Shf><Tab>, the unmodified and
-
-
- CM_FILER -- Chapter 2 2-3
-
-
- 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 <Rtn>. This inserts the default
- delimiter combination, CR+LF, into the text to set up a new line void
- of text, but ready for you to start typing. The combination
- <Ctl><Rtn> 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 <Ctl>Y. Delete from the cursor to the end of the line with
- <Ctl>D. Delete a word and its associated whitespace with <Ctl>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 (eg., CR+LF) or one (eg., LF). It may be deleted to join
- two lines, but not over-struck -- it always pushes right, even when
- you are in overstrike 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>0" is not recognized by any keyboard
- drivers I have seen. It is "<Alt>N" (for "Null").
-
- _____
-
- 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, Y(delete), moVe, Copy, Print and Output }.
-
- _____
-
- Marking a Block, and the Copy Buffer. . .
-
- You may also manipulate blocks of records. First mark a block by
- putting the cursor on the first (or last) record of the block you want
-
-
- CM_FILER -- Chapter 2 2-4
-
-
- to do something with, press <Alt>M (for "Mark"), move down (or up) with
- arrows, <PgDn/Up>, etc., and mark the last (or first) record of the block,
- again with <Alt>M. The marked text is written into a 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.
-
- _____
-
- Delete, Copy, Move. . .
-
- Delete the block with <Alt>Y ("Y" being the nearly universal key
- meaning "delete"). 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 (for "Copy"). Or move it with
- <Alt>V (for "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.
-
- _____
-
- 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 Line Printer. . .
-
- Print the copy buffer to line printer 1 (the parallel port) with
- <Alt>P (for "Print"). After printing, if you want a form feed, press
- <Ctl>F (for "Form feed" -- note the use of <Ctl> 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
-
-
- CM_FILER -- Chapter 2 2-5
-
-
- 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").
- <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 was thus terminated, <Alt>X reactivates the confirmatory replace,
- not the global replace.
-
- _____
-
- Leaving Edit Mode. . .
-
- After editing is complete, press <Esc>. The next prompt you get
- asks whether you want to save this edit (y/n), or go back to the editor
- (<Esc>). (If you had hit the <Esc> key by mistake, hit it again to
- return to where you were.) In some cases you botched the file up so bad
- you don't want to save it, but most of the time you do. Press "Y". The
- next prompt wants to know if you want to save the original, pre-edit
- version of the file as "*.BKP" (an arbitrary extension designator I
- picked to show the file as a "BacKuP" from edit mode, different from the
- form of the backup extension assigned by the backup command "B" from the
- main module.) If you say no, the edited version will simply overwrite
- the original. If you say yes, then the previous backup file with the
- same name and extension ".BKP", if there is one, will be deleted, the
- "current" original file will be renamed with the ".BKP" extension, and
- the now-edited version will be saved under the original name. If CF runs
- out of file space, it will ask you to put a NEW disk into drive A to save
- the edited version.
-
- _____
-
- Backup File Protection. . .
-
- A small point of backup file protection. If, in the process of
- saving the original version of the edited file, CF encounters a file
- with the same name and the ".BKP" extension, it will simply overwrite
- it, UNLESS it is assigned the read-only attribute and the original to
- be renamed and saved is not. In this case CF will give you the option
- of saving the read-only file.
-
-
- CM_FILER -- Chapter 2 2-6
-
-
- _____
-
- Creating a New File with the Editor. . .
-
- A new file may be created from the main module by pressing the
- letter "F" (for "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 one-page help screen may be summoned on-line at any time in the
- editor with the command "<Alt>H", and exited with any keystroke.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 2 2-7
-
-
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- TUTORIAL -- Chapter 3: The TREE Functions:
-
- CF lets you 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 <Shf>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 block may be deleted (with GREAT CAUTION -- 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). Or the source block may be copied or moved.
-
- _____
-
- 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 block with red
- background in color mode, while the current directory selected in the
- target path is shown by its name highlighted with a black 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 high-intensity yellow, similar to the highlighting of
- file matches in the main screen. The hide and compare switches may be
- toggled using <Ctl>H and <Ctl>C (shown as ^H and ^C); their states are
- transmitted back to the main module on return.
-
-
-
- The "find" string also appears on the top line when the find file
- command is given (the letter "F"). More on that later.
-
- Information about the selected structures is contained in lines 23
- and 24 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 desribes 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 grand total
- charactertics of the file ensemble in the ENTIRE structure.
-
- The structure in the source panel is highlighted differently
- because this is the structure you will be operating on.
-
- 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 to the top/bottom of the panel and
- then 20 lines, <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 <Shf>Up/Down Arrow, which moves the cursor up
- or down one directory in the same level; and <Shf>Left/Right 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).
-
- Changing disks or drives ("N"), renaming subdirectories ("R"),
- setting the hide attribute for a subdirectory ("2"), and toggling the
- hide switch ("<Ctl>Hide) all work the same as from the main screen of CF,
- except that no wild cards are permitted in the rename function.
-
- _____
-
- Copying structures. . .
-
- If you, as I, never 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 highlighted in
- red (if you're in color -- in reverse video if monochrome) appearing
- UNDER the subdirectory in the black background in 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
-
-
-
- CM_FILER -- Chapter 3 3-2
-
-
- 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 put the cursor in the target panel to the HOST 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 path with the same date/time
- stamp are presumed identical, and not rewritten, unless the "file
- overcopy" switch is on. As in the main module, it is toggled by the
- command "<Shf>O", and its current state is displayed on the bottom line
- of the screen whenever you press the <Shf> key (either "Overcopy=N" or
- "...=Y".) As with the "hide" and "compare" switches, the current state
- of the "overcopy" switch is passed between the main and tree modules.
-
- 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, require
- confirmation to be overwritten.
-
- o Files of zero length in the source path are not allowed to
- overwrite files in the target, newer OR older, without confirmation.
-
- Copying in progress may be terminated using <Esc>. Any errors
- during file copying automatically cause immediate termination of the tree
- copy operation, with a caution note to check over the files in the new
- structure. Check the file whose copying was in process first.
-
- 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 the next file. The answer "n" terminates the 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.
-
-
-
- CM_FILER -- Chapter 3 3-3
-
-
- A final word on the copy function, and the move function discussed
- 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 cursor 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:
-
- A:\ <Where the programs and support are here in the root>
- |---LETTERS
- +---NOTES
-
-
- CM_FILER -- Chapter 3 3-4
-
-
- 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.
-
- _____
-
- Moving structures. . .
-
- In much the same way, structures may be moved within the same disk
- with the commands "<Shf>C" (which replicates the structure entirely,
- similar to Copy) and "<Shf>I" (which moves the structure INTO the target,
- like Copy Into). The condition for moving is that the same disk is
- selected in both panels, and the target path is not currently the host of
- the structure selected in the source panel. Since these operations use
- the DOS rename service, 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 reoganizations of your hard disk.
-
- "Move" (<Shf>C) and "move into" (<Shf>I) default to straight "copy"
- and "copy into" if different disks are selected in the source and target
- panels. Moving may be terminated with <Escape>.
-
- _____
-
- Copying Just the Files. . .
-
- The command "J" (for Just files) works somewhat like the 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.
-
- _____
-
- 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
-
-
- CM_FILER -- Chapter 3 3-5
-
-
- 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 CF_TRASH.CAN directory. As in the main module, the alternative
- "hard" delete function is "<Ctl>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 "Yes", 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 <Ctl>H and reexamine the remnants
- of the structure you tried to delete.
-
- _____
-
- 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>. Move back to the tree with the
- right or left arrow key. Or, to perform an operation on a file in the
- "Show files" list, press <Rtn> with the cursor on that file. CF
-
-
- CM_FILER -- Chapter 3 3-6
-
-
- immediately returns to the main module, to the directory selected, and
- places the cursor on the file selected from the tree "Show files" list,
- ready for you to edit, view, execute, copy, etc. Leave the "Show files"
- mode with <Esc> or "S" from either panel.
-
- _____
-
- Find a File. . .
-
- One of the most powerful functions in the tree arsenal is the file
- 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.
-
- CM_FILER offers a file finder which gives you an instant visual cue
- to the directory(ies) containing the file you are looking for. Simply
- press "F" (for "Find file"). A data window opens at the bottom for you
- to enter the name of the file to search on. It supports the "?" and "*"
- wildcards, where "?" means "any character in this position of the file
- name or extension", and "*" means "any string of characters in the
- remainder of the file name or extension". (For example "CM_*.*" would
- find any file whose name begins with the characters "CM_", with any
- extension. "*.COM" would find all your .COM files, and so forth.)
-
- Enter the search name and, 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 blinking;
-
- o The cursor has automatically repositioned to the topmost blinking
- directory; and
-
- o The file list window has opened in the target path, and all the
- file matches are listed in alphabetical order at the top of the
- window, and are blinking.
-
- 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 blinking
- subdirectories containing file matches. The cursor movement in the "Find
- files" mode that lets you quickly position up or down to the next
- directory containing a file match is <Shf><Up/Down Arrow>. Use <Shf><Down
- Arrow> to see all the directories with a match.
-
- As in "Show files" mode, you may arrow across to the file window and
- browse through the file name listing. Return to the tree source panel
- with the other arrow, or return to the main module to the file selected
- in the "Find files" window using <Rtn>. Quit "Find files" mode with
- <Esc> or "<Ctl>F" from either panel.
-
-
-
-
-
- CM_FILER -- Chapter 3 3-7
-
-
- _____
-
- Print a Hard Copy of the Tree. . .
-
- The command "<Alt>L" (same syntax as in the main module) prints a
- copy of the tree structure to the printer.
-
- _____
-
- Precaution Regarding CF_TRASH.CAN. . .
-
- The directory CF_TRASH.CAN is not permitted as the source for a copy
- or move operation. Since this directory contains files whose date/time
- stamps were reset to the current date and time when they were "soft
- deleted", they will generally APPEAR to be newer than more current files
- of the same name elsewhere on the disk. Thus indiscrimant copying or
- moving of them may overwrite later files. Files in this directory may
- ONLY be moved/copied from the main module, and only after confirmation.
-
- _____
-
- Help. . .
-
- A one-page help summary may be summoned on-line at any time within
- the tree module with the command "H", just as in the main module.
-
- _____
-
- Leaving the Tree Functions. . .
-
- There are three ways to leave the tree display. <Rtn> 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.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 3 3-8
-
-
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- TUTORIAL -- Chapter 4: Executing Child Processes:
-
-
- 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 "child processes" with an economy of keystrokes.
-
- Running programs in the DOS environment is one of the more
- cumbersome and confusing aspects of this operating system, and therefore,
- by its nature, this chapter is not terribly straightforward. I will make
- it as simple as I know how.
-
- _____
-
- Child Process Defined. . .
-
- A "child process" is nothing more than another program, loaded and
- 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. The more layers of child
- processes you have at any time, the more RAM you eat up for the currently
- running program with the resident code of generations of parents waiting
- to take back over.
-
- _____
-
- 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 86 KB stay resident (the CF.COM kernel plus the 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 16 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"). "Large" is the default in a virgin copy of CF.COM. The
-
-
- default setting embedded in the CF.COM file on disk gets updated to the
- current value anytime you update the user-defined F1-F9 applications
- table with the command <Shf>F10 - <Ctl><Rtn>.
-
- There is a tradeoff 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 delay in returning to CF while the resident kernel
- reloads the overlay. You be the judge. The best thing is that you can
- decide before each child, 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 provided for in CF.
-
- _____
-
- Executing a Program from the Main Screen. . .
-
- You can run any "executable" (.COM, .EXE or .BAT) file from CF,
- as a child process, 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"). This is
- ideal if the child process is located in the same directory as any files
- it might look for, and it does not need a command line to tell it what
- files to operate on or what optional switches to set.
-
- _____
-
- Execution with Command Line. . .
-
- However, many programs expect data in the "command line", such as
- the name of a file to operate on, and CF has provided several ways of
- constructing these command lines. The simplest is this: First, position
- the cursor on the file you want to execute as a child process, and press
- "X" (for "eXecute"). A prompt message will tell you this file is
- "queued", its path and name put into a special buffer in RAM, lined up
- and waiting for the word from you to commence execution as soon as you
-
-
- CM_FILER -- Chapter 4 4-2
-
-
- select in the source panel the drive and directory the child process will
- want as its default path to the files it will operate on. Select the
- default path you want in the source panel, and then press "<Alt>X". A
- data entry window opens at the bottom, in which you may enter a command
- line for the child's use. Enter the command line data your application
- expects, and hit <Rtn> to run.
-
- _____
-
- Execution with a Single File Name in Command Line. . .
-
- The simplest case of the command line is that of a file name. One
- of the optional ways of running the PC-Write ED.EXE file, for example, is
- to specify in the command line the name of the file you want to edit. CF
- offers a shorthand way of running a program with a one-file-name argument
- as the command line. Put the cursor on the name of the program file you
- want to run and press "X" as above. The program is queued up. Now put
- the cursor on the file you want the program to operate on, and press
- "<Ctl>X". It's off and running, editing (or whatever other operation
- it's doing on) that file. Two keystrokes.
-
- 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.
-
- _____
-
- "Seeding" the Command Line. . .
-
- In many cases, the above quick way to specify a one-file-name
- command line is not enough. You may find a need to "seed" the command
- line with several file names (of the form
- "filename.ext",
- which presumes the default drive/current path), or several complete file
- "specifications" (the FULL "description" of the file's location and name,
- of the form
- "D:\direc1\direc2\...\finename.ext",
- where D stands for the drive letter, which gives explicit directions on
- how to get to the file and presumes nothing about its location.)
-
- In CF, there are shorthand ways of "seeding" the command line window
- with file specifications and names. These may be used either before or
- after queuing the child program file with X.
-
- o To seed the command line with the FULL specification (path PLUS
- name) of a file on which you want the child process to operate, put the
- cursor on the file entry and press "<Alt>C" (the "C" in this case is a
- mnemonic for "build Command line"). The information window at the bottom
- will show you the command line in its current state. This procedure may
- be repeated to build a command line as long as there is room in the
-
-
- CM_FILER -- Chapter 4 4-3
-
-
- command line buffer. The command line is limited to 125 characters.
-
- o Just before pressing <Alt>X to show the command line window for
- final editing before executing the queued up child process, you may
- "<Alt>Tag" one of more files in the directory you have set up as the
- child's default path. These file names, WITHOUT paths specifications,
- will then all appear in the command line in the order they were
- <Alt>Tagged following any file specs seeded with <Alt>C.
-
- Now press <Alt>X to open the data window with the seeded command
- line. Once you have edited the command line the way you want it, hit
- <Rtn>, and the child program is off and running. After the child process
- finishes and returns control to CF, its file specification stays in the
- "queue" buffer until you queue another executable file by pressing X, so
- you may perform multiple operations of the same child process just by
- seeding the command line again as above, and pressing <Alt>X again. As a
- further time-saving feature, you may recall the last command line by
- pressing the up arrow or <PgUp> while in the command line entry field.
-
- Once you get used to the above conventions, you will find that in
- many situations you don't need to edit the seeded command line, and the
- key sequence <Alt>X-<Rtn> seems cumbersome. For those cases I have
- included the option "<Shf>X". Use it after you have seeded the command
- line using <Alt>C and/or <Alt>T, and avoid the extra <Rtn> stroke.
-
- There is an even shorter-hand way of specifying a single file name
- in the command line from the current directory and beginning the
- execution of the child in the execute queue. Just put the cursor on the
- file name entry in the source panel that the child process is going to
- act on, and press "<Ctl>X". For example, if you use PC-Write, just put
- the cursor on the ED.EXE file, press "X", put the cursor on the file you
- want to edit, and press "<Ctl>X".
-
- _____
-
- Changing the Command Line "Seed" Delimiter. . .
-
- You probably noticed that there was always a space between multiple
- entries in the seeded command lines created using the <Alt>C and <Alt>T
- operators by the procedures above. But what if your application looks for
- commas as the field delimiters for data in the command line, instead of
- blanks? Just press "<Ctl><Rtn>" from the main screen to pick from three
- choices for default command line field delimiters -- space, comma, and
- semicolon.
-
- _____
-
- Customizing Your Child Process 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"
-
-
- CM_FILER -- Chapter 4 4-4
-
-
- 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
- <Shf>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 offering for each, labelled "F1 Comm Line =
- ", etc. Further down the page, you will see places for similar entries
- for ZIP and UNZIP, 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 the "F1 = " data window, just type in the filename, including
- extension, of an executable file you use frequently, and any frequently
- used command line that you would like to show up as a default offering
- when you queue the file for execution. 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").
-
- Repeat the process for "F2 = ", etc. Once you have made all the
- entries you wish, press "<Ctl><Rtn>" to leave the F-key data entry
- screen. ("<Esc>" will abort the edit.) The kernel CF.COM will then find
- and update itself, embedding in its own file all this customized F-key
- information. (A caveat for DOS v2 users -- CF.COM will find itself
- PROVIDED it is on a path in the DOS path environment, and you have kept
- it named CF.COM or CM_FILER.COM or CMFILER.COM).
-
- IMPORTANT NOTE: While it is updating the F1 through F9 selections,
- CF.COM also records the current state of the hide, compare and overcopy
- switch settings, the current ordering scheme, the current command line
- delimiter character, and the current kernel size selection (L or S). To
- update the embedded values of these parameters at any time, just press
- <Shf>F10 and <Ctl><Rtn>.
-
- There are three ways to now use these F-key options: (This seems
- awfully confusing, but stay with me -- these features are what will
- really make CF useful to you!)
-
- o Press the F-key corresponding to an application you specified with
- the <Shf>F10 operation. (This may be done from either the main screen OR
- the F-key listing screen shown by pressing just F10.) You will get the
- message at the bottom that that executable file is queued up for
- execution, just as though you had hunted it down and pressed "X". Seed
- the command line and set up the path desired in the source panel as
- before, and press <Alt>X to get the command line entry window, also as
- before. This time, though, if you had specified a default command line
- offering for this F-key, it would appear in the command line window, IN
-
-
-
- CM_FILER -- Chapter 4 4-5
-
-
- FRONT OF the seeded entries, if any. Edit the command line if desired,
- and press <Rtn> to start execution.
-
- o OR, if you know the command line will be the way you want it, and
- you are bugged by the extra <Rtn> keystroke to accept the seeded command
- line, seed the command line with <Alt>C if you want, set up the source
- panel to the directory you want, <Alt>Tag any files from this directory
- you want to appear in the command line, and hit <Shf>F-key. The
- application will run immediately with the seeded command line, with the
- default F-key command line offering between the "<Alt>C" seeds and the
- "<Alt>T" seeds.
-
- o OR, if you are just operating on one file, put the cursor on the
- name of that file and press a <Ctl>F-key for instant one-key execution.
- In this case, the F-key default command line offering will appear in the
- command line preceeding the name of the file the cursor was on. (This is
- the feature I use most. I probably should have described it first!)
-
- (There is, in fact, a rule as to where the F-key default command
- line offering gets placed during the construction of the command line. It
- is inserted at the point that the F-key itself (or F-key modified by
- <Shf> or <Ctl>) is pressed. The file names <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 <Shf>X to execute with no edit of the command line. The program
- assigned by you to the <F1> key would run, with a command line consisting
- of the file spec <Alt>C'd in (1), the F1 default command line offering,
- and the file name <Alt>T'd in (3), all separated by the command line
- delimiter character last selected from the main screen with <Ctl><Rtn>.
-
- 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 the standard
- 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 <Shf>F10 data screen.
-
-
-
-
- CM_FILER -- Chapter 4 4-6
-
-
- _____
-
- 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, <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. <Alt>Tag them in the order in which you
- want PKZIP to compress them.
-
- 3. Now then press "Z". CF will show you a command line at the
- bottom of the screen, in the PKZIP syntax (options first, then .ZIP
- file first, 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 line. (Remember, you can toggle between Push Right and
- Overstrike.) Once you are satisfied with the command line, press
- <Rtn>.
-
- [In step 2 above, if you do not <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 line.]
-
- [In step 1 above, if you do not <Alt>Tag a target .ZIP file, CF
- assigns a default .ZIP file name for PKZIP to create, which is either:
-
- (1) the first <Alt>Tagged file in the source path from step 2, or
-
- (2) if no source files are <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
- line, you can bypass the extra <Rtn> keystroke to enter the command line
- by pressing "<Shf>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 line if necessary, and press <Rtn>.
- As with ZIPping above, if you know you don't have to edit the command
- line, press "<Shf>U" instead.
-
-
-
- CM_FILER -- Chapter 4 4-7
-
-
- 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 <Shf>F10 feature. Just follow the procedure and
- precautions under "Customizing Your Executable File Specifications"
- above, and operate on the " ZIP = " and "UNZIP = " 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 (" ZIP Options =" , "UNZIP
- 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 line most
- times, you may start getting bugged about having to always hit <Rtn>
- when you see the command line displayed. There is an alternative!
- Just like with the tailored F-keys, hit "<Shift>Z/U" for instant
- ZIPping/UNZIPping.
-
- _____
-
- Specifying a Password for Access from Screen Saver. . .
-
- At the very bottom of the "<Shf>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.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Chapter 4 4-8
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- REFERENCE -- Description by Operation:
- _________________________
-
- DISK/DIRECTORY OPERATIONS:
-
- "N" -- New disk -- Select a new disk drive for the source panel, the
- one with the cursor. Must be used to announce disk media
- changes. In right-hand panel, <Rtn> after N closes the panel.
-
- "<Rtn>" -- 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.
-
- "<Shf><Rtn>" -- Display subdirectory in target panel -- Displays the
- subdirectory under 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. The same thing can be
- done with two strokes -- <Home> (to get to top line of the
- subdirectory listing, which is always "<PARENT>"), then <Rtn>.
-
- "<Shf>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.
-
- "<Shf>\" -- Display root directory in target panel.
-
- "<Shf>*" -- Display source directory in target panel.
-
- "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" -- Line print directory listing -- Prints a listing of the
- current directory if cursor in directory panel, and includes notes
- if cursor in notes panel (activated by letter "O").
-
-
- "<Shf>T" -- Transfers 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).
- __________________________
-
- FILE OPERATIONS:
-
- "G", followed by a letter -- Move cursor to ("Go to...") file with that
- first letter.
-
- "<Alt>G", then letter -- Go to directory with that first letter.
-
- "<Shf><Lf/Rt Arr> -- Jump across to identical file name in opposite panel
- when highlighted in comparison mode.
-
- "T" -- Tag file -- Applies or clears a "normal" tag to the file under the
- cursor (i.e., "toggles" the state of the tag). Window at bottom of
- screen shows number of files tagged.
-
- "<Alt>T" -- Alternate-Tag file -- Applies or clears an "alternate"
- (sometimes referred to as "append" because of its principal
- function) tag to a file. "Alternate" tags are numbered (1-9,a-z) to
- show the order of application, for the order-critical operation of
- file concatenation, discussed below, and are white on red.
-
- "A" -- Tag All files -- Applies or clears normal tags to all files.
-
- "<Ctl>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 with same date or Newer.
-
- "<Alt>O" -- Tag all files with same date or Older.
-
- "<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 bother overwrite
- identical files, asks for verification before overwriting newer
- files or read-only or hidden 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".
- If insufficient room on target path, does not perform operation,
- and signals the user.
-
-
-
- CM_FILER -- Operation Reference OpRef-2
-
- "<Shf>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), shifts back to copy mode.
-
- "B" -- Back up -- Copies tagged files (or file at cursor if none
- tagged) from source to source, assigning to each new file the
- extension "._" (underscore character) plus the first two letters
- of the original file's extension. This results in backup files
- with unique names unless two files differ only in the third
- letter of the extension (eg, ".BAK" and ".BAS" would both back-up
- to "._BA"). With files "<Alt>Tagged", creates file in source
- with the "backup" form of the "append" extension (ie, "._AP), and
- concatenates. If insufficient room on source path, does not
- perform operation, and signals user.
-
- "D" -- Delete -- Deletes all tagged files on source path. If no files are
- tagged, deletes only the file under 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
- \CF_TRASH.CAN (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, but other
- utilities contain "undelete" facilities, but these are not always
- reliable.
-
- "<Ctl>D" -- "hard" Delete -- Uses DOS delete function regardless of disk
- type.
-
- "<Shf>F" -- Freshen files -- "Freshens" the files in the source panel
- from the target. Useful in updating backup disks. If no files
- tagged in source, tags all in source, then tags in target all NEWER
- versions of same-named tagged source files and copies them to
- source. If files were tagged in source, only these files are looked
- for in target, vice all source.
-
- "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 <Rtn>. 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.
-
- "<Rtn>" -- Display file -- With the cursor on a file, views that file.
-
- "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 "0" clears all
- attributes for any files tagged, or for the file under the cursor
-
- CM_FILER -- Operation Reference OpRef-3
-
- 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.
-
- "L" -- Line print -- Put the file under 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, and while in the DOS COMMAND.COM processor during shell-
- out.) Up to five files may be thus queued. "<Shf>L" displays the
- print queue. "<Ctl>L" clears the print queue. "<Ctl>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, <Ctl>F sends a form feed immediately.)
-
- "V" -- Volume label -- Permits entry of a new volume label for the disk
-
- "<Shf>O" -- Toggle "file overcopy" switch. With switch off (=N), files
- already extant in target with same date/time and size as in source
- are not overwritten. With switch on (=Y), they are.
-
- "<Alt>F" -- Change file date/time stamp.
-
- _________________________
-
- FILE EDITING/VIEWING:
-
- "<Rtn>" -- View a file -- When the cursor is placed over a file,
- "<Rtn>" 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>+ and -" turn
- on and off the color-enhanced display of record delimiters (CR,
- LF, CR+LF, LF+CR). Only the first 80 characters of a record are
- shown. You can use "<Shf> right arrow" to get to the end of the
- record (if your keyboard has a separate arrow-key cluster) to see
- how long it is, and then backtrack toward the beginning of the
- record. "<Esc>" or "<Rtn>" exits View mode.
-
- "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>/<Shf><Tab>;
- <Insert> (toggles mode between Push Right and Overstrike); <Rtn>
- (inserts the record delimiter previously selected with
- <Ctl><Rtn>; default is CR+LF). <Ctl>Y deletes line; <Ctl>D deletes
- to end of line. <Alt>H provides a one-page help screen.
- Block operations are performed with <Alt> {M (mark), Y (delete), V
- (move), C (copy), O (output to file), and P (print)}. <Ctl>F form-
- feeds the printer. Enter any ASCII code through "<Alt>-numeric-
- keypad" combination, except NULL, which is entered by <Alt>N.
-
- "<Esc>" exits Edit mode, and CF asks you if you want to save the
-
- CM_FILER -- Operation Reference OpRef-4
-
- edit. In most cases you will probably answer yes. Then it asks if
- you want to reuse the original, prior-to-edit file's date/time stamp
- on the revised file, and if you want to rename the original file as
- *.BKP. (When you do, CF deletes any previously saved file with the
- name *.BKP, even if it had a read-only attribute.) If it encounters
- problems with disk size or errors, it will give you further
- instructions. For example, if after saving the original file as
- *.BKP, it finds insufficient room on the source path to write the
- edited version of the file, it will instruct you to put a new disk
- in drive A, just so it can capture the edit for you.
- _________________________
-
- TREE OPERATIONS:
-
- Cursor Movement -- Up/Down Arrow moves one screen line at a time.
- <PgUp/PgDn> moves to top or bottom of screen, then moves screen 19
- lines, or to very top/bottom of tree. <Home>/<End> moves to very
- top/bottom of tree. <Shf> Up/Down Arrow moves up/down one
- directory at same level (to next subdirectory up or down in parent
- directory), or, in "file-find" mode, 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".
- <Shf>Left/Right Arrow moves across to the path match in comapre
- mode.
-
- "N" -- New disk -- Allows changing drives or disks, as in main module.
-
- "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 redated and collected in
- \CF_TRASH.CAN.
-
- "<Ctl> 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.
-
- "<Shf>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.
-
- "<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 into the target path.
-
-
- CM_FILER -- Operation Reference OpRef-5
-
- "<Shf>I" -- Move structure Into target path -- If both panels selected to
- same disk, moves the source structure INTO (vice UNDER) the target
- subdirectory, as with "I".
-
- "J" -- Copy Just the files in source directory to target directory.
-
- "<Shf>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,
- "<Rtn>" returns to main module, to directory and file selected.
- Arrow back to tree. "<Esc>" or "S" cancels "Show files".
-
- "F" -- Find file(s). Specify file search string. Positions to first
- match; directories with matches and matching files blink.
- "<Shf><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 "<Rtn>" to file in main module for file operation.
- "<Esc>" or "<Ctl>F" to cancel "Find files" mode.
-
- "2" -- Toggle directory's hide attribute.
-
- "<Shf>O" -- Toggle "file overcopy" switch. With switch off (=N), files
- already extant in target with same date/time and size as in source
- are not overwritten. With switch on (=Y), they are.
-
- "<Ctl>H" -- Toggle the hide switch and redisplays 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 blinking "*H"
-
- "<Ctl>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.
-
- "M" -- Makes directory.
-
- "<Alt>L" -- Prints (via Line printer) a hard copy of the tree shown on
- the source panel side of the screen.
-
- "<Rtn>" -- From tree structure, returns to main module with currently
- selected path(s), and cursor positioned to top of listing. From
- file list in "Show files" or "Find files" mode, returns to main
- modules with currently selected paths, but cursor positions to file
- selected.
-
- "<Esc>" -- Returns to main module with path(s) as set on entry.
-
- "<Alt>Q" -- Quits CF altogether; default path as selected in source.
-
-
-
-
-
-
- CM_FILER -- Operation Reference OpRef-6
-
- _________________________
-
- CHILD PROCESSES:
-
- "S" -- Shell to DOS -- Set 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 under 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 by you through a CF panel display.
-
- "X" -- prepare to eXecute with command line -- "Queues" file under cursor
- for execution. File remains in queue awaiting execution, initiated
- by one of the followup key combinations <Alt>X, <Shf>X or <Ctl>X
- after paths are set and command line seeded as desired. Command
- line is deleted after file completes execution.
-
- "<Alt>X" -- edit command line and initiate eXecution -- Opens a window
- for editing the queued child process's command line containing any
- "seeds" placed by <Alt>C and/or <Alt>T, for editing. Execution
- starts by pressing <Rtn>. The previously used command line may be
- summoned by pressing the up arrow or PgUp.
-
- "<Shf>X" -- initiate eXecution, no editing of command line. Same as
- <Alt>X, except file executes command line as-seeded, with no
- editing. <Alt>Tagged files in active panel are added to command
- line.
-
- "<Ctl>X" -- initiate eXecution, no editing of command line, and ONLY the
- file name under cursor is added as last entry in seeded command
- line. <Alt>Tagged files in active panel are ignored.
-
- "<Alt>C" -- seed Command line with file specification. Adds the full
- specification, including path, of the file under the cursor to the
- command line buffer, and shows status of command line being built.
- Command line may be added to using this feature before or after
- executable file is queued up with X.
-
- "<Alt>T" -- Tag the file names in order for addition to the command line.
- <Alt>Tagged files are added to the seeded command line as the final
- step after <Alt>X or <Shf>X is pressed.
-
- "<Ctl><Rtn> -- select delimiter for use by the "seeding" operations
- <Alt>C and <Alt>T between entries of command line. Choices are
- blank, comma, semicolon.
-
- "<Shf>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 ZIP/UNZIP command line default
- switches, and an access password. <Ctl><Rtn> to record selections
- in current copy of CF.COM/CM_FILER.COM/CMFILER.COM (names are
-
- CM_FILER -- Operation Reference OpRef-7
-
- searched in that order, on current directory first, then on each
- path in the DOS environment). Or <Esc> to cancel edit. <Ctl><Rtn>
- also records as default values for the next execution of CF.COM the
- current states of the Hide and Compare switches, and the current
- settings for file ordering mode, resident kernel size option,
- command line delimiter.
-
- "F10" -- Display current entries F1-F9, ZIP/UNZIP options, password.
- The commands "F1-F9", "<Shf>F1-F9", and "<Ctl>F1-F9" may all
- be issued from this display.
-
- "F1-F9" -- queue a user-defined executable file spec -- Effect is same
- as locating the file with the cursor and hitting X. F-key default
- command line offering is added to command line, which may already
- have seeded entries.
-
- "<Shf>F1-F9" -- queue user-defined executable, add its default command
- line offering to the command line being built, add any <Alt>Tagged
- files in current directory (active panel), and execute immediately.
-
- "<Ctl>F1-F9" -- queue user-defined executable, add its default command
- line to the command line being built, add ONLY the file name under
- the cursor, and execute immediately. <Alt>Tagged files in active
- panel are NOT added to the command line before execution.
-
- "Z" -- PKZIP (c) compression -- Be sure PKZIP.EXE is on one of the
- paths in your DOS path command, or specify the complete path spec
- to it using "<Shf>F10."
-
- To ZIP, select on one panel a target path for the compressed .ZIP
- file, and optionally <Alt>Tag an existing .ZIP file. Then switch to
- the other panel and select a source path, optionally <Alt>Tag files
- to compress in order of desired appearance on command line, press
- "Z", edit command line if necessary, and press <Rtn>. To avoid this
- extra <Rtn> keystroke, hit "<Shf>Z" instead.
-
- "U" -- PKUNZIP (c) extraction -- As above, be sure PKUNZIP.EXE is on
- a path set in your DOS path command, or specify the complete path
- spec to PKUNZIP.EXE with "<Shf>F10."
-
- To UNZIP, select on 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 <Rtn>. Alternatively, for
- instant UNZIPping, use "<Shf>U".
- _________________________
-
- DISPLAY ENHANCEMENT FEATURES:
-
- "+" and "-" -- Shift the file size display to expanded and contracted
- mode. Expanded mode shows explicit size, but uses the file time
- field. Contracted mode is in KB or MB.
-
- "H" -- Help -- Shows a three-page help screen with abbreviated
- explanation of the most-used operations.
-
- CM_FILER -- Operation Reference OpRef-8
-
- "O" -- nOtes -- Displays the directory notepad in the opposite panel
- for viewing/entering/editing narrative comments about files. All
- the editing and cursor control key combinations work. Notes
- follow the files around when copied. CF sifts out any entries
- from the NARATIVE.CF file that do match files then existent in
- the directory each time the notes are called up, and updates the
- file on exit <Esc>.
-
- "<Ctl>O" -- select file Ordering mode -- Permits selection of one of
- seven modes of file ordering. Cursor shows current selection.
-
- "<Ctl>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.
-
- "<Ctl>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.
-
- "<Ctl>M" -- Mask -- Allows editing the Mask template, whose initial
- value is all ?'s ("wild card" characters). <Tab> moves cursor to
- the extension field, <Shift><Tab> to the name field. Press <Rtn>
- to enter the template modification and redisplay the panels.
-
- "<Spacebar>" -- Toggles date/time display on main screen.
- _________________________
-
- MISCELLANEOUS:
-
- "<Alt>Q" or "<Esc>-<Esc>" -- Quit CF -- Terminate to DOS. <Esc>-<Esc>
- reestablishes the default drive/directory CF encountered on
- execution; <Alt>Q leaves as currently set in source panel.
-
- Password Protection -- Bottom entry in "<Shf>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.
-
- "<Ctl>S" -- Forces main screen into screen-saver mode immediately, rather
- than waiting 1-1/2 minutes. Good for instantly invoking password
- protection.
-
- "<Ctl>F" -- Form feeds the line printer when the printer is not in use.
-
-
-
-
-
-
-
-
-
-
-
-
- CM_FILER -- Operation Reference OpRef-9
-
-
-
-
- *******************************
- * *
- * CM_FILER -- Version 5.22 *
- * *
- *******************************
-
- MEMORY MAPS:
-
- 1. CM_FILER running:
-
- ---
- |--- 17 KB Kernel
- ---
- |--- 74 KB Overlay
- ---
- |--- 16,32, or 64 KB for directory lists
- ---
- |--- 32 KB reserved for editor copy buffer
- ---
- |--- All remaining allocatable RAM (48 KB min) -- File copy buffer
- ---
-
- 2. Editor module of CM_FILER running:
-
- ---
- |--- 17 KB Kernel
- ---
- |--- 74 KB Overlay
- ---
- |--- 16,32, or 64 KB for directory lists
- ---
- |--- 32 KB for editor copy buffer
- ---
- |--- All remaining allocatable RAM (48 KB min) -- Line pointers,
- | file area and line buffer
- ---
-
- 3. Child Process running under CM_FILER:
-
- ---
- |--- 17 KB Kernel
- [ --- ]
- [ |--- 74 KB Overlay (Left intact if "Large" kernel option in force ]
- [ --- ]
- |--- All remaining allocatable RAM -- For Child's use
- ---
-