home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / dskutl / ds21doc.lbr / DSRUN.PZC / DSRUN.PIC
Encoding:
Text File  |  1987-02-15  |  37.3 KB  |  783 lines

  1. .he                       A Terminal Session With Damnspot
  2.                        A TERMINAL SESSION WITH DAMNSPOT
  3.                                  Version 2.0
  4.  
  5.  
  6. GENERAL
  7.  
  8. Thi≤ i≤ thσ annotateΣ outpu⌠ oµ ß sessioε spen⌠ witΦ DAMNSPO╘ (DS⌐ 2.░ anΣ tw∩ ì
  9. utilit∙ programs¼á S─ (Supe≥ Directory⌐ anΣ DU▓ (Disδ Universa∞ Utility)«á  I⌠ ì
  10. illustrate≤á mos⌠á oµá thσá feature≤ oµ D╙ anΣ thσá resultan⌠á effec⌠á oεá thσ ì
  11. director∙ anΣ disδ ma≡ oµ thσ disδ tested«á  D╙ outpu⌠ ma∙ diffe≥ slightl∙á iε ì
  12. late≥ versions.
  13.  
  14. Thσ examplσ i≤ fa≥ morσ complicateΣ thaε anythinτ yo⌡ arσ liablσ t∩ encounter¼ ì
  15. s∩ don'⌠ bσ frighteneΣ b∙ it≤ length«á  Notσ tha⌠ m∙ Kaypr∩ I╔ disδ drive≤ arσ ì
  16. no⌠á a≤ crumm∙ a≤ thσ examplσ woulΣ indicatσ (eveε thougΦ drivσ ┬ sound≤á likσ ì
  17. datßá i≤á beinτá engraveΣ witΦ ß stonσ chisel)«á  Thσá baΣá blocks¼á witΦá thσ ì
  18. exceptioε oµ one¼ arσ beinτ fakeΣ b∙ software.
  19.  
  20.  
  21. LEGEND
  22.  
  23. Oncσ therσ liveΣ aε ugl∙ froτ anΣ ß beautifu∞ princes≤ iε ß lanΣ beyonΣ thσ .« ì
  24. (Sorr∙ - wronτ legend)
  25.  
  26. Let's try that again.
  27.  
  28. Line≤ beginninτ <S╛ appeareΣ oε thσ screeε durinτ ß termina∞ sessioε involvinτ ì
  29. DAMNSPOT¼á SD¼á anΣá DU2«á  Thσ <S╛ prefixeΣ wa≤ addeΣ witΦ aε edito≥ a⌠ whicΦ ì
  30. time some superfluous lines were deleted.
  31.  
  32. Comments¼á usuall∙á introducinτ anΣ explaininτ thσ nex⌠ portioε oµ thσá screeε ì
  33. display¼ havσ n∩ prefi° anΣ arσ encloseΣ betweeε row≤ oµ asterisks.
  34.  
  35. Blank lines have been freely added or deleted to improve the readability.
  36.  
  37.  
  38. INFORMATION DISPLAYS
  39.  
  40. A≤á D╙ cycle≤ througΦ thσ disδ block≤ i⌠ display≤ aε informatioεá messagσá fo≥ ì
  41. each«á  Thesσá message≤ overwritσ eacΦ othe≥ oε thσ displa∙ s∩ a⌠ an∙ timσ yo⌡ ì
  42. see only the last.
  43.  
  44.  
  45. SD AND DU2
  46.  
  47. Thesσá tw∩ utilitie≤ havσ beeε useΣ botΦ beforσ anΣ afte≥ thσ Damnspo⌠ ruεá iε ì
  48. order to show the state of the directory and disk allocation map.
  49. .paè******************************************************************************
  50. Thi≤á i≤á thσá origina∞ disδ allocatioε ma≡ fo≥ thσ tes⌠á disk«á  I⌠á i≤á ver∙ ì
  51. simple¼áá al∞á file≤á beinτá contiguous¼á block≤á iεá order¼á anΣá freσá spacσ ì
  52. consolidateΣá int∩ onσ areß a⌠ thσ enΣ oµ thσ disk«á  Obviousl∙ thσ resul⌠á oµ ì
  53. pipping files to an originally blank disk.
  54. ******************************************************************************
  55.  
  56. <S>     B0>du2
  57. <S>
  58. <S>     DU2 - Disk Utility II, Version 1.1
  59. <S>     Type ? for Help
  60. <S>
  61. <S>     DU2  B0? m
  62. <S>     04-09  00 SAME    .COM 00 : 0A-19  00 DSUPDATE.PAS 00
  63. <S>     1A-1A  00 DSUPDATE.PAS 01 : 1B-22  00 PIP     .COM 00
  64. <S>     23-23  00 DS      .LTP 00 : 24-33  00 DS      .COM 00
  65. <S>     34-40  00 DS      .COM 01 : 41-44  00 SD      .COM 00
  66. <S>     45-4F  00 DS      .PAS 00 : 50-50  00 BOX     .PAS 00
  67. <S>     51-56  00 DAMNSPOT.HLP 00 : 57-5E  00 VF      .COM 00
  68. <S>     5F-66  00 DSMISC  .PAS 00 : 67-70  00 DU2     .COM 00
  69. <S>     71-78  00 DSSPEC  .PAS 00 : 79-7B  00 DSSYS   .PAS 00
  70. <S>     7C-7D  00 DSCOMPIL.PIC 00 : 7E-83  00 STAT    .COM 00
  71. <S>     84-8C  00 DSDISK  .PAS 00 : 8D-92  00 DSIO    .PAS 00
  72. <S>     93-9D  00 SS      .PIC 00 : 9E-A2  00 DSDIR   .PAS 00
  73. <S>     A3-A5  00 SS      .COM 00 : A6-C2     ++ Free ++
  74. <S>
  75. <S>     Type Any Character to Continue or ^C to Abort -
  76. <S>
  77. <S>     Group = 00:00, Track = 1, Sector = 1, Physical Sector = 0
  78. <S>
  79. <S>     DU2  B0? x
  80. <S>
  81. <S>     Exit to CP/M -- Do you wish to Warm Boot (Y/N/<CR>=N)?
  82. <S>     Warm Boot
  83.  
  84. ******************************************************************************
  85. Thi≤ i≤ thσ origina∞ disδ directory«  AlthougΦ S─ wa≤ no⌠ askeΣ t∩ sho≈ Systeφ ì
  86. typσ files¼á therσ werσ nonσ - takσ m∙ worΣ fo≥ it«á  Specifically¼ therσ werσ ì
  87. n∩ baΣ blocδ file≤ a⌠ thσ beginning.
  88. ******************************************************************************
  89.  
  90. <S>     B0>sd
  91. <S>
  92. <S>
  93. <S>              Drive B0:  files: 21  space used: 163k  (28k free)
  94. <S>     BOX     .PAS   1k | DSDIR   .PAS   5k | DSUPDATE.PAS  17k | SS      .PIC  12k
  95. <S>     DAMNSPOT.HLP   6k | DSDISK  .PAS   9k | DU2     .COM  10k | STAT    .COM   6k
  96. <S>     DS      .COM  29k | DSIO    .PAS   6k | PIP     .COM   8k | VF      .COM   8k
  97. <S>     DS      .LTP   1k | DSMISC  .PAS   8k | SAME    .COM   6k |
  98. <S>     DS      .PAS  11k | DSSPEC  .PAS   8k | SD      .COM   4k |
  99. <S>     DSCOMPIL.PIC   2k | DSSYS   .PAS   3k | SS      .COM   3k |
  100. <S>
  101. <S>     B0>
  102. .paè******************************************************************************
  103. Iεá thσ following¼á DS.CO═ anΣ DAMNSPOT.HL╨ arσ oε drivσ A╗á  thσ disδá t∩á bσ ì
  104. tested is in drive B.
  105.  
  106. Damnspo⌠ i≤ executed¼ tolΣ t∩ checδ drivσ B¼ tolΣ t∩ scaε thσ systeφ area¼ anΣ ì
  107. tolΣá t∩á displa∙á filσ name≤ iε thσ informatioε messagσ tha⌠á i⌠á show≤á wheε ì
  108. reading or writing blocks.
  109. ******************************************************************************
  110.  
  111. <S>     A0>ds
  112. <S>     Damnspot - Version 2.0
  113. <S>
  114. <S>
  115. <S>     =====>  Change disks if necessary before answering the next question
  116. <S>
  117. <S>     Drive to test < A..P  Q = Quit  CR = Help > : B
  118. <S>     Scan the system area < *Y:es  N:o  H:elp  Q:uit > : Y
  119. <S>     Display file names   < *Y:es  N:o  H:elp  Q:uit > : Y
  120.  
  121. ******************************************************************************
  122. Thσá systeφ areß i≤ t∩ bσ scanned«á  Thσ N∩ optioε caε bσ useΣ iµ yo⌡á d∩á no⌠ ì
  123. carσá iµá thσ disδ i≤ bootable«á  I⌠ mus⌠ bσ choseε iµ D╙ canno⌠á handlσá you≥ ì
  124. systeφá track≤ (somσ machine≤ havσ ß specia∞ forma⌠ fo≥ thσ systeφ area⌐ o≥ iµ ì
  125. thσ drivσ beinτ testeΣ is¼á iε fact¼á aε additiona∞ drivσ oε ß physica∞á drivσ 
  126. containing more than one logical drive.  Nothing fancy about the Kaypro.
  127.  
  128. Tw∩ baΣ sector≤ arσ founΣ iε thσ systeφ area«á  Iε botΦ case≤ thσ use≥ ask≤ D╙ ì
  129. to keep checking the rest of the system area.
  130. ******************************************************************************
  131.  
  132. <S>     =====>  Checking System Area.
  133. <S>
  134. <S>     Bad sector in System    Track  -->     0   Sector -->    20
  135. <S>     Choose < *C:ontinue  Q:uit > : C
  136. <S>
  137. <S>     Bad sector in System    Track  -->     1   Sector -->    30
  138. <S>     Choose < *C:ontinue  Q:uit > : C
  139.  
  140. ******************************************************************************
  141. Wheεá thσá systeφ areß i≤ finisheΣ thσ director∙ i≤ scanned¼á eveε thougΦá thσ ì
  142. use≥ ma∙ havσ skippeΣ o≥ aborteΣ thσ former«á  N∩ baΣ sector≤ arσ founΣ iε thσ ì
  143. directory.  Had there been, no user area scan would be permitted.
  144. ******************************************************************************
  145.  
  146. <S>     =====>  Checking Directory Area
  147. .paè******************************************************************************
  148. No≈á D╙ begin≤ scanninτ thσ use≥ (file⌐ areß oµ thσ disk«á  Oε thσá Kaypr∩á I╔ ì
  149. thi≤á cover≤á block≤ [┤ - C2▌ inclusive«á  Block≤ [░ - 3▌ arσ occupieΣ b∙á thσ ì
  150. directory and some parts of the CP/M system.
  151.  
  152. Thσ firs⌠ baΣ blocδ i≤ founΣ a⌠ blocδ ┤ iε filσ SAME.COM«  Thσ use≥ ask≤ D╙ t∩ ì
  153. ignorσ thσ blocδ anΣ D╙ confirms«á  Filσ SAME.CO═ wil∞ no⌠ bσ altered¼ eveε iµ ì
  154. yo⌡á updatσá thσ director∙ a⌠ thσ enΣ oµ thσ run«á  Oµ coursσá i⌠á wil∞á stil∞ ì
  155. contain a bad block, but that might go away on a different disk drive.
  156. ******************************************************************************
  157.  
  158. <S>     =====>  Checking User Area
  159. <S>     Block    4    B0:  SAME    .COM : Bad Block
  160. <S>
  161. <S>       I       Ignore error (leave bad block in file)
  162. <S>       R       Retry read   (maybe you'll get lucky)
  163. <S>       S       Substitute readable block   < OUT ... OUT >
  164. <S>       H       Help
  165. <S>       Q       Quit disk
  166. <S>
  167. <S>     < I:gnore  R:etry  S:ubstitute  H:elp  Q:uit > : I
  168. <S>     Bad block left alone
  169.  
  170. ******************************************************************************
  171. Thσ nex⌠ baΣ blocδ i≤ ┴ (decima∞ 10⌐ iε filσ UPDATE.PAS«á  Thσ use≥ attempt≤ ß ì
  172. rereaΣá whicΦ fails«á  Hσ theε decide≤ t∩ replacσ thσ baΣ blocδ witΦá ßá blocδ ì
  173. containinτ junδ oµ ß specia∞ kind«á  Thσ junδ wil∞ consis⌠ oµ distinctivσ tex⌠ ì
  174. line≤á tha⌠á wil∞ allo≈ hi≤ edito≥ t∩ worδ witΦ thσ filσ anΣ sho≈ hiφá exactl∙ ì
  175. whicΦ portion≤ havσ beeε clobbered«  Hσ i≤ resigneΣ t∩ retypinτ thσ los⌠ blocδ ì
  176. or¼ perhaps¼ recoverinτ i⌠ froφ anothe≥ file.
  177.  
  178. D╙á announce≤á tha⌠á unuseΣá blocδ A╕ ha≤ beeε filleΣá witΦá thσá patterεá anΣ ì
  179. substituted╗á als∩á tha⌠ blocδ ┴ ha≤ beeε tuckeΣ awa∙ int∩ filσá [UNUSED].BAD«  ì
  180. Notσ that¼ wherea≤ thσ substitutσ blocδ ha≤ actuall∙ beeε writteε t∩ thσ disk¼ ì
  181. thσá director∙ ha≤ no⌠ ye⌠ beeε changeΣ oε disk«á  Thσ substitutioε wil∞á onl∙ ì
  182. appea≥á t∩á havσ effec⌠ iµ thσ director∙ i≤ updateΣ oε thσ conclusioεá oµá thσ ì
  183. scan.
  184. ******************************************************************************
  185.  
  186. <S>     Block    A    B0:  DSUPDATE.PAS : Bad Block
  187. <S>
  188. <S>       I       Ignore error (leave bad block in file)
  189. <S>       R       Retry read   (maybe you'll get lucky)
  190. <S>       S       Substitute readable block   < OUT ... OUT >
  191. <S>       H       Help
  192. <S>       Q       Quit disk
  193. <S>
  194. <S>     < I:gnore  R:etry  S:ubstitute  H:elp  Q:uit > : R
  195. <S>
  196. <S>     No Joy
  197. .paè<S>
  198. <S>       I       Ignore error (leave bad block in file)
  199. <S>       R       Retry read   (maybe you'll get lucky)
  200. <S>       S       Substitute readable block   < OUT ... OUT >
  201. <S>       H       Help
  202. <S>       Q       Quit disk
  203. <S>
  204. <S>     < I:gnore  R:etry  S:ubstitute  H:elp  Q:uit > : S
  205. <S>     Block    A                      : Replaced by readable block A8
  206. <S>     Block    A    B0:  [UNUSED].BAD : Successfully hidden
  207.  
  208. ******************************************************************************
  209. Next, a bad block in file DS.COM is ignored.
  210. ******************************************************************************
  211.  
  212. <S>     Block   28    B0:  DS      .COM : Bad Block
  213. <S>
  214. <S>       I       Ignore error (leave bad block in file)
  215. <S>       R       Retry read   (maybe you'll get lucky)
  216. <S>       S       Substitute readable block   < OUT ... OUT >
  217. <S>       H       Help
  218. <S>       Q       Quit disk
  219. <S>
  220. <S>     < I:gnore  R:etry  S:ubstitute  H:elp  Q:uit > : I
  221. <S>     Bad block left alone
  222.  
  223. ******************************************************************************
  224. D╙ continue≤ it≤ scaε locatinτ tw∩ morσ baΣ blocks¼ B┤ anΣ BB«  Sincσ the∙ arσ ì
  225. botΦ freσ (no⌠ allocateΣ t∩ ß file⌐ D╙ jus⌠ hide≤ theφ iε thσ baΣ block≤ file«  ì
  226. A⌠ thσ risδ oµ boring¼á thi≤ changσ wil∞ no⌠ actuall∙ takσ effec⌠ unles≤ fina∞ ì
  227. director∙ updatσ approva∞ i≤ given«á  Fo≥ thσ momen⌠ the∙ arσ merel∙á includeΣ ì
  228. in DS's memory image of what the directory 'should' look like.
  229.  
  230. The final line, Block C2, merely shows the last block scanned.
  231. ******************************************************************************
  232.  
  233. <S>     Block   B4    B0:  [UNUSED].BAD : Successfully hidden
  234. <S>     Block   BB    B0:  [UNUSED].BAD : Successfully hidden
  235. <S>     Block   C2
  236. .paè******************************************************************************
  237. Eventuall∙á D╙ test≤ thσ las⌠ blocδ (C2⌐ anΣ theε enter≤ ß routinσ tha⌠ allow≤ ì
  238. thσá use≥á t∩á forcσ specifiπ block≤ t∩ BaΣ status«á  Thesσá migh⌠á bσá block≤ ì
  239. detecteΣ b∙ morσ sensitivσ programs¼á sucΦ a≤ you≥ Format/Verif∙á utility¼á o≥ ì
  240. the∙á wil∞á morσá ofteεá bσ block≤ whicΦ D╙ eventuall∙á reaΣá bu⌠á onl∙á afte≥ ì
  241. dwellinτ oε theφ fo≥ ß while«á  Fo≥ example¼á m∙ Kaypr∩ BIO╙ wil∞ tr∙ u≡ t∩ 3░ ì
  242. 5░á time≤á t∩á reaΣá o≥ writσ ß secto≥ beforσ informinτá thσá callinτá prograφ ì
  243. oµ ß failure«á  Iµ ╔ seσ onσ blocδ numbe≥ linge≥ oε thσ screeε fo≥ ß seconΣ o≥ ì
  244. morσ ╔ kno≈ tha⌠ thσ blocδ i≤ oε thσ verge«á  Iµ i⌠ doe≤ no⌠ contaiεá valuablσ ì
  245. informatioε i⌠ shoulΣ bσ lockeΣ out.
  246.  
  247. Iε thσ firs⌠ example¼ thσ use≥ ask≤ D╙ t∩ locδ ou⌠ blocδ 20«  D╙ warn≤ tha⌠ i⌠ ì
  248. i≤á iε filσ PIP.CO═ anΣ ask≤ fo≥ confirmation«á  Thσ use≥ ha≤ seconΣá thought≤ ì
  249. anΣ cancel≤ thσ request«á  Afte≥ all¼á hσ onl∙ ha≤ 17│ othe≥ copie≤ oµ PIP.CO═ ì
  250. and does not want to fool around with this one.
  251. ******************************************************************************
  252.  
  253. <S>     Blocks on which the program dwelt are flaky.  You may force such  blocks  to
  254. <S>     Bad status to prevent them from cropping up at  a  more  inconvenient  time.
  255. <S>     Prescribe any such block numbers in hexadecimal.
  256. <S>
  257. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : 20
  258. <S>     That block is currently in file B0:  PIP     .COM
  259. <S>     If you force it bad, the file will be corrupted.
  260. <S>
  261. <S>     Are you sure < Y:es  N:o > : N
  262. <S>     No change
  263. <S>
  264.  
  265. ******************************************************************************
  266. Nex⌠á thσá use≥á force≤ blocδ 6┬ t∩ bσ lockeΣ ou⌠ eveε thougΦ i⌠á i≤á iεá filσ ì
  267. DU2.COM«á  Thσá baΣá blocδá i≤ replaceΣ b∙ blocδ A╣ whicΦá i≤á filleΣá witΦá ß ì
  268. distinctivσá tex⌠á pattern«á  Thi≤ i≤ oµ les≤ utilit∙ thaε thσ samσá procedurσ ì
  269. applieΣá t∩ ß tex⌠ filσ - yo⌡ won'⌠ wan⌠ t∩ edi⌠ ß .CO═á file«á  Nevertheless¼ ì
  270. thσ baΣ blocδ wil∞ bσ pu⌠ ou⌠ oµ action.
  271. ******************************************************************************
  272.  
  273. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : 6b
  274. <S>     That block is currently in file B0:  DU2     .COM
  275. <S>     If you force it bad, the file will be corrupted.
  276. <S>
  277. <S>     Are you sure < Y:es  N:o > : Y
  278. <S>     Block   6B                      : Replaced by readable block A9
  279. <S>     Block   6B    B0:  [UNUSED].BAD : Successfully hidden
  280. .paè******************************************************************************
  281. Thσá nex⌠ fe≈ example≤ merel∙ demonstratσ tha⌠ D╙ know≤ wha⌠ i≤ anΣ i≤á no⌠á ß ì
  282. valiΣ blocδ number«á  Oε thσ Kaypr∩ II¼ block≤ ┤ t∩ C▓ arσ available«  I⌠ als∩ ì
  283. illustrate≤á tha⌠á an∙ repl∙ beginninτ witΦ ╤ (o≥ q⌐ wil∞ terminatσá thσá use≥ ì
  284. specifieΣ lockou⌠ loop.
  285. ******************************************************************************
  286.  
  287. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : xxx
  288. <S>     Illegal block number
  289. <S>
  290. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : 3
  291. <S>     Block out of bounds
  292. <S>
  293. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : c3
  294. <S>     Block out of bounds
  295. <S>
  296. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : c2
  297. <S>     Block   C2    B0:  [UNUSED].BAD : Successfully hidden
  298. <S>
  299. <S>     Block to force bad in hex <e.g. A7   Q = Quit> : quetzalcoatl
  300.  
  301. ******************************************************************************
  302. No≈ D╙ summarize≤ thσ disδ status«á  Thσ firs⌠ part¼á below¼ jus⌠ say≤ whethe≥ ì
  303. an∙á error≤á (o≥ lockouts⌐ werσ encountereΣ iε eacΦ oµ thσ threσá disδá areas«  ì
  304. Notσ tha⌠ thσ numbe≥ oµ BAD'≤ (5⌐ ha≤ n∩ significance«á  I⌠ i≤ simpl∙ mean⌠ t∩ ì
  305. stand out.
  306. ******************************************************************************
  307.  
  308. <S>     =====>  AREA STATUS SUMMARY
  309. <S>
  310. <S>     =====>  System area is BAD BAD BAD BAD BAD
  311. <S>     =====>  Directory   is GOOD
  312. <S>     =====>  User area   is BAD BAD BAD BAD BAD
  313. <S>
  314. <S>     Press any key to continue.
  315.  
  316. ******************************************************************************
  317. Next DS says a little bit about user blocks of interest.   It tells for each:
  318.  
  319. 1.  Wherσ  thσ  blocδ starts«   ┴ blocδ no⌠ onl∙ occupie≤  severa∞  contiguou≤     ì
  320. áááásectors║ i⌠ caε als∩ lea≡ ove≥ tracδ boundarie≤ oε somσ machines.
  321.  
  322. 2.  What file it will be assigned to if the directory is updated.
  323.  
  324. 3.  BaΣ  - Thσ blocδ i≤ deemeΣ t∩ bσ physicall∙ unreadable«   Thi≤ migh⌠ arisσ     ì
  325. ááááfroφ  aε actua∞ faileΣ read¼  froφ ß user forceΣ lockout¼  o≥ becausσ  thσ     ì
  326. ááááblocδ originall∙ belongeΣ t∩ eithe≥ [UNUSED].BA─ o≥ BLOCKS.BAD.
  327.  
  328. 4.  Wronτ - Thσ blocδ i≤ readablσ bu⌠ contain≤ thσ distinctivσ tex⌠ patterε D╙     ì
  329. ááááuse≤ fo≥ patchinτ int∩ file≤ durinτ Substitutσ o≥ lockou⌠ requests.
  330.  
  331. 5.  CovereΣ  - Thσ  blocδ  ha≤ founΣ ß homσ iε  [UNUSED].BA─  o≥  remaineΣ  iε     ì
  332. ááááBLOCKS.BAD.
  333. ******************************************************************************
  334. .paè<S>     Bad Block Summary:
  335. <S>
  336. <S>      Block     Track     Sector   Bad  Wrong  Covered   Drv  File
  337. <S>      -----     -----     ------   ---  -----  -------   ---  ------------
  338. <S>          4         1        32    Bad                   B0:  SAME    .COM
  339. <S>          A         3         0    Bad         Covered   B0:  [UNUSED].BAD
  340. <S>         28         9         0    Bad                   B0:  DS      .COM
  341. <S>         6B        22        16    Bad         Covered   B0:  [UNUSED].BAD
  342. <S>         A8        34        24         Wrong            B0:  DSUPDATE.PAS
  343. <S>         A9        34        32         Wrong            B0:  DU2     .COM
  344. <S>         B4        37         0    Bad         Covered   B0:  [UNUSED].BAD
  345. <S>         BB        38        16    Bad         Covered   B0:  [UNUSED].BAD
  346. <S>         C2        39        32    Bad         Covered   B0:  [UNUSED].BAD
  347. <S>
  348. <S>
  349. <S>     Press any key to continue.
  350. .paè******************************************************************************
  351. U≡ t∩ thi≤ poin⌠ thσ director∙ oµ thσ disδ ha≤ no⌠ beeε changeΣ b∙ DS«á  Therσ ì
  352. ma∙ havσ beeε ß bi⌠ oµ writinτ t∩ unuseΣ block≤ bu⌠ tha⌠ i≤ all«á  Iε essence¼ ì
  353. thσ disδ i≤ unchanged╗á D╙ ha≤ merel∙ modifieΣ ß memory-residen⌠ imagσ oµ wha⌠ ì
  354. the directory should look like to implement any changes.
  355.  
  356. Becausσ change≤ t∩ thσ disδ arσ pending¼á D╙ throw≤ yo⌡ righ⌠ int∩ thσ Option≤ ì
  357. men⌡á showεá below«á  HaΣ therσ beeε n∩ error≤ detecteΣ (o≥ forced⌐ yo⌡á woulΣ ì
  358. insteaΣá havσ gonσ t∩ ß promp⌠ froφ whicΦ yo⌡ coulΣ qui⌠ directl∙ o≥á comσá t∩ ì
  359. this menu.
  360.  
  361. Thσá use≥ begin≤ b∙ askinτ fo≥ help«á  D╙ replie≤ witΦ ß sub-men⌡á askinτá fo≥ ì
  362. whicΦ commanΣ hel≡ i≤ desired.  The user specifies Send.
  363. ******************************************************************************
  364.  
  365. <S>     Your choices are as follows :
  366. <S>
  367. <S>     U   Update the directory
  368. <S>     M   Move disk to new drive and update directory
  369. <S>     S   Send directory information to a file or device
  370. <S>     C   Copy disk - bad blocks stay bad
  371. <S>     H   Help
  372. <S>
  373. <S>     Q   Quit option menu
  374. <S>
  375. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : H
  376. <S>
  377. <S>     Help for <U:pdate  M:ove  S:end  C:opy  Q:uit> : S
  378. <S>     ------------------------------------------------------------------------------
  379. <S>
  380. <S>     This  option allows you to write the modified directory information to a  file
  381. <S>     in  either  Ascii  or Binary form.  Ascii form means in a  form  that  can  be
  382. <S>     displayed  on the screen or on a printer.  Binary form means that the contents
  383. <S>     of  the  file will be identical byte for byte with the contents  of  the  disk
  384. <S>     directory  - or at least with what they would have been if the normal updating
  385. <S>     had succeeded.
  386. <S>
  387. <S>     You  may also send the directory contents to the terminal or printer in  Ascii
  388. <S>     form - think of these devices as special forms  of Ascii  files.  (Or think of
  389. <S>     Ascii files as being special forms of printer - whatever helps.)
  390. <S>
  391. <S>     Saving  the directory information in this way is not much use unless  you  are
  392. <S>     capable of using the information in it to fix the disk in question. See DS.DOC
  393. <S>     for some hints on this.
  394. <S>
  395. <S>         DO NOT TRY TO SEND THIS FILE TO THE CORRUPT DISK - USE A GOOD ONE !!!
  396. <S>
  397. <S>     ------------------------------------------------------------------------------
  398. <S>     Press any key to continue.
  399. .paè******************************************************************************
  400. Thσá use≥ ask≤ t∩ SenΣ aε AsciΘ (legible⌐ versioε oµ thσ directory'≤á content≤ ì
  401. t∩á ßá filσ oε thσ ┬ drive«á  Thσ forφ oµ thσ (woulΣ be⌐ outpu⌠ wil∞ bσá showε ì
  402. later«á  Oεá thi≤ tr∙ D╙ refuse≤ thσ reques⌠ becausσ i⌠  recognize≤á tha⌠á thσ ì
  403. informatioεá woulΣá bσá writteε t∩ thσ disδ unde≥ test¼á anΣá tha⌠á therσá arσ ì
  404. change≤á pendinτá t∩ tha⌠ disk'≤ directory«á  Iµ thσ writσ werσá permitted¼á ß ì
  405. subsequent directory update would obliterate the new file's directory entry.
  406.  
  407. ╔ can'⌠ thinδ wh∙ anyonσ woulΣ wan⌠ t∩ chea⌠ thi≤ checδ but¼á jus⌠ iε case¼ bσ ì
  408. adviseΣá tha⌠ D╙ doe≤ no⌠ basσ it≤ decisioε oε thσ driveé unde≥ tes⌠ bu⌠ oε thσ ì
  409. diské itself«á  I⌠ compare≤ thσ curren⌠ director∙ checksuφ witΦ thσ origina∞ t∩ ì
  410. see whether it is the same, non-updated disk.  (Anything is cheatable).
  411. ******************************************************************************
  412.  
  413. <S>     Your choices are as follows :
  414. <S>
  415. <S>     U   Update the directory
  416. <S>     M   Move disk to new drive and update directory
  417. <S>     S   Send directory information to a file or device
  418. <S>     C   Copy disk - bad blocks stay bad
  419. <S>     H   Help
  420. <S>
  421. <S>     Q   Quit option menu
  422. <S>
  423. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : S
  424. <S>
  425. <S>     File type < A:scii  B:inary  D:evice  H:elp  Q:uit > : A
  426. <S>     Create file on which drive <Q to quit> : B
  427. <S>     When ready press < G:o  Q:uit > : G
  428. <S>
  429. <S>     That is the disk under test and changes are pending - Not allowed
  430. <S>     Operation cancelled
  431.  
  432. ******************************************************************************
  433. Thσ use≥ no≈ decide≤ t∩ Updatσ thσ director∙ t∩ reflec⌠ change≤ made«á  Iµ an∙ ì
  434. importan⌠á file≤ werσ iε doubt¼á ╔ wouldn'⌠ d∩ thi≤ excep⌠ a≤ ßá las⌠á resort«  ì
  435. In any event it might be wise to check your backup (MY WHAT ???) first.
  436.  
  437. Iµá thσ Updatσ fail≤ duσ t∩ ß disδ writσ erro≥ yo⌡ wil∞ ge⌠ ß grea⌠ biτá erro≥ ì
  438. message.  The other options may then become very important because:
  439.  
  440. 1.  DS still has (updated) directory information in memory;
  441.  
  442. 2.á You≥á director∙ track≤ arσ probabl∙ clobbereΣ iε whicΦ casσ everythinτá oε ì
  443. ááááthσ disδ i≤ iε jeopardy.
  444. ******************************************************************************
  445. .paè<S>     Your choices are as follows :
  446. <S>
  447. <S>     U   Update the directory
  448. <S>     M   Move disk to new drive and update directory
  449. <S>     S   Send directory information to a file or device
  450. <S>     C   Copy disk - bad blocks stay bad
  451. <S>     H   Help
  452. <S>
  453. <S>     Q   Quit option menu
  454. <S>
  455. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : U
  456. <S>
  457. <S>     =====>  Directory update succeeded
  458.  
  459. ******************************************************************************
  460. No≈á thσá use≥á trie≤ oncσ agaiε t∩ senΣ aε AsciΘ versioε oµá thσá directory'≤ ì
  461. content≤á t∩á ß filσ oε thσ ┬ drive«á  D╙ i≤ happ∙ no≈ anΣá create≤á thσá filσ ì
  462. B:PANIC.ASC«á  Binar∙ outpu⌠ woulΣ havσ beeε sen⌠ t∩ PANIC.BIN«  Binar∙ outpu⌠ ì
  463. i≤ no⌠ ver∙ legiblσ but¼á beinτ aε exac⌠ cop∙ oµ thσ directory¼ coulΣ possibl∙ ì
  464. be copied back into (reformatted) directory tracks with DU2.
  465.  
  466. Notσá tha⌠ therσ i≤ stil∞ ß possibilit∙ oµ clobberinτ thσ director∙ entr∙á fo≥ ì
  467. thσá filσ PANIC.AS├ jus⌠ written«á  D╙ wil∞ allo≈ yo⌡ t∩ ente≥ anothe≥á Updatσ ì
  468. command which will do just that.
  469. ******************************************************************************
  470.  
  471. <S>     Your choices are as follows :
  472. <S>
  473. <S>     U   Update the directory
  474. <S>     M   Move disk to new drive and update directory
  475. <S>     S   Send directory information to a file or device
  476. <S>     C   Copy disk - bad blocks stay bad
  477. <S>     H   Help
  478. <S>
  479. <S>     Q   Quit option menu
  480. <S>
  481. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : S
  482. <S>
  483. <S>     File type < A:scii  B:inary  D:evice  H:elp  Q:uit > : A
  484. <S>     Create file on which drive <Q to quit> : B
  485. <S>     When ready press < G:o  Q:uit > : G
  486. <S>     Directory sent to B:PANIC.ASC
  487. .paè******************************************************************************
  488. Thσá use≥á no≈ ask≤ D╙ t∩ cop∙ thσ disδ froφ drivσ ┬ t∩á drivσá A¼á usinτá thσ ì
  489. memor∙ imagσ oµ thσ director∙ (possibl∙ modified⌐ anΣ thσ blocδ informatioε oε ì
  490. the disk.  The following points should be borne in mind:
  491.  
  492. 1.  Block≤ though⌠ t∩ bσ baΣ b∙ D╙ wil∞ no⌠ bσ copied.
  493.  
  494. 2.  Iµ reaΣ o≥ writσ error≤ occu≥ iε copyinτ ß block¼ yo⌡ wil∞ bσ notifieΣ anΣ ì
  495. ááááthσ cop∙ wil∞ proceed.
  496.  
  497. 3.á Iµá D╙á copie≤ ß blocδ tha⌠ contain≤ thσ wronτ datß - i.e«á onσá tha⌠á wa≤ ì
  498. ááááfilleΣá witΦá ß distinctivσ patterε anΣ useΣ t∩ replacσ ß baΣ blocδá iεá ß ì
  499. ááááfile¼ yo⌡ wil∞ bσ informed.
  500.  
  501. 4.  Thσ systeφ areß oµ thσ disδ i≤ no⌠ copied.
  502.  
  503. Notσá tha⌠á thσ resul⌠ wil∞ bσ ß disδ tha⌠ reflect≤ thσ change≤ tha⌠ yo⌡á havσ ì
  504. requesteΣ - no⌠ ß cop∙ oµ thσ wa∙ thσ disδ wa≤ wheε yo⌡ started«  D╙ check≤ t∩ ì
  505. seσ tha⌠ thσ sourcσ anΣ destinatioε disk≤ arσ 'compatibleº fo≥ thσá operation«  ì
  506. Havinτá onl∙á tw∩ identica∞ flopp∙ drive≤ ╔ coulΣ no⌠ tes⌠ thi≤á feature«á  I⌠ ì
  507. should, for example, forbid  the copy from a floppy to a hard disk.
  508. ******************************************************************************
  509.  
  510. <S>     Your choices are as follows :
  511. <S>
  512. <S>     U   Update the directory
  513. <S>     M   Move disk to new drive and update directory
  514. <S>     S   Send directory information to a file or device
  515. <S>     C   Copy disk - bad blocks stay bad
  516. <S>     H   Help
  517. <S>
  518. <S>     Q   Quit option menu
  519. <S>
  520. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : C
  521. <S>
  522. <S>     Source drive < Q = Quit > : B
  523. <S>     Destination drive < Q = Quit > : A
  524. <S>     When ready press < C:opy  Q:uit > : C
  525. <S>     Directory written.  Starting on blocks:
  526. <S>     Block    4    A0:  SAME    .COM : Corrupt - Source is bad
  527. <S>     Block    A    A0:  [UNUSED].BAD : Corrupt - Source is bad
  528. <S>     Block   28    A0:  DS      .COM : Corrupt - Source is bad
  529. <S>     Block   6B    A0:  [UNUSED].BAD : Corrupt - Source is bad
  530. <S>     Block   A8    A0:  DSUPDATE.PAS : Corrupt - Wrong contents
  531. <S>     Block   A9    A0:  DU2     .COM : Corrupt - Wrong contents
  532. <S>     Block   B4    A0:  [UNUSED].BAD : Corrupt - Source is bad
  533. <S>     Block   BB    A0:  [UNUSED].BAD : Corrupt - Source is bad
  534. <S>     Block   C2    A0:  [UNUSED].BAD : Corrupt - Source is bad
  535. <S>
  536. <S>     Disk copy complete
  537. .paè******************************************************************************
  538. No≈á thσá use≥á ask≤ t∩ senΣ thσ samσ AsciΘ versioε oµ thσá director∙á t∩á thσ ì
  539. devicσ Termina∞ (thσ screen)«ì
  540. ******************************************************************************
  541.  
  542. <S>     Your choices are as follows :
  543. <S>
  544. <S>     U   Update the directory
  545. <S>     M   Move disk to new drive and update directory
  546. <S>     S   Send directory information to a file or device
  547. <S>     C   Copy disk - bad blocks stay bad
  548. <S>     H   Help
  549. <S>
  550. <S>     Q   Quit option menu
  551. <S>
  552. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : S
  553. <S>
  554. <S>     File type < A:scii  B:inary  D:evice  H:elp  Q:uit > : D
  555. <S>
  556. <S>     Output to < *T:erminal  P:rinter  Q:uit > : T
  557.  
  558. ******************************************************************************
  559. Thσ resul⌠ oµ thσ commanΣ follows«á  Thσ onl∙ changσ madσ i≤ tha⌠ ß maximuφ oµ ì
  560. eigh⌠ blocδ number≤ havσ beeε listeΣ pe≥ linσ t∩ kee≡ thσ displa∙ froφ runninτ ì
  561. ofµá thσ edgσ oµ thσ paper«á  Iε rea∞ life¼á al∞ informatioε fo≥á ßá director∙ ì
  562. entry is on one line.
  563.  
  564. The information is in standard CP/M File Control Block order - i.e.:
  565.  
  566.      - user number
  567.      - file name
  568. ááááá- extent number (greatest logical extent in entry)
  569. ááááá- two numbers of which CP/M says very little
  570. ááááá- thσá numbe≥ oµ record≤ iε thσ to≡ logica∞ exten⌠ - iµ 8░ (hex⌐ therσ i≤ ì
  571. ááááá áprobably another entry with a higher extent number.
  572. ááááá- the block numbers assigned to the entry
  573. ******************************************************************************
  574. .paè<S>     PANIC DIRECTORY
  575. <S>
  576. <S>     00 SAME    COM 00 00 00 2A     4   5   6   7   8   9
  577. <S>     00 DSUPDATEPAS 00 00 00 80    A8   B   C   D   E   F  10  11
  578. <S>                                   12  13  14  15  16  17  18  19
  579. <S>     00 DSUPDATEPAS 01 00 00 06    1A
  580. <S>     00 PIP     COM 00 00 00 3A    1B  1C  1D  1E  1F  20  21  22
  581. <S>     00 DS      LTP 00 00 00 08    23
  582. <S>     00 DS      COM 00 00 00 80    24  25  26  27  28  29  2A  2B
  583. <S>                                   2C  2D  2E  2F  30  31  32  33
  584. <S>     00 DS      COM 01 00 00 68    34  35  36  37  38  39  3A  3B
  585. <S>                                   3C  3D  3E  3F  40
  586. <S>     00 SD      COM 00 00 00 1D    41  42  43  44
  587. <S>     00 DS      PAS 00 00 00 57    45  46  47  48  49  4A  4B  4C
  588. <S>                                   4D  4E  4F
  589. <S>     00 BOX     PAS 00 00 00 03    50
  590. <S>     00 DAMNSPOTHLP 00 00 00 2E    51  52  53  54  55  56
  591. <S>     00 VF      COM 00 00 00 3C    57  58  59  5A  5B  5C  5D  5E
  592. <S>     00 DSMISC  PAS 00 00 00 3E    5F  60  61  62  63  64  65  66
  593. <S>     00 DU2     COM 00 00 00 4F    67  68  69  6A  A9  6C  6D  6E
  594. <S>                                   6F  70
  595. <S>     00 DSSPEC  PAS 00 00 00 3B    71  72  73  74  75  76  77  78
  596. <S>     00 DSSYS   PAS 00 00 00 18    79  7A  7B
  597. <S>     00 DSCOMPILPIC 00 00 00 0B    7C  7D
  598. <S>     00 STAT    COM 00 00 00 29    7E  7F  80  81  82  83
  599. <S>     00 DSDISK  PAS 00 00 00 48    84  85  86  87  88  89  8A  8B
  600. <S>                                   8C
  601. <S>     00 DSIO    PAS 00 00 00 29    8D  8E  8F  90  91  92
  602. <S>     00 SS      PIC 00 00 00 65    93  94  95  96  97  98  99  9A
  603. <S>                                   9B  9C  9D  A6  A7
  604. <S>     00 DSDIR   PAS 00 00 00 25    9E  9F  A0  A1  A2
  605. <S>     00 SS      COM 00 00 00 17    A3  A4  A5
  606. <S>     00 [UNUSED]BAD 00 00 00 28     A  B4  BB  6B  C2
  607. .paè******************************************************************************
  608. Nex⌠á thσ use≥ ask≤ fo≥ ß binar∙ versioε oµ thσ director∙ t∩ bσ sen⌠ t∩á drivσ ì
  609. A«á  Thσ filσ namσ PANIC.BI╬ is automaticall∙ assigned«  Thi≤ filσ i≤ bytσ fo≥ ì
  610. bytσá identica∞ witΦ thσ memor∙ imagσ oµ thσ director∙ - i.e«á witΦá wha⌠á thσ ì
  611. disk directory would contain if the directory were successfully updated.
  612.  
  613. Thesσ binar∙ file≤ arσ no⌠ legiblσ likσ thσ AsciΘ versioε above«á  However¼ iµ ì
  614. D╙ gavσ ß writσ erro≥ iε tryinτ t∩ updatσ thσ directory¼á i⌠ i≤ ß gooΣ ideß t∩ ì
  615. generatσá botΦá aε AsciΘ anΣ ß Binar∙ Paniπ file«á  ShoulΣ yo⌡ bσ ablσ t∩á coε ì
  616. someonσ int∩ helpinτ reconstruc⌠ thσ disk¼ thesσ wil∞ bσ ver∙ useful«  Withou⌠ ì
  617. them the job may be virtually impossible.ááááá
  618. ******************************************************************************
  619.  
  620. <S>     Your choices are as follows :
  621. <S>
  622. <S>     U   Update the directory
  623. <S>     M   Move disk to new drive and update directory
  624. <S>     S   Send directory information to a file or device
  625. <S>     C   Copy disk - bad blocks stay bad
  626. <S>     H   Help
  627. <S>
  628. <S>     Q   Quit option menu
  629. <S>
  630. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : S
  631. <S>
  632. <S>     File type < A:scii  B:inary  D:evice  H:elp  Q:uit > : B
  633. <S>     Create file on which drive <Q to quit> : A
  634. <S>     When ready press < G:o  Q:uit > : G
  635. <S>     Directory sent to A:PANIC.BIN
  636.  
  637. ******************************************************************************
  638. Finall∙ ou≥ intrepiΣ use≥ i≤ overcomσ b∙ aε unquenchablσ (almost⌐ desirσ fo≥ ß ì
  639. cold beer so he tells DS he's quitting.
  640. ******************************************************************************
  641.  
  642. <S>     Your choices are as follows :
  643. <S>
  644. <S>     U   Update the directory
  645. <S>     M   Move disk to new drive and update directory
  646. <S>     S   Send directory information to a file or device
  647. <S>     C   Copy disk - bad blocks stay bad
  648. <S>     H   Help
  649. <S>
  650. <S>     Q   Quit option menu
  651. <S>
  652. <S>     Choose < U:pdate  M:ove  S:end  C:opy  *H:elp  Q:uit > : Q
  653. .paè******************************************************************************
  654. DS¼á no⌠ understandinτ thσ urgenc∙ oµ thσ situation¼á merel∙ step≤ hiφ bacδ t∩ ì
  655. thσá men⌡á tha⌠á hσá woulΣ havσ receiveΣ iµá thσá disδá werσá scanneΣá withou⌠ ì
  656. incident«á  Hσ caε qui⌠ directly¼á t∩  commencσ testinτ ß ne≈ disk¼á redispla∙ ì
  657. thσá disδá summar∙ information¼á o≥ g∩ t∩ thσ Optioε men⌡ froφ whicΦá hσá jus⌠ ì
  658. came«  Hσ quits.
  659.  
  660. D╙á ask≤ iµ therσ i≤ anothe≥ disδ anΣ hσ quit≤ again«á  That'≤ threσ quit≤á t∩ ì
  661. get out.  DS is designed for quitters.
  662. ******************************************************************************
  663.  
  664. <S>     What to do < O:ptions  S:ummary  *H:elp  Q:uit > : Q
  665. <S>
  666. <S>     =====>  Change disks if necessary before answering the next question
  667. <S>
  668. <S>     Drive to test < A..P  Q = Quit  CR = Help > : Q
  669. <S>
  670. <S>     Warm Boot
  671. <S>
  672. <S>     A0>
  673.  
  674. ******************************************************************************
  675.                            End of DAMNSPOT Portion
  676. ******************************************************************************
  677. .paè******************************************************************************
  678. Herσá i≤á thσá director∙ oµ thσ disδ afterward≤ a≤ generateΣ b∙á SD«á  Thσá $╙ ì
  679. switcΦ tell≤ S─ t∩ displa∙ Systeφ files«á  Notσ tha⌠ [UNUSED].BAD¼á a≤ createΣ ì
  680. o≥á updateΣá b∙ DS¼á ha≤ botΦ Systeφ anΣ ReaΣ Onl∙á attributes«á  Thi≤á i≤á aε ì
  681. excellen⌠á namσ fo≥ thσ BaΣ filσ (courtes∙ oµ FINDBAD)«á  I⌠ gravitate≤ t∩ thσ ì
  682. enΣ oµ ß sorteΣ director∙ listing¼á i≤ distinctive¼á anΣ avoid≤ thσ concep⌠ oµ ì
  683. blocks.
  684. ******************************************************************************
  685.  
  686. <S>     A0>sd b: $s
  687. <S>
  688. <S>              Drive B0:  files: 23  space used: 163k  (28k free)
  689. <S>     BOX     .PAS   1k | DSDIR   .PAS   5k | DSUPDATE.PAS  17k | SS      .COM   3k
  690. <S>     DAMNSPOT.HLP   6k | DSDISK  .PAS   9k | DU2     .COM  10k | STAT    .COM   6k
  691. <S>     DS      .COM  29k | DSIO    .PAS   6k | PANIC   .ASC   2k | VF      .COM   8k
  692. <S>     DS      .LTP   1k | DSMISC  .PAS   8k | PIP     .COM   8k | [UNUSED].BAD   5k
  693. <S>     DS      .PAS  11k | DSSPEC  .PAS   8k | SAME    .COM   6k |
  694. <S>     DSCOMPIL.PIC   2k | DSSYS   .PAS   3k | SD      .COM   4k |
  695. <S>
  696. <S>     A0>
  697.  
  698. ******************************************************************************
  699. Now for a disk map as generated by DU2.Disk Map
  700. ******************************************************************************
  701.  
  702. <S>     B0>a:du2
  703. <S>
  704. <S>     DU2 - Disk Utility II, Version 1.1
  705. <S>     Type ? for Help
  706. <S>
  707. <S>     DU2  B0? m
  708. <S>     04-09  00 SAME    .COM 00 : 0A-0A  00 [UNUSED].BAD 00
  709. <S>     0B-19  00 DSUPDATE.PAS 00 : 1A-1A  00 DSUPDATE.PAS 01
  710. <S>     1B-22  00 PIP     .COM 00 : 23-23  00 DS      .LTP 00
  711. <S>     24-33  00 DS      .COM 00 : 34-40  00 DS      .COM 01
  712. <S>     41-44  00 SD      .COM 00 : 45-4F  00 DS      .PAS 00
  713. <S>     50-50  00 BOX     .PAS 00 : 51-56  00 DAMNSPOT.HLP 00
  714. <S>     57-5E  00 VF      .COM 00 : 5F-66  00 DSMISC  .PAS 00
  715. <S>     67-6A  00 DU2     .COM 00 : 6B-6B  00 [UNUSED].BAD 00
  716. <S>     6C-70  00 DU2     .COM 00 : 71-78  00 DSSPEC  .PAS 00
  717. <S>     79-7B  00 DSSYS   .PAS 00 : 7C-7D  00 DSCOMPIL.PIC 00
  718. <S>     7E-83  00 STAT    .COM 00 : 84-8C  00 DSDISK  .PAS 00
  719. <S>     8D-92  00 DSIO    .PAS 00 : 93-94  00 SS      .PIC 00
  720. <S>     95-9D     ++ Free ++      : 9E-A2  00 DSDIR   .PAS 00
  721. <S>     A3-A5  00 SS      .COM 00 : A6-A7     ++ Free ++
  722. <S>     A8-A8  00 DSUPDATE.PAS 00 : A9-A9  00 DU2     .COM 00
  723. <S>     AA-AB  00 PANIC   .ASC 00 : AC-B3     ++ Free ++
  724. <S>     B4-B4  00 [UNUSED].BAD 00 : B5-BA     ++ Free ++
  725. <S>     BB-BB  00 [UNUSED].BAD 00 : BC-C1     ++ Free ++
  726. <S>     C2-C2  00 [UNUSED].BAD 00 :
  727. <S>     Type Any Character to Continue or ^C to Abort -
  728. <S>
  729. <S>     Group = 00:00, Track = 1, Sector = 1, Physical Sector = 0
  730. .paè******************************************************************************
  731. Finally¼á DU▓á i≤ useΣ t∩ displa∙ thσ director∙ entr∙ fo≥á [UNUSED].BAD«á  Thσ ì
  732. second row shows the blocks allocated to it.
  733. ******************************************************************************
  734.  
  735. <S>     DU2  B0? f[unused].bad
  736. <S>     60  005B554E 55534544  5DC2C144 00000028  *.[UNUSED]BAD...(*
  737. <S>     70  0AB4BB6B C2000000  00000000 00000000  *.4;kB...........*
  738. <S>     Group = 00:00, Track = 1, Sector = 1, Physical Sector = 0
  739. <S>
  740. <S>     DU2  B0? x
  741. <S>
  742. <S>     Exit to CP/M -- Do you wish to Warm Boot (Y/N/<CR>=N)?
  743. <S>     Warm Boot
  744.  
  745. ******************************************************************************
  746. Therσ follow≤ ß mucΦ shorteneΣ versioε oµ filσ DSUPDATE.PAS«á  Thi≤ i≤ onσá oµ ì
  747. thσá file≤ iε whicΦ ß blocδ wa≤ forceΣ baΣ - iε fac⌠ i⌠ wa≤ thσ firs⌠ blocδ oµ ì
  748. the file.  You can see the effect of substituting a readable block.
  749. ******************************************************************************
  750.  
  751. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  752. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  753. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  754. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  755. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  756. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  757. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  758. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  759. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  760. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  761. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  762. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  763. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  764. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  765. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  766. <S>     < OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT  OUT >
  767. <S>       error := false;
  768. <S>         rel_sec := 0;
  769. <S>         with dp[dest_drive],dph^.dpb^ do begin
  770. <S>             while (rel_sec < dir_secs) and (not error) do begin
  771. <S>                 track := off + rel_sec div spt;
  772. <S>
  773. <S>     .....
  774. <S>
  775. <S>             case ans of
  776. <S>                 'H' : help('UPDATE OPTIONS');
  777. <S>                 'Q' : force_quit := true;
  778. <S>                 'S' : summarize_status;
  779. <S>                 'O' : directory_update_options;
  780. <S>                 end;
  781. <S>             end;
  782. <S>     END; {update on request}
  783.