home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols000 / vol014 / cpm.hlp < prev    next >
Encoding:
Text File  |  1985-02-10  |  30.4 KB  |  710 lines

  1. General Information on CP/M
  2. CP/M File References
  3. CP/M Line Editing and Output Control
  4. CP/M Built-In Commands
  5. CP/M Transient Commands
  6. Physical Device Assignments for ARIES-1
  7. CP/M STAT Command
  8. CP/M PIP Command
  9. CP/M ED Command
  10. CP/M ASM Command
  11. CP/M LOAD Command
  12. The UNLOAD Command
  13. CP/M DDT Command
  14. The ZDT Command
  15. CP/M SYSGEN Command
  16. CP/M SUBMIT Command
  17. CP/M BDOS -- Basic I/O Operations
  18. CP/M BDOS -- Basic Disk Operations
  19. CP/M File Types
  20. CP/M BIOS Jump Vector
  21. :General Information on CP/M
  22.      CP/═ i≤ ß monito≥ contro∞ prograφ fo≥ microcompute≥ systeφ developmen⌠ ì
  23. whicΦá use≤ IBM-compatiblσ flexiblσ disk≤ (flopp∙ disks⌐ fo≥ mas≤á storage«  ì
  24. Usinτá ßá microcompute≥á mainframσá baseΣ oε Intel'≤ 808░á o≥á Zilog'≤á Z8░ ì
  25. microprocessor¼áá CP/═áá provide≤áá ßá genera∞á environmen⌠áá fo≥áá prograφ ì
  26. construction¼á storage¼á anΣ editing¼ alonτ witΦ assembl∙ anΣ prograφ debuτ ì
  27. facilities«á  Aε importan⌠ featurσ oµ CP/═ i≤ tha⌠ i⌠ caε bσ easil∙ altereΣ ì
  28. t∩á executσá witΦ an∙ compute≥ configuratioε whicΦ use≤ aεá Inte∞á 808░á o≥ ì
  29. Ziloτá Z8░ Microprocesso≥ anΣ ha≤ a⌠ leas⌠ 16╦ byte≤ oµ maiε memor∙ witΦ u≡ ì
  30. t∩ fou≥ IBM-compatablσ diskettσ drives.
  31.      Thσá CP/═ monito≥ provide≤ acces≤ t∩ program≤ througΦ ßá comprehensivσ ì
  32. filσá managemen⌠á system«áá  Thσá filσá subsysteφá support≤á ßá nameΣá filσ ì
  33. structure¼á allowinτ dynamiπ allocatioε oµ filσ spacσ a≤ wel∞ a≤ sequentia∞ ì
  34. anΣá randoφá filσ access«á  Usinτ thi≤ filσ system¼á ß u≡á t∩á 6┤á distinc⌠ ì
  35. program≤ caε bσ storeΣ iε botΦ sourcσ anΣ machine-executablσ form.
  36.      Digita∞á Research¼á thσá designe≥ oµ CP/M¼á ha≤ provideΣ ß se⌠ oµá si° ì
  37. manual≤ whicΦ describσ thσ usσ anΣ operatioε oµ CP/═ iε detail.
  38.  
  39.      These manuals are:
  40.           1«  Aε Introductioε t∩ CP/═ Feature≤ anΣ Facilitiesì
  41.           2.  ED:  A Context Editor for the CP/M Disk System
  42.           3.  ASM:  CP/M Assembler User's Manual
  43.           4«  DDT║  CP/═ Dynamiπ Debugginτ Too∞ User'≤ Manual
  44.           5.  CP/M Interface Guide
  45.           6.  CP/M System Alteration Guide
  46.  
  47.      A≤ thσ reade≥ caε see¼á CP/═ support≤ ß contex⌠ editor¼á aεá assemble≥ ì
  48. (Intel-compatable)¼á anΣá ßá debugge≥ system«á  Thesσ arσ availablσ iεá thσ ì
  49. basiπ CP/═ package«á  Therσ i≤ ß largσ variet∙ oµ othe≥ softwarσá availablσ ì
  50. whicΦá caεá ruε unde≥ CP/═ witΦ littlσ o≥ n∩ modification«á  SucΦá softwarσ ì
  51. include≤á severa∞á assembler≤ (botΦ 808░ anΣá Z80)¼á ßá symboliπá debugger¼ ì
  52. severa∞á high-leve∞á language≤ (includinτ FORTRA╬á I╓á {compiler}¼á BASIC-┼ ì
  53. {translator}¼á CBASI├ {translator}¼ man∙ interpretivσ BASICs¼ ALGOL¼ FOCAL¼ ì
  54. anΣá C)¼á anΣá severa∞ special-purposσ application≤ program≤ (sucΦ a≤á tex⌠ ì
  55. formattinτ system≤ anΣ accountinτ systems).
  56. :CP/M File References
  57.  
  58.      ┴á filσ referencσ identifie≤ ß particula≥ filσ o≥ grou≡ oµ file≤ oεá ß ì
  59. particula≥á disδá attacheΣ t∩ CP/M«á  Thesσ filσ reference≤ caεá bσá eithe≥ ì
  60. unambiguou≤á (ufn⌐á o≥á ambiguou≤ (afn)«á  Aεá unambiguou≤á filσá referencσ ì
  61. uniquel∙ identifie≤ ß singlσ file¼ whilσ aε ambiguou≤ filσ referencσ ma∙ bσ ì
  62. satisfied by a number of different files.
  63.  
  64.      Aεá unambiguou≤ filσ referencσ i≤ aε exac⌠ namσ oµ thσ specifieΣ file«  ì
  65. I⌠ consist≤ oµ u≡ t∩ eigh⌠ character≤ iε thσ filσ namσ anΣ threσ character≤ ì
  66. in the file type.  An unambiguous file reference is of the form --
  67.  
  68.                pppppppp.sss
  69.  
  70.      Thσá character≤ useΣ iε specifyinτ aε unambiguou≤ filσá referencσá ma∙ ì
  71. not contain any of --
  72.  
  73.                < > . , ; : = ? * [ ]
  74.  
  75.      Aεá ambiguou≤ filσ referencσ i≤ useΣ fo≥ director∙ searcΦ anΣá patterε ì
  76. matching«á  Thσá forφá oµá aεá ambiguou≤ filσ referencσ i≤á simila≥á t∩á aε ì
  77. unambiguou≤ reference¼ excep⌠ thσ symbo∞ '?º ma∙ bσ intersperseΣ throughou⌠ ì
  78. thσ filσ reference«á  Iε variou≤ command≤ throughou⌠ CP/M¼á thσ '?ºá symbo∞ ì
  79. matche≤á an∙á characte≥ oµ ß filσ namσ iε thσ '?º position«á  Fo≥á example¼ ì
  80. X?Y.C?═á wil∞ matcΦ XZY.CO═ anΣ X3Y.CEM«á  Thσ '*º symbo∞ i≤ useΣ t∩á matcΦ ì
  81. al∞ character≤ oµ ß filσ namσ o≥ filσ type«á  Fo≥ example¼ *.CO═ wil∞ matcΦ ì
  82. XZY.COM and HELP.COM, while HELP.* will match HELP.COM and HELP.HLP.
  83. :CP/M Line Editing and Output Control
  84.  
  85.      The following are the line editing functions supported by CP/M --
  86.  
  87.           rubout    Delete and echo the last character typed at the
  88.                     console.
  89.           Ctrl-U    Delete the entire line typed at the console.
  90.           Ctrl-X    Same as Ctrl-U.
  91.           Ctrl-R    Retype current command line:  types a "clean line"
  92.                     following character deletion with rubouts.
  93.           Ctrl-E    Physical end of line:  carriage is returned, but
  94.                     line is not sent until the carriage return key is
  95.                     depressed.
  96.           Ctrl-C    CP/M system reboot (warm start).
  97.           Ctrl-Z    End input from the console (used in PIP and ED).
  98.  
  99.      Other control functions affect console output --
  100.  
  101.           Ctrl-P    Copy all subsequent console output to the currently-
  102.                     assigned list device (LST:).  Output is sent to both
  103.                     the list device and the console device until the next
  104.                     Ctrl-P is typed.
  105.           Ctrl-S    Stop the console output temporarily.  Program execution
  106.                     and output continue when the next character is typed
  107.                     at the console.  Typing Ctrl-C returns control to CP/M.
  108.  
  109.      Inpu⌠ line≤ caε generall∙ bσ u≡ t∩ 25╡ character≤ iε length«  The∙ arσ ì
  110. not acted upon until the carriage return key is typed.
  111. :CP/M Built-In Commands
  112.  
  113.      CP/M supports five built-in commands --
  114.  
  115.           ER┴á afεá -- Thσá ER┴á (erase⌐ commanΣá remove≤á file≤á froφá thσ ì
  116.                currently logged-in disk.
  117.           DI╥á afε -- Thσ DI╥ (directory⌐ commanΣ cause≤ thσ name≤á oµá al∞ ì
  118.                file≤ whicΦ satisf∙ thσ ambiguou≤ filσ namσ afε t∩ bσ listeΣ ì
  119.                oεá thσ consolσ device«á  Al∞ file≤ arσ listeΣ iµ n∩ afεá i≤ ì
  120.                given.
  121.           RE╬á ufn1=ufn▓á -- Thσá RE╬ (rename⌐ commanΣ allow≤ thσá use≥á t∩ ì
  122.                changσ thσ name≤ oµ file≤ oε disk«  Thσ filσ satisfyinτ ufn▓ ì
  123.                is changed to ufn1.
  124.           SAV┼á ε ufε -- Thσ SAV┼ commanΣ place≤ ε page≤ (256-bytσá blocks⌐ ì
  125.                onto disk from the TPA and names this file ufn.
  126.           TYP┼á ufε -- Thσ TYP┼ commanΣ display≤ thσ content≤ oµ thσá ASCI╔ ì
  127.                sourcσá filσá ufεá oε thσ currentl∙ logged-iεá disδá a⌠á thσ ì
  128.                console device.
  129. :CP/M Transient Commands
  130.  
  131.      The CP/M standard transient commands are --
  132.  
  133.           STA╘á     Lis⌠ thσ numbe≥ oµ byte≤ oµ storagσ  remaininτá oεá thσ ì
  134.                     currentl∙ááá logged-iεáá disk¼ááá providσáá statistica∞ ì
  135.                     informatioεá abou⌠á particula≥ files¼á anΣá displa∙á o≥ ì
  136.                     alter device assignment.
  137.           PI╨       LoaΣ thσ Periphera∞ Interchangσ Prograφ fo≥á subsequen⌠ ì
  138.                     disk file and peripheral transfer operations.
  139.           ED        Load and execute the CP/M text editor program.
  140.           SUBMIT    Submit a file of commands for batch processing.
  141.  
  142.           AS═á      LoaΣá thσá CP/═ assemble≥ anΣ  assemblσá thσá specifieΣ ì
  143.                     program from disk.
  144.           LOA─á     LoaΣ  thσ filσ iε Inte∞ "hexó machinσ codσá forma⌠á anΣ ì
  145.                     producσá ß filσ iε machinσ executablσ forφ whicΦ caε bσ ì
  146.                     loadeΣ int∩ thσ TP┴ (thi≤ loadeΣ prograφ become≤ ßá ne≈ ì
  147.                     command under the CCP).
  148.  
  149.           DDT       Load the CP/M debugger into the TPA and execute it.
  150.           DUMP      Dump the contents of a file in hex.
  151.  
  152.           SYSGEN    Create a new CP/M system diskette.
  153.           MOVCP═á   Regeneratσá thσá CP/═ systeφ  fo≥ ßá particula≥á memor∙ ì
  154.                     size.
  155. :Physical Device Assignments for ARIES-1
  156.  
  157.      Logical Device           Physical Device
  158.  
  159.           CON:                TTY: Model 43 Teletype
  160.                               CRT: Hazeltine 1500 CRT
  161.                               BAT: CRT and Modem
  162.                               UC1: In=CRT, Out=CRT and Modem
  163.           RDR:                TTY: Model 43 Teletype
  164.                               PTR: Modem
  165.                               UR1: CRT and Modem w/CRT Output
  166.                               UR2: CRT and Modem
  167.           PUN:                TTY: Model 43 Teletype
  168.                               PTP: Modem
  169.                               UP1: CRT and Modem
  170.                               UP2: CRT and Modem
  171.           LST:                TTY: Model 43 Teletype
  172.                               CRT: Hazeltine 1500 CRT
  173.                               LPT: Modem
  174.                               UL1: CRT and Modem
  175.  
  176. :CP/M STAT Command
  177.  
  178.      The STAT Command takes any of the following forms --
  179.  
  180. STA╘      Calculatσ thσ storagσ remaininτ oε al∞ activσ drive≤ anΣ prin⌠á ß ì
  181.           message like
  182.                x: R/W, SPACE: nnnK  -- if disk is Read/Write
  183.                x: R/O, SPACE: nnnK  -- if disk is Read Only
  184. STAT x:   Calculate the storage remaining on the specified drive and print
  185.                BYTES REMAINING ON x: nnnK
  186.  
  187. STAT x:afn
  188.           Scaε thσ specifieΣ file≤ oε thσ specifieΣ drivσ (x║ i≤ optional)¼ ì
  189.           anΣá lis⌠á al∞ file≤ whicΦ satisf∙ thσ unambiguou≤á referencσá iε ì
  190.           alphabetica∞á orde≥ witΦ storagσ requirements«á  ┴ tablσ likσ thσ ì
  191.           following is generated --
  192.  
  193.                RECS BYTS EX D:FILENAME.TYP
  194.                rrrr nnnK ee d:pppppppp.sss
  195.  
  196.           where
  197.                rrrr -- number of 128-byte records allocated to the file
  198.                nnnK -- number of bytes (in K, K=1024) allocated to the file
  199.                          nnn = rrrr * 128 / 1024
  200.                ee -- number of 16K extensions
  201.                          ee = nnn / 16
  202.                d:pppppppp.sss -- drive name (d may be A, B, C, D) and file
  203.                          name
  204.  
  205. STAT x:=R/O
  206.           Se⌠ thσ specifieΣ drivσ t∩ ReaΣ Only«á  Thi≤ i≤ cleareΣ b∙ ß warφ ì
  207.           boot.  When a disk is Read Only, the message
  208.                BDOS ERR ON x: READ ONLY
  209.           will appear if there is an attempt to write to it.
  210. STAT VAL:
  211.           Displa∙á thσá possiblσ logica∞ t∩á physica∞á devicσá assignments«  ì
  212.           STAT will print the list --
  213.  
  214.                CON: = TTY:  CRT:  BAT:  UC1:
  215.                RDR: = TTY:  PTR:  UR1:  UR2:
  216.                PUN: = TTY:  PTP:  UP1:  UP2:
  217.                LST: = TTY:  CRT:  LPT:  UL1:
  218.  
  219. STAT DEV:
  220.           Displa∙á thσá curren⌠ logica∞ t∩ physica∞á devicσá mapping«á  Fo≥ ì
  221.           example, the list may appear as --
  222.  
  223.                CON: = CRT:         PUN: = PTP:
  224.                RDR: = UR1:         LST: = TTY:
  225.  
  226. STAT ld1=pd1, ld2=pd2, ...
  227.           Changσá thσá logica∞á t∩ physica∞á devicσá assignments«á  Logica∞ ì
  228.           devicσ ld▒ i≤ assigneΣ t∩ physica∞ devicσ pd1¼á etc«á  Thσá valiΣ ì
  229.           logical device names are --
  230.  
  231.                CON:      The system console device
  232.                RDR:      The paper tape reader device
  233.                PUN:      The paper tape punch device
  234.                LST:      The output list device
  235.  
  236.  
  237.           The valid physical device names are --
  238.  
  239.                TTY:      Slow speed output device (teletype)
  240.                CRT:      High speed output device (cathode ray tube)
  241.                BAT║      BatcΦ processinτ (CON║ inpu⌠ i≤ RDR:¼á CON║ outpu⌠ ì
  242.                          is LST:)
  243.                UC1:      User-defined console
  244.                PTR:      Paper tape reader
  245.                PTP:      Paper tape punch
  246.                UR1:      User-defined reader #1
  247.                UR2:      User-defined reader #2
  248.                UP1:      User-defined punch #1
  249.                UP2:      User-defined punch #2
  250.                LPT:      Line printer
  251.                UL1:      User-defined list device #1
  252.  
  253. :CP/M PIP Command
  254.  
  255.      PI╨á (Periphera∞á Interchangσá Program⌐ i≤ thσá CP/═á transien⌠á whicΦ ì
  256. implement≤ thσ basiπ mediß conversioε operation≤ necessar∙ t∩ load¼á print¼ ì
  257. punch¼á copy¼á anΣá combinσá disδ files«á  PI╨ i≤ initiateΣ b∙ onσá oµá thσ ì
  258. following forms --
  259.  
  260.           PI╨á           Engagσ  PIP¼á promp⌠ thσ use≥ witΦ '*'¼á anΣá reaΣ ì
  261.                          commanΣ line≤ directl∙ froφ thσ console«  PI╨ useΣ ì
  262.                          iεá thi≤á wa∙ i≤ exiteΣ b∙ eithe≥ typinτ aεá empt∙ ì
  263.                          commanΣ linσ (jus⌠ ß carriagσ return⌐ o≥ ßá Ctrl-├ ì
  264.                          as the first character of the line.
  265.           PI╨á cmnΣ      Engagσ PIP¼á executσ  thσ specifieΣá command¼á anΣ ì
  266.                          return to CP/M.
  267.  
  268.      The form of each command line in PIP is --
  269.  
  270.           destination = source#1, source#2, source#3, ..., source#n
  271.  
  272.  
  273.      The general forms of PIP command lines are --
  274.  
  275.           x:=y:afεá      Cop∙á al∞á file≤  satisfyinτ afε froφ drivσá ∙á t∩ ì
  276.                          drivσ x«á  'yº ma∙ bσ omitted¼á and¼á iµá so¼á thσ ì
  277.                          currently logged-in drive is selected.
  278.           x:ufn=y║á      Cop∙  thσ filσ giveε b∙ ufε froφ ∙ t∩ x«á  'xº ma∙ ì
  279.                          bσ omitted¼á and¼á iµ so¼á thσ currentl∙ logged-iε ì
  280.                          drive is selected.
  281.           x:afn=y:afε    Likσ thσ above¼ bu⌠ ° and/o≥ ∙ ma∙ bσ omitted╗ thσ ì
  282.                          defaul⌠áá drivσá i≤á selecteΣá fo≥áá thσáá omitteΣ ì
  283.                          drive(s).
  284.           ld=pΣá         Cop∙á froφ  thσ specifieΣ physica∞ devicσá t∩á thσ ì
  285.                          specifieΣá logica∞ device«á  ValiΣ logica∞ device≤ ì
  286.                          are --
  287.                               CON:, RDR:, PUN:, LST:
  288.                          Valid physical devices are --
  289.                               TTY:, CRT:, UC1:, PTR:, PTP:, UR1:, UR2:,
  290.                               UP1:, UP2:, LPT:, UL1:
  291.  
  292.  
  293.      Additional device names which may be used in PIP commands are --
  294.  
  295.           NUL:      Send 40 Nulls (ASCII 0) to the device.
  296.           EOF:      Send a CP/M End of File character (ASCII Ctrl-Z).
  297.           INP:      Special PIP input source to be patched (see manual).
  298.           OUT║á     Specia∞á PI╨á outpu⌠  destinatioε t∩á bσá patcheΣá (seσ ì
  299.                     manual).
  300.           PRN║á     Samσ a≤ LST:¼á bu⌠  tab≤ arσ expandeΣ a⌠á ever∙á eightΦ ì
  301.                     characte≥ position¼ line≤ arσ numbered¼ anΣ pagσ eject≤ ì
  302.                     are inserted every 60 lines with an initial eject.
  303.  
  304.  
  305.      Thσá use≥á caεá als∩ specif∙ onσ o≥ morσ PI╨á parameter≤á encloseΣá iε ì
  306. square brackets separated by zero or more blanks.  These parameters are --
  307.  
  308.      ┬á   Blocδ modσ  transfer«á  Datß i≤ buffereΣ b∙ PI╨ unti∞ aε ASCI╔ X-ì
  309.           Off character (Ctrl-S) is received from the source device.
  310.      Dεá  Deletσ character≤  whicΦ extenΣ pas⌠ columε ε iε thσ transfe≥á oµ ì
  311.           data to the destination from the character source.
  312.      E    Echo all transfer operations to the console.
  313.      F    Filter (remove) form feeds from the file.
  314.      ╚    He° datß transfer«  Al∞ datß i≤ checkeΣ fo≥ prope≥ Inte∞ he° filσ ì
  315.           format.
  316.      I    Ignore ':00' records in the transfer of Intel hex format file.
  317.      L    Translate upper case to lower case alphabetics.
  318.      N    Add line numbers to each line transferred to the destination.
  319.      O    Object file (non-ASCII) transfer.  Ignore End of File.
  320.  
  321.      Pn   Include page ejects at every n lines.
  322.      Qs^┌áQui⌠á copyinτ  froφ thσ sourcσ devicσ o≥ filσ wheε thσá strinτá ≤ ì
  323.           (terminated by Ctrl-Z) is encountered.
  324.      Ss^Z Start copying from the source file when the string s is seen.
  325.      Tn   Expand tabs to every nth column.
  326.      U    Translate lower case to upper case alphabetics.
  327.      V    Verify that data has been copied correctly.
  328.      Z    Zero the parity bit on input for each ASCII character.
  329. :CP/M ED Command
  330.  
  331.      Thσá E─á Prograφá i≤ thσ CP/═á systeφá contex⌠á editor¼á whicΦá allow≤ ì
  332. creatioε anΣ alteratioε oµ ASCI╔ files«á  Completσ detail≤ arσ giveε iε thσ ì
  333. user's manual.
  334.  
  335.      The following are the error indicators given by ED --
  336.  
  337.           ?    Unrecognized Command
  338.           >    Memory buffer full
  339.           #    Cannot apply command the number of times specified
  340.           O    Cannot open LIB file in R command
  341.  
  342.  
  343.      The following are the control characters recognized by ED --
  344.  
  345.           ^C        System reboot
  346.           ^E        Physical <CR> <LF> (not entered in command)
  347.           ^I        Logical tab
  348.           ^L        Logical <CR> <LF> in search and substitute strings
  349.           ^U        Line delete
  350.           ^Z        String terminator
  351.           Rubout    Character delete
  352.           Break     Discontinue command
  353.  
  354.  
  355.      The following are the commands recognized by ED --
  356.  
  357.           nA        Append lines
  358.           +/- B     Beginning/Bottom of buffer
  359.           +/- nC    Move character positions
  360.           +/- nD    Delete characters
  361.           E         Exit
  362.           nFs^Z     Find string
  363.           H         End edit, close and reopen files
  364.           Is^Z      Insert characters
  365.           nJ        Place strings in juxtaposition
  366.           +/- nK    Kill (delete) lines
  367.           +/- nL    Move down/up lines
  368.           nM        Macro definition
  369.           O         Return to original file
  370.           +/- nP    Move and print pages
  371.           Q         Quit with no file changes
  372.           R         Read library file
  373.  
  374.           nSs1^Zs2^Z
  375.                     Substitute s2 for s1
  376.           +/- nT    Type lines
  377.           +/- U     Translate lower to upper case if U; none if -U
  378.           +/- V     Engage/disengage line numbers (verify)
  379.           0V        Print memory buffer info (free/total usage)
  380.           nW        Write lines
  381.           nX        Transfer n lines to X$$$$$$$.LIB
  382.           0X        Empty X$$$$$$$.LIB
  383.           nZ        Sleep
  384.           +/- n     Move and type (+/- nLT)
  385.           n:        Move to absolute line (V engaged)
  386.           :n        Process from current line to specified line (V engaged)
  387. :CP/M ASM Command
  388.  
  389.      Thσ AS═ CommanΣ load≤ anΣ execute≤ thσ CP/═ 808░ assembler«á  I⌠ i≤ oµ ì
  390. the form --
  391.  
  392.           ASM filename.xyz
  393.  
  394. where
  395.  
  396.           filename  ... is the name of the file 'filename.ASM' to assemble
  397.           x         ... designates the disk name which contains the source
  398.           y         ... designates the disk name to contain the hex file
  399.                          (y=Z suppresses generation of the hex file)
  400.           z         ... designates the disk name to contain the print file
  401.                          (y=X lists on CON:, y=Z suppresses listing)
  402.  
  403.      Refer to the ASM Manual for further details.
  404. :CP/M LOAD Command
  405.  
  406.      Thσ LOA─ CommanΣ read≤ thσ filσ specified¼ whicΦ i≤ assumeΣ t∩ contaiε ì
  407. Inte∞ he° forma⌠ machinσ codσ anΣ produce≤ ß memor∙ imagσ filσ whicΦ caε bσ ì
  408. subsequently executed (converts .HEX to .COM files).  It is of the form --
  409.  
  410.           LOAD filename
  411.  
  412. where filename is the name of the file 'filename.HEX'.
  413. :The UNLOAD Command
  414.  
  415.      Thσ UNLOA─ CommanΣ doe≤ thσ reversσ oµ thσ LOA─ CommanΣ -- i⌠ convert≤ ì
  416. COM files to HEX files.  It is of the form --
  417.  
  418.           UNLOAD filename
  419.  
  420. where filename is the name of the file 'filename.COM'.
  421. :CP/M DDT Command
  422.  
  423.      Thσá DD╘á Prograφ allow≤ dynamiπ interactivσ testinτ anΣ debugginτá oµ ì
  424. programs generated in the CP/M environment.  It is invoked by --
  425.  
  426.           DDT
  427.           DDT filename.HEXè          DDT filename.COM
  428.  
  429. where 'filename' is the name of the program to be loaded or tested.
  430.  
  431.      DDT responds to the normal CP/M input line editing characters.
  432.  
  433.  
  434.    DDT responds to the following commands --
  435.  
  436.      As   Perform inline assembly starting at the specified address s.
  437.      D    Display memory from the current address for 16 display lines.
  438.      Ds   Display memory from address s for 16 display lines.
  439.      Ds,f Display memory from address s to address f.
  440.      Fs,f,c
  441.           Fill memory from start address s to final address f with byte c.
  442.  
  443.      G    Start execution at the current value of the PC.
  444.      Gs   Start execution at the specified address s.
  445.      Gs,ΓáStar⌠ executioε  a⌠ thσ specifieΣ addres≤ ≤ anΣ se⌠ ßá breakpoin⌠ ì
  446.           at the address b.
  447.      Gs,b,c
  448.           Same as above with breakpoints at b and c.
  449.      G,b  Start execution at the current value of the PC with breakpoint b.
  450.      G,b,c
  451.           Same as above with breakpoints at b and c.
  452.  
  453.  
  454.      If   Insert a file name f into the default FCB.
  455.  
  456.      L    List 12 lines of disassembled code from the current address.
  457.      Ls   List 12 lines from the specified address s.
  458.      Ls,f List lines of disassembled code from s to f.
  459.  
  460.      Ms,f,d
  461.           Move the block from address s to f to destination at address d.
  462.  
  463.      R    Read file in FCB into memory at 100H.
  464.      Rb   Read file in FCB into memory with offset b from 100H.
  465.  
  466.      Ss   Set (examine and alter) memory starting at address s.
  467.  
  468.  
  469.      T    Trace the next instruction.
  470.      Tn   Trace the next n instructions.
  471.  
  472.      U    Untrace -- like Trace, but intermediate steps are not displayed.
  473.  
  474.      X    Examine all registers and flags.
  475.      Xr   Examine specified registers or flag, where r may be --
  476.                C    Carry flag
  477.                Z    Zero flag
  478.                M    Minus (sign) flag
  479.                I    Interdigit Carry flag
  480.                A    Accumulator
  481.                B    BC Reg pair
  482.                D    DE Reg pair
  483.                H    HL Reg pair
  484.                S    Stack pointer
  485.                P    PC
  486. :The ZDT Command
  487.  
  488.      ZDT is a Z80 version of DDT.  It is invoked by typing --
  489.  
  490.           ZDT
  491.  
  492.      Thσá command≤á recognizeΣ b∙ ZD╘ arσ inpu⌠ iεá single-characte≥á inpu⌠ ì
  493. mode«á  N∩á inpu⌠ linσ editinτ i≤ done¼á anΣ eacΦ commanΣ expect≤ aεá exac⌠ ì
  494. input«á  Al∞ bytσ value≤ arσ exactl∙ tw∩ characters¼á anΣ al∞ addresse≤ arσ ì
  495. exactly four characters.
  496.  
  497.  
  498.      The commands recognized by ZDT are --
  499.  
  500.           A bbbb
  501.                Ente≥ ASCI╔ character≤ int∩ memor∙ froφ keyboarΣ startinτ a⌠ ì
  502.                address bbbb.
  503.           B
  504.                Warm Boot -- Return to CP/M.
  505.           C bbbb eeee nnnn
  506.                Comparσá memor∙ froφ addres≤ bbbΓ t∩ addres≤ eeeσá t∩á blocδ ì
  507.                starting at nnnn.
  508.           D bbbb eeee
  509.                Dump memory from bbbb to eeee.
  510.           E bbbb eeee <ASCII string>
  511.                SearcΦá fo≥á ASCI╔ strinτ froφ bbbΓ t∩ eeee«á  Strinτ i≤á a⌠ ì
  512.                most 16 characters.  String is terminated by <CR>.
  513.           F bbbb eeee <hex string>
  514.                SearcΦá fo≥á he°á strinτá froφá bbbΓá t∩á eeee«á  Strinτá i≤ ì
  515.                terminated by <CR>.
  516.  
  517.           G
  518.                Go to next breakpoint.
  519.           H aaaa nnnn
  520.                Hex add and subtract.  Computes aaaa+nnnn and aaaa-nnnn.
  521.           I nn
  522.                Input.  Prints value at port nn.
  523.           J nnnn
  524.                Jump to and execute at location nnnn.
  525.           K
  526.                Keyboard echo.
  527.           L filename.typ nnnn
  528.                Loads specified disk file into location nnnn.
  529.           M bbbb eeee nnnn
  530.                Move block from bbbb to eeee-1 to nnnn.
  531.           N aaaa
  532.                Enter offset aaaa for loading.
  533.           O nn dd
  534.                Output byte dd to port nn.
  535.  
  536.           P bbbb
  537.                Inpu⌠ he° int∩ memor∙ froφ keyboarΣ startinτ a⌠ bbbb«á  <sp╛ ì
  538.                advances pointer, <rub> or <del> backs pointer.
  539.           Q bbbb eeee
  540.                Dumps from bbbb to eeee in ASCII.
  541.           R n ll tt ss bbbb
  542.                ReaΣ blocδ oµ datß froφ disδ ε oµ lengtΦ l∞ (256-bytσ pages⌐ ì
  543.                starting at track tt and sector ss placing the data at bbbb.
  544.           S bbbb eeee
  545.                Disassembly (symbolic dump) from bbbb to eeee.
  546.           T bbbb eeee
  547.                Destructive memory test from bbbb to eeee-1.
  548.           U bbbb
  549.                Set breakpoint at bbbb.
  550.           V
  551.                Display all currently-set breakpoints.
  552.  
  553.           W n ll tt ss bbbb
  554.                Writσ oε disδ ε thσ datß a⌠ bbbΓ fo≥ ß lengtΦ oµ l∞ startinτ ì
  555.                at track tt, sector ss.  ll is in 256-byte pages.
  556.           X
  557.                Display registers.
  558.           Z bbbb eeee dd
  559.                Zero or set memory from bbbb to eeee-1 with byte dd.
  560. :CP/M SYSGEN Command
  561.  
  562.      Thσá SYSGE╬ transien⌠ commanΣ allow≤ generatioε oµ aε initializeΣ disδ ì
  563. containing the CP/M Operating System.
  564.  
  565.      It is invoked by typing
  566.  
  567.           SYSGEN
  568.  
  569.      Oncσ invoked¼á thσ use≥ i≤ prompteΣ througΦ thσ session«  Refe≥ t∩ thσ ì
  570. CP/M Manual for further details.
  571. :CP/M SUBMIT Command
  572.  
  573.      Thσá SUBMI╘á commanΣ allow≤ CP/═ command≤ t∩ bσ batcheΣá togethe≥á fo≥ ì
  574. automatic processing.  The form of this command is
  575.  
  576.           SUBMIT ufn parm1 parm2 ... parmn
  577.  
  578.      Thσ ufε giveε iε thσ SUBMI╘ commanΣ mus⌠ bσ thσ filenamσ (no⌠ type⌐ oµ ì
  579. ßá filσ whicΦ exist≤ oε thσ currentl∙ logged-iε disδ witΦ aεá assumeΣá filσ ì
  580. type of '.SUB'.  Refer to the CP/M Manual for further details.
  581. :CP/M BDOS -- Basic I/O Operations
  582.  
  583.      Function and Number      Input Parameters    Output Parameters
  584.  
  585.      Read Console      1      None                ASCII Char in A
  586.      Write Console     2      ASCII Char in E     None
  587.      Read Reader       3      None                ASCII Char in A
  588.      Write Punch       4      ASCII Char in E     None
  589.      Write List        5      ASCII Char in E     None
  590.      Get I/O Status    7      None                I/O Status in A
  591.      Put I/O Status    8      I/O Status in E     None
  592.      Print Buffer      9      Address of string   None
  593.                                terminated by $
  594.                                in DE
  595.      Read Buffer      10      Address of Read     Read Buffer is filled
  596.                                Buffer in DE
  597.      Console Ready    11      None                LSB of A is 1 if char
  598.                                                    ready
  599. *All function numbers are passed in Reg C.
  600.  
  601.  
  602. I/O Status Byte --
  603.  
  604.      Value     Bits 6&7  Bits 4&5  Bits 2&3  Bits 0&1
  605.  
  606.        00      CON:=TTY: RDR:=TTY: PUN:=TTY: LST:=TTY:
  607.        01           CRT:      PTR:      PTP:      CRT:
  608.        10           BAT:      UR1:      UP1:      LPT:
  609.        11           UC1:      UR2:      UP2:      UL1:
  610.  
  611. Read Buffer --
  612.  
  613.      Byte      Function
  614.  
  615.        1       Maximum Buffer Length
  616.        2       Current Buffer Length (returned value)
  617.      3-n       Data (returned values)
  618.  
  619.  
  620. :CP/M BIOS -- Basic Disk Operations
  621.  
  622.      Function and Number      Input Parameters    Output Parameters
  623.  
  624.      Lift Head        12      None                None
  625.      Init BDOS        13      None                None
  626.      Log-In Disk      14      Value in Reg E      None
  627.                                A=0, B=1, C=2,
  628.                                D=3
  629.      Open File        15      Address of FCB      Byte address of FCB
  630.                                in DE               if found or 0FFH if not
  631.      Close File       16      Address of FCB      Byte address of FCB
  632.                                in DE               if found or 0FFH if not
  633.      Search for File  17      Address of FCB      Byte address of first FCB
  634.                                in DE               if found or 0FFH if not
  635.      Search for Next  18      Address of FCB      Byte address of next FCB
  636.                                in DE               if found or 0FFH if not
  637.      Delete File      19      Address of FCB      None
  638.                                in DE
  639.  
  640.      Function and Number      Input Parameters    Output Parameters
  641.  
  642.      Read Next Record 20      Address of FCB      0=successful read
  643.                                in DE              1=read past EOF
  644.                                                   2=reading random data
  645.      Write Next Rec   21      Address of FCB      0=successful write
  646.                                in DE              1=error in extending
  647.                                                   2=end of disk data
  648.                                                   255=no more dir space
  649.      Make File        22      Address of FCB      Byte address of FCB or
  650.                                in DE               255 if no more dir space
  651.      Rename FCB       23      Address of FCB      Byte Address of Dir entry
  652.                                in DE               or 255 if no match
  653.      Read Drive No    25      None                Number of logged-in drive
  654.                                                    (A=0, B=1, C=2, D=3)
  655.      Set DMA Address  26      Address of 128      None
  656.                               byte buffer in DE
  657.  
  658. *All function numbers are passed in Reg C
  659.  
  660. :CP/M File Types
  661.  
  662.      ALG       ALGOL 60 Source File
  663.      ASM       Assembler Source File
  664.      BAK       Backup File
  665.      BAS       BASIC Source File (CBASIC)
  666.      C         C Source File
  667.      COM       "Command" File (Binary ORGed to 100H)
  668.      FOR       FORTRAN IV Source File
  669.      HEX       Intel "hex" code file
  670.      HLP       HELP File
  671.      INT       BASIC Intermediate File
  672.      LST       Listing File
  673.      MAC       MACRO-80 Source File
  674.      PRN       Assembler Listing File
  675.      SRC       PASCAL/MT Source File
  676.      SUB       SUBMIT File
  677.      TC        Tiny-C Source File
  678.      TFS       TFS Source File
  679.      TXT       Text File
  680.      $$$       Temporary File
  681. :CP/M BIOS Jump Vector
  682.  
  683.      Thσá followinτ i≤ ß tablσ representinτ thσ entr∙ point≤ int∩ thσá CP/═ ì
  684. BIOS of the major routines accessable to the user --
  685.  
  686.  
  687.      Routine   Relative Offset     Comment
  688.  
  689.      BOOT           00H            Cold Start
  690.      WBOOT          03H            Warm Start
  691.      CONST          06H            Console Status
  692.                                     Reg A = 00 if no char ready
  693.                                     Reg A = FF if char readyè     CONIN          09H            Console char in (Reg A)
  694.      CONOUT         0CH            Console char out (Reg C)
  695.      LIST           0FH            List out (Reg C)
  696.      PUNCH          12H            Punch out (Reg C)
  697.      READER         15H            Reader in (Reg A)
  698.  
  699.      Routine   Relative Offset     Comment
  700.  
  701.      HOME           18H            Move to track 00
  702.      SELDSK         1BH            Select disk given by Reg C (A=0,B=1,...)
  703.      SETTR╦á        1E╚á           Se⌠á tracδá addres≤á giveεá b∙á Reτá ├ 
  704.                                       (0...76)
  705.      SETSE├á        21╚á           Se⌠á secto≥á addres≤ giveεá b∙á Reτá ├ 
  706.                                       (1...26)
  707.      SETDMA         24H            Set subsequent DMA address (RP B&C)
  708.      READ           27H            Read track/sector (block)
  709.      WRITE          2AH            Write track/sector (block)
  710.