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 / ZCPR33 / A-R / DU314A.LBR / DU3.HZP / DU3.HLP
Text File  |  2000-06-30  |  39KB  |  1,132 lines

  1. ;
  2.                          -- DU3 --
  3.  
  4.                     GENERAL INFORMATION
  5.          1 - Invoking DU3 and DU3 Installation
  6.          2 - DU3 Command Summary
  7.          3 - The DU3 Editor
  8.          4 - Examples of Command Use
  9.          5 - Interpreting the DU3 Directory Display
  10.  
  11.                       COMMAND DETAILS
  12.       A - Logging Disks and Examining Disk Parameters
  13.       B - Positioning and Reading Data
  14.       C - Searching for Data
  15.       D - Saving and Restoring Data
  16.       E - Viewing Data
  17.       F - Altering Data
  18.       G - Manipulating Macros and the @ Command
  19.       H - Miscellanea
  20. :1
  21.  
  22.      DU3 is invoked by a command line of the following form:
  23.  
  24.                          DU3 <text>
  25.  
  26. where <text> is any valid DU3 command sequence. If the first 
  27. two   characters   of  <text>   are   '/?',   the   built-in 
  28. documentation  is displayed and the user is returned to  the 
  29. OpSys, as per the TOOLSET Convention.
  30.  
  31.   Examples:
  32.  
  33.    DU3 /?
  34.      -- Display Built-in Documentation
  35.  
  36.    DU3 lb,g0,e
  37.      -- Execute  commands to Log in Drive B,  goto Group  0, 
  38. and enter editor at the first Block of Group 0
  39.  
  40.  
  41.      DU3  is  designed  to be installed with  a  minimum  of 
  42. trouble.  In  fact,  in almost all cases,  no changes to the 
  43. source  file should be necessary to get DU3 up and  running. 
  44. This is because DU3 uses the disk parameter block of CP/M to 
  45. determine the characteristics of the disk environment.
  46.  
  47.      DU│ i≤ installeΣ b∙ runninτ thσ ZCPR│ utilit∙ Z3IN╙ áoε ì
  48. i⌠ (no⌠ needeΣ witΦ ZCP╥ 3.3)«  Al∞ DU│ need≤ t∩ perforφ it≤ ì
  49. function≤ i≤ ß pointe≥ t∩ thσ ZCPR│ Environmen⌠ áDescriptor«  ì
  50. DU│ i≤ assembleΣ witΦ VLIB¼ Z3LIB¼ anΣ SYSLIB3.
  51.  
  52.      DU3 is intended for use on a ZCPR3 system.
  53.  
  54.      This HLP file describes DU3 in some detail.  The screen 
  55. displays  included  are  very close  to  the  actual  screen 
  56. displays the user will see on his terminal when he runs DU3.  
  57. The differences will be cosmetic in nature.
  58.  
  59. :2
  60.  
  61.                       COMMAND SUMMARY
  62.  
  63.      A  command  line may consist of only one command  or  a 
  64. series of commands separated by commas.  In the latter form, 
  65. the commands are executed sequentially.  The only exceptions 
  66. to  this  rule  are  the :ntext command  (which  stores  the 
  67. command  line  away as a macro) and the *nn  command  (which 
  68. repeats the command line).
  69.  
  70.      Commands shown in the following screens are in order of 
  71. frequency of use as shown by experience.
  72.  
  73.                      ---- Editing ----
  74. E    Invoke Editor
  75.                    ---- Positioning ----
  76. Tn   Position to Track n (dec)     Sn   Position to Sec n
  77. Gn   Position to Group n (hex)     G    Show position
  78. +n   Advance to Next Sector        -n   Back up to Last Sec
  79.  
  80.                     ---- Displaying ----
  81. An-n ASCII Dump                    Hn-n Hex Dump
  82. Dn-n ASCII and Hex Dump            Vn   View n Blocks
  83. M    Display Disk Map              Mn   Display File in Group n
  84.  
  85.                 ---- Data Modification ----
  86. CAn text  Enter Text               CAn1-n2 char  Enter Char over Range
  87. CHn vals  Enter Binary Values      CHn1-n2 val   Enter Value over Range
  88.  
  89.                  ---- Disk Read/Write ----
  90. R    Read Current Block            W    Write Current Block
  91.  
  92.                    ---- Exiting DU3 ----
  93. X    Exit to ZCPR3                 ^C   Exit to ZCPR3
  94.  
  95.                         ---- Macros ----
  96.  n    Exec Macro (0<=n<=9)          :nt  Define Macro n w/str t
  97.  :Pn  Print Macro n                 :PA  Print All Macros
  98.  :P@  Print Prev Command
  99.  
  100.                ---- Block/Group Queueing ----
  101.  <    Save Current Block in Temp    >    Get Saved Block
  102.  <B   Save Current Block on Queue   >B   Get Block from Queue
  103.  <G   Save Current Group on Queue   >G   Get Current Group
  104.  <Gn  Save Group N on Queue         >Gn  Get Group N
  105.  
  106.                   ---- Queue Control ----
  107.  Q    Print Queue Statistics        QZ   Zero (Empty) Queue
  108.  QSfile    Save Queue as File
  109.  
  110.  
  111.                   ---- Data Searching ----
  112. Ff   Find File f                   =string   Search for String
  113. Un   Set User Area for Find
  114.  
  115.                  ---- Login/Disk Reset ----
  116. Ld   Log in Disk                   N         New Disk Reset
  117.  
  118.                   ---- Printer Output ----
  119. P    Toggle Printer
  120.  
  121.                ---- Command Manipulation ----
  122. @    Exec Prev Command             *nn  Repeat Command Line
  123.  
  124.                  ---- Statistics/Help ----
  125. #    Display Disk Stats            ?    Display Help Info
  126.  
  127.                     ---- Halt/Sleep ----
  128. !    Halt and Wait for User        Zn   Sleep n Seconds
  129.  
  130. :A
  131.  
  132.      The following commands are discussed in this section of 
  133. the HELP file:
  134.  
  135.           L -- Log in Disk
  136.           N -- New Disk (Reset Disk System)
  137.           M -- Map Disk Directory
  138.           U -- Select User Number
  139.           # -- Print Disk and Queue Statistics
  140.  
  141.  
  142.  
  143.                               L[d]
  144.  
  145.      The simple "L" command re-logs in the current disk. The 
  146. user may pull out a disk,  put in a new, and "L" just to log 
  147. it in.  The form "Ld", where d is a valid drive letter (like 
  148. "LB"), is used to log in a specific disk and permit the user 
  149. to work on that particular disk from this time foreword.
  150.  
  151.      Example (actual DU3 session):
  152.  
  153. DU3  B1? l
  154.  
  155. DU3  B1? la
  156.  
  157. DU3  A1? lb
  158.  
  159.  
  160.                                 N
  161.  
  162.      This  tells DU3 that the user just put in a  new  disk. 
  163. For   those  BIOS  implementations  that  need  to  be  told 
  164. specifically (Reset) that a disk change has been  made,  use 
  165. this  command  every  time a disk is changed  while  DU3  is 
  166. running.
  167.  
  168.      Example:
  169.  
  170. DU3  B1? n
  171.  
  172.      Note:   There was a significant delay before the prompt 
  173. returned.  A complete disk system reset took place.
  174.  
  175.  
  176.  
  177.                               M[n]
  178.  
  179.      Dumps  a  map of the group allocations  for  files.  Mn 
  180. shows which file is allocated to group "n".
  181.  
  182.      Example (actual DU3 session, edited):
  183.  
  184. DU3  B1? m
  185. 0010-0010  07 STD     .MSG 00      0011-0011  07 TALK    .SUM 00 
  186. 0012-0012  07 Z2CON   .WSH 00      0013-0013  00 LDIR    .C   00 
  187. 0014-0014  00 COMMAND .LBR 01      0015-0015  00 LDIR    .C   00 
  188.      < Detail Left Out >
  189. 004B-004B  08 MASTER  .CAT 03      004C-0050  00 COMMAND .LBR 05 
  190. 0051-0051  00 COMMAND .LBR 07     0052-0052  00 UNERA15 .COM 00 
  191. 0053-0053  08 MENU    .CPR 00     0054-0057  00 COMMAND .LBR 07 
  192. Type Any Character to Continue or ^C to Abort - 
  193. DU3  B1? m54
  194. 0054-0057  00 COMMAND .LBR 07 
  195. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  196.  
  197.      The entries are divided as follows:
  198.  
  199. 0010-0010  07 STD     .MSG 00 : 0011-0011  07 TALK    .SUM*00 
  200.   ^        ^    ^          ^                  ^
  201.   |        |    Filename   Extent              |
  202.   |        User Number                      Two files have been
  203.   Group Range                          assigned allocation
  204.                               group 11.  This  is
  205.                               a   serious   error 
  206.                               requiring   erasure 
  207.                               of one file.
  208.  
  209.                                Uu
  210.  
  211.      Logs user 'u' for next F (Find File) command.
  212.  
  213.      Example (actual DU3 session):
  214.  
  215. DU3  B1? u7
  216.  
  217. DU3  B7? u1
  218.  
  219.                                 #
  220.  
  221.      Prints the disk parameters:
  222.  
  223. . Current Disk Drive          . Number of Tracks on Disk
  224. . Size of Group in Blocks     . Number of Sectors Per Track
  225. . Number of Groups on Disk    . Number of Directory Entries
  226. . Number of System Tracks
  227.  
  228.      Prints the queue statistics:
  229.  
  230. . Size of Queue               . Space Available
  231.  
  232. :B
  233.  
  234.      The following commands are discussed in this section of 
  235. the HELP file:
  236.  
  237.           G -- Position to Group
  238.           S -- Position to Sector
  239.           T -- Position to Track
  240.           R -- Read Block
  241.           W -- Write Block
  242.           + -- Advance to Next Logical Sector
  243.           - -- Backup to Last Logical Sector
  244.  
  245.  
  246.  
  247.                               G[nn]
  248.  
  249.      Position  to group nn and read block.   If the form  is 
  250. simply "G", show the current position.
  251.  
  252.      Example (actual DU3 session):
  253.  
  254. DU3  B1? g0
  255. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  256.  
  257. DU3  B1? g4
  258. Group = 0004:00, Track = 122, Sector = 129, Physical Sector = 129
  259.  
  260. DU3  B1? g
  261. Group = 0004:00, Track = 122, Sector = 129, Physical Sector = 129
  262.  
  263. DU3  B1? g0
  264. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  265.  
  266.  
  267.                            Tnn and Snn
  268.  
  269.      "Tnn"  does  a  seek to track nn but does  not  read  a 
  270. block.   "Snn"  positions to sector nn on the current  track 
  271. and reads the block there.  Example (actual DU3 session):
  272.  
  273. DU3  B1? t124
  274. Group = 0015:00, Track = 124, Sector = 1, Physical Sector = 1
  275.  
  276. DU3  B1? s24
  277. Group = 0015:17, Track = 124, Sector = 24, Physical Sector = 24
  278.  
  279.  
  280.                              R and W
  281.  
  282.      R  reads the block currently positioned to into memory. 
  283. Note R (Read) is implicit in the G,  +,  and - commands, but 
  284. NOT in the S and T commands.
  285.  
  286.      W writes back the current block (NOTE:  may not be used 
  287. after an F command, as CP/M was used to find the file in the 
  288. directory).
  289.  
  290.      Examples:
  291.  
  292. DU3  B1? r
  293.  
  294. DU3  B1? w
  295.  
  296.  
  297.                          +[nn] and -[nn]
  298.  
  299.      "+" advances 1 sector (if below track 2,  this advances 
  300. to next numerical sector and if 2 or more, advances based on 
  301. the system's sector skewing algorithm,  i.e.  so + will  get 
  302. the  next  logical sector of the file).   "-" backups  up  1 
  303. sector in the same sense.
  304.  
  305.      Note + and - may take an amount: for example, +15 steps 
  306. in  15  sectors.  Note  also that "-" issued  at  the  first 
  307. logical  sector  of the disk will wrap back to the last  and 
  308. "+" issued at last sector will wrap forward to the first.
  309.  
  310.      Examples (actual DU3 session):
  311.  
  312. DU3  B1? g0
  313. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  314.  
  315. DU3  B1? d
  316. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  317. 10  10000000 00000000  00000000 00000000  |................|
  318. 20  004C4449 52202020  20432020 00000038  |.LDIR    C  ...8|
  319. 30  13001500 00000000  00000000 00000000  |................|
  320. 40  0843504D 55472020  20434154 01000046  |.CPMUG   CAT...F|
  321. 50  1C001E00 38003D00  41004300 45000000  |....8.=.A.C.E...|
  322. 60  00434F4D 4D414E44  204C4252 01000080  |.COMMAND LBR....|
  323. 70  14001600 17001800  19001A00 1B001D00  |................|
  324.  
  325. DU3  B1? +d
  326. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  327. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  328. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  329. 20  00554E45 52413135  2041534D 00000060  |.UNERA15 ASM...`|
  330. 30  3E003F00 40000000  00000000 00000000  |>.?.@...........|
  331. 40  075A3249 4E532020  20575348 0000002A  |.Z2INS   WSH...*|
  332. 50  21002500 00000000  00000000 00000000  |!.%.............|
  333. 60  075A3243 4F4E2020  20575348 0000003F  |.Z2CON   WSH...?|
  334. 70  12002200 00000000  00000000 00000000  |..".............|
  335.  
  336. DU3  B1? +d
  337. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  338. 00  07445532 20202020  2042414B 00000057  |.DU3     BAK...W|
  339. 10  26002800 29000000  00000000 00000000  |&.(.)...........|
  340. 20  04535441 52545550  20C3CF4D 0000001E  |.STARTUP COM....|
  341. 30  27000000 00000000  00000000 00000000  |'...............|
  342. 40  00434F4D 4D414E44  204C4252 03000080  |.COMMAND LBR....|
  343. 50  1F002000 30003100  32003300 34003500  |.. .0.1.2.3.4.5.|
  344. 60  00434F4D 4D414E44  204C4252 05000080  |.COMMAND LBR....|
  345. 70  36003700 39004C00  4D004E00 4F005000  |6.7.9.L.M.N.O.P.|
  346.  
  347. DU3  B1? +2
  348. Group = 0000:04, Track = 122, Sector = 5, Physical Sector = 5
  349.  
  350.  
  351. DU3  B1? d
  352. 00  084D4153 54455220  20434154 01000080  |.MASTER  CAT....|
  353. 10  2D002F00 3A003B00  3C004200 44004600  |-./.:.;.<.B.D.F.|
  354. 20  00464958 54455820  2041534D 0100001E  |.FIXTEX  ASM....|
  355. 30  65006600 69006B00  6C000000 00000000  |e.f.i.k.l.......|
  356. 40  00554E45 52413135  20434F4D 00000007  |.UNERA15 COM....|
  357. 50  52000000 00000000  00000000 00000000  |R...............|
  358. 60  084D454E 55202020  20C35052 00000008  |.MENU    CPR....|
  359. 70  53000000 00000000  00000000 00000000  |S...............|
  360.  
  361. DU3  B1? -3d
  362. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  363. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  364. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  365. 20  00554E45 52413135  2041534D 00000060  |.UNERA15 ASM...`|
  366. 30  3E003F00 40000000  00000000 00000000  |>.?.@...........|
  367. 40  075A3249 4E532020  20575348 0000002A  |.Z2INS   WSH...||
  368. 50  21002500 00000000  00000000 00000000  |!.%.............|
  369. 60  075A3243 4F4E2020  20575348 0000003F  |.Z2CON   WSH...?|
  370. 70  12002200 00000000  00000000 00000000  |..".............|
  371. :C
  372.  
  373.      The commands for searching for data on the disk are:
  374.  
  375.        Ffilename.typ  -- find all dir entries for file
  376.  
  377.        =string        -- find next occurrence of string
  378.  
  379.  
  380.  
  381.                        Ffilename.typ
  382.  
  383.      Prin⌠ director∙ fo≥ filσ "filename.typ"«  Thi≤ ácommanΣ ì
  384. present≤ áthσ ádirector∙ áentrie≤ fo≥ áal∞ áextent≤ áoµ áthσ ì
  385. indicateΣ filσ a⌠ thσ curren⌠ use≥ area«  Seσ thσ sectioε oε ì
  386. "Interpretinτ thσ DU│ Director∙ Displayó fo≥ inf∩ oε ho≈ át∩ ì
  387. interpre⌠ thσ informatioε presented.
  388.  
  389.      Example (actual DU3 session):
  390.  
  391. DU3  B1? fz80.mac
  392. 40  015A3830 20202020  204D4143 0000000E  |.Z80     MAC....|
  393. 50  9A000000 00000000  00000000 00000000  |................|
  394. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  395.  
  396. DU3  B1? ftest.txt
  397. ++ File Not Found ++
  398. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  399.  
  400.  
  401.                              =string
  402.  
  403.      This command performs a search for the indicated  ASCII 
  404. text,  starting at current sector. <xx> hex may be imbedded, 
  405. or  used alone:   To find "IN 0FEH":  =<db><fe>.   Bit 7  is 
  406. ignored unless <xx> is used.   Note that, due to the parsing 
  407. scheme of DU3,  forms such as "+=string", which positions to 
  408. the  next  sector and then starts the search,  are  allowed.  
  409. Forms  like "+2=string" are equally permitted.   The  search 
  410. may be aborted by a ^C.  Example:
  411.  
  412. DU3  B1? g0
  413. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  414.  
  415. DU3  B1? =DU3
  416. = at 24
  417. Group = 0000:0E, Track = 122, Sector = 15, Physical Sector = 15
  418.  
  419.  
  420. DU3  B1? d
  421. 00  07533130 30202020  20545854 0000000C  |.S100    TXT....|
  422. 10  0C010000 00000000  00000000 00000000  |................|
  423. 20  07445532 20202020  2042414B 00000068  |.DU3     BAK...h|
  424. 30  2A006100 6D007800  00000000 00000000  ||.a.m.x.........|
  425. 40  015A3830 20202020  204D4143 0000000E  |.Z80     MAC....|
  426. 50  9A000000 00000000  00000000 00000000  |................|
  427. 60  E5444953 4B4F5554  20434F4E 00000020  |eDISKOUT CON... |
  428. 70  60000000 00000000  00000000 00000000  |`...............|
  429.  
  430. DU3  B1? +=DU3
  431. Group = 0000:0F, Track = 122, Sector = 16, Physical Sector = 16
  432. = at 64
  433. Group = 0000:10, Track = 122, Sector = 17, Physical Sector = 17
  434.  
  435.  
  436. DU3  B1? d
  437. 00  075A3243 4F4E2020  20575320 05000080  |.Z2CON   WS ....|
  438. 10  3D013E01 3F014001  41014201 43014401  |=.>.?.@.A.B.C.D.|
  439. 20  075A3243 4F4E2020  20575320 06000077  |.Z2CON   WS ...w|
  440. 30  45014601 47014801  00000000 00000000  |E.F.G.H.........|
  441. 40  E5444953 4B4F5554  20434F4E 00000020  |eDISKOUT CON... |
  442. 50  97000000 00000000  00000000 00000000  |................|
  443. 60  07445532 20202020  20484C50 01000006  |.DU3     HLP....|
  444. 70  98009900 9B009C00  9D000000 00000000  |................|
  445.  
  446.  
  447. DU3  B1? +=DU3,d
  448. Group = 0000:11, Track = 122, Sector = 18, Physical Sector = 18
  449. = at 24
  450. Group = 0000:11, Track = 122, Sector = 18, Physical Sector = 18
  451. 00  E547454E 494E5320  204D4143 01000080  |eGENINS  MAC....|
  452. 10  D700EF00 F000F400  F500F600 F700F800  |W.o.p.t.u.v.w.x.|
  453. 20  E5445532 20202020  2041534D 01000080  |eDU3     ASM....|
  454. 30  EC00ED00 EE00FA00  07010B01 0E011301  |l.m.n.z.........|
  455. 40  04445532 20202020  20C3CF4D 0000004E  |.DU3     COM...N|
  456. 50  F100F200 F3000000  00000000 00000000  |q.r.s...........|
  457. 60  E547454E 494E5320  204D4143 02000039  |eGENINS  MAC...9|
  458. 70  F9000F01 00000000  00000000 00000000  |y...............|
  459.  
  460. :D
  461.  
  462.      The following commands are discussed in this section of 
  463. the HELP file:
  464.  
  465.           <  -- Save Current Block
  466.           >  -- Restore Saved Block
  467.           <B -- Save Current Block at Tail of Queue
  468.           >B -- Load Current Block from Head of Queue
  469.           <G -- Read and Save Group at Tail of Queue
  470.           >G -- Copy Group from Head of Queue and Write
  471.           Q  -- Print Queue Statistics
  472.           QZ -- Zero (Clear) Queue
  473.           QS -- Save Queue as a File
  474.   
  475.  
  476.  
  477.                              < and >
  478.  
  479.      "<"  saves  current block in an internal  save  buffer.  
  480. ">"  copies the internal save buffer into the current  block 
  481. area (but does NOT write it out to disk).
  482.  
  483.                             <B and >B
  484.  
  485.      "<B"  saves the current block onto the tail of the  DU3 
  486. Queue.   This  Queue,  a  FIFO  (First  In-First  Out)  data 
  487. structure,  can  be used to collect a number of  blocks  for 
  488. later copy to a disk file or explicit placement somewhere on 
  489. the  disk.   ">B" extracts the block at the head of the  DU3 
  490. Queue and places it into the working buffer area.
  491.  
  492.                         <G[nn] and >G[nn]
  493.  
  494.      "<G"  reads the current group and saves it on  tail  of 
  495. the  DU3  Queue.   The size of a group is dependent  on  the 
  496. format  of  the disk,  and DU3 automatically adjusts to  the 
  497. proper  group  size without the user having to  worry  about 
  498. what  it is.   ">G" copies the group at the head of the  DU3 
  499. Queue  onto  disk.   If  nn is specified (as  in  "<Gnn"  or 
  500. ">Gnn"),  then  the indicated group is read from or  written 
  501. to.   If  nn  is  not given,  then the  group  the  user  is 
  502. currently positioned to is affected.
  503.  
  504.                         Q, QZ, and QSfile
  505.  
  506.      Q reports the status of the DU3 Queue,  namely how many 
  507. blocks  are  stored in it and how much  space  remains.   QZ 
  508. zeroes  (clears) the DU3 Queue.   "QSfilename.typ" saves the 
  509. DU3 Queue on disk in the current user area as the  indicated 
  510. file.
  511.      Examples (actual DU3 session):
  512.  
  513. DU3  B1? g0
  514. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  515.  
  516. DU3  B1? d
  517. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  518. 10  10000000 00000000  00000000 00000000  |................|
  519. 20  004C4449 52202020  20432020 00000038  |.LDIR    C  ...8|
  520. 30  13001500 00000000  00000000 00000000  |................|
  521. 40  0843504D 55472020  20434154 01000046  |.CPMUG   CAT...F|
  522. 50  1C001E00 38003D00  41004300 45000000  |....8.=.A.C.E...|
  523. 60  00434F4D 4D414E44  204C4252 01000080  |.COMMAND LBR....|
  524. 70  14001600 17001800  19001A00 1B001D00  |................|
  525.  
  526. DU3  B1? <
  527.  
  528. DU3  B1? ch0-7f e5
  529.  
  530. DU3  B1? d
  531. 00  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  532. 10  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  533. 20  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  534. 30  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  535. 40  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  536. 50  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  537. 60  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  538. 70  E5E5E5E5 E5E5E5E5  E5E5E5E5 E5E5E5E5  |eeeeeeeeeeeeeeee|
  539.  
  540. DU3  B1? >,d
  541. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  542. 10  10000000 00000000  00000000 00000000  |................|
  543. 20  004C4449 52202020  20432020 00000038  |.LDIR    C  ...8|
  544. 30  13001500 00000000  00000000 00000000  |................|
  545. 40  0843504D 55472020  20434154 01000046  |.CPMUG   CAT...F|
  546. 50  1C001E00 38003D00  41004300 45000000  |....8.=.A.C.E...|
  547. 60  00434F4D 4D414E44  204C4252 01000080  |.COMMAND LBR....|
  548. 70  14001600 17001800  19001A00 1B001D00  |................|
  549.  
  550.  
  551. DU3  B1? q
  552. ** Queue Status Summary **
  553. 0 Blocks in Queue
  554. 249 Blocks Left in Queue
  555. Address of Head of Queue: 3E00 Hex
  556. Address of Tail of Queue: 3E00 Hex
  557.  
  558. DU3  B1? <g
  559. Reading from Group 0000
  560. 32 Blocks in Queue
  561. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  562.  
  563. DU3  B1? g1
  564. Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
  565.  
  566. DU3  B1? <g
  567. Reading from Group 0001
  568. 64 Blocks in Queue
  569. Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
  570.  
  571.  
  572. DU3  B1? q
  573. ** Queue Status Summary **
  574. 64 Blocks in Queue
  575. 185 Blocks Left in Queue
  576. Address of Head of Queue: 3E00 Hex
  577. Address of Tail of Queue: 5E00 Hex
  578.  
  579. DU3  B1? qsdir.sys
  580. Queue Saved in File
  581.  
  582. DU3  B1? qz
  583. ** Queue Status Summary **
  584. 0 Blocks in Queue
  585. 249 Blocks Left in Queue
  586. Address of Head of Queue: 3E00 Hex
  587. Address of Tail of Queue: 3E00 Hex
  588.  
  589. DU3  B1? g0
  590. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  591.  
  592.  
  593. DU3  B1? <b
  594. 1 Blocks in Queue
  595.  
  596. DU3  B1? +<b
  597. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  598. 2 Blocks in Queue
  599.  
  600. DU3  B1? +<b
  601. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  602. 3 Blocks in Queue
  603.  
  604. DU3  B1? +<b
  605. Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
  606. 4 Blocks in Queue
  607.  
  608. DU3  B1? +2<b
  609. Group = 0000:05, Track = 122, Sector = 6, Physical Sector = 6
  610. 5 Blocks in Queue
  611.  
  612. :E
  613.  
  614.                               V[nn]
  615.  
  616.      V  views  the current block as ASCII  characters.   The 
  617. form "Vnn" views the indicated number of blocks starting  at 
  618. the current one.
  619.  
  620.                            A, D, and H
  621.  
  622.      D   displays  a  block  or  portion  thereof  in   both 
  623. hexadecimal notation and as ASCII characters.   A displays a 
  624. block or portion thereof as ASCII characters, and H displays 
  625. a  block  or portion thereof as  hexadecimal  numbers.   All 
  626. three commands accept a range, such as the following:
  627.  
  628.     D0-#7F    is the same as just D
  629.     D3-5
  630.     A20-#3F
  631.  
  632.      See next section for examples.
  633. :F
  634.  
  635.                             CH and CA
  636.  
  637.      CH  allows  the  user  to change the  contents  of  the 
  638. current  block  by  specifying  new  values  as  hexadecimal 
  639. numbers.    CA  allows  the  same  by  specifying  an  ASCII 
  640. character string.
  641.  
  642. CHaddr val val val...
  643.      Change Hex data values in block
  644.  
  645. CAaddr char string...è     Change ASCII data values in block
  646.  
  647.      NOTE that <xx> may be hex imbedded in the ASCII: 
  648.           ca0 OK<d><a><1a>
  649.  
  650.      Use W to write changes to disk.
  651.  
  652.      Ranges may be specified:
  653.  
  654. CHaddr-addr byte or CAaddr-addr byte
  655.      Changes a range of bytes to the same value
  656.  
  657.      Examples (actual DU3 session):
  658.  
  659. DU3  B7? g0
  660. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  661.  
  662. DU3  B7? d
  663. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  664. 10  10000000 00000000  00000000 00000000  |................|
  665. 20  004C4449 52202020  20432020 00000038  |.LDIR    C  ...8|
  666. 30  13001500 00000000  00000000 00000000  |................|
  667. 40  0843504D 55472020  20434154 01000046  |.CPMUG   CAT...F|
  668. 50  1C001E00 38003D00  41004300 45000000  |....8.=.A.C.E...|
  669. 60  00434F4D 4D414E44  204C4252 01000080  |.COMMAND LBR....|
  670. 70  14001600 17001800  19001A00 1B001D00  |................|
  671.  
  672.  
  673. DU3  B7? d0-#f
  674. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  675.  
  676. DU3  B7? h0-#f
  677. 00  07535444 20202020  204D5347 00000002  
  678.  
  679. DU3  B7? a0-#f
  680. 00  |.STD     MSG....|
  681.  
  682. DU3  B7? fdu2.hlp
  683. 20  07445532 20202020  20484C50 01000039  |.DU3     HLP...9|
  684. 30  28009800 99009B00  9C009D00 00000000  |(...............|
  685. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  686.  
  687. DU3  B7? g28
  688. Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
  689.  
  690.  
  691. DU3  B7? d
  692. 00  496E766F 6B696E67  20445533 20616E64  |Invoking DU3 and|
  693. 10  20445533 20496E73  74616C6C 6174696F  | DU3 Installatio|
  694. 20  6E0D0A44 55332043  6F6D6D61 6E642053  |n..DU3 Command S|
  695. 30  756D6D61 72790D0A  436F6D6D 616E6473  |ummary..Commands|
  696. 40  20666F72 204C6F67  67696E67 20446973  | for Logging Dis|
  697. 50  6B732061 6E642045  78616D69 6E696E67  |ks and Examining|
  698. 60  20446973 6B205061  72616D65 74657273  | Disk Parameters|
  699. 70  0D0A436F 6D6D616E  64732066 6F722050  |..Commands for P|
  700.  
  701. DU3  B7? v
  702. Invoking DU3 and DU3 Installation
  703. DU3 Command Summary
  704. Commands for Logging Disks and Examining Disk Parameters
  705. Commands for P
  706. Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
  707.  
  708.  
  709. DU3  B7? v3
  710. Invoking DU3 and DU3 Installation
  711. DU3 Command Summary
  712. Commands for Logging Disks and Examining Disk Parameters
  713. Commands for Positioning and Reading Data
  714. Commands for Searching for Data
  715. Commands for Saving and Restoring Data
  716. Commands for Viewing data
  717. Commands for Altering Data
  718. Commands for Manipulating Macros and the @ Command
  719. Miscellanea
  720. Examples of command use
  721. Interpret
  722. Group = 0028:02, Track = 125, Sector = 275, Physical Sector = 275
  723.  
  724.  
  725. DU3  B7? g28
  726. Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
  727.  
  728. DU3  B7? d
  729. 00  496E766F 6B696E67  20445533 20616E64  |Invoking DU3 and|
  730. 10  20445533 20496E73  74616C6C 6174696F  | DU3 Installatio|
  731. 20  6E0D0A44 55332043  6F6D6D61 6E642053  |n..DU3 Command S|
  732. 30  756D6D61 72790D0A  436F6D6D 616E6473  |ummary..Commands|
  733. 40  20666F72 204C6F67  67696E67 20446973  | for Logging Dis|
  734. 50  6B732061 6E642045  78616D69 6E696E67  |ks and Examining|
  735. 60  20446973 6B205061  72616D65 74657273  | Disk Parameters|
  736. 70  0D0A436F 6D6D616E  64732066 6F722050  |..Commands for P|
  737.  
  738.  
  739. DU3  B7? ch0-10 0
  740.  
  741. DU3  B7? d
  742. 00  00000000 00000000  00000000 00000000  |................|
  743. 10  00445533 20496E73  74616C6C 6174696F  |.DU3 Installatio|
  744. 20  6E0D0A44 55332043  6F6D6D61 6E642053  |n..DU3 Command S|
  745. 30  756D6D61 72790D0A  436F6D6D 616E6473  |ummary..Commands|
  746. 40  20666F72 204C6F67  67696E67 20446973  | for Logging Dis|
  747. 50  6B732061 6E642045  78616D69 6E696E67  |ks and Examining|
  748. 60  20446973 6B205061  72616D65 74657273  | Disk Parameters|
  749. 70  0D0A436F 6D6D616E  64732066 6F722050  |..Commands for P|
  750.  
  751. DU3  B7? ca11 This is a test
  752.  
  753. DU3  B7? d0-#1f
  754. 00  00000000 00000000  00000000 00000000  |................|
  755. 10  00546869 73206973  20612074 6573746F  |.This is a testo|
  756.  
  757. :G
  758.  
  759.                            Macros
  760.  
  761.      A Macro is a short-hand the user can employ to define a 
  762. command  sequence.   Rather than having to type an  involved 
  763. command over and over again,  the DU3 macro facility  allows 
  764. the  user to assign this command sequence to a number (0  to 
  765. 9) and then execute it by simply presenting this number as a 
  766. command.   The  following commands are associated with  this 
  767. facility.
  768.  
  769.                         :ntext and n
  770.  
  771.      ":n<text>"  defines the text following the digit 'n' to 
  772. be a Macro.   As always, 0 <= n <= 9.  The macro definitions 
  773. may  be  created  and redefined at will.   If  a  macro  has 
  774. already  been defined for the indicated number,  it will  be 
  775. overwritten by the execution of this command.   "n", where 0 
  776. <= n <= 9, executes the indicated macro.
  777.  
  778.  
  779.                         :Pn and :PA
  780.  
  781.      ":Pn",  where  0 <= n <= 9,  prints the text  of  Macro 
  782. Number n.  ":PA" prints the text of all 10 macros.
  783.  
  784.                          @ and :P@
  785.  
  786.      "@"  executes  the previous command line that  did  not 
  787. contain  the  "@"  Command.   This provides an easy  way  to 
  788. repeat the last command line typed.  For example:
  789.  
  790.      g0             <-- go to Group 0
  791.      ch0-7f e5,<    <-- Initialize the first block and Save
  792.      >,w,+          <-- Read in the Saved Block, Write it 
  793.                          out to disk, and advance to next
  794.                          logical block
  795.      @              <-- Do the Previous Command Again
  796.      @              <-- And Again
  797.  
  798.  
  799.      ":P@"  prints the previous command line (and  does  not 
  800. change it).
  801.  
  802.      Examples (edited DU3 session):
  803.  
  804. DU3  B7? g0
  805. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  806.  
  807. DU3  B7? :1+,d0-#1f
  808.  
  809. DU3  B7? :p1
  810. Macro Definitions --
  811. 1: +,d0-#1f
  812.  
  813. DU3  B7? 1
  814. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  815. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  816. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  817.  
  818.  
  819. DU3  B7? 1
  820. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  821. 00  07444953 4B4F5554  20434F4E 00000000  |.DISKOUT CON....|
  822. 10  00000000 00000000  00000000 00000000  |................|
  823.  
  824. DU3  B7? 1
  825. Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
  826. 00  04584449 52202020  20C3CF4D 00000054  |.XDIR    COM...T|
  827. 10  2C002E00 48000000  00000000 00000000  |,...H...........|
  828.  
  829. DU3  B7? g0,d0-#1f
  830. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  831. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  832. 10  10000000 00000000  00000000 00000000  |................|
  833.  
  834. DU3  B7? 1
  835. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  836. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  837. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  838.  
  839.  
  840. DU3  B7? :pa
  841. Macro Definitions --
  842. 0: 
  843.  
  844. 1: +,d0-#1f
  845.  
  846. 2: 
  847.  
  848.      < Detail Left Out >
  849.  
  850. 9: 
  851.  
  852.  
  853. DU3  B7? g0,d0-#1f,1,1,1
  854. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  855. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  856. 10  10000000 00000000  00000000 00000000  |................|
  857. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  858. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  859. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  860. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  861. 00  07444953 4B4F5554  20434F4E 00000000  |.DISKOUT CON....|
  862. 10  00000000 00000000  00000000 00000000  |................|
  863. Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
  864. 00  04584449 52202020  20C3CF4D 00000054  |.XDIR    COM...T|
  865. 10  2C002E00 48000000  00000000 00000000  |,...H...........|
  866.  
  867.  
  868. DU3  B7? @
  869.  
  870. Command --
  871. g0,d0-#1f,+,d0-#1f,+,d0-#1f,+,d0-#1f
  872. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  873. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  874. 10  10000000 00000000  00000000 00000000  |................|
  875. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  876. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  877. 10  11002300 24000000  00000000 00000000  |..#.$...........|
  878. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  879. 00  07444953 4B4F5554  20434F4E 00000000  |.DISKOUT CON....|
  880. 10  00000000 00000000  00000000 00000000  |................|
  881. Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
  882. 00  04584449 52202020  20C3CF4D 00000054  |.XDIR    COM...T|
  883. 10  2C002E00 48000000  00000000 00000000  |,...H...........|
  884.  
  885. :H
  886.  
  887.                              ?
  888.  
  889.      "?ó áproduce≤ áDU3'≤ áinterna∞ áhelp¼ ágivinτ áß ábrieµ ì
  890. summar∙ ∩µ al∞ commands.
  891.  
  892.  
  893.                            *[nn]
  894.  
  895.      "*nn"  repeats the current command line (as entered  so 
  896. far) nn times.   This command defaults to "forever" if nn is 
  897. not specified. 'nn' may be 2 to 65535.
  898.  
  899.  
  900.                              !
  901.  
  902.      "!"   halts   processing  of   commands,   displays   a 
  903. continuation message to the user,  and waits for the user to 
  904. type any key.  Typing a Control-C aborts command processing.  
  905. This command is useful in stopping loops to give the user as 
  906. much time as he wants to review the display.
  907.  
  908.  
  909.                              P
  910.  
  911.      "P"  toggles the printer switch on and off.   It allows 
  912. the  user  to turn on and off a recording  of  your  console 
  913. output.
  914.  
  915.                              X
  916.  
  917.      "X" exits back to ZCPR3.
  918.  
  919.  
  920.                            Z[nn]
  921.  
  922.      "Znn" causes the program to sleep, or pause, and may be 
  923. used to look at a dump quickly in a looping command line.  Z 
  924. is  1  sec.   Znn  is nn seconds on  an  n  MHz  8080.   The 
  925. processor  speed  is specified within the ZCPR3  Environment 
  926. Descriptor.
  927.  
  928.  
  929.                              ^C
  930.  
  931.      "^C" exits to ZCPR3 and Warm Boots.
  932.  
  933.      Examples (actual DU3 session):
  934.  
  935.  
  936. DU3  B7? g0
  937. Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
  938.  
  939. DU3  B7? d0-#f,+,!,*
  940. 00  07535444 20202020  204D5347 00000002  |.STD     MSG....|
  941. Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
  942.  
  943. Type Any Character to Continue or ^C to Abort - 
  944. 00  0754414C 4B202020  2053554D 00000049  |.TALK    SUM...I|
  945. Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
  946.  
  947. Type Any Character to Continue or ^C to Abort - 
  948. 00  07444953 4B4F5554  20434F4E 00000000  |.DISKOUT CON....|
  949. Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
  950.  
  951. Type Any Character to Continue or ^C to Abort - 
  952. 00  04584449 52202020  20C3CF4D 00000054  |.XDIR    COM...T|
  953. Group = 0000:04, Track = 122, Sector = 5, Physical Sector = 5
  954.  
  955. Type Any Character to Continue or ^C to Abort - 
  956.  
  957. DU3  B7? g1
  958. Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
  959.  
  960. DU3  B7? d0-#f,+,*3
  961. 00  E5482020 20202020  2042414B 00000004  |eH       BAK....|
  962. Group = 0001:01, Track = 122, Sector = 34, Physical Sector = 34
  963. 00  E5535542 32202020  2042414B 0100007B  |eSUB2    BAK...{|
  964. Group = 0001:02, Track = 122, Sector = 35, Physical Sector = 35
  965. 00  E5434420 20202020  204D4143 00000047  |eCD      MAC...G|
  966. Group = 0001:03, Track = 122, Sector = 36, Physical Sector = 36
  967.  
  968. DU3  B7? ^C
  969. B7>
  970.  
  971. :3
  972.  
  973.      DU3 contains a built-in,  screen-oriented editor.  This 
  974. editor derives its screen-oriented functions from the  ZCPR3 
  975. TCAP,  so  the  DU3 Editor should be invoked only  on  ZCPR3 
  976. Systems  which  are supporting a valid TCAP for  the  user's 
  977. terminal.
  978.  
  979.  
  980.                              E
  981.  
  982.      The  command  "E"  invokes the editor.   If  any  other 
  983. commands  follow  E on the same  line,  these  commands  are 
  984. flushed.   The  DU3 Editor is a complete subsystem under DU3 
  985. in  its own right.   It provides a variety of  user-friendly 
  986. editing  features  for the manipulation of data  within  the 
  987. current sector (block) as well as allowing the user to issue 
  988. any  DU3 command line he desires,  returning to  the  editor 
  989. when it is completed.
  990.  
  991.  
  992.      The  DU3  Editor presents a screen display to the  user 
  993. which  is structured to include a line showing the  contents 
  994. of  the  sector at the cursor,  several lines  of  hex/ASCII 
  995. (similar  to the D command output) which display the  entire 
  996. sector, a menu of commands, a cursor (which initially points 
  997. to the first byte in a sector), and a command prompt.
  998.  
  999.      The  user  may  employ  the  WordStar  cursor  movement 
  1000. commands  to  move the cursor about in the  current  sector.  
  1001. These commands are:
  1002.  
  1003.                        ^E = Cursor UP
  1004.                              ^
  1005.         ^S = Cursor LEFT   <-+->   ^D = Cursor RIGHT
  1006.                              v
  1007.                       ^X = Cursor DOWN
  1008.  
  1009.      ^R refreshes the screen display.
  1010.  
  1011.  
  1012.      The following commands are also available under the DU3 
  1013. Editor:
  1014.  
  1015.      A = Enter ASCII Text into block starting at cursor
  1016.      H = Enter Hex/Dec Numbers into block starting at cursor
  1017.  
  1018. . or + = Advance to Next Logical Sector and Edit
  1019. , or - = Backup to Last Logical Sector and Edit
  1020.  
  1021.     ^W = Write the Current Sector to Disk
  1022.  
  1023.      C = Issue Any DU3 Command Line
  1024.  
  1025.      X = Exit to DU3
  1026.     ^C = Exit to ZCPR3
  1027.  
  1028.  
  1029.      All  of these commands are self-explanatory except  for 
  1030. the A and H commands.
  1031.  
  1032.      The  A  command is used to enter ASCII  text  into  the 
  1033. sector starting at the cursor position.  In response to this 
  1034. command,  the DU3 Editor will prompt the user for input.  He 
  1035. may  then  type  any  text he wishes  followed  by  striking 
  1036. RETURN.  This text is entered literally into the sector.  If 
  1037. it overflows the end of the sector, it is truncated.  If the 
  1038. user  wishes  to  embed  hexadecimal  values,  like  0D  for 
  1039. Carriage Return, he may use the form "<hh>".  Example:
  1040.  
  1041.           this is a test<0D><0A>
  1042.  
  1043.  
  1044.      The  H command is used to enter a group of  hexadecimal 
  1045. and  decimal values into the sector starting at  the  cursor 
  1046. position.   Numbers  separated by spaces are typed in by the 
  1047. user.   If the user wishes to enter a value in decimal,  the 
  1048. form "#nn" is used.  Example:
  1049.  
  1050.           1 2 3 3A b7 #25
  1051.  
  1052.  
  1053.      The  Editor  is one of the most  powerful  capabilities 
  1054. within  DU3.    It  is  highly  recommended  that  the  user 
  1055. experiment   with   it  and  become  acquainted   with   its 
  1056. capabilities. 
  1057.  
  1058. :4
  1059.                           Examples
  1060.  
  1061.  
  1062.      Multiple commands may be separated by ",".
  1063.  
  1064.      Any valid command string may be placed as an operand of 
  1065. the original DU3 command, i.e.:
  1066.  
  1067.      A>DU3 G0,D,G2,=OK<D><A><1A>,D
  1068.  
  1069.  
  1070.      Example:  the following commands will erase the B  disk 
  1071. directory to all E5's:
  1072.  
  1073.     lb        log in b drive
  1074.     g0        position to dir.
  1075.     ch0-7f e5    fill with e5
  1076.     <        save the sector
  1077.     >,w,+,/16    restore, write, next,
  1078.             repeat 16
  1079.  
  1080.      This could be shortened to:
  1081.  
  1082.     lb,g0,ch0-7f e5,<
  1083.     >,w,+,/16
  1084.  
  1085.  
  1086.      The following two macros can be defined:
  1087.  
  1088.    Macro 0 --
  1089.      :0g0,ch0-7f e5,<
  1090.    Macro 1 --
  1091.      :1>,w,+,/16
  1092.  
  1093.      For  the  user to initialize the directory on Drive  A: 
  1094. and  then  on  Drive B:,  the following  commands  could  be 
  1095. issued:
  1096.  
  1097.      la,0      <-- Log in A and Initialize first block
  1098.      1         <-- Perform write
  1099.      lb,0      <-- Log in B and Initialize first block
  1100.      1         <-- Perform write
  1101.      n,0       <-- Declare New Disk and Initialize first 
  1102.                     block
  1103.      1         <-- Perform write
  1104.  
  1105. :5
  1106.      Interpretation of Directory Data Presented by DU3
  1107.  
  1108.      The  following explains the format of a CP/M  directory 
  1109. entry  as  shown by DU3,   using either the  F  (Find  File) 
  1110. command,   or  just doing D (Dump) of the directory sectors, 
  1111. which  are  located in groups 0 and 1 on  a  single  density 
  1112. disk.  Sample result of "FSID.COM" command:
  1113.  
  1114. First        40    00534944 20202020 20434F4D  0000003A  |.SID    COM...:|
  1115. line        ||    |||             |  ||      ||    |      |
  1116.         ||    ||^----hex file name-----^  ||      ||    ^file name^
  1117.         ||    ||                ||      ||     in ASCII
  1118.         ||    ||             extent-^^      ||
  1119.         ||    ||                  ||
  1120.         ||    ||         file size in sectors-^^
  1121.         ||    ||
  1122.         ||    ^^-00 = file active
  1123.         ||       E5 = file erased
  1124.         ^^-displacement of line in directory sector
  1125.  
  1126.  
  1127. Second        50    33343536 3738393A  00000000 00000000  |3456789:........|
  1128. line        |                   |
  1129.         ^---allocation group numbers-------^
  1130.  
  1131.  
  1132.