Summary of the New Features of CCPZ The CCPZ Command Hierarchy Search CCPZ-Resident Command DIR CCPZ-Resident Command ERA CCPZ-Resident Command LIST CCPZ-Resident Command TYPE CCPZ-Resident Command SAVE CCPZ-Resident Command REN CCPZ-Resident Command USER CCPZ-Resident Command DFU CCPZ-Resident Command JUMP CCPZ-Resident Command GET CCPZ Error Messages :Summary of the New Features of CCPZ CCPÚ ió basicallù á rewritå oæ thå CP/Í CCÐ whicè ió design- eä tï ruî aó parô oæ CP/Í oî Z80-baseä microcomputers®  Iî  mosô caseó  iô ió upward-compatablå witè thå originaì CP/Í Versioî 2.² CCP. CCPZ¬  however¬  provideó  manù extensionó tï thå CP/Í  CCP® Amonç theså are: ® Thå TYPÅ functioî caî bå madå tï pagå oò noô pagå itó outpuô aô thå user'ó discretion ®  Á LISÔ functioî ió availablå whicè sendó itó  outpuô tï thå CP/Í LSTº Devicå anä doeó NOÔ page ®  Thå  DIÒ commanä haó beeî extendeä tï allo÷ thå dis- plaù oæ thå systeí fileó oò alì files ® Thå ERÁ commanä no÷ printó ouô thå nameó oæ thå fileó iô ió erasing ®  Thå  currenô useò numbeò maù bå includeä aó parô  oæ thå commanä prompt»  iæ thå useò ió undeò á numbeò otheò thaî  0¬ thå prompô ió oæ thå forí 'du>§ (likå 'A2>§ oò 'B10>')¬  and¬  iæ thå  useò ió undeò 0¬  thå prompô maù bå 'd>§ oò 'd0>§ aó peò hió choice ®  Thå  SUBMIÔ facilitù haó beeî changeä iî  twï  basiã ways: - thå  prompô  changeó tï 'du$§ oò 'd$§  wheî  thå SUBMIÔ commanä ió printed - thå  $$$.SUÂ ió executeä froí thå currentlù log- ged-iî disë (NOÔ jusô froí A:) ®  Á command-searcè hierarchù ió no÷ implementeä  whicè ió executeä roughlù aó follows: - thå  user'ó commanä ió checkeä againsô thå  CCP- residenô commandó anä executeä immediatelù iæ á matcè ió found - failinç  that¬  thå  currenô useò numbeò oî  thå currenô disë ió scanneä foò thå COÍ file»  thå COÍ filå ió loadeä anä executeä iæ found - failinç that¬ á defaulô useò numbeò (initiallù ° buô  caî bå reseô witè thå DFÕ CCP-residenô command© oî thå  cur- renô disë ió scanneä foò thå COÍ file» thå COÍ filå ió loadeä anä executeä iæ found - finally¬  failinç that¬  thå defaulô useò numbeò oî disë Aº  ió scanneä foò thå COÍ file»  thå COÍ filå ió  loadeä anä executeä iæ founä oò aî erroò messagå (COMMAND?¬ wheî COMMANÄ waó thå user'ó commanä name© ió printed ®  Thå  numeriã argumenô foò thå SAVÅ CCP-residenô com- manä  (viú thå numbeò oæ 256-bytå pageó tï save© caî bå inpuô  iî HEØ ratheò thaî decimal ®  Á  GEÔ  commanä whicè loadó á filå  aô  á  specifieä memorù addresó anä á JUMÐ commanä whicè "calls¢ thå subroutinå aô á specifieä memorù addresó havå beeî added :The CCPZ Command Hierarchy Search Thå first¬  anä mosô basiã thing¬ tï learî abouô CCPÚ ió thå ordeò iî whicè ió searcheó foò á COÍ filå foò executioî oò á filå specifieä  bù thå GEÔ command®  Undeò thå CP/Í 2.² CCP¬  iæ  thå specifieä  COÍ filå commanä waó noô founä oî thå currenô drivå iî thå  currenô useò area¬  thå CCÐ aborteä witè aî  erroò  message® CCPZ¬  however¬  continueó searchinç froí thió poinô á maximuí oæ twï  morå  levels®  Thió commanä hierarchù searcè  waó  outlineä abovå anä ió describeä herå iî furtheò detail. 1®  Iæ  thå  commanä ió oæ thå forí 'COMMAND§ anä  NOÔ 'd:COMMAND'¬  thå  CCP-residenô  commanä lisô ió searcheä  foò  á match®  Iæ  thå  matcè ió found¬  thå  CCP-residenô  commanä  ió immediatelù processed®  Iæ thå matcè ió noô founä oò thå commanä ió  oæ thå forí 'd:COMMAND'¬  thå nexô steð ió taken®  Notå thaô thå  'd:COMMAND§  forí ió gooä foò executinç á commanä  COÍ  filå whicè  haó thå samå namå aó á CCP-residenô commanä (sucè aó  SAVÅ or DIR). 2®  Iæ  thå commanä ió oæ thå forí  'd:COMMAND'¬  disë drivå  'd:§  ió  temporarilù loggeä iî foò  thå  purposå  oæ  thå commanä  search®  Otherwise¬  thå  currentlù logged-iî drivå  ió used. 3® No÷ thå filå nameä COMMAND.COÍ ió searcheä for® Iæ found¬  iô  ió loadeä intï memorù startinç aô 100È anä  executed® If not, proceed to step 4. 4®  No÷  thaô  thå firsô searcè  foò  COMMAND.COÍ  haó failed¬  thå  CCÐ checkó tï seå iæ thå useò ió undeò thå  currenô Defaulô Useò Number®  Thå Defaulô Useò Numbeò maù bå thaô seô bù thå  DEFUSÒ equatå iî thå CCÐ oò thaô seô bù thå useò viá thå DFÕ command®  DEFUSÒ  ió iî effecô iæ DFÕ haó noô beeî issueä  sincå thå lasô Warí oò Colä Boot¬ anä DFÕ ió iî effecô iæ iô waó issueä sincå thå lasô Warí oò Colä Boot®  Iæ thå useò ió NOÔ undeò  thå currenô  Defaulô Useò Number¬  CCPÚ temporarilù logó hií intï  iô anä  searcheó  thå directory®  Iæ COMMAND.COÍ ió  found¬  iô  ió loadeä aó describeä abovå anä executed® Iæ not¬ CCPÚ proceedó tï the next step. 5®  Thå useò ió no÷ iî thå Defaulô Useò Number¬ anä aô thió  point¬  CCPÚ checkó tï seå iæ thå useò ió oî disë drivå A:® Iæ not¬ iô temporarilù logó intï Aº anä searcheó thå defaulô useò numbeò  oæ  Aº  foò  COMMAND.COM®  Iæ found¬  iô  ió  loadeä  aó describeä abovå anä executed®  Iæ not¬  CCPÚ printó thå  commanä namå  aó  aî  erroò messagå anä returnó tï  commanä  inpuô  mode¬ aborting the SUBMIT file if COMMAND came from it. Iî  alì caseó oæ thå searcè above¬  iæ COMMAND.COÍ ió found¬ afteò  iô  ió loadeä intï memory¬  CCPÚ resetó thå  useò  tï  hió originaì disë drivå anä useò number® Hence¬ thå fileó referenceä by the user by default are obtained from this environment. Tï  illustratå thió commanä hierarchù search¬  consideò  thå following examples: Example 1: DEFUSR equ 0 {default user number is 0} B10> <-- User is on Drive B:, User Number 10 B10>ASM TEST.BBZ <-- User wishes to assemble TEST.ASM in Drive B:, User 10 <-- At this point, CCPZ looks on B:/10 for ASM.COM, fails, looks on B:/0, fails, and finally looks on A:/0; it finds ASM.COM here and goes back to B:/10 for the file Example 2: DEFUSR equ 0 and DFU issued B10> <-- User is on Drive B:, User Number 10 B10>DFU 5 <-- User Selects User 5 as default B10>ASM TEST.BBZ <-- As above <-- At this point, CCPZ looks on B:/10 for ASM.COM, fails, look on B:/5, fails, and finally looks on A:/5; it fails here also and prints ASM? as an error message Example 3: DEFUSR equ 0 B> <-- User is on Drive B:, User Number 0 B>ASM TEST.BBZ <-- As above <-- At this point, CCPZ looks on B:/0 for ASM.COM, fails, looks on A:/0, fails, and prints error message Example 4: DEFUSR equ 0 A10> <-- User is on Drive A:, User Number 10 A10>ASM TEST.AAZ <-- As above, but file on A: <-- At this point, CCPZ looks on A:/10 for ASM.COM, fails, looks on A:/0, fails, and prints error message :CCPZ-Resident Command DIR Command: DIR Function: To Display a listing of the names of the files on disk Forms: DIR <-- Displays $DIR files DIR S <-- Displays $SYS files DIR A <-- Displays both $DIR and $SYS files Examples: DIR *.ASM <-- All $DIR .ASM files DIR *.COM S <-- All $SYS .COM files DIR *.COM A <-- All .COM files Notes: Iæ  á  filå ió scanneä foò anä nï sucè namå existó oî  disk¬ thå  'Nï  Files§ messagå wilì appear®  However¬  iæ  á  filå  ió scanneä foò anä thå namå existó aó á $SYÓ filå anä $DIÒ fileó arå beinç  scanneä for¬  nï filå namå ió displayeä buô thå 'Nï Files§ messagå doeó NOÔ appear® Foò example¬ iæ TEST.COÍ ió á $SYÓ filå anä  'DIÒ  TEST.COM§ ió issued¬  nï  messagå  appears®  Iæ  'DIÒ TEXT.COM§ ió issueä anä TEXT.COÍ doeó noô exisô oî disk¬  thå 'Nï Files' message is displayed. :CCPZ-Resident Command ERA Command: ERA Function: To Erase the specified $R/W files from disk Forms: ERA <-- Erase both $DIR and $SYS files Examples: ERA *.ASM <-- Erase all .ASM files ERA *.* <-- Erase all files Notes: Iæ á $R/Ï filå ió encountered¬  á BDOÓ erroò messagå wilì bå displayeä  anä thå procedurå ió stopped®  Thå useò ió unsurå  aô thió  timå aó tï whicè fileó havå beeî eraseä anä whicè havå  noô anä shoulä check® Sorrù foò thió problem¡ Thå ERASÅ commanä (tï bå  giveî  tï SIG/Í bù RLÃ iî thå neaò future© ió á  solutioî  tï this problem. :CCPZ-Resident Command LIST Command: LIST Function: To Print the specified file on the CP/M LST: device Forms: LIST <-- Print the file (no paging) Examples: LIST TEST.TXT <-- Print TEST.TXT on LST: Notes: Iæ  thå filå haó á $SYÓ attribute¬  iô wilì bå founä aó welì as those with $DIR attributes. :CCPZ-Resident Command TYPE ŠCommand: TYPE Function: To Print the specified file on the CP/M CON: device Forms: TYPÅ <-- Print the file with the paging deflt negated Examples: TYPE TEST.TXT TYPE TEST.TXT P Notes: Wheî  thå  displaù pauseó durinç paging¬  typå anù  chaò  tï continue or ^C to abort. ^S also works. :CCPZ-Resident Command SAVE Command: SAVE Function: To Copy the TPA starting at 100H to disk Forms: SAVE <-- in DEC SAVE # <-- in HEX Examples: SAVE #F MYFILE.TXT <-- 15 pages saved SAVE 15 MYFILE.TXT <-- 15 pages saved Notes: -None- :CCPZ-Resident Command REN Command: REN Function: To Change the name of a disk file Forms: REN = Examples: REN NEWFILE.TXT=OLDFILE.TXT Notes: -None- :CCPZ-Resident Command USER Command: USER Function: To Change the current user number Forms: USER <-- in DEC USER # <-- in HEX Examples: USER 15 USER #F USER 0 USER <-- Same as USER 0 Notes: -None- :CCPZ-Resident Command DFU Command: DFU Function: To Temporarily Change the default user number for the command hierarchy search Forms: DFU <-- in DEC DFU # <-- in HEX Examples: DFU 15 DFU 0 Š DFU #F DFU <-- Same as DFU 0 Notes: -None- :CCPZ-Resident Command JUMP Command: JUMP Function: To "call" the subroutine at the specified page address Forms: JUMP
<--
in HEX Examples: JUMP E000 <-- Jump to E000H JUMP 100 <-- Jump to 100H JUMP 0 <-- Jump to 000H JUMP <-- Same as JUMP 0 Notes: JUMÐ performó á subroutinå "call"¬ sï thå calleä routinå maù return to the CCPZ by either a RET or a Warm Boot. :CCPZ-Resident Command GET Command: GET Function: To load a file from disk into memory starting at the specified page Forms: GET
<--
in HEX Examples: GET 8000 TEST.80 <-- Load TEST.80 starting at 8000H GET 100 TEST.80 <-- Load TEST.80 starting at 100H GET 0 TEST.80 <-- Load TEST.80 starting at 000H Notes: GEÔ  searcheó foò thå specifieä filå accordinç tï  thå  samå commanä  hierarchù  searcè employeä bù thå CCPÚ commanä  scanner® Hence¬  iæ thå useò ió oî B:/1° anä thå filå ió oî A:/° witè  thå currenô  defaulô useò numbeò aô 0¬  GEÔ wilì searcè froí B:/1° tï B:/0 to A:/0 in looking for the file. :CCPZ Error Messages Thå  followinç  arå thå erroò messageó issueä  bù  CCPÚ  anä their meanings. Message Meaning ? Printed after a command or an argument means that such was invalid No File From DIR, this means that DIR did not locate any files Also from ERA with the same meaning All? Issued in response ERA *.*, asks the user is he really wants to erase all the files. Unlike under the original CP/M 2.2 CCP, single character input is required (Y or y for yes and anything else for no) with NO to end the line Read Err Error in reading a file by TYPE or LIST Message Meaning No Space From SAVE, means that there is not enough space on disk From GET or command load by CCP, means that there is not enough space in memory File Exists From REN, means that the new file name specified already exists on disk