home *** CD-ROM | disk | FTP | other *** search
-
-
-
- X C C P
-
- Version 1.0
- An Extended Console Command Processor
- for
- CP/M-80
-
-
-
- 1.0 INTRODUCTION
-
- XCCP is a substitute console command processor (CCP) for Digital
- Research Inc.'s CP/M-80 operating system. XCCP provides additional
- functions not provided in the "stock" CP/M CCP at the expense of the
- loss of a small portion (1 Kbyte) of the transient program area (TPA).
- The memory lost in this way is not usually important on systems having
- 64K bytes of memory.
-
-
- 1.1 ADDED FUNCTIONALITY
-
- XCCP provides the following features not provided by the distributed
- CP/M CCP.
-
-
- 1.1.1 COMMAND RECALL
-
- Up to approximately 240 characters of previous commands may be
- recalled for re-issue with a single keystroke.
-
-
- 1.1.2 COMMAND LINE EDITING
-
- Both recalled commands and newly entered commands may be edited using
- cursor control keys and dual mode (insert/overstrike) character
- insertion. Characters may be deleted anywhere on the command line.
-
-
- 1.1.3 COMMAND RECOGNITION
-
- A list of possible commands or filenames matching a partially typed
- command line can be displayed with a single keystroke without
- destroying the current command. No more aborting a command to list
- your directory because you forgot an obtuse filename.
-
- If no command has been started, a list of all possible commands that
- may be issued from the current user area is displayed.
-
-
- 1.1.4 COMMAND COMPLETION
-
- If a partially typed command has only a single possible matching
- command or filename, the rest of the command may be filled in on the
- command line automatically, in most cases eliminating the need to type
- long commands out in their entirety.
-
-
-
-
-
-
-
-
- 1.1.5 WILDCARD RECOGNITION
-
- Filenames on the command line may contain wildcard characters, and
- with a single keystroke, all possible matches can be displayed. This
- is useful, for example, if you have forgotten the file name, but
- remember the file type. If only one match is found, it is inserted on
- the command line in place of the wildcarded filename.
-
-
- 1.1.6 MULTIPLE COMMANDS PER LINE
-
- Multiple commands, up to 127 characters, may be issued on a single
- command line for sequential execution by separating the individual
- commands with a special delimiting character.
-
-
- 1.1.7 AUTOMATIC SEARCH OF DISK A USER AREA 0
-
- If a command is not found in the current user area, user area 0 on
- disk A is automatically searched.
-
-
- 1.1.8 DISK AND USER SPECIFICATION
-
- Changing user area and disk are accomplished with the same syntax,
- eliminating the need for the cumbersome USER command. Additionally, a
- user number may optionally be included in the command (with or without
- a disk designator), causing that user area to be searched for the
- command instead of the current user area.
-
-
- 1.1.9 NO INVOLUNTARY WARM RESTARTS
-
- Return to the CCP from an application program is much faster under
- XCCP, since warm restarts are only performed upon user request. A
- control-C may be entered at any time, even in the middle of a command
- line, resetting the disk system without disrupting the command in
- progress.
-
-
- 1.1.10 EXIT TO STANDARD CP/M CCP
-
- A single keystroke returns control to the standard CCP, although this
- is unlikely to be desirable except when it is necessary to perform a
- SAVE operation.
-
-
- 1.1.11 USER NUMBER DISPLAYED IN PROMPT
-
- The current CP/M user area number is displayed in the XCCP prompt as a
- constant reminder.
-
-
-
-
-
-
-
-
-
-
- 2.0 XCCP COMMANDS
-
- To invoke XCCP, simply type XCCP as you would for any CP/M program.
- Optionally, an XCCP command line may be included in the invocation.
-
- Example: A>XCCP B15:;FIND MAST.LST MDM712
-
-
- 2.1 RECOGNITION AND COMPLETION
-
- The ESC (Escape, ASCII 27 decimal) key may be used whenever you are
- unable to recall the exact spelling of a command or filename, or
- simply to avoid typing long commands or filenames in their entirety.
-
- After ESC is entered, the characters on the command line between the
- cursor and the first preceeding space are used to search for a
- matching file on the appropriate disk and user (Disk A, user 0 is
- searched if the characters being used for the match are the first word
- of the command line). If more than one file is found, the matching
- files are listed, and the command redisplayed for user action. If
- only one match is found, the command is filled in with that file or
- command. The cursor is left at the end of the command, for further
- user input. You may hit RETURN at this point to issue the command.
-
-
- 2.2 COMMAND RECALL
-
- Commands are maintained in a circular buffer in memory. That is, when
- the end of the list is reached, the next command displayed will be the
- first one again. The WORDSTAR arrow keys (^E for uparrow, ^X for
- downarrow) are used to move about within the recall command buffer.
- The uparrow will redisplay commands issued before the displayed
- command, while the downarrow will display commands issued after the
- command currently displayed. In both cases, if the end of the buffer
- is reached, the cycle simply starts over.
-
- If, after perusing the recall command buffer, you can't find the
- command you want, and none of the ones there are close enough to
- warrant editing, you can cancel the currently displayed command with
- ^U.
-
- 2.3 COMMAND LINE EDITING
-
- The WORDSTAR arrow keys (^S for leftarrow and ^D for rightarrow) can
- be used at any time to move the cursor about on the command line.
- Once the cursor is positioned, characters may be entered in either
- overstrike or insert mode. The initial mode is overstrike. The ^V
- key is used to toggle the editing mode between overstrike and insert
- (as in WORDSTAR).
-
- When the cursor is not at the end of the command line, both the delete
- and backspace keys will remove the character which is at the cursor
- position, appearing to "gobble up" the command line to the right of
-
-
-
-
-
-
- the cursor. When the cursor is at the end of the line, these keys
- remove the character to the left of the cursor, allowing easy deletion
- of mistyped characters.
-
-
-
- 2.4 MULTIPLE COMMANDS PER LINE
-
- Multiple commands may be entered on a single line by separating the
- commands with a semicolon character. When the carriage return is
- struck, the commands will be executed in the order issued. There MUST
- NOT be any spaces between the semicolon and the characters on either
- side of it.
-
-
-
- 2.5 DISK/USER SPECIFICATION
-
- If a disk and/or user specification of the form du: is prefixed to a
- command (the first word of the command line or after a semicolon), the
- specified disk and/or user area is searched for the .COM file before
- A0:. Either or both the disk letter and user area number may be
- included in the command this way. File specifications on the command
- line MUST NOT have user area numbers, although disk designations are
- allowed, as in CP/M's standard CCP.
-
- Example: A6:WS C:TEST.DOC is acceptable to XCCP, while
-
- A6:WS C2:TEST.DOC is not.
-
-
- If the du: designation is entered alone on a command line, the default
- disk and/or user area is changed.
-
- 2.6 WARM BOOT
-
- The effects of a CP/M warm boot may be achieved through the use of
- CTRL-C. This results in a reset of the disk I/O subsystem, and is
- likely to be necessary after changing floppy disks. This function is
- normally done on most program exits, resulting in a delay in return to
- the CCP prompt. By making this function user requested, return to the
- CCP prompt on program exit is much faster with XCCP than with the
- stock CCP.
-
-
- 2.7 EXIT TO CP/M CCP
-
- Entering CTRL-Y in response to the XCCP prompt will restore the
- original CP/M CCP.
-
-
- 2.8 COMMAND CANCELLATION
-
- An entire command line may be revoked before issuance with the ^U
- character.
-
-
-
-
-
-
-
-
- 2.9 WILDCARD USE
-
- The wildcard translation feature of XCCP may be used to determine,
- before execution of a program, just which files will be affected by a
- command. For example, if the command ERASE *.HEX were terminated with
- an ESC rather than a carriage return, a list of the files which are
- about to be deleted would be displayed, allowing the user a last
- chance to abort the command before issuing the carriage return.
-
- Note that incomplete file specifications, such as T*.A, are treated as
- if they ended with wildcards (T*.A*), due to XCCP's command
- recognition/completion algorithm. Thus, in this case, more files than
- will actually be affected by the command may be displayed (e.g. both
- TEST.A and TEST.ASM would be displayed).
-
-
-
- 3.0 LIMITATIONS AND CONSTRAINTS
-
- A number of features of the standard CP/M CCP were left out in this
- first version of XCCP in order to avoid increasing XCCP's size beyond
- what could be easily tolerated in a 64 Kbyte system.
-
-
- 3.1 NO SUBMIT
-
- The CP/M SUBMIT command will not function under XCCP. Use ^Y to exit
- to the standard CCP before using SUBMIT.
-
-
- 3.2 NO SAVE
-
- There is no SAVE command in XCCP. Use ^Y to exit to the standard CCP
- before using SAVE. ^Y does not alter the contents of TPA memory.
-
-
- 3.3 NO BUILT-IN COMMANDS
-
- The CP/M CCP's commands DIR, REN, ERA, USER, and TYPE are not
- available in XCCP. Transient programs are included with XCCP to take
- the place of REN and ERA. USER is supersceded by superior facilities
- within XCCP, and a great number of DIR and TYPE programs are available
- in the public domain.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4.0 VERSION 2.0
-
- Version 2.0 of XCCP is expected to include a CP/M-compatible SUBMIT
- facility (all your existing .SUB files will work) with additional
- features such as internal variables, conditional branching, and nested
- procedures. Also planned for V2.0 are I/O redirection (like UNIX and
- MS-DOS's <, >, and | operators), key redefinition (as in QwikKey,
- Smartkey, etc.), and hierarchical directory support. These additional
- features will not increase the size of XCCP, since they will be
- implemented as overlays. The functions chosen for implementation in
- overlays were chosen with a view toward which functions access the
- disk in any case, and those functions which are the least utilized.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-