dsktool 0.4.2 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. data/bin/dskexplorer.rb +1 -1
  2. data/bin/dskexplorer.rb~ +365 -0
  3. data/bin/dsktool.rb +7 -3
  4. data/bin/dsktool.rb~ +173 -0
  5. data/doc/classes/AppleSoftFile.html +199 -0
  6. data/doc/classes/AppleSoftFile.src/M000005.html +18 -0
  7. data/doc/classes/AppleSoftFile.src/M000006.html +18 -0
  8. data/doc/classes/AppleSoftFile.src/M000008.html +18 -0
  9. data/doc/classes/AppleSoftFile.src/M000009.html +18 -0
  10. data/doc/classes/AppleSoftFile.src/M000010.html +18 -0
  11. data/doc/classes/AppleSoftFile.src/M000055.html +18 -0
  12. data/doc/classes/AppleSoftFile.src/M000056.html +18 -0
  13. data/doc/classes/AppleSoftFile.src/M000057.html +18 -0
  14. data/doc/classes/AppleSoftFile.src/M000058.html +18 -0
  15. data/doc/classes/BinaryFile.html +241 -0
  16. data/doc/classes/BinaryFile.src/M000015.html +18 -0
  17. data/doc/classes/BinaryFile.src/M000020.html +18 -0
  18. data/doc/classes/BinaryFile.src/M000021.html +18 -0
  19. data/doc/classes/BinaryFile.src/M000022.html +19 -0
  20. data/doc/classes/BinaryFile.src/M000107.html +18 -0
  21. data/doc/classes/BinaryFile.src/M000108.html +18 -0
  22. data/doc/classes/BinaryFile.src/M000109.html +18 -0
  23. data/doc/classes/BinaryFile.src/M000110.html +19 -0
  24. data/doc/classes/BinaryFile.src/M000111.html +19 -0
  25. data/doc/classes/BinaryFile.src/M000112.html +19 -0
  26. data/doc/classes/BinaryFile.src/M000113.html +18 -0
  27. data/doc/classes/CPMDisk.html +331 -0
  28. data/doc/classes/CPMDisk.src/M000024.html +21 -0
  29. data/doc/classes/CPMDisk.src/M000025.html +23 -0
  30. data/doc/classes/CPMDisk.src/M000026.html +23 -0
  31. data/doc/classes/CPMDisk.src/M000027.html +19 -0
  32. data/doc/classes/CPMDisk.src/M000028.html +18 -0
  33. data/doc/classes/CPMDisk.src/M000029.html +18 -0
  34. data/doc/classes/CPMDisk.src/M000030.html +31 -0
  35. data/doc/classes/CPMDisk.src/M000031.html +51 -0
  36. data/doc/classes/CPMDisk.src/M000032.html +53 -0
  37. data/doc/classes/CPMFile.html +252 -0
  38. data/doc/classes/CPMFile.src/M000064.html +22 -0
  39. data/doc/classes/CPMFile.src/M000065.html +20 -0
  40. data/doc/classes/CPMFile.src/M000066.html +22 -0
  41. data/doc/classes/CPMFile.src/M000067.html +18 -0
  42. data/doc/classes/CPMFile.src/M000068.html +18 -0
  43. data/doc/classes/CPMFile.src/M000069.html +18 -0
  44. data/doc/classes/CPMFile.src/M000070.html +18 -0
  45. data/doc/classes/CatalogServlet.html +148 -0
  46. data/doc/classes/CatalogServlet.src/M000035.html +20 -0
  47. data/doc/classes/CatalogServlet.src/M000036.html +20 -0
  48. data/doc/classes/D65.html +180 -0
  49. data/doc/classes/D65.src/M000002.html +18 -0
  50. data/doc/classes/D65.src/M000003.html +18 -0
  51. data/doc/classes/D65.src/M000004.html +64 -0
  52. data/doc/classes/D65.src/M000005.html +18 -0
  53. data/doc/classes/D65.src/M000006.html +18 -0
  54. data/doc/classes/D65.src/M000007.html +18 -0
  55. data/doc/classes/D65.src/M000008.html +18 -0
  56. data/doc/classes/D65.src/M000048.html +18 -0
  57. data/doc/classes/D65.src/M000049.html +64 -0
  58. data/doc/classes/DOSDisk.html +425 -0
  59. data/doc/classes/DOSDisk.src/M000007.html +20 -0
  60. data/doc/classes/DOSDisk.src/M000008.html +77 -0
  61. data/doc/classes/DOSDisk.src/M000010.html +20 -0
  62. data/doc/classes/DOSDisk.src/M000011.html +20 -0
  63. data/doc/classes/DOSDisk.src/M000012.html +19 -0
  64. data/doc/classes/DOSDisk.src/M000013.html +20 -0
  65. data/doc/classes/DOSDisk.src/M000053.html +23 -0
  66. data/doc/classes/DOSDisk.src/M000054.html +19 -0
  67. data/doc/classes/DOSDisk.src/M000055.html +21 -0
  68. data/doc/classes/DOSDisk.src/M000056.html +37 -0
  69. data/doc/classes/DOSDisk.src/M000057.html +85 -0
  70. data/doc/classes/DOSDisk.src/M000058.html +37 -0
  71. data/doc/classes/DOSDisk.src/M000059.html +34 -0
  72. data/doc/classes/DOSDisk.src/M000060.html +27 -0
  73. data/doc/classes/DOSDisk.src/M000061.html +43 -0
  74. data/doc/classes/DOSDisk.src/M000062.html +31 -0
  75. data/doc/classes/DOSDisk.src/M000063.html +95 -0
  76. data/doc/classes/DOSDisk.src/M000064.html +85 -0
  77. data/doc/classes/DOSDisk.src/M000065.html +37 -0
  78. data/doc/classes/DOSDisk.src/M000066.html +34 -0
  79. data/doc/classes/DOSDisk.src/M000067.html +27 -0
  80. data/doc/classes/DOSDisk.src/M000068.html +43 -0
  81. data/doc/classes/DOSDisk.src/M000069.html +31 -0
  82. data/doc/classes/DOSDisk.src/M000070.html +95 -0
  83. data/doc/classes/DOSFile.html +253 -0
  84. data/doc/classes/DOSFile.src/M000016.html +22 -0
  85. data/doc/classes/DOSFile.src/M000017.html +17 -0
  86. data/doc/classes/DOSFile.src/M000018.html +18 -0
  87. data/doc/classes/DOSFile.src/M000021.html +22 -0
  88. data/doc/classes/DOSFile.src/M000022.html +22 -0
  89. data/doc/classes/DOSFile.src/M000023.html +22 -0
  90. data/doc/classes/DOSFile.src/M000024.html +17 -0
  91. data/doc/classes/DOSFile.src/M000025.html +18 -0
  92. data/doc/classes/DOSFile.src/M000116.html +22 -0
  93. data/doc/classes/DOSFile.src/M000117.html +18 -0
  94. data/doc/classes/DOSFile.src/M000118.html +18 -0
  95. data/doc/classes/DOSFile.src/M000119.html +28 -0
  96. data/doc/classes/DOSFile.src/M000120.html +18 -0
  97. data/doc/classes/DSK.html +633 -0
  98. data/doc/classes/DSK.src/M000009.html +22 -0
  99. data/doc/classes/DSK.src/M000010.html +27 -0
  100. data/doc/classes/DSK.src/M000011.html +19 -0
  101. data/doc/classes/DSK.src/M000012.html +18 -0
  102. data/doc/classes/DSK.src/M000013.html +22 -0
  103. data/doc/classes/DSK.src/M000014.html +22 -0
  104. data/doc/classes/DSK.src/M000015.html +22 -0
  105. data/doc/classes/DSK.src/M000016.html +22 -0
  106. data/doc/classes/DSK.src/M000017.html +22 -0
  107. data/doc/classes/DSK.src/M000018.html +22 -0
  108. data/doc/classes/DSK.src/M000019.html +22 -0
  109. data/doc/classes/DSK.src/M000020.html +34 -0
  110. data/doc/classes/DSK.src/M000079.html +19 -0
  111. data/doc/classes/DSK.src/M000080.html +19 -0
  112. data/doc/classes/DSK.src/M000081.html +18 -0
  113. data/doc/classes/DSK.src/M000082.html +18 -0
  114. data/doc/classes/DSK.src/M000083.html +18 -0
  115. data/doc/classes/DSK.src/M000084.html +18 -0
  116. data/doc/classes/DSK.src/M000085.html +18 -0
  117. data/doc/classes/DSK.src/M000086.html +25 -0
  118. data/doc/classes/DSK.src/M000087.html +19 -0
  119. data/doc/classes/DSK.src/M000088.html +20 -0
  120. data/doc/classes/DSK.src/M000089.html +35 -0
  121. data/doc/classes/DSK.src/M000090.html +22 -0
  122. data/doc/classes/DSK.src/M000091.html +22 -0
  123. data/doc/classes/DSK.src/M000092.html +27 -0
  124. data/doc/classes/DSK.src/M000093.html +25 -0
  125. data/doc/classes/DSK.src/M000094.html +33 -0
  126. data/doc/classes/DSK.src/M000095.html +66 -0
  127. data/doc/classes/DSK.src/M000096.html +33 -0
  128. data/doc/classes/DSK.src/M000097.html +22 -0
  129. data/doc/classes/DSK.src/M000098.html +23 -0
  130. data/doc/classes/DSK.src/M000099.html +24 -0
  131. data/doc/classes/DSK.src/M000100.html +21 -0
  132. data/doc/classes/DSK.src/M000101.html +18 -0
  133. data/doc/classes/DSK.src/M000102.html +24 -0
  134. data/doc/classes/DSK.src/M000103.html +24 -0
  135. data/doc/classes/DSK.src/M000104.html +24 -0
  136. data/doc/classes/DSKFile.html +328 -0
  137. data/doc/classes/DSKFile.src/M000071.html +19 -0
  138. data/doc/classes/DSKFile.src/M000072.html +18 -0
  139. data/doc/classes/DSKFile.src/M000073.html +23 -0
  140. data/doc/classes/DSKFile.src/M000074.html +25 -0
  141. data/doc/classes/DSKFile.src/M000075.html +18 -0
  142. data/doc/classes/DSKFile.src/M000076.html +18 -0
  143. data/doc/classes/DSKFile.src/M000077.html +18 -0
  144. data/doc/classes/DSKFile.src/M000078.html +18 -0
  145. data/doc/classes/DSKFile.src/M000079.html +50 -0
  146. data/doc/classes/DSKTrackSector.html +199 -0
  147. data/doc/classes/DSKTrackSector.src/M000045.html +20 -0
  148. data/doc/classes/DSKTrackSector.src/M000046.html +18 -0
  149. data/doc/classes/DSKTrackSector.src/M000047.html +21 -0
  150. data/doc/classes/DSKTrackSector.src/M000049.html +20 -0
  151. data/doc/classes/DSKTrackSector.src/M000050.html +18 -0
  152. data/doc/classes/DSKTrackSector.src/M000051.html +21 -0
  153. data/doc/classes/DirectoryServlet.html +148 -0
  154. data/doc/classes/DirectoryServlet.src/M000041.html +20 -0
  155. data/doc/classes/DirectoryServlet.src/M000044.html +20 -0
  156. data/doc/classes/DumpUtilities.html +158 -0
  157. data/doc/classes/DumpUtilities.src/M000050.html +33 -0
  158. data/doc/classes/DumpUtilities.src/M000051.html +23 -0
  159. data/doc/classes/HGR.html +232 -0
  160. data/doc/classes/HGR.src/M000114.html +29 -0
  161. data/doc/classes/HGR.src/M000115.html +56 -0
  162. data/doc/classes/IntegerBasicFile.html +293 -0
  163. data/doc/classes/IntegerBasicFile.src/M000001.html +18 -0
  164. data/doc/classes/IntegerBasicFile.src/M000004.html +18 -0
  165. data/doc/classes/IntegerBasicFile.src/M000005.html +18 -0
  166. data/doc/classes/IntegerBasicFile.src/M000036.html +18 -0
  167. data/doc/classes/IntegerBasicFile.src/M000037.html +18 -0
  168. data/doc/classes/IntegerBasicFile.src/M000038.html +18 -0
  169. data/doc/classes/IntegerBasicFile.src/M000039.html +18 -0
  170. data/doc/classes/MBASICFile.html +202 -0
  171. data/doc/classes/MBASICFile.src/M000033.html +22 -0
  172. data/doc/classes/MBASICFile.src/M000034.html +30 -0
  173. data/doc/classes/MBASICFile.src/M000035.html +94 -0
  174. data/doc/classes/NADOLBinaryFile.html +184 -0
  175. data/doc/classes/NADOLBinaryFile.src/M000052.html +19 -0
  176. data/doc/classes/NADOLBinaryFile.src/M000053.html +18 -0
  177. data/doc/classes/NADOLBinaryFile.src/M000054.html +18 -0
  178. data/doc/classes/NADOLDisk.html +324 -0
  179. data/doc/classes/NADOLDisk.src/M000014.html +23 -0
  180. data/doc/classes/NADOLDisk.src/M000015.html +19 -0
  181. data/doc/classes/NADOLDisk.src/M000016.html +18 -0
  182. data/doc/classes/NADOLDisk.src/M000017.html +29 -0
  183. data/doc/classes/NADOLDisk.src/M000018.html +34 -0
  184. data/doc/classes/NADOLDisk.src/M000019.html +32 -0
  185. data/doc/classes/NADOLDisk.src/M000020.html +22 -0
  186. data/doc/classes/NADOLDisk.src/M000021.html +38 -0
  187. data/doc/classes/NADOLDisk.src/M000022.html +27 -0
  188. data/doc/classes/NADOLDisk.src/M000023.html +53 -0
  189. data/doc/classes/NADOLDisk.src/M000024.html +46 -0
  190. data/doc/classes/NADOLFile.html +189 -0
  191. data/doc/classes/NADOLFile.src/M000042.html +18 -0
  192. data/doc/classes/NADOLFile.src/M000043.html +18 -0
  193. data/doc/classes/NADOLFile.src/M000044.html +28 -0
  194. data/doc/classes/NADOLTokenisedFile.html +231 -0
  195. data/doc/classes/NADOLTokenisedFile.src/M000124.html +28 -0
  196. data/doc/classes/NADOLTokenisedFile.src/M000125.html +49 -0
  197. data/doc/classes/NADOLTokenisedFile.src/M000126.html +18 -0
  198. data/doc/classes/NADOLTokenisedFile.src/M000127.html +18 -0
  199. data/doc/classes/Nibbles.html +231 -0
  200. data/doc/classes/Nibbles.src/M000110.html +18 -0
  201. data/doc/classes/Nibbles.src/M000111.html +20 -0
  202. data/doc/classes/Nibbles.src/M000112.html +18 -0
  203. data/doc/classes/Nibbles.src/M000113.html +101 -0
  204. data/doc/classes/PNG.html +151 -0
  205. data/doc/classes/PNG.src/M000123.html +26 -0
  206. data/doc/classes/SCAsmFile.html +242 -0
  207. data/doc/classes/SCAsmFile.src/M000102.html +18 -0
  208. data/doc/classes/SCAsmFile.src/M000103.html +18 -0
  209. data/doc/classes/SCAsmFile.src/M000104.html +18 -0
  210. data/doc/classes/SCAsmFile.src/M000105.html +18 -0
  211. data/doc/classes/SCAsmFile.src/M000106.html +39 -0
  212. data/doc/classes/ShowFileServlet.html +148 -0
  213. data/doc/classes/ShowFileServlet.src/M000052.html +22 -0
  214. data/doc/classes/ShowFileServlet.src/M000059.html +22 -0
  215. data/doc/classes/ShowPNGServlet.html +148 -0
  216. data/doc/classes/ShowPNGServlet.src/M000101.html +26 -0
  217. data/doc/classes/ShowPNGServlet.src/M000105.html +26 -0
  218. data/doc/classes/ShowSectorServlet.html +148 -0
  219. data/doc/classes/ShowSectorServlet.src/M000040.html +22 -0
  220. data/doc/classes/ShowSectorServlet.src/M000043.html +22 -0
  221. data/doc/classes/TestCPMDisks.html +159 -0
  222. data/doc/classes/TestCPMDisks.src/M000037.html +19 -0
  223. data/doc/classes/TestCPMDisks.src/M000038.html +57 -0
  224. data/doc/classes/TestDOSDisks.html +279 -0
  225. data/doc/classes/TestDOSDisks.src/M000001.html +19 -0
  226. data/doc/classes/TestDOSDisks.src/M000002.html +19 -0
  227. data/doc/classes/TestDOSDisks.src/M000003.html +25 -0
  228. data/doc/classes/TestDOSDisks.src/M000014.html +26 -0
  229. data/doc/classes/TestDOSDisks.src/M000015.html +19 -0
  230. data/doc/classes/TestDOSDisks.src/M000016.html +62 -0
  231. data/doc/classes/TestDOSDisks.src/M000017.html +22 -0
  232. data/doc/classes/TestDOSDisks.src/M000018.html +20 -0
  233. data/doc/classes/TestDOSDisks.src/M000019.html +19 -0
  234. data/doc/classes/TestDOSDisks.src/M000020.html +25 -0
  235. data/doc/classes/TestDOSDisks.src/M000021.html +47 -0
  236. data/doc/classes/TestDOSDisks.src/M000022.html +28 -0
  237. data/doc/classes/TestDOSDisks.src/M000023.html +28 -0
  238. data/doc/classes/TestDOSDisks.src/M000025.html +26 -0
  239. data/doc/classes/TestDOSDisks.src/M000026.html +19 -0
  240. data/doc/classes/TestDOSDisks.src/M000027.html +62 -0
  241. data/doc/classes/TestDOSDisks.src/M000028.html +22 -0
  242. data/doc/classes/TestDOSDisks.src/M000029.html +20 -0
  243. data/doc/classes/TestDOSDisks.src/M000030.html +19 -0
  244. data/doc/classes/TestDOSDisks.src/M000031.html +25 -0
  245. data/doc/classes/TestDOSDisks.src/M000032.html +47 -0
  246. data/doc/classes/TestDOSDisks.src/M000033.html +28 -0
  247. data/doc/classes/TestDOSDisks.src/M000034.html +28 -0
  248. data/doc/classes/TestDisassembly.html +144 -0
  249. data/doc/classes/TestDisassembly.src/M000005.html +19 -0
  250. data/doc/classes/TestDisassembly.src/M000006.html +19 -0
  251. data/doc/classes/TestDisassembly.src/M000039.html +19 -0
  252. data/doc/classes/TestModifiedDOSDisks.html +193 -0
  253. data/doc/classes/TestModifiedDOSDisks.src/M000045.html +24 -0
  254. data/doc/classes/TestModifiedDOSDisks.src/M000046.html +27 -0
  255. data/doc/classes/TestModifiedDOSDisks.src/M000047.html +24 -0
  256. data/doc/classes/TestModifiedDOSDisks.src/M000048.html +27 -0
  257. data/doc/classes/TestNADOLDisks.html +193 -0
  258. data/doc/classes/TestNADOLDisks.src/M000106.html +22 -0
  259. data/doc/classes/TestNADOLDisks.src/M000107.html +72 -0
  260. data/doc/classes/TestNADOLDisks.src/M000108.html +22 -0
  261. data/doc/classes/TestNADOLDisks.src/M000109.html +72 -0
  262. data/doc/classes/TestNADOLDisks.src/M000121.html +22 -0
  263. data/doc/classes/TestNADOLDisks.src/M000122.html +73 -0
  264. data/doc/classes/TestPascalDisks.html +174 -0
  265. data/doc/classes/TestPascalDisks.src/M000040.html +28 -0
  266. data/doc/classes/TestPascalDisks.src/M000041.html +24 -0
  267. data/doc/classes/TestPascalDisks.src/M000042.html +27 -0
  268. data/doc/classes/TestProDOSDisks.html +253 -0
  269. data/doc/classes/TestProDOSDisks.src/M000114.html +28 -0
  270. data/doc/classes/TestProDOSDisks.src/M000115.html +28 -0
  271. data/doc/classes/TestProDOSDisks.src/M000116.html +41 -0
  272. data/doc/classes/TestProDOSDisks.src/M000117.html +28 -0
  273. data/doc/classes/TestProDOSDisks.src/M000118.html +28 -0
  274. data/doc/classes/TestProDOSDisks.src/M000119.html +28 -0
  275. data/doc/classes/TestProDOSDisks.src/M000120.html +41 -0
  276. data/doc/classes/TestProDOSDisks.src/M000121.html +28 -0
  277. data/doc/classes/TextFile.html +196 -0
  278. data/doc/classes/TextFile.src/M000019.html +18 -0
  279. data/doc/classes/TextFile.src/M000020.html +20 -0
  280. data/doc/classes/TextFile.src/M000024.html +18 -0
  281. data/doc/classes/TextFile.src/M000025.html +18 -0
  282. data/doc/classes/TextFile.src/M000026.html +18 -0
  283. data/doc/classes/TextFile.src/M000027.html +20 -0
  284. data/doc/classes/TextFile.src/M000128.html +18 -0
  285. data/doc/classes/TextFile.src/M000129.html +18 -0
  286. data/doc/classes/TextFile.src/M000130.html +18 -0
  287. data/doc/classes/TextFile.src/M000131.html +20 -0
  288. data/doc/created.rid +1 -0
  289. data/doc/dot/f_0.dot +14 -84
  290. data/doc/dot/f_0.png +0 -0
  291. data/doc/dot/f_1.dot +32 -0
  292. data/doc/dot/f_1.png +0 -0
  293. data/doc/dot/f_10.dot +32 -0
  294. data/doc/dot/f_10.png +0 -0
  295. data/doc/dot/f_11.dot +14 -0
  296. data/doc/dot/f_11.png +0 -0
  297. data/doc/dot/f_12.dot +84 -0
  298. data/doc/dot/f_12.png +0 -0
  299. data/doc/dot/f_15.dot +32 -0
  300. data/doc/dot/f_15.png +0 -0
  301. data/doc/dot/f_18.dot +32 -0
  302. data/doc/dot/f_18.png +0 -0
  303. data/doc/dot/f_2.dot +32 -0
  304. data/doc/dot/f_2.png +0 -0
  305. data/doc/dot/f_20.dot +32 -0
  306. data/doc/dot/f_20.png +0 -0
  307. data/doc/dot/f_3.dot +32 -0
  308. data/doc/dot/f_3.png +0 -0
  309. data/doc/dot/f_4.dot +32 -0
  310. data/doc/dot/f_4.png +0 -0
  311. data/doc/dot/f_5.dot +32 -0
  312. data/doc/dot/f_5.png +0 -0
  313. data/doc/dot/f_6.dot +32 -0
  314. data/doc/dot/f_6.png +0 -0
  315. data/doc/dot/f_7.dot +23 -0
  316. data/doc/dot/f_7.png +0 -0
  317. data/doc/dot/f_8.dot +23 -0
  318. data/doc/dot/f_8.png +0 -0
  319. data/doc/dot/f_9.dot +45 -0
  320. data/doc/dot/f_9.png +0 -0
  321. data/doc/files/bin/dskexplorer_rb.html +365 -0
  322. data/doc/files/bin/dskexplorer_rb.src/M000001.html +21 -0
  323. data/doc/files/bin/dskexplorer_rb.src/M000002.html +21 -0
  324. data/doc/files/bin/dskexplorer_rb.src/M000003.html +22 -0
  325. data/doc/files/bin/dskexplorer_rb.src/M000004.html +20 -0
  326. data/doc/files/bin/dskexplorer_rb.src/M000005.html +20 -0
  327. data/doc/files/bin/dskexplorer_rb.src/M000006.html +22 -0
  328. data/doc/files/bin/dskexplorer_rb.src/M000007.html +16 -0
  329. data/doc/files/bin/dskexplorer_rb.src/M000008.html +20 -0
  330. data/doc/files/bin/dskexplorer_rb.src/M000009.html +43 -0
  331. data/doc/files/bin/dskexplorer_rb.src/M000010.html +59 -0
  332. data/doc/files/bin/dskexplorer_rb.src/M000011.html +53 -0
  333. data/doc/files/bin/dskexplorer_rb.src/M000012.html +58 -0
  334. data/doc/files/bin/dskexplorer_rb.src/M000013.html +37 -0
  335. data/doc/files/bin/dsktool_rb.html +276 -0
  336. data/doc/files/bin/romdump_rb.html +189 -0
  337. data/doc/files/dsktool_web/dskexplorer_rb.html +112 -0
  338. data/doc/files/dsktool_web/dskexplorer_web_rb.html +112 -0
  339. data/doc/files/dsktool_web/index_rb.html +112 -0
  340. data/doc/files/lib/CPMDisk_rb.html +115 -0
  341. data/doc/files/lib/CPMFile_rb.html +117 -0
  342. data/doc/files/lib/D65_rb.html +114 -0
  343. data/doc/files/lib/DOSDisk_rb.html +115 -0
  344. data/doc/files/lib/DOSFile_rb.html +122 -0
  345. data/doc/files/lib/DSKFile_rb.html +114 -0
  346. data/doc/files/lib/DSK_rb.html +127 -0
  347. data/doc/files/lib/DumpUtilities_rb.html +107 -0
  348. data/doc/files/lib/HGR_rb.html +122 -0
  349. data/doc/files/lib/NADOLDisk_rb.html +115 -0
  350. data/doc/files/lib/NADOLFile_rb.html +120 -0
  351. data/doc/files/lib/Nibbles_rb.html +114 -0
  352. data/doc/files/test/tc_cpm_disks_rb.html +122 -0
  353. data/doc/files/test/tc_disassembly_rb.html +116 -0
  354. data/doc/files/test/tc_dos_disks_rb.html +122 -0
  355. data/doc/files/test/tc_modified_dos_disks_rb.html +122 -0
  356. data/doc/files/test/tc_nadol_disks_rb.html +122 -0
  357. data/doc/files/test/tc_prodos_disks_rb.html +122 -0
  358. data/doc/files/test/test_dos_disks_rb.html +109 -0
  359. data/doc/files/test/ts_test_all_rb.html +119 -0
  360. data/doc/files/test_bak/hgr_scanlines_rb.html +106 -0
  361. data/doc/files/test_bak/tc_disassembly_rb.html +123 -0
  362. data/doc/files/test_bak/tc_dos_disks_rb.html +122 -0
  363. data/doc/files/test_bak/tc_modified_dos_disks_rb.html +122 -0
  364. data/doc/files/test_bak/tc_nadol_disks_rb.html +122 -0
  365. data/doc/files/test_bak/tc_pascal_disks_rb.html +122 -0
  366. data/doc/files/test_bak/tc_prodos_disks_rb.html +122 -0
  367. data/doc/files/test_bak/ts_test_all_rb.html +118 -0
  368. data/doc/fr_class_index.html +46 -0
  369. data/doc/fr_file_index.html +47 -0
  370. data/doc/fr_method_index.html +147 -0
  371. data/doc/index.html +24 -0
  372. data/doc/rdoc-style.css +208 -0
  373. data/lib/CPMDisk.rb +194 -0
  374. data/lib/CPMFile.rb +344 -0
  375. data/lib/DOSDisk.rb +16 -12
  376. data/lib/DOSDisk.rb~ +201 -0
  377. data/lib/DOSFile.rb~ +402 -0
  378. data/lib/DSK.rb +99 -49
  379. data/lib/DSK.rb~ +226 -0
  380. data/lib/DSKFile.rb +9 -0
  381. data/lib/DSKFile.rb~ +137 -0
  382. data/lib/HGR.rb~ +157 -0
  383. data/lib/NADOLDisk.rb~ +104 -0
  384. data/lib/NADOLFile.rb~ +225 -0
  385. data/lib/Nibbles.rb +210 -0
  386. data/lib/PascalDisk.rb~ +120 -0
  387. data/lib/PascalFile.rb~ +62 -0
  388. data/lib/ProDOSDisk.rb~ +197 -0
  389. data/lib/ProDOSFile.rb~ +160 -0
  390. data/test/1.txt +267 -0
  391. data/test/CPM1.DSK +0 -0
  392. data/test/CPM1.PO +0 -0
  393. data/test/PIC.ZO +0 -0
  394. data/test/STARCPM.DSK +0 -0
  395. data/test/SWRDTH1.NIB +1 -0
  396. data/test/blah.png +0 -0
  397. data/test/blah2.png +0 -0
  398. data/test/blank.nib +1 -0
  399. data/test/build_hgr_table.rb +28 -0
  400. data/test/build_hgr_table.rb~ +28 -0
  401. data/test/cpm_write_test.dsk +0 -0
  402. data/test/ed.txt +0 -0
  403. data/test/p.html +15030 -0
  404. data/test/pic.rb +19 -0
  405. data/test/pic.rb~ +18 -0
  406. data/test/sword.dsk +0 -0
  407. data/test/tc_cpm_disks.rb +59 -0
  408. data/test/tc_dos_disks.rb~ +107 -0
  409. data/test/tc_modified_dos_disks.rb +33 -0
  410. data/test/tc_nadol_disks.rb +0 -1
  411. data/test/tc_nadol_disks.rb~ +42 -0
  412. data/test/tc_pascal_disks.rb~ +48 -0
  413. data/test/tc_prodos_disks.rb~ +78 -0
  414. data/test/ts_test_all.rb +6 -4
  415. data/test/ts_test_all.rb~ +7 -0
  416. data/test/x.txt +16 -0
  417. metadata +485 -35
@@ -0,0 +1,19 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>is_modified_dos? (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 67</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_modified_dos?</span>(<span class="ruby-identifier">vtoc_track_no</span>,<span class="ruby-identifier">vtoc_sector_no</span>)
15
+ <span class="ruby-identifier">vtoc_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">vtoc_track_no</span>,<span class="ruby-identifier">vtoc_sector_no</span>)
16
+ (<span class="ruby-identifier">vtoc_sector</span>[<span class="ruby-value">01</span>]<span class="ruby-operator">&lt;=</span><span class="ruby-value">34</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">vtoc_sector</span>[<span class="ruby-value">02</span>]<span class="ruby-operator">&lt;=</span><span class="ruby-value">15</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">vtoc_sector</span>[<span class="ruby-value">0x27</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x7</span><span class="ruby-constant">A</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">vtoc_sector</span>[<span class="ruby-value">0x35</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x10</span>)
17
+ <span class="ruby-keyword kw">end</span></pre>
18
+ </body>
19
+ </html>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>is_nadol? (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 72</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_nadol?</span>(<span class="ruby-identifier">sector_order</span>)
15
+ <span class="ruby-comment cmt">#currently ignores sector order
16
+ <span class="ruby-comment cmt"># track $00, sector $02 , bytes $11 - &quot;NADOL&quot;
17
+ (<span class="ruby-ivar">@file_bytes</span>[<span class="ruby-value">0x00211</span><span class="ruby-operator">..</span><span class="ruby-value">0x00215</span>]<span class="ruby-operator">==</span><span class="ruby-value str">&quot;NADOL&quot;</span>)
18
+ <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,35 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>is_cpm? (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 78</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_cpm?</span>(<span class="ruby-identifier">sector_order</span>)
15
+ <span class="ruby-comment cmt">#currently ignores sector order
16
+ <span class="ruby-comment cmt">#look for a valid looking CPM directory on track 3.
17
+ <span class="ruby-comment cmt">#go through each sector in order, for each sector, look at every 32nd byte, and see if it is a valid 'user number' (i.e. a number from 00..0F). Stop looking when you see an 'E5'.
18
+ <span class="ruby-comment cmt">#if an invalid user number is found before an E5, then the disk is NOT a CPM disk
19
+ <span class="ruby-identifier">found_0xE5_byte</span>=<span class="ruby-keyword kw">false</span>
20
+ [<span class="ruby-value">0x0</span>,<span class="ruby-value">0x6</span>,<span class="ruby-value">0x</span><span class="ruby-constant">C</span>,<span class="ruby-value">0x3</span>,<span class="ruby-value">0x9</span>,<span class="ruby-value">0x</span><span class="ruby-constant">F</span>,<span class="ruby-value">0x</span><span class="ruby-constant">E</span>,<span class="ruby-value">0x5</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_no</span><span class="ruby-operator">|</span>
21
+ <span class="ruby-identifier">sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">3</span>,<span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-identifier">sector_order</span>][<span class="ruby-identifier">sector_no</span>])
22
+ [<span class="ruby-value">0x00</span>,<span class="ruby-value">0x20</span>,<span class="ruby-value">0x40</span>,<span class="ruby-value">0x60</span>,<span class="ruby-value">0x80</span>,<span class="ruby-value">0x</span><span class="ruby-constant">A0</span>,<span class="ruby-value">0x</span><span class="ruby-constant">C0</span>,<span class="ruby-value">0x</span><span class="ruby-constant">E0</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">byte_number</span><span class="ruby-operator">|</span>
23
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">sector</span>[<span class="ruby-identifier">byte_number</span>]<span class="ruby-operator">&gt;</span><span class="ruby-value">0x0</span><span class="ruby-constant">F</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">sector</span>[<span class="ruby-identifier">byte_number</span>]<span class="ruby-operator">!=</span><span class="ruby-value">0xe5</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">sector</span>[<span class="ruby-identifier">byte_number</span>]<span class="ruby-operator">!=</span><span class="ruby-value">0x1</span><span class="ruby-constant">F</span>) <span class="ruby-keyword kw">then</span>
24
+ <span class="ruby-comment cmt"># puts &quot;found #{sprintf '%02x',sector[byte_number]} at #{sprintf '%02x', byte_number} sector #{sprintf '%02x', sector_no}&quot;
25
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span>
26
+ <span class="ruby-keyword kw">end</span>
27
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">sector</span>[<span class="ruby-identifier">byte_number</span>]<span class="ruby-operator">==</span><span class="ruby-value">0xe5</span>) <span class="ruby-keyword kw">then</span>
28
+ <span class="ruby-identifier">found_0xE5_byte</span>=<span class="ruby-keyword kw">true</span>
29
+ <span class="ruby-keyword kw">end</span>
30
+ <span class="ruby-keyword kw">end</span>
31
+ <span class="ruby-keyword kw">end</span>
32
+ <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">found_0xE5_byte</span> <span class="ruby-comment cmt">#if we've only seen 00 bytes, then it's not really a CPM
33
+ <span class="ruby-keyword kw">end</span></pre>
34
+ </body>
35
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>is_prodos? (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 99</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_prodos?</span>(<span class="ruby-identifier">sector_order</span>)
15
+ <span class="ruby-comment cmt">#block $02 - bytes $00/$01 are both $00, byte $04 is $F?, </span>
16
+ <span class="ruby-comment cmt">#bytes $29-$2A = sectors ( 0x118 on a 35 track 5.25&quot; disk)</span>
17
+ <span class="ruby-identifier">first_sector_in_block_2</span>=<span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-identifier">sector_order</span>][<span class="ruby-value">4</span>]
18
+ <span class="ruby-identifier">first_sector_in_block_2</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">4</span>,<span class="ruby-identifier">sector_order</span>)
19
+ (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]<span class="ruby-operator">==</span><span class="ruby-value str">&quot;\x00\x00&quot;</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">4</span>]<span class="ruby-operator">&gt;=</span><span class="ruby-value">0x</span><span class="ruby-constant">F0</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0x29</span>]<span class="ruby-operator">+</span><span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0x2a</span>]<span class="ruby-operator">*</span><span class="ruby-value">0x100</span><span class="ruby-operator">==</span><span class="ruby-identifier">track_count</span><span class="ruby-operator">*</span><span class="ruby-value">8</span>)
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>is_pascal? (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 107</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_pascal?</span>(<span class="ruby-identifier">sector_order</span>)
15
+ <span class="ruby-comment cmt">#block $02 - bytes $00..$01 are both $00, byte $06 is &lt; 8 and
16
+ <span class="ruby-comment cmt">#bytes $0E-$0F = sectors ( 0x118 on a 35 track 5.25&quot; disk)
17
+ <span class="ruby-identifier">first_sector_in_block_2</span>=<span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-identifier">sector_order</span>][<span class="ruby-value">4</span>]
18
+ <span class="ruby-identifier">first_sector_in_block_2</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">4</span>,<span class="ruby-identifier">sector_order</span>)
19
+ (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>]<span class="ruby-operator">==</span><span class="ruby-value str">&quot;\x00\x00&quot;</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">6</span>]<span class="ruby-operator">&lt;=</span><span class="ruby-value">7</span>) <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>]<span class="ruby-operator">+</span><span class="ruby-identifier">first_sector_in_block_2</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>]<span class="ruby-operator">*</span><span class="ruby-value">0x100</span><span class="ruby-operator">==</span><span class="ruby-identifier">track_count</span><span class="ruby-operator">*</span><span class="ruby-value">8</span>)
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 116</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">file_bytes</span>=<span class="ruby-value str">&quot;\0&quot;</span><span class="ruby-operator">*</span><span class="ruby-constant">DSK_FILE_LENGTH</span>,<span class="ruby-identifier">sector_order</span>=<span class="ruby-identifier">:physical</span>)
15
+ <span class="ruby-comment cmt">#file must be a multiple of (16 sectors * 256 bytes) = 4096</span>
16
+ <span class="ruby-comment cmt">#some dsks on Asimov appear to have an extra byte at the end so allow for 1 extra byte
17
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">file_bytes</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">%</span><span class="ruby-value">4096</span><span class="ruby-operator">&gt;</span><span class="ruby-value">1</span>) <span class="ruby-keyword kw">then</span>
18
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;DSK files must be #{DSK_FILE_LENGTH} bytes long (was #{file_bytes.length} bytes)&quot;</span>
19
+ <span class="ruby-keyword kw">end</span>
20
+ <span class="ruby-ivar">@file_bytes</span>=<span class="ruby-identifier">file_bytes</span>
21
+ <span class="ruby-ivar">@files</span>={}
22
+ <span class="ruby-ivar">@sector_order</span>=<span class="ruby-identifier">sector_order</span>
23
+ <span class="ruby-ivar">@track_count</span>=<span class="ruby-identifier">file_bytes</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-value">4096</span>
24
+ <span class="ruby-ivar">@source_filename</span>=<span class="ruby-value str">&quot;(unknown)&quot;</span>
25
+ <span class="ruby-keyword kw">end</span></pre>
26
+ </body>
27
+ </html>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>save_as (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 130</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">save_as</span>(<span class="ruby-identifier">filename</span>)
15
+ <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">filename</span><span class="ruby-operator">=~</span><span class="ruby-regexp re">/\.gz$/</span>).<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">then</span>
16
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'zlib'</span>
17
+ <span class="ruby-identifier">f</span>=<span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">GzipWriter</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">open</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-value str">&quot;wb&quot;</span>))
18
+ <span class="ruby-keyword kw">else</span>
19
+ <span class="ruby-identifier">f</span>=<span class="ruby-identifier">open</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-value str">&quot;wb&quot;</span>)
20
+ <span class="ruby-keyword kw">end</span>
21
+ <span class="ruby-identifier">f</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-ivar">@file_bytes</span>
22
+ <span class="ruby-identifier">f</span>.<span class="ruby-identifier">close</span>
23
+ <span class="ruby-keyword kw">end</span></pre>
24
+ </body>
25
+ </html>
@@ -0,0 +1,33 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>create_new (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 143</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">DSK</span>.<span class="ruby-identifier">create_new</span>(<span class="ruby-identifier">filesystem</span>)
15
+
16
+ <span class="ruby-identifier">filesystem</span>=<span class="ruby-identifier">:dos33</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">filesystem</span><span class="ruby-operator">==</span><span class="ruby-identifier">:dos</span>
17
+
18
+ <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">filesystem</span>
19
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:none</span>
20
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DSK</span>.<span class="ruby-identifier">new</span>()
21
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:cpm</span>
22
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'CPMDisk'</span>
23
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">CPMDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;\xe5&quot;</span><span class="ruby-operator">*</span><span class="ruby-constant">DSK_FILE_LENGTH</span>,<span class="ruby-identifier">:physical</span>)
24
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:nadol</span>
25
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DSK</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-keyword kw">__FILE__</span>)<span class="ruby-operator">+</span><span class="ruby-value str">&quot;/nadol_blank.po.gz&quot;</span>)
26
+ <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:dos33</span>
27
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DSK</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-keyword kw">__FILE__</span>)<span class="ruby-operator">+</span><span class="ruby-value str">&quot;/dos33_blank.dsk.gz&quot;</span>)
28
+ <span class="ruby-keyword kw">else</span>
29
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;initialisation of #{filesystem} file system not currently supported&quot;</span>
30
+ <span class="ruby-keyword kw">end</span>
31
+ <span class="ruby-keyword kw">end</span></pre>
32
+ </body>
33
+ </html>
@@ -0,0 +1,66 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>best_subclass (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 163</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">best_subclass</span>
15
+ <span class="ruby-constant">SECTOR_ORDERS</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_order</span><span class="ruby-operator">|</span>
16
+ <span class="ruby-keyword kw">begin</span>
17
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;unknown&quot;</span>
18
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_dos33?</span>(<span class="ruby-identifier">sector_order</span>))
19
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'DOSDisk'</span>
20
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;DOS 3.3&quot;</span>
21
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DOSDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
22
+ <span class="ruby-keyword kw">end</span>
23
+
24
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_nadol?</span>(<span class="ruby-identifier">sector_order</span>))
25
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'NADOLDisk'</span>
26
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;NADOL&quot;</span>
27
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">NADOLDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
28
+ <span class="ruby-keyword kw">end</span>
29
+
30
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_prodos?</span>(<span class="ruby-identifier">sector_order</span>))
31
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'ProDOSDisk'</span>
32
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;ProDOS&quot;</span>
33
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">ProDOSDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
34
+ <span class="ruby-keyword kw">end</span>
35
+
36
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_pascal?</span>(<span class="ruby-identifier">sector_order</span>))
37
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'PascalDisk'</span>
38
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;Pascal&quot;</span>
39
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">PascalDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
40
+ <span class="ruby-keyword kw">end</span>
41
+
42
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_cpm?</span>(<span class="ruby-identifier">sector_order</span>))
43
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'CPMDisk'</span>
44
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;CP/M&quot;</span>
45
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">CPMDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
46
+ <span class="ruby-keyword kw">end</span>
47
+ <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Exception</span>=<span class="ruby-operator">&gt;</span><span class="ruby-identifier">e</span>
48
+ <span class="ruby-constant">STDERR</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-node">&quot;error while parsing #{self.source_filename} as #{candidate_filesystem} (sector order #{sector_order}\n&quot;</span>
49
+ <span class="ruby-constant">STDERR</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-node">&quot;#{e}\n&quot;</span>
50
+ <span class="ruby-constant">STDERR</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">e</span>.<span class="ruby-identifier">backtrace</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
51
+ <span class="ruby-keyword kw">end</span>
52
+ <span class="ruby-keyword kw">end</span>
53
+
54
+ <span class="ruby-comment cmt">#if none of the above matched, look for a DOS image with a VTOC in the wrong spot
55
+ <span class="ruby-value">0</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-value">0x22</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">track</span><span class="ruby-operator">|</span>
56
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">is_modified_dos?</span>(<span class="ruby-identifier">track</span>,<span class="ruby-value">0</span>))
57
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'DOSDisk'</span>
58
+ <span class="ruby-identifier">candidate_filesystem</span>=<span class="ruby-value str">&quot;MODIFIED DOS&quot;</span>
59
+ <span class="ruby-keyword kw">return</span> <span class="ruby-constant">DOSDisk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">:physical</span>,<span class="ruby-identifier">track</span>,<span class="ruby-value">0</span>)
60
+ <span class="ruby-keyword kw">end</span>
61
+ <span class="ruby-keyword kw">end</span>
62
+ <span class="ruby-comment cmt">#if we didn't find a better match, return self
63
+ <span class="ruby-keyword kw">self</span>
64
+ <span class="ruby-keyword kw">end</span></pre>
65
+ </body>
66
+ </html>
@@ -0,0 +1,33 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>read (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 215</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-constant">DSK</span>.<span class="ruby-identifier">read</span>(<span class="ruby-identifier">filename</span>)
15
+ <span class="ruby-comment cmt">#is the file extension .gz?
16
+ <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">filename</span><span class="ruby-operator">=~</span><span class="ruby-regexp re">/\.gz$/</span>).<span class="ruby-identifier">nil?</span> <span class="ruby-keyword kw">then</span>
17
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'zlib'</span>
18
+ <span class="ruby-identifier">file_bytes</span>=<span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">GzipReader</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">open</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-value str">&quot;rb&quot;</span>)).<span class="ruby-identifier">read</span>
19
+ <span class="ruby-keyword kw">else</span>
20
+ <span class="ruby-identifier">file_bytes</span>=<span class="ruby-identifier">open</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-value str">&quot;rb&quot;</span>).<span class="ruby-identifier">read</span>
21
+ <span class="ruby-keyword kw">end</span>
22
+
23
+ <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">file_bytes</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">-</span><span class="ruby-constant">NIB_FILE_LENGTH</span>).<span class="ruby-identifier">abs</span><span class="ruby-operator">&lt;=</span><span class="ruby-value">1</span> <span class="ruby-keyword kw">then</span>
24
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'Nibbles'</span>
25
+ <span class="ruby-identifier">dsk</span>=<span class="ruby-constant">Nibbles</span>.<span class="ruby-identifier">make_dsk_from_nibbles</span>(<span class="ruby-identifier">file_bytes</span>)
26
+ <span class="ruby-keyword kw">else</span>
27
+ <span class="ruby-identifier">dsk</span>=<span class="ruby-constant">DSK</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file_bytes</span>)
28
+ <span class="ruby-keyword kw">end</span>
29
+ <span class="ruby-identifier">dsk</span>.<span class="ruby-identifier">source_filename</span>=<span class="ruby-identifier">filename</span>
30
+ <span class="ruby-identifier">dsk</span>.<span class="ruby-identifier">best_subclass</span>
31
+ <span class="ruby-keyword kw">end</span></pre>
32
+ </body>
33
+ </html>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>get_sector (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 234</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">requested_sector</span>,<span class="ruby-identifier">sector_order</span>=<span class="ruby-ivar">@sector_order</span>)
15
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;bad sector #{requested_sector}&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">requested_sector</span>.<span class="ruby-identifier">between?</span>(<span class="ruby-value">0</span>,<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>)
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;bad sector_order #{sector_order}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-identifier">sector_order</span>].<span class="ruby-identifier">nil?</span>
17
+ <span class="ruby-identifier">physical_sector</span>=<span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-identifier">sector_order</span>][<span class="ruby-identifier">requested_sector</span>]
18
+ <span class="ruby-identifier">start_byte</span>=<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">16</span><span class="ruby-operator">*</span><span class="ruby-value">256</span><span class="ruby-operator">+</span><span class="ruby-identifier">physical_sector</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>
19
+ <span class="ruby-ivar">@file_bytes</span>[<span class="ruby-identifier">start_byte</span>,<span class="ruby-value">256</span>]
20
+ <span class="ruby-keyword kw">end</span></pre>
21
+ </body>
22
+ </html>
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>set_sector (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 242</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">contents</span>)
15
+ <span class="ruby-identifier">physical_sector</span>=<span class="ruby-constant">INTERLEAVES</span>[<span class="ruby-ivar">@sector_order</span>][<span class="ruby-identifier">sector</span>]
16
+ <span class="ruby-identifier">start_byte</span>=<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">16</span><span class="ruby-operator">*</span><span class="ruby-value">256</span><span class="ruby-operator">+</span><span class="ruby-identifier">physical_sector</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>
17
+ (<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">255</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">byte</span><span class="ruby-operator">|</span>
18
+ <span class="ruby-identifier">c</span>=(<span class="ruby-identifier">contents</span>[<span class="ruby-identifier">byte</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
19
+ <span class="ruby-ivar">@file_bytes</span>[<span class="ruby-identifier">start_byte</span><span class="ruby-operator">+</span><span class="ruby-identifier">byte</span>]=<span class="ruby-identifier">c</span>
20
+ <span class="ruby-keyword kw">end</span>
21
+ <span class="ruby-keyword kw">end</span></pre>
22
+ </body>
23
+ </html>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>set_boot_track (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 253</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_boot_track</span>(<span class="ruby-identifier">contents</span>)
15
+ <span class="ruby-identifier">sectors_needed</span>=(<span class="ruby-identifier">contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">256</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;boot code can't exceed 16 sectors&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">sectors_needed</span><span class="ruby-operator">&gt;</span><span class="ruby-value">16</span>
17
+ <span class="ruby-identifier">s</span>=<span class="ruby-identifier">sectors_needed</span>.<span class="ruby-identifier">chr</span><span class="ruby-operator">+</span><span class="ruby-identifier">contents</span>
18
+ <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">sector</span> <span class="ruby-keyword kw">in</span> <span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-identifier">sectors_needed</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
19
+ <span class="ruby-identifier">sector_data</span>=<span class="ruby-identifier">s</span>[<span class="ruby-identifier">sector</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>,<span class="ruby-value">256</span>]
20
+ <span class="ruby-identifier">set_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">sector_data</span>)
21
+ <span class="ruby-keyword kw">end</span>
22
+ <span class="ruby-keyword kw">end</span></pre>
23
+ </body>
24
+ </html>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>get_block (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 263</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_block</span>(<span class="ruby-identifier">block_no</span>)
15
+ <span class="ruby-identifier">track</span>=(<span class="ruby-identifier">block_no</span> <span class="ruby-operator">/</span> <span class="ruby-value">8</span>).<span class="ruby-identifier">to_i</span>
16
+ <span class="ruby-identifier">first_sector</span>=<span class="ruby-value">2</span><span class="ruby-operator">*</span>(<span class="ruby-identifier">block_no</span> <span class="ruby-operator">%</span> <span class="ruby-value">8</span>)
17
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;illegal block no #{block_no}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">track</span><span class="ruby-operator">&gt;=</span><span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">track_count</span>
18
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">first_sector</span>)<span class="ruby-operator">+</span><span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">first_sector</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>)
19
+ <span class="ruby-keyword kw">end</span></pre>
20
+ </body>
21
+ </html>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>files (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 270</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">files</span>
15
+ <span class="ruby-ivar">@files</span>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>dump_sector (DSK)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/DSK.rb, line 275</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dump_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>)
15
+ <span class="ruby-identifier">require</span> <span class="ruby-value str">'DumpUtilities'</span>
16
+ <span class="ruby-identifier">start_byte</span>=<span class="ruby-identifier">track</span>.<span class="ruby-identifier">to_i</span><span class="ruby-operator">*</span><span class="ruby-value">16</span><span class="ruby-operator">*</span><span class="ruby-value">256</span><span class="ruby-operator">+</span><span class="ruby-identifier">sector</span>.<span class="ruby-identifier">to_i</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>
17
+ <span class="ruby-identifier">s</span>=<span class="ruby-identifier">hline</span>
18
+ <span class="ruby-identifier">s</span><span class="ruby-operator">&lt;&lt;</span><span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;TRACK: $%02X SECTOR $%02X\ OFFSET $%04X\n&quot;</span>,<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">start_byte</span>)
19
+ <span class="ruby-identifier">sector_data</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>)
20
+ <span class="ruby-identifier">s</span><span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">DumpUtilities</span>.<span class="ruby-identifier">hex_dump</span>(<span class="ruby-identifier">sector_data</span>)
21
+ <span class="ruby-identifier">s</span>
22
+ <span class="ruby-keyword kw">end</span></pre>
23
+ </body>
24
+ </html>