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 / FASTARNZ.ZZZ / FASTARNZ.
Text File  |  2000-06-30  |  9KB  |  189 lines

  1. Thi≤áfilσádescribe≤áß simplσ mean≤ oµ optimizinτ ß fai≥áportioεáoµáthσ 
  2. automatiπádisδ accesse≤ ß ┌ baseΣ systeφ does«áThσ basiπ idea≤ werσ takeε 
  3. froφ thσ Sagσ advicσ (puε intended¼ bu⌠ n∩ disrespect⌐ iε thσ TCJ26.MZ╟ filσ 
  4. oε thσ ZSI╟ director∙ oµ LILLIPUT┼ #▒ anΣ Ricδ Charne'≤ nea⌠ tricδ iε 
  5. ARUNZNDR.AR╘ (o≥ .AZT¼ maybe...)
  6.  
  7. Whilσ thσ maiε poin⌠ herσ i≤ t∩ presen⌠ thσ alia≤ UPDINPL├ (anΣ it≤ relateΣ 
  8. alia≤ CPYINPLC⌐ somσ backgrounΣ regardinτ thσ point≤ madσ b∙ Ja∙ Sagσ migh⌠ 
  9. indicatσ t∩ yo⌡ wh∙ you'Σ wan⌠ theφ. 
  10.  
  11. Ja∙ Sage¼ iε thσ forme≥ article¼ talk≤ abou⌠ squeezinτ extrß performancσ 
  12. froφ ß disδ systeφ b∙ thσ strateg∙ oµ placinτ thσ mos⌠ ofteε accesseΣ file≤ 
  13. a⌠ thσ lowe≥ track≤ immediatel∙ followinτ thσ directory« Believσ me..« thi≤ 
  14. make≤ ß morσ thaε appreciablσ difference« Hσ note≤ tha⌠ thσ matte≥ oµ wha⌠ 
  15. i≤ accesseΣ mos⌠ ofteε caε bσ subtle¼ sincσ betweeε paths¼ shells¼ erro≥ 
  16. handler≤ anΣ aliase≤ yo⌡ enΣ u≡ readinτ ß lo⌠ morσ files thaε yo⌡ explicitl∙ 
  17. specify« Hσ ha≤ ß shor⌠ bu⌠ gooΣ discussioε oµ file≤ t∩ conside≥ fo≥ specia∞ 
  18. placement¼ anΣ ho≈ t∩ g∩ abou⌠ puttinτ theφ therσ witΦ ß ze° filσ wheε 
  19. makinτ ß fresΦ systeφ disδ (nothinτ oε thσ destinatioε disk)« Ge⌠ thσ 
  20. articlσ iµ yo⌡ don'⌠ havσ i⌠ already« 
  21.  
  22. I'vσ includeΣ m∙ initia∞ versioε oµ sucΦ ß ze° file¼ jus⌠ t∩ offe≥ somσ 
  23. idea≤ fo≥ ß possiblσ configuration« Thσ onl∙ unusua∞ poin⌠ iε thσ ze° filσ 
  24. regard≤ thσ 
  25.             "savσ ▒ b:reserved.alió anΣ thσ 
  26.             "sfß  b:reserved.¬ /r/oó 
  27. lines.
  28.  
  29. Thesσ arσ jus⌠ intendeΣ t∩ creatσ placσ holder≤ iε thosσ lo≈ track≤ t∩ allo≈ 
  30. fo≥ late≥ expansioε oµ thσ file≤ tha⌠ arσ copieΣ directl∙ beforσ them« Thσ 
  31. SF┴ ..« /R/O jus⌠ keep≤ theφ around unti∞ yo⌡ actuall∙ neeΣ them.
  32.  
  33. Thσ Ricδ Charne≤ articlσ mentioneΣ give≤ ß nicσ tricδ fo≥ makinτ softwarσ 
  34. tha⌠ doesn'⌠ kno≈ anythinτ abou⌠ use≥ area≤ o≥ nameΣ directorie≤ respec⌠ 
  35. theφ usinτ ARUNZ« Ver∙ nea⌠ trick¼ anΣ thσ EDI╘ alia≤ i≤ takeε virtuall∙ 
  36. verbatiφ froφ there. 
  37.  
  38. THE ONLY NEW THING HERE.
  39.  
  40. Thσ onl∙ thinτ tha⌠ i≤ reall∙ ne≈ herσ (a⌠ leas⌠ s∩ fa≥ a≤ ╔ know...⌐ i≤ thσ 
  41. additioε oµ thσ UPDINPL├ alia≤ (whicΦ use≤ UPDAT┼ t∩ preven⌠ commanΣ linσ 
  42. overflow.⌐ Thσ ideß fo≥ thi≤ camσ abou⌠ becausσ ╔ aφ aε alia≤ addict¼ beinτ 
  43. a≤ laz∙ a≤ ╔ am« ╔ aφ ofteε amazeΣ a⌠ thσ amoun⌠ oµ timσ I'φ willinτ t∩ 
  44. spenΣ writinτ stufµ t∩ savσ ß fe≈ keystrokes.
  45.  
  46. Anyhow¼ havinτ you≥ ALIAS.CM─ anΣ VFILER.CM─ file≤ dowε iε thσ lo≈ track≤ oµ 
  47. you≥ disδ i≤ onl∙ oµ benefi⌠ iµ the∙ sta∙ there¼ anΣ iµ yo⌡ usσ aliase≤ 
  48. anywherσ nea≥ a≤ mucΦ a≤ ╔ do¼ tha⌠ mean≤ ß lo⌠ oµ messinτ arounΣ eacΦ timσ 
  49. yo⌡ edi⌠ ALIAS.CM─ t∩ ge⌠ i⌠ bacδ wherσ i⌠ belongs, and the same goes for 
  50. VFILER.CMD, which changes every other time I use my system.
  51.  
  52. Thσ UPDINPL├ (UPD╔ i≤ enough..« thσ res⌠ follow≤ tha⌠ wonderfu∞ littlσ ARUN┌ 
  53. period⌐ wil∞ le⌠ yo⌡ edi⌠ ß filσ withou⌠ movinτ i⌠ froφ it≤ relativσ 
  54. positioε oε thσ disk« I⌠ doe≤ thi≤ b∙ copyinτ thσ filσ yo⌡ specif∙ t∩ 
  55. anothe≥ witΦ thσ samσ namσ anΣ qualifie≥ .UPD¼ anΣ lettinτ yo⌡ edi⌠ that« 
  56. Then¼ oncσ yo⌡ leavσ thσ editor¼ i⌠ erase≤ thσ sourcσ file¼ freeinτ u≡ it≤ 
  57. spacσ oε thσ disk¼ copie≤ thσ .UP─ filσ yo⌡ modifieΣ bacδ dowε there¼ anΣ 
  58. delete≤ thσ *.UP─ filσ. Yo⌡ can kee≡ the *.BAK file (just in case) or add
  59. an erase command to get rid of it.
  60.  
  61. Thi≤ allow≤ yo⌡ t∩ painlessl∙ changσ you≥ variou≤ *.CM─ file≤ withou⌠ losinτ 
  62. thei≥ placemen⌠ oε thσ disk¼ anΣ tha⌠ placemen⌠ make≤ enougΦ differencσ tha⌠ 
  63. yo⌡ enΣ u≡ no⌠ mindinτ thσ extrß copyinτ timσ anΣ s∩ fortΦ involveΣ iε thσ 
  64. process« 
  65.  
  66. B∙ thσ way¼ iµ yo⌡ expanΣ onσ oµ thesσ file≤ int∩ ß ne≈ exten⌠ whilσ editinτ 
  67. it¼ iµ yo⌡ havσ ß RESERVED.¬ file¼ ß littlσ judiciou≤ copyinτ anΣ erasinτ 
  68. wil∞ ge⌠ tha⌠ seconΣ extent dowε therσ too« Yo⌡ caε checδ thi≤ witΦ DU3'≤ M
  69. command, and it is worth doing occasionally. Alternately, there is somthing
  70. called DMAP.COM that came out on SUS 8 or 9 that is essentially the DU3 M
  71. command and nothing else. That's what I use.
  72.  
  73. CPYINPL├ i≤ ß simila≥ concept¼ whicΦ allow≤ yo⌡ t∩ cop∙ sucΦ ß filσ froφ onσ 
  74. disδ t∩ another¼ anΣ iµ i⌠ exist≤ oε thσ destinatioε disk¼ i⌠ wil∞ bσ copieΣ 
  75. t∩ thσ samσ spo⌠ oε thσ destinatioε disk« Oncσ again¼ comment≤ regardinτ it≤ 
  76. sizσ relativσ t∩ wha⌠ wa≤ therσ apply¼ anΣ hopefull∙ you'l∞ stil∞ havσ ß 
  77. RESERVED.* file available if you need it. 
  78.  
  79. I⌠ woulΣ bσ nicσ t∩ havσ ß ┌ utilit∙ t∩ comparσ tw∩ file≤ iε term≤ of bytes¼ 
  80. record≤ anΣ extents¼ dependinτ oε thσ optioε specified¼ anΣ theε eithe≥ se⌠ 
  81. thσ erro≥ flaτ and/o≥ ß registe≥ baseΣ oε thσ comparison« Iµ somethinτ likσ 
  82. tha⌠ wa≤ available¼ thσ recover∙ oµ thσ RESERVED.¬ spacσ coulΣ bσ automateΣ 
  83. too... Any takers out there?
  84.  
  85. P.S. If these are too primitive for ya... Gimme a couple months.
  86.  
  87.                       -------------------------------
  88.  
  89. File:      MAKESYS.ZEX
  90.  
  91. Notes:    I use this to generate new 'system' floppies. The only *.COM files
  92.     in user area 0 are STRT.COM and Z.COM (this system uses the 
  93.     auto-install version overlayed with 3.3 and ZRDOS 1.7). These are 
  94.     made invisible, run once and are forgotten. STRT.COM simply sets
  95.     the path to A15: and executes the COLDSTRT alias in ALIAS.CMD
  96.     (which follows). 
  97.  
  98.     The files created with names of the form RESERVED.* simply hold 
  99.     an extra allocation block in the low tracks for expansion of the 
  100.     *.CMD files immediately preceding them. 
  101.  
  102.     You can do any variation on this that you like...
  103.  
  104. sysgen
  105. A
  106. B
  107. |
  108. a15:
  109. mcopy b:=a:zc.cp
  110. go    b:=a:cmdrun.com
  111. go    b:=a:alias.cmd
  112. save  1 b:reserved.ali
  113. go    b:=a:vfiler.cmd
  114. save  1 b:reserved.vfi
  115. go    b:=a:zfiler.cmd
  116. save  1 b:reserved.zfi
  117. go    b:=a:z33verr.com
  118. go    b:=a:vfiler.com
  119. go    b:=a:vmenu.com    
  120. go    b:=a:zfiler.com
  121. go    b:=a:vtype.com
  122. go    b:=a:vde.com
  123. go    b:=a:xdir.com
  124. go    b:=a:*.* n
  125. sfa   b:reserved.* /r/o
  126. a0:
  127. mcopy b:=a:*.* n
  128. sfa   b:*.com /sys,r/o
  129.  
  130.                       -------------------------------
  131.  
  132. File:    ALIAS.CMD
  133.  
  134. Notes:    This is a stripped down version of the ALIAS.CMD file I'm using.
  135.  
  136.     Lines that begin with blanks are continuations of the previous line.
  137.     You would want to hang them back together...
  138.  
  139.     Commands that begin with '/' are taking advantage of a 3.3 feature
  140.     that bypasses the path search and goes straight to the ECP.  
  141.     Remove the slashes if you're not using 3.3.
  142.  
  143.     EDIT      is the aforementioned borrowing from Rick Charnes.
  144.     UPDINPLC allows editing a *.CMD file and returning the updated
  145.          copy back to its original home on the disk. This uses
  146.          the aliases UPDATE, UPDIGET and UPDIPUT to avoid command 
  147.          line overflow. I'm sure they could be pared down to save 
  148.          bytes, but I haven't had a chance.
  149.     CPYINPLC allows a quick transfer into a disk from another. It could
  150.          (will) be used to construct another alias (REWRITE?) that
  151.          will automatically remove a RESERVED.* file and replace
  152.          the specified *.CMD file back in the space when it outgrows
  153.          its current space. 
  154.     MAKESYS  just runs the above ZEX script.
  155.  
  156.     These next two are unrelated, but handy...
  157.  
  158.     VFLBR     defines a *.LBR file as a virtual disk and gets you into 
  159.          VFILER on it. (I use this with a VFILER macro so I can just
  160.          point at the library and I'm in...) This is a quickie and
  161.          will mature into something nicer one of these days.
  162.     FLBR     just removes that library definition. Both this and VFLBR 
  163.          need a lot more work, but are better than nothing for now.
  164.          Leave VFILER on the virtual disk before 'undefining' it...
  165.          (I would be interested in any variations on this theme.)
  166.  
  167.     COLDSTRT allows me to keep STRT.COM minimal, so I don't need to 
  168.          use up valuable floppy space for alias editors when a 
  169.          normal editor will do. 
  170.  
  171. E.DIT=VDE $d1$u1:;vde $:1.$.1;$d0$u0:
  172. UPDI.NPLC if ex $d1$u1:$:1.$.1;/update $d1$u1:$:1.$.1;else;
  173.       echo $d1$u1:$:1.$.1 not found;fi
  174. UPDATE echo updating $d1$u1:$:1.$.1 in place;/updiget $d1$u1:$:1.$.1;
  175.       /edit $d1$u1:$:1.upd;/updiput $d1$u1:$:1.$.1
  176. UPDIGET cp $d1$u1:$:1.upd=$d1$u1:$:1.$.1
  177. UPDIPUT era $d1$u1:$:1.$.1;cp $d1$u1:$:1.$.1=$d1$u1:$:1.upd;era $d1$u1:$:1.upd;
  178.       echo $d1$u1:$:1.$.1 updated
  179. CPYI.NPLC if ex $d1$u1:$:1.$.1;echo copying $d1$u1:$:1.$.1 to $d2$u2: in place;
  180.       era $d2$u2:$:1.$.1;cp $d2$u2:=$d1$u1:$:1.$.1;else;
  181.       echo $d1$u1:$:1.$.1 not found;fi
  182. MAKESYS a0:;zex makesys;$d0$u0:
  183. VFLBR 0:;setrsx;lbrdsk c:=$d1:$:1.$.1;vfiler
  184. FLBR setrsx
  185. COLDSTRT 15:;public /da,db,u1,u2;ldr base.rcp;go base.ndr;z33verr q;0:
  186.  
  187.  
  188.  
  189.