home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / XCCP / XCCP.DQC / XCCP.DOC
Text File  |  2000-06-30  |  12KB  |  367 lines

  1.  
  2.  
  3.  
  4.                                        X C C P
  5.  
  6.                                      Version 1.0
  7.                         An Extended Console Command Processor
  8.                                          for
  9.                                        CP/M-80
  10.  
  11.  
  12.  
  13.         1.0 INTRODUCTION
  14.  
  15.         XCCP  is  a  substitute console command processor  (CCP)  for  Digital 
  16.         Research  Inc.'s CP/M-80 operating system.   XCCP provides  additional 
  17.         functions  not provided in the "stock" CP/M CCP at the expense of  the 
  18.         loss of a small portion (1 Kbyte) of the transient program area (TPA).  
  19.         The memory lost in this way is not usually important on systems having 
  20.         64K bytes of memory.
  21.  
  22.  
  23.         1.1 ADDED FUNCTIONALITY
  24.  
  25.         XCCP  provides the following features not provided by the  distributed 
  26.         CP/M CCP.
  27.  
  28.  
  29.         1.1.1 COMMAND RECALL
  30.  
  31.         Up  to  approximately  240  characters of  previous  commands  may  be 
  32.         recalled for re-issue with a single keystroke.
  33.  
  34.  
  35.         1.1.2 COMMAND LINE EDITING
  36.  
  37.         Both  recalled commands and newly entered commands may be edited using 
  38.         cursor  control  keys  and  dual  mode  (insert/overstrike)  character 
  39.         insertion.  Characters may be deleted anywhere on the command line.
  40.  
  41.  
  42.         1.1.3 COMMAND RECOGNITION
  43.  
  44.         A  list of possible commands or filenames matching a  partially  typed 
  45.         command  line  can  be  displayed  with  a  single  keystroke  without 
  46.         destroying  the current command.   No more aborting a command to  list 
  47.         your directory because you forgot an obtuse filename.
  48.  
  49.         If  no command has been started,  a list of all possible commands that 
  50.         may be issued from the current user area is displayed.
  51.  
  52.  
  53.         1.1.4 COMMAND COMPLETION
  54.  
  55.         If  a  partially  typed command has only a  single  possible  matching 
  56.         command or filename,  the rest of the command may be filled in on  the 
  57.         command line automatically, in most cases eliminating the need to type 
  58.         long commands out in their entirety.
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.         1.1.5 WILDCARD RECOGNITION
  68.  
  69.         Filenames  on the command line may contain  wildcard  characters,  and 
  70.         with a single keystroke,  all possible matches can be displayed.  This 
  71.         is  useful,  for example,  if you have forgotten the  file  name,  but 
  72.         remember the file type.  If only one match is found, it is inserted on 
  73.         the command line in place of the wildcarded filename.
  74.  
  75.  
  76.         1.1.6 MULTIPLE COMMANDS PER LINE
  77.  
  78.         Multiple  commands,  up to 127 characters,  may be issued on a  single 
  79.         command  line  for sequential execution by separating  the  individual 
  80.         commands with a special delimiting character.
  81.  
  82.  
  83.         1.1.7 AUTOMATIC SEARCH OF DISK A USER AREA 0
  84.  
  85.         If  a  command is not found in the current user area,  user area 0  on 
  86.         disk A is automatically searched.
  87.  
  88.  
  89.         1.1.8 DISK AND USER SPECIFICATION
  90.  
  91.         Changing  user  area and disk are accomplished with the  same  syntax, 
  92.         eliminating the need for the cumbersome USER command.  Additionally, a 
  93.         user number may optionally be included in the command (with or without 
  94.         a  disk  designator),  causing that user area to be searched  for  the 
  95.         command instead of the current user area.
  96.  
  97.  
  98.         1.1.9 NO INVOLUNTARY WARM RESTARTS
  99.  
  100.         Return  to  the CCP from an application program is much  faster  under 
  101.         XCCP,  since  warm restarts are only performed upon  user  request.  A 
  102.         control-C may be entered at any time,  even in the middle of a command 
  103.         line,  resetting  the  disk system without disrupting the  command  in 
  104.         progress.
  105.  
  106.  
  107.         1.1.10 EXIT TO STANDARD CP/M CCP
  108.  
  109.         A single keystroke returns control to the standard CCP,  although this 
  110.         is  unlikely to be desirable except when it is necessary to perform  a 
  111.         SAVE operation.
  112.  
  113.  
  114.         1.1.11 USER NUMBER DISPLAYED IN PROMPT
  115.  
  116.         The current CP/M user area number is displayed in the XCCP prompt as a 
  117.         constant reminder.
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.         2.0  XCCP COMMANDS
  129.  
  130.         To  invoke XCCP,  simply type XCCP as you would for any CP/M  program.  
  131.         Optionally, an XCCP command line may be included in the invocation.
  132.  
  133.         Example:       A>XCCP B15:;FIND MAST.LST MDM712
  134.  
  135.  
  136.         2.1 RECOGNITION AND COMPLETION
  137.  
  138.         The  ESC (Escape,  ASCII 27 decimal) key may be used whenever you  are 
  139.         unable  to  recall the exact spelling of a  command  or  filename,  or 
  140.         simply to avoid typing long commands or filenames in their entirety.  
  141.  
  142.         After  ESC is entered,  the characters on the command line between the 
  143.         cursor  and  the  first  preceeding space are used  to  search  for  a 
  144.         matching  file  on the appropriate disk and user (Disk A,  user  0  is 
  145.         searched if the characters being used for the match are the first word 
  146.         of the command line).   If more than one file is found,  the  matching 
  147.         files  are listed,  and the command redisplayed for user  action.   If 
  148.         only  one match is found,  the command is filled in with that file  or 
  149.         command.   The  cursor is left at the end of the command,  for further 
  150.         user input.  You may hit RETURN at this point to issue the command.
  151.  
  152.  
  153.         2.2 COMMAND RECALL
  154.  
  155.         Commands are maintained in a circular buffer in memory.  That is, when 
  156.         the end of the list is reached, the next command displayed will be the 
  157.         first  one again.   The WORDSTAR arrow keys (^E for  uparrow,  ^X  for 
  158.         downarrow)  are  used to move about within the recall command  buffer.  
  159.         The  uparrow  will  redisplay commands  issued  before  the  displayed 
  160.         command,  while  the downarrow will display commands issued after the 
  161.         command currently displayed.   In both cases, if the end of the buffer 
  162.         is reached, the cycle simply starts over.
  163.  
  164.         If,  after  perusing  the recall command buffer,  you can't  find  the 
  165.         command  you  want,  and  none of the ones there are close  enough  to 
  166.         warrant editing,  you can cancel the currently displayed command  with 
  167.         ^U.
  168.  
  169.         2.3 COMMAND LINE EDITING
  170.  
  171.         The  WORDSTAR arrow keys (^S for leftarrow and ^D for rightarrow)  can 
  172.         be  used  at any time to move the cursor about on  the  command  line.  
  173.         Once  the  cursor is positioned,  characters may be entered in  either 
  174.         overstrike or insert mode.   The initial mode is overstrike.   The  ^V 
  175.         key  is used to toggle the editing mode between overstrike and  insert 
  176.         (as  in WORDSTAR).
  177.  
  178.         When the cursor is not at the end of the command line, both the delete 
  179.         and  backspace  keys will remove the character which is at the  cursor 
  180.         position,  appearing  to "gobble up" the command line to the right  of 
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.         the  cursor.   When the cursor is at the end of the line,  these  keys 
  188.         remove the character to the left of the cursor, allowing easy deletion 
  189.         of mistyped characters.
  190.  
  191.  
  192.  
  193.         2.4 MULTIPLE COMMANDS PER LINE
  194.  
  195.         Multiple  commands  may be entered on a single line by separating  the 
  196.         commands  with  a semicolon character.   When the carriage  return  is 
  197.         struck, the commands will be executed in the order issued.  There MUST 
  198.         NOT  be any spaces between the semicolon and the characters on  either 
  199.         side of it.
  200.  
  201.  
  202.  
  203.         2.5 DISK/USER SPECIFICATION
  204.  
  205.         If a disk and/or user specification of the form du:  is prefixed to  a 
  206.         command (the first word of the command line or after a semicolon), the 
  207.         specified  disk and/or user area is searched for the .COM file  before 
  208.         A0:.   Either  or  both  the disk letter and user area number  may  be 
  209.         included in the command this way.   File specifications on the command 
  210.         line MUST NOT have user area numbers,  although disk designations  are 
  211.         allowed, as in CP/M's standard CCP.
  212.  
  213.         Example:       A6:WS C:TEST.DOC is acceptable to XCCP, while
  214.  
  215.                        A6:WS C2:TEST.DOC is not.                              
  216.  
  217.  
  218.         If the du: designation is entered alone on a command line, the default 
  219.         disk and/or user area is changed.
  220.  
  221.         2.6 WARM BOOT
  222.  
  223.         The  effects  of a CP/M warm boot may be achieved through the  use  of 
  224.         CTRL-C.   This  results in a reset of the disk I/O subsystem,  and  is 
  225.         likely to be necessary after changing floppy disks.   This function is 
  226.         normally done on most program exits, resulting in a delay in return to 
  227.         the CCP prompt.  By making this function user requested, return to the 
  228.         CCP  prompt  on program exit is much faster with XCCP  than  with  the 
  229.         stock CCP.
  230.  
  231.  
  232.         2.7 EXIT TO CP/M CCP
  233.  
  234.         Entering  CTRL-Y  in  response to the XCCP  prompt  will  restore  the 
  235.         original CP/M CCP.
  236.  
  237.  
  238.         2.8 COMMAND CANCELLATION
  239.  
  240.         An  entire  command line may be revoked before issuance  with  the  ^U 
  241.         character.
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.         2.9 WILDCARD USE
  251.  
  252.         The  wildcard  translation feature of XCCP may be used  to  determine, 
  253.         before execution of a program,  just which files will be affected by a 
  254.         command.  For example, if the command ERASE *.HEX were terminated with 
  255.         an  ESC rather than a carriage return,  a list of the files which  are 
  256.         about  to  be  deleted would be displayed,  allowing the user  a  last 
  257.         chance to abort the command before issuing the carriage return.
  258.  
  259.         Note that incomplete file specifications, such as T*.A, are treated as 
  260.         if   they  ended  with  wildcards  (T*.A*),   due  to  XCCP's  command 
  261.         recognition/completion algorithm.  Thus, in this case, more files than 
  262.         will actually be affected by the command may be displayed  (e.g.  both 
  263.         TEST.A and TEST.ASM would be displayed).
  264.  
  265.  
  266.  
  267.         3.0 LIMITATIONS AND CONSTRAINTS
  268.  
  269.         A  number  of features of the standard CP/M CCP were left out in  this 
  270.         first version of XCCP in order to avoid increasing XCCP's size  beyond 
  271.         what could be easily tolerated in a 64 Kbyte system.
  272.  
  273.  
  274.         3.1 NO SUBMIT
  275.  
  276.         The CP/M SUBMIT command will not function under XCCP.   Use ^Y to exit 
  277.         to the standard CCP before using SUBMIT.
  278.  
  279.  
  280.         3.2 NO SAVE
  281.  
  282.         There is no SAVE command in XCCP.   Use ^Y to exit to the standard CCP 
  283.         before using SAVE.  ^Y does not alter the contents of TPA memory.
  284.  
  285.  
  286.         3.3 NO BUILT-IN COMMANDS
  287.  
  288.         The  CP/M  CCP's  commands DIR,  REN,  ERA,  USER,  and TYPE  are  not 
  289.         available in XCCP.   Transient programs are included with XCCP to take 
  290.         the place of REN and ERA.   USER is supersceded by superior facilities 
  291.         within XCCP, and a great number of DIR and TYPE programs are available 
  292.         in the public domain.
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.         4.0 VERSION 2.0
  312.  
  313.         Version  2.0  of XCCP is expected to include a CP/M-compatible  SUBMIT 
  314.         facility  (all  your existing .SUB files will  work)  with  additional 
  315.         features such as internal variables, conditional branching, and nested 
  316.         procedures.   Also planned for V2.0 are I/O redirection (like UNIX and 
  317.         MS-DOS's  <,  >,  and | operators),  key redefinition (as in  QwikKey, 
  318.         Smartkey, etc.), and hierarchical directory support.  These additional 
  319.         features  will  not  increase the size of XCCP,  since  they  will  be 
  320.         implemented  as overlays.   The functions chosen for implementation in 
  321.         overlays  were  chosen with a view toward which functions  access  the 
  322.         disk in any case, and those functions which are the least utilized.
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.