dsktool 0.2.1 → 0.4.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.
- data/bin/dskexplorer.rb +79 -61
- data/bin/dsktool.rb +243 -142
- data/bin/romdump.rb +65 -0
- data/doc/classes/AppleSoftFile.html +97 -59
- data/doc/classes/AppleSoftFile.src/{M000005.html → M000113.html} +1 -1
- data/doc/classes/AppleSoftFile.src/M000114.html +18 -0
- data/doc/classes/AppleSoftFile.src/{M000013.html → M000115.html} +1 -1
- data/doc/classes/AppleSoftFile.src/{M000014.html → M000116.html} +1 -1
- data/doc/classes/AppleSoftFile.src/{M000010.html → M000117.html} +1 -1
- data/doc/classes/AppleSoftFile.src/M000118.html +18 -0
- data/doc/classes/AppleSoftFile.src/{M000006.html → M000119.html} +1 -1
- data/doc/classes/AppleSoftFile.src/{M000022.html → M000120.html} +1 -1
- data/doc/classes/BinaryFile.html +184 -26
- data/doc/classes/BinaryFile.src/{M000021.html → M000218.html} +1 -1
- data/doc/classes/{DOSFile.src/M000017.html → BinaryFile.src/M000219.html} +4 -3
- data/doc/classes/BinaryFile.src/{M000025.html → M000220.html} +1 -1
- data/doc/classes/BinaryFile.src/M000221.html +19 -0
- data/doc/classes/BinaryFile.src/M000222.html +19 -0
- data/doc/classes/BinaryFile.src/M000223.html +19 -0
- data/doc/classes/BinaryFile.src/M000224.html +18 -0
- data/doc/classes/BinaryFile.src/{M000015.html → M000225.html} +1 -1
- data/doc/classes/{AppleSoftFile.src/M000008.html → BinaryFile.src/M000226.html} +4 -4
- data/doc/classes/BinaryFile.src/{M000030.html → M000227.html} +1 -1
- data/doc/classes/BinaryFile.src/M000228.html +19 -0
- data/doc/classes/BinaryFile.src/M000229.html +19 -0
- data/doc/classes/BinaryFile.src/M000230.html +19 -0
- data/doc/classes/BinaryFile.src/M000231.html +18 -0
- data/doc/classes/CatalogServlet.html +5 -15
- data/doc/classes/CatalogServlet.src/{M000021.html → M000064.html} +1 -1
- data/doc/classes/D65.html +60 -18
- data/doc/classes/D65.src/{M000006.html → M000099.html} +0 -0
- data/doc/classes/D65.src/{M000032.html → M000100.html} +6 -6
- data/doc/classes/D65.src/{M000009.html → M000101.html} +1 -1
- data/doc/classes/D65.src/{M000011.html → M000102.html} +7 -7
- data/doc/classes/DOSDisk.html +291 -23
- data/doc/classes/DOSDisk.src/M000127.html +23 -0
- data/doc/classes/DOSDisk.src/M000128.html +18 -0
- data/doc/classes/DOSDisk.src/{M000012.html → M000129.html} +3 -3
- data/doc/classes/DOSDisk.src/M000130.html +37 -0
- data/doc/classes/DOSDisk.src/{M000043.html → M000131.html} +17 -8
- data/doc/classes/DOSDisk.src/M000132.html +37 -0
- data/doc/classes/DOSDisk.src/M000133.html +34 -0
- data/doc/classes/DOSDisk.src/M000134.html +27 -0
- data/doc/classes/DOSDisk.src/M000135.html +43 -0
- data/doc/classes/DOSDisk.src/M000136.html +31 -0
- data/doc/classes/DOSDisk.src/M000137.html +95 -0
- data/doc/classes/DOSDisk.src/M000138.html +23 -0
- data/doc/classes/{BinaryFile.src/M000023.html → DOSDisk.src/M000139.html} +4 -4
- data/doc/classes/DOSDisk.src/{M000016.html → M000140.html} +3 -3
- data/doc/classes/DOSDisk.src/M000141.html +22 -0
- data/doc/classes/DOSDisk.src/{M000017.html → M000142.html} +26 -17
- data/doc/classes/DOSDisk.src/M000143.html +37 -0
- data/doc/classes/DOSDisk.src/M000144.html +34 -0
- data/doc/classes/DOSDisk.src/M000145.html +92 -0
- data/doc/classes/DOSFile.html +135 -36
- data/doc/classes/DOSFile.src/{M000016.html → M000251.html} +5 -5
- data/doc/classes/DOSFile.src/{M000043.html → M000252.html} +1 -1
- data/doc/classes/DOSFile.src/M000253.html +18 -0
- data/doc/classes/DOSFile.src/M000254.html +28 -0
- data/doc/classes/DOSFile.src/M000255.html +18 -0
- data/doc/classes/DOSFile.src/{M000021.html → M000256.html} +4 -4
- data/doc/classes/DOSFile.src/{M000049.html → M000257.html} +1 -1
- data/doc/classes/DOSFile.src/M000258.html +18 -0
- data/doc/classes/DOSFile.src/M000259.html +28 -0
- data/doc/classes/DSK.html +735 -65
- data/doc/classes/DSK.src/{M000027.html → M000163.html} +3 -2
- data/doc/classes/{D65.src/M000003.html → DSK.src/M000164.html} +4 -4
- data/doc/classes/DSK.src/M000165.html +18 -0
- data/doc/classes/DSK.src/M000166.html +18 -0
- data/doc/classes/DSK.src/M000167.html +18 -0
- data/doc/classes/DSK.src/M000168.html +18 -0
- data/doc/classes/DSK.src/M000169.html +25 -0
- data/doc/classes/DSK.src/{M000043.html → M000170.html} +3 -2
- data/doc/classes/DSK.src/M000171.html +22 -0
- data/doc/classes/DSK.src/M000172.html +22 -0
- data/doc/classes/DSK.src/{M000035.html → M000173.html} +7 -3
- data/doc/classes/DSK.src/M000174.html +25 -0
- data/doc/classes/DSK.src/M000175.html +30 -0
- data/doc/classes/DSK.src/M000176.html +65 -0
- data/doc/classes/DSK.src/M000177.html +22 -0
- data/doc/classes/DSK.src/M000178.html +23 -0
- data/doc/classes/DSK.src/M000179.html +24 -0
- data/doc/classes/DSK.src/M000180.html +21 -0
- data/doc/classes/DSK.src/{M000012.html → M000181.html} +1 -1
- data/doc/classes/DSK.src/M000182.html +24 -0
- data/doc/classes/DSK.src/{M000053.html → M000183.html} +1 -1
- data/doc/classes/DSK.src/{M000054.html → M000184.html} +3 -3
- data/doc/classes/DSK.src/{M000033.html → M000185.html} +3 -2
- data/doc/classes/{DOSFile.src/M000018.html → DSK.src/M000186.html} +4 -4
- data/doc/classes/DSK.src/M000187.html +18 -0
- data/doc/classes/DSK.src/M000188.html +18 -0
- data/doc/classes/DSK.src/M000189.html +18 -0
- data/doc/classes/DSK.src/M000190.html +18 -0
- data/doc/classes/DSK.src/M000191.html +25 -0
- data/doc/classes/DSK.src/{M000047.html → M000192.html} +3 -2
- data/doc/classes/DSK.src/M000193.html +22 -0
- data/doc/classes/DSK.src/M000194.html +22 -0
- data/doc/classes/DSK.src/{M000015.html → M000195.html} +7 -3
- data/doc/classes/DSK.src/M000196.html +20 -0
- data/doc/classes/DSK.src/M000197.html +21 -0
- data/doc/classes/DSK.src/M000198.html +27 -0
- data/doc/classes/DSK.src/M000199.html +65 -0
- data/doc/classes/DSK.src/M000200.html +22 -0
- data/doc/classes/DSK.src/M000201.html +23 -0
- data/doc/classes/DSK.src/M000202.html +24 -0
- data/doc/classes/DSK.src/M000203.html +21 -0
- data/doc/classes/DSK.src/{M000022.html → M000204.html} +1 -1
- data/doc/classes/DSK.src/M000205.html +24 -0
- data/doc/classes/DSK.src/M000206.html +24 -0
- data/doc/classes/DSK.src/{M000024.html → M000207.html} +6 -5
- data/doc/classes/DSKFile.html +472 -0
- data/doc/classes/{NADOLFile.src/M000027.html → DSKFile.src/M000147.html} +2 -2
- data/doc/classes/{DOSFile.src/M000025.html → DSKFile.src/M000148.html} +2 -2
- data/doc/classes/DSKFile.src/M000149.html +25 -0
- data/doc/classes/{BinaryFile.src/M000040.html → DSKFile.src/M000150.html} +2 -2
- data/doc/classes/DSKFile.src/M000151.html +18 -0
- data/doc/classes/{BinaryFile.src/M000020.html → DSKFile.src/M000152.html} +4 -4
- data/doc/classes/DSKFile.src/M000153.html +18 -0
- data/doc/classes/DSKFile.src/M000154.html +50 -0
- data/doc/classes/{NADOLFile.src/M000031.html → DSKFile.src/M000155.html} +2 -2
- data/doc/classes/{DOSFile.src/M000029.html → DSKFile.src/M000156.html} +2 -2
- data/doc/classes/DSKFile.src/M000157.html +25 -0
- data/doc/classes/{BinaryFile.src/M000046.html → DSKFile.src/M000158.html} +2 -2
- data/doc/classes/DSKFile.src/M000159.html +18 -0
- data/doc/classes/DSKFile.src/M000160.html +18 -0
- data/doc/classes/DSKFile.src/M000161.html +18 -0
- data/doc/classes/DSKFile.src/M000162.html +50 -0
- data/doc/classes/DSKTrackSector.html +256 -0
- data/doc/classes/DSKTrackSector.src/M000093.html +20 -0
- data/doc/classes/DSKTrackSector.src/M000094.html +18 -0
- data/doc/classes/DSKTrackSector.src/M000095.html +21 -0
- data/doc/classes/DSKTrackSector.src/M000096.html +20 -0
- data/doc/classes/DSKTrackSector.src/M000097.html +18 -0
- data/doc/classes/DSKTrackSector.src/M000098.html +21 -0
- data/doc/classes/DirectoryServlet.html +5 -15
- data/doc/classes/DirectoryServlet.src/{M000023.html → M000086.html} +1 -1
- data/doc/classes/DumpUtilities.html +186 -0
- data/doc/classes/DumpUtilities.src/M000109.html +33 -0
- data/doc/classes/DumpUtilities.src/M000110.html +23 -0
- data/doc/classes/DumpUtilities.src/M000111.html +33 -0
- data/doc/classes/DumpUtilities.src/M000112.html +23 -0
- data/doc/classes/HGR.html +324 -0
- data/doc/classes/HGR.src/M000247.html +29 -0
- data/doc/classes/HGR.src/M000248.html +56 -0
- data/doc/classes/HGR.src/M000249.html +29 -0
- data/doc/classes/HGR.src/M000250.html +56 -0
- data/doc/classes/IntegerBasicFile.html +127 -26
- data/doc/classes/IntegerBasicFile.src/{M000001.html → M000056.html} +1 -1
- data/doc/classes/IntegerBasicFile.src/{M000007.html → M000057.html} +1 -1
- data/doc/classes/IntegerBasicFile.src/M000058.html +18 -0
- data/doc/classes/IntegerBasicFile.src/{M000008.html → M000059.html} +1 -1
- data/doc/classes/IntegerBasicFile.src/{M000004.html → M000060.html} +1 -1
- data/doc/classes/IntegerBasicFile.src/{M000013.html → M000061.html} +1 -1
- data/doc/classes/IntegerBasicFile.src/M000062.html +18 -0
- data/doc/classes/IntegerBasicFile.src/{M000014.html → M000063.html} +1 -1
- data/doc/classes/NADOLBinaryFile.html +84 -13
- data/doc/classes/NADOLBinaryFile.src/{M000033.html → M000103.html} +1 -1
- data/doc/classes/{NADOLFile.src/M000028.html → NADOLBinaryFile.src/M000104.html} +4 -4
- data/doc/classes/{NADOLFile.src/M000032.html → NADOLBinaryFile.src/M000105.html} +4 -4
- data/doc/classes/NADOLBinaryFile.src/{M000037.html → M000106.html} +1 -1
- data/doc/classes/{BinaryFile.src/M000055.html → NADOLBinaryFile.src/M000107.html} +4 -4
- data/doc/classes/NADOLBinaryFile.src/M000108.html +18 -0
- data/doc/classes/NADOLDisk.html +346 -23
- data/doc/classes/NADOLDisk.src/M000034.html +23 -0
- data/doc/classes/NADOLDisk.src/{M000019.html → M000035.html} +3 -3
- data/doc/classes/NADOLDisk.src/M000036.html +18 -0
- data/doc/classes/NADOLDisk.src/M000037.html +29 -0
- data/doc/classes/NADOLDisk.src/M000038.html +34 -0
- data/doc/classes/NADOLDisk.src/M000039.html +32 -0
- data/doc/classes/NADOLDisk.src/M000040.html +22 -0
- data/doc/classes/NADOLDisk.src/M000041.html +38 -0
- data/doc/classes/NADOLDisk.src/M000042.html +27 -0
- data/doc/classes/NADOLDisk.src/M000043.html +53 -0
- data/doc/classes/NADOLDisk.src/M000044.html +46 -0
- data/doc/classes/NADOLDisk.src/M000045.html +23 -0
- data/doc/classes/NADOLDisk.src/{M000022.html → M000046.html} +3 -3
- data/doc/classes/{AppleSoftFile.src/M000009.html → NADOLDisk.src/M000047.html} +4 -4
- data/doc/classes/NADOLDisk.src/M000048.html +29 -0
- data/doc/classes/NADOLDisk.src/M000049.html +34 -0
- data/doc/classes/NADOLDisk.src/M000050.html +32 -0
- data/doc/classes/NADOLDisk.src/M000051.html +22 -0
- data/doc/classes/NADOLDisk.src/M000052.html +38 -0
- data/doc/classes/NADOLDisk.src/M000053.html +27 -0
- data/doc/classes/NADOLDisk.src/M000054.html +53 -0
- data/doc/classes/NADOLDisk.src/M000055.html +46 -0
- data/doc/classes/NADOLFile.html +67 -51
- data/doc/classes/NADOLFile.src/{M000029.html → M000087.html} +1 -1
- data/doc/classes/NADOLFile.src/M000088.html +18 -0
- data/doc/classes/NADOLFile.src/M000089.html +28 -0
- data/doc/classes/NADOLFile.src/{M000033.html → M000090.html} +1 -1
- data/doc/classes/NADOLFile.src/M000091.html +18 -0
- data/doc/classes/NADOLFile.src/M000092.html +28 -0
- data/doc/classes/NADOLTokenisedFile.html +111 -32
- data/doc/classes/NADOLTokenisedFile.src/{M000068.html → M000276.html} +1 -1
- data/doc/classes/NADOLTokenisedFile.src/M000277.html +49 -0
- data/doc/classes/NADOLTokenisedFile.src/{M000064.html → M000278.html} +1 -1
- data/doc/classes/NADOLTokenisedFile.src/{M000065.html → M000279.html} +1 -1
- data/doc/classes/NADOLTokenisedFile.src/{M000061.html → M000280.html} +1 -1
- data/doc/classes/NADOLTokenisedFile.src/M000281.html +49 -0
- data/doc/classes/NADOLTokenisedFile.src/{M000069.html → M000282.html} +1 -1
- data/doc/classes/NADOLTokenisedFile.src/{M000070.html → M000283.html} +1 -1
- data/doc/classes/PNG.html +163 -0
- data/doc/classes/PNG.src/M000284.html +26 -0
- data/doc/classes/PNG.src/M000285.html +26 -0
- data/doc/classes/PascalDisk.html +274 -0
- data/doc/classes/PascalDisk.src/M000268.html +23 -0
- data/doc/classes/PascalDisk.src/M000269.html +19 -0
- data/doc/classes/PascalDisk.src/M000270.html +18 -0
- data/doc/classes/PascalDisk.src/M000271.html +60 -0
- data/doc/classes/PascalDisk.src/M000272.html +23 -0
- data/doc/classes/PascalDisk.src/M000273.html +19 -0
- data/doc/classes/PascalDisk.src/M000274.html +18 -0
- data/doc/classes/PascalDisk.src/M000275.html +60 -0
- data/doc/classes/PascalFile.html +322 -0
- data/doc/classes/{DOSFile.src/M000022.html → PascalFile.src/M000237.html} +5 -6
- data/doc/classes/{TextFile.src/M000027.html → PascalFile.src/M000238.html} +3 -3
- data/doc/classes/{AppleSoftFile.src/M000028.html → PascalFile.src/M000239.html} +3 -3
- data/doc/classes/PascalFile.src/M000240.html +19 -0
- data/doc/classes/PascalFile.src/M000241.html +18 -0
- data/doc/classes/{DOSFile.src/M000023.html → PascalFile.src/M000242.html} +5 -6
- data/doc/classes/{TextFile.src/M000032.html → PascalFile.src/M000243.html} +3 -3
- data/doc/classes/PascalFile.src/M000244.html +18 -0
- data/doc/classes/PascalFile.src/M000245.html +19 -0
- data/doc/classes/PascalFile.src/M000246.html +18 -0
- data/doc/classes/ProDOSDisk.html +414 -0
- data/doc/classes/ProDOSDisk.src/M000073.html +18 -0
- data/doc/classes/ProDOSDisk.src/M000074.html +23 -0
- data/doc/classes/{DOSDisk.src/M000030.html → ProDOSDisk.src/M000075.html} +5 -5
- data/doc/classes/ProDOSDisk.src/M000076.html +18 -0
- data/doc/classes/{DSK.src/M000052.html → ProDOSDisk.src/M000077.html} +8 -9
- data/doc/classes/ProDOSDisk.src/M000078.html +98 -0
- data/doc/classes/ProDOSDisk.src/M000079.html +18 -0
- data/doc/classes/ProDOSDisk.src/M000080.html +23 -0
- data/doc/classes/ProDOSDisk.src/M000081.html +19 -0
- data/doc/classes/ProDOSDisk.src/M000082.html +18 -0
- data/doc/classes/ProDOSDisk.src/M000083.html +36 -0
- data/doc/classes/ProDOSDisk.src/M000084.html +98 -0
- data/doc/classes/ProDOSFile.html +282 -0
- data/doc/classes/ProDOSFile.src/M000121.html +23 -0
- data/doc/classes/{AppleSoftFile.src/M000036.html → ProDOSFile.src/M000122.html} +3 -3
- data/doc/classes/ProDOSFile.src/M000123.html +30 -0
- data/doc/classes/ProDOSFile.src/M000124.html +23 -0
- data/doc/classes/ProDOSFile.src/M000125.html +18 -0
- data/doc/classes/ProDOSFile.src/M000126.html +30 -0
- data/doc/classes/RDoc.html +29 -12
- data/doc/classes/RDoc.src/{M000048.html → M000295.html} +0 -0
- data/doc/classes/RDoc.src/{M000032.html → M000296.html} +1 -1
- data/doc/classes/SCAsmFile.html +117 -31
- data/doc/classes/SCAsmFile.src/{M000048.html → M000208.html} +1 -1
- data/doc/classes/{DOSFile.src/M000024.html → SCAsmFile.src/M000209.html} +4 -3
- data/doc/classes/SCAsmFile.src/{M000026.html → M000210.html} +1 -1
- data/doc/classes/SCAsmFile.src/{M000027.html → M000211.html} +1 -1
- data/doc/classes/SCAsmFile.src/{M000058.html → M000212.html} +1 -1
- data/doc/classes/SCAsmFile.src/{M000025.html → M000213.html} +1 -1
- data/doc/classes/SCAsmFile.src/M000214.html +18 -0
- data/doc/classes/SCAsmFile.src/{M000036.html → M000215.html} +1 -1
- data/doc/classes/SCAsmFile.src/{M000037.html → M000216.html} +1 -1
- data/doc/classes/SCAsmFile.src/{M000053.html → M000217.html} +4 -1
- data/doc/classes/ShowFileServlet.html +5 -15
- data/doc/classes/ShowFileServlet.src/{M000040.html → M000146.html} +2 -2
- data/doc/classes/ShowPNGServlet.html +137 -0
- data/doc/classes/{ShowFileServlet.src/M000032.html → ShowPNGServlet.src/M000232.html} +10 -6
- data/doc/classes/ShowSectorServlet.html +5 -15
- data/doc/classes/ShowSectorServlet.src/{M000029.html → M000085.html} +1 -1
- data/doc/classes/TestDOSDisks.html +220 -28
- data/doc/classes/TestDOSDisks.src/M000014.html +1 -1
- data/doc/classes/TestDOSDisks.src/M000015.html +1 -1
- data/doc/classes/TestDOSDisks.src/M000016.html +32 -9
- data/doc/classes/TestDOSDisks.src/M000017.html +9 -6
- data/doc/classes/TestDOSDisks.src/M000018.html +5 -10
- data/doc/classes/TestDOSDisks.src/M000019.html +5 -27
- data/doc/classes/TestDOSDisks.src/M000020.html +8 -10
- data/doc/classes/TestDOSDisks.src/{M000010.html → M000021.html} +9 -3
- data/doc/classes/TestDOSDisks.src/{M000011.html → M000022.html} +5 -4
- data/doc/classes/TestDOSDisks.src/M000023.html +28 -0
- data/doc/classes/TestDOSDisks.src/{M000012.html → M000024.html} +2 -0
- data/doc/classes/TestDOSDisks.src/{M000001.html → M000025.html} +1 -1
- data/doc/classes/TestDOSDisks.src/M000026.html +62 -0
- data/doc/classes/TestDOSDisks.src/M000027.html +22 -0
- data/doc/classes/TestDOSDisks.src/M000028.html +20 -0
- data/doc/classes/TestDOSDisks.src/{M000008.html → M000029.html} +2 -2
- data/doc/classes/TestDOSDisks.src/{M000009.html → M000030.html} +2 -2
- data/doc/classes/TestDOSDisks.src/{M000004.html → M000031.html} +9 -3
- data/doc/classes/TestDOSDisks.src/{M000005.html → M000032.html} +5 -4
- data/doc/classes/TestDOSDisks.src/M000033.html +28 -0
- data/doc/classes/TestDisassembly.html +24 -12
- data/doc/classes/TestDisassembly.src/{M000008.html → M000071.html} +1 -1
- data/doc/classes/TestDisassembly.src/{M000007.html → M000072.html} +0 -0
- data/doc/classes/TestNADOLDisks.html +44 -17
- data/doc/classes/TestNADOLDisks.src/M000233.html +22 -0
- data/doc/classes/TestNADOLDisks.src/M000234.html +73 -0
- data/doc/classes/TestNADOLDisks.src/M000235.html +22 -0
- data/doc/classes/TestNADOLDisks.src/M000236.html +73 -0
- data/doc/classes/TestPascalDisks.html +216 -0
- data/doc/classes/TestPascalDisks.src/M000065.html +28 -0
- data/doc/classes/TestPascalDisks.src/M000066.html +24 -0
- data/doc/classes/TestPascalDisks.src/M000067.html +27 -0
- data/doc/classes/TestPascalDisks.src/M000068.html +28 -0
- data/doc/classes/TestPascalDisks.src/M000069.html +24 -0
- data/doc/classes/TestPascalDisks.src/M000070.html +27 -0
- data/doc/classes/TestProDOSDisks.html +246 -0
- data/doc/classes/TestProDOSDisks.src/M000260.html +28 -0
- data/doc/classes/TestProDOSDisks.src/M000261.html +28 -0
- data/doc/classes/TestProDOSDisks.src/M000262.html +41 -0
- data/doc/classes/TestProDOSDisks.src/M000263.html +28 -0
- data/doc/classes/TestProDOSDisks.src/M000264.html +28 -0
- data/doc/classes/TestProDOSDisks.src/M000265.html +28 -0
- data/doc/classes/TestProDOSDisks.src/M000266.html +41 -0
- data/doc/classes/TestProDOSDisks.src/M000267.html +28 -0
- data/doc/classes/TextFile.html +109 -26
- data/doc/classes/TextFile.src/{M000019.html → M000286.html} +1 -1
- data/doc/classes/{DOSFile.src/M000028.html → TextFile.src/M000287.html} +4 -3
- data/doc/classes/TextFile.src/{M000031.html → M000288.html} +1 -1
- data/doc/classes/TextFile.src/{M000020.html → M000289.html} +3 -3
- data/doc/classes/TextFile.src/{M000024.html → M000290.html} +1 -1
- data/doc/classes/TextFile.src/M000291.html +18 -0
- data/doc/classes/TextFile.src/{M000036.html → M000292.html} +1 -1
- data/doc/classes/TextFile.src/{M000037.html → M000293.html} +3 -3
- data/doc/classes/TextFile.src/M000294.html +18 -0
- data/doc/created.rid +1 -1
- data/doc/dot/f_0.dot +14 -1
- data/doc/files/bin/dskexplorer_rb.html +2 -12
- data/doc/files/bin/dskexplorer_rb.src/M000007.html +2 -4
- data/doc/files/bin/dskexplorer_rb.src/M000008.html +1 -1
- data/doc/files/bin/dskexplorer_rb.src/M000009.html +1 -1
- data/doc/files/bin/dskexplorer_rb.src/M000010.html +7 -3
- data/doc/files/bin/dskexplorer_rb.src/M000011.html +10 -6
- data/doc/files/bin/dskexplorer_rb.src/M000012.html +9 -12
- data/doc/files/bin/dskexplorer_rb.src/M000013.html +7 -4
- data/doc/files/bin/dsktool_rb.html +93 -41
- data/doc/files/bin/romdump_rb.html +184 -0
- data/doc/files/dsktool_web/dskexplorer_rb.html +107 -0
- data/doc/files/dsktool_web/index_rb.html +107 -0
- data/doc/files/lib/D65_rb.html +1 -7
- data/doc/files/lib/DOSDisk_rb.html +1 -8
- data/doc/files/lib/DOSFile_rb.html +3 -12
- data/doc/files/{test/test_dos_disks_rb.html → lib/DSKFile_rb.html} +5 -6
- data/doc/files/lib/DSK_rb.html +5 -7
- data/doc/files/lib/DumpUtilities_rb.html +101 -0
- data/doc/files/lib/HGR_rb.html +115 -0
- data/doc/files/lib/NADOLDisk_rb.html +1 -8
- data/doc/files/lib/NADOLFile_rb.html +3 -9
- data/doc/files/lib/PascalDisk_rb.html +108 -0
- data/doc/files/lib/PascalFile_rb.html +109 -0
- data/doc/files/lib/ProDOSDisk_rb.html +108 -0
- data/doc/files/lib/ProDOSFile_rb.html +108 -0
- data/doc/files/lib/rdoc_patch_rb.html +1 -7
- data/doc/files/test/backup/D65_rb.html +108 -0
- data/doc/files/test/backup/DOSDisk_rb.html +108 -0
- data/doc/files/test/backup/DOSFile_rb.html +110 -0
- data/doc/files/test/backup/DSKFile_rb.html +108 -0
- data/doc/files/test/backup/DSK_rb.html +116 -0
- data/doc/files/test/backup/DumpUtilities_rb.html +101 -0
- data/doc/files/test/backup/HGR_rb.html +115 -0
- data/doc/files/test/backup/NADOLDisk_rb.html +108 -0
- data/doc/files/test/backup/NADOLFile_rb.html +111 -0
- data/doc/files/test/backup/PascalDisk_rb.html +108 -0
- data/doc/files/test/backup/PascalFile_rb.html +109 -0
- data/doc/files/test/backup/ProDOSDisk_rb.html +108 -0
- data/doc/files/test/backup/ProDOSFile_rb.html +108 -0
- data/doc/files/test/backup/comp_rb.html +101 -0
- data/doc/files/test/backup/compress_dos_dsk_rb.html +114 -0
- data/doc/files/test/backup/extract_nadol_startup_rb.html +134 -0
- data/doc/files/test/backup/hgr_scanlines_rb.html +101 -0
- data/doc/files/test/backup/rdoc_patch_rb.html +108 -0
- data/doc/files/test/backup/tc_disassembly_rb.html +116 -0
- data/doc/files/test/backup/tc_dos_disks_rb.html +115 -0
- data/doc/files/test/backup/tc_nadol_disks_rb.html +115 -0
- data/doc/files/test/backup/tc_pascal_disks_rb.html +115 -0
- data/doc/files/test/backup/tc_prodos_disks_rb.html +115 -0
- data/doc/files/test/backup/ts_test_all_rb.html +112 -0
- data/doc/files/test/comp_rb.html +101 -0
- data/doc/files/test/compress_dos_dsk_rb.html +114 -0
- data/doc/files/test/extract_nadol_startup_rb.html +134 -0
- data/doc/files/test/hgr_scanlines_rb.html +101 -0
- data/doc/files/test/tc_disassembly_rb.html +1 -8
- data/doc/files/test/tc_dos_disks_rb.html +1 -8
- data/doc/files/test/tc_nadol_disks_rb.html +1 -8
- data/doc/files/test/tc_pascal_disks_rb.html +115 -0
- data/doc/files/test/tc_prodos_disks_rb.html +115 -0
- data/doc/files/test/ts_test_all_rb.html +3 -6
- data/doc/fr_class_index.html +12 -0
- data/doc/fr_file_index.html +40 -0
- data/doc/fr_method_index.html +281 -59
- data/lib/D65.rb +6 -6
- data/lib/DOSDisk.rb +248 -18
- data/lib/DOSFile.rb +75 -104
- data/lib/DSK.rb +198 -44
- data/lib/DSKFile.rb +141 -0
- data/lib/DumpUtilities.rb +30 -0
- data/lib/HGR.rb +136 -0
- data/lib/NADOLDisk.rb +199 -42
- data/lib/NADOLFile.rb +73 -35
- data/lib/PascalDisk.rb +121 -0
- data/lib/PascalFile.rb +62 -0
- data/lib/ProDOSDisk.rb +197 -0
- data/lib/ProDOSFile.rb +162 -0
- data/lib/a2_symbols.yaml +2 -2
- data/lib/dos33_blank.dsk.gz +0 -0
- data/lib/nadol_blank.po.gz +0 -0
- data/test/ADTPRO-1.0.1.DSK +0 -0
- data/test/ADTPRO-1.0.1.PO +0 -0
- data/test/Algebra Mentor (19xx)(John C. Miller)(Disk 1 of 7 Side A)(Student Disk 1).dsk.gz +0 -0
- data/test/Apple Works V5.0 (1993)(Beagle Bros)(Disks 5 of 6).dsk.gz +0 -0
- data/test/Geos (1988)(Berkeley Softworks)(Disk 1 of 4 Side A).dsk.gz +0 -0
- data/test/Zoom Grafix (1982)(Phoenix Software)[cr].dsk.gz +0 -0
- data/test/adventure_teacher_4.dsk.gz +0 -0
- data/test/camps.dsk.gz +0 -0
- data/test/dosmaster.po +0 -0
- data/test/hgr_scanlines.rb +194 -0
- data/test/nadol1.po +0 -0
- data/test/nadol_blank.po.gz +0 -0
- data/test/operation_frog1.dsk.gz +0 -0
- data/test/tc_dos_disks.rb +89 -14
- data/test/tc_nadol_disks.rb +47 -5
- data/test/tc_pascal_disks.rb +47 -0
- data/test/tc_prodos_disks.rb +78 -0
- data/test/test1.dsk +0 -0
- data/test/ts_test_all.rb +2 -0
- data/test/white_01b.dsk +0 -0
- data/test/white_03b.dsk +0 -0
- data/test/white_20a.dsk +0 -0
- metadata +400 -368
- data/doc/classes/AppleSoftFile.src/M000011.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000012.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000020.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000021.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000026.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000027.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000032.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000033.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000034.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000035.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000038.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000039.html +0 -18
- data/doc/classes/AppleSoftFile.src/M000040.html +0 -18
- data/doc/classes/BinaryFile.src/M000022.html +0 -19
- data/doc/classes/BinaryFile.src/M000024.html +0 -18
- data/doc/classes/BinaryFile.src/M000026.html +0 -19
- data/doc/classes/BinaryFile.src/M000029.html +0 -18
- data/doc/classes/BinaryFile.src/M000031.html +0 -19
- data/doc/classes/BinaryFile.src/M000039.html +0 -18
- data/doc/classes/BinaryFile.src/M000041.html +0 -19
- data/doc/classes/BinaryFile.src/M000045.html +0 -18
- data/doc/classes/BinaryFile.src/M000047.html +0 -19
- data/doc/classes/BinaryFile.src/M000052.html +0 -18
- data/doc/classes/BinaryFile.src/M000053.html +0 -18
- data/doc/classes/BinaryFile.src/M000054.html +0 -18
- data/doc/classes/BinaryFile.src/M000056.html +0 -19
- data/doc/classes/BinaryFile.src/M000059.html +0 -18
- data/doc/classes/BinaryFile.src/M000060.html +0 -18
- data/doc/classes/BinaryFile.src/M000061.html +0 -19
- data/doc/classes/CatalogServlet.src/M000015.html +0 -20
- data/doc/classes/CatalogServlet.src/M000024.html +0 -20
- data/doc/classes/CatalogServlet.src/M000027.html +0 -20
- data/doc/classes/D65.src/M000002.html +0 -18
- data/doc/classes/D65.src/M000004.html +0 -64
- data/doc/classes/D65.src/M000005.html +0 -18
- data/doc/classes/D65.src/M000007.html +0 -18
- data/doc/classes/D65.src/M000008.html +0 -18
- data/doc/classes/D65.src/M000010.html +0 -18
- data/doc/classes/D65.src/M000018.html +0 -18
- data/doc/classes/D65.src/M000019.html +0 -64
- data/doc/classes/D65.src/M000024.html +0 -18
- data/doc/classes/D65.src/M000025.html +0 -64
- data/doc/classes/D65.src/M000030.html +0 -18
- data/doc/classes/D65.src/M000031.html +0 -18
- data/doc/classes/D65.src/M000035.html +0 -18
- data/doc/classes/D65.src/M000036.html +0 -64
- data/doc/classes/DOSDisk.src/M000007.html +0 -20
- data/doc/classes/DOSDisk.src/M000008.html +0 -77
- data/doc/classes/DOSDisk.src/M000010.html +0 -20
- data/doc/classes/DOSDisk.src/M000011.html +0 -20
- data/doc/classes/DOSDisk.src/M000013.html +0 -20
- data/doc/classes/DOSDisk.src/M000014.html +0 -20
- data/doc/classes/DOSDisk.src/M000015.html +0 -20
- data/doc/classes/DOSDisk.src/M000023.html +0 -20
- data/doc/classes/DOSDisk.src/M000024.html +0 -19
- data/doc/classes/DOSDisk.src/M000025.html +0 -76
- data/doc/classes/DOSDisk.src/M000029.html +0 -20
- data/doc/classes/DOSDisk.src/M000031.html +0 -76
- data/doc/classes/DOSDisk.src/M000035.html +0 -20
- data/doc/classes/DOSDisk.src/M000036.html +0 -20
- data/doc/classes/DOSDisk.src/M000037.html +0 -20
- data/doc/classes/DOSDisk.src/M000038.html +0 -19
- data/doc/classes/DOSDisk.src/M000039.html +0 -76
- data/doc/classes/DOSDisk.src/M000041.html +0 -20
- data/doc/classes/DOSDisk.src/M000042.html +0 -19
- data/doc/classes/DOSFile.src/M000026.html +0 -22
- data/doc/classes/DOSFile.src/M000027.html +0 -22
- data/doc/classes/DOSFile.src/M000032.html +0 -22
- data/doc/classes/DOSFile.src/M000033.html +0 -17
- data/doc/classes/DOSFile.src/M000034.html +0 -18
- data/doc/classes/DOSFile.src/M000042.html +0 -22
- data/doc/classes/DOSFile.src/M000044.html +0 -18
- data/doc/classes/DOSFile.src/M000048.html +0 -22
- data/doc/classes/DOSFile.src/M000050.html +0 -18
- data/doc/classes/DOSFile.src/M000051.html +0 -31
- data/doc/classes/DOSFile.src/M000057.html +0 -22
- data/doc/classes/DOSFile.src/M000058.html +0 -22
- data/doc/classes/DOSFile.src/M000059.html +0 -22
- data/doc/classes/DOSFile.src/M000060.html +0 -18
- data/doc/classes/DOSFile.src/M000061.html +0 -18
- data/doc/classes/DOSFile.src/M000062.html +0 -31
- data/doc/classes/DOSFile.src/M000064.html +0 -22
- data/doc/classes/DOSFile.src/M000065.html +0 -18
- data/doc/classes/DOSFile.src/M000066.html +0 -18
- data/doc/classes/DOSFile.src/M000067.html +0 -31
- data/doc/classes/DSK.src/M000009.html +0 -22
- data/doc/classes/DSK.src/M000010.html +0 -27
- data/doc/classes/DSK.src/M000011.html +0 -19
- data/doc/classes/DSK.src/M000013.html +0 -22
- data/doc/classes/DSK.src/M000014.html +0 -22
- data/doc/classes/DSK.src/M000016.html +0 -22
- data/doc/classes/DSK.src/M000017.html +0 -22
- data/doc/classes/DSK.src/M000018.html +0 -22
- data/doc/classes/DSK.src/M000019.html +0 -22
- data/doc/classes/DSK.src/M000020.html +0 -34
- data/doc/classes/DSK.src/M000021.html +0 -19
- data/doc/classes/DSK.src/M000023.html +0 -40
- data/doc/classes/DSK.src/M000028.html +0 -22
- data/doc/classes/DSK.src/M000029.html +0 -22
- data/doc/classes/DSK.src/M000030.html +0 -34
- data/doc/classes/DSK.src/M000031.html +0 -19
- data/doc/classes/DSK.src/M000032.html +0 -18
- data/doc/classes/DSK.src/M000034.html +0 -22
- data/doc/classes/DSK.src/M000036.html +0 -34
- data/doc/classes/DSK.src/M000037.html +0 -19
- data/doc/classes/DSK.src/M000038.html +0 -18
- data/doc/classes/DSK.src/M000039.html +0 -18
- data/doc/classes/DSK.src/M000040.html +0 -18
- data/doc/classes/DSK.src/M000041.html +0 -18
- data/doc/classes/DSK.src/M000042.html +0 -22
- data/doc/classes/DSK.src/M000044.html +0 -22
- data/doc/classes/DSK.src/M000045.html +0 -18
- data/doc/classes/DSK.src/M000046.html +0 -22
- data/doc/classes/DSK.src/M000048.html +0 -22
- data/doc/classes/DSK.src/M000049.html +0 -40
- data/doc/classes/DSK.src/M000050.html +0 -19
- data/doc/classes/DSK.src/M000051.html +0 -18
- data/doc/classes/DirectoryServlet.src/M000017.html +0 -20
- data/doc/classes/DirectoryServlet.src/M000026.html +0 -20
- data/doc/classes/DirectoryServlet.src/M000030.html +0 -20
- data/doc/classes/IntegerBasicFile.src/M000005.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000006.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000012.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000018.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000019.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000020.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000021.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000022.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000023.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000024.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000025.html +0 -18
- data/doc/classes/IntegerBasicFile.src/M000026.html +0 -18
- data/doc/classes/NADOLDisk.src/M000018.html +0 -20
- data/doc/classes/NADOLDisk.src/M000020.html +0 -50
- data/doc/classes/NADOLDisk.src/M000021.html +0 -20
- data/doc/classes/NADOLDisk.src/M000023.html +0 -50
- data/doc/classes/NADOLFile.src/M000030.html +0 -31
- data/doc/classes/NADOLFile.src/M000034.html +0 -31
- data/doc/classes/NADOLTokenisedFile.src/M000062.html +0 -28
- data/doc/classes/NADOLTokenisedFile.src/M000063.html +0 -28
- data/doc/classes/RDoc.src/M000033.html +0 -40
- data/doc/classes/RDoc.src/M000038.html +0 -40
- data/doc/classes/RDoc.src/M000055.html +0 -40
- data/doc/classes/RDoc.src/M000066.html +0 -40
- data/doc/classes/RDoc.src/M000068.html +0 -40
- data/doc/classes/RDoc.src/M000069.html +0 -40
- data/doc/classes/RDoc.src/M000074.html +0 -40
- data/doc/classes/SCAsmFile.src/M000028.html +0 -36
- data/doc/classes/SCAsmFile.src/M000035.html +0 -18
- data/doc/classes/SCAsmFile.src/M000038.html +0 -36
- data/doc/classes/SCAsmFile.src/M000041.html +0 -18
- data/doc/classes/SCAsmFile.src/M000042.html +0 -18
- data/doc/classes/SCAsmFile.src/M000043.html +0 -18
- data/doc/classes/SCAsmFile.src/M000044.html +0 -36
- data/doc/classes/SCAsmFile.src/M000049.html +0 -18
- data/doc/classes/SCAsmFile.src/M000050.html +0 -18
- data/doc/classes/SCAsmFile.src/M000051.html +0 -18
- data/doc/classes/SCAsmFile.src/M000052.html +0 -18
- data/doc/classes/SCAsmFile.src/M000055.html +0 -18
- data/doc/classes/SCAsmFile.src/M000056.html +0 -18
- data/doc/classes/SCAsmFile.src/M000057.html +0 -18
- data/doc/classes/ShowFileServlet.src/M000026.html +0 -21
- data/doc/classes/ShowFileServlet.src/M000038.html +0 -22
- data/doc/classes/ShowFileServlet.src/M000039.html +0 -22
- data/doc/classes/ShowFileServlet.src/M000044.html +0 -22
- data/doc/classes/TestDOSDisks.src/M000002.html +0 -19
- data/doc/classes/TestDOSDisks.src/M000003.html +0 -25
- data/doc/classes/TestDOSDisks.src/M000006.html +0 -24
- data/doc/classes/TestDOSDisks.src/M000007.html +0 -19
- data/doc/classes/TestDOSDisks.src/M000013.html +0 -19
- data/doc/classes/TestDisassembly.src/M000005.html +0 -19
- data/doc/classes/TestDisassembly.src/M000006.html +0 -19
- data/doc/classes/TestDisassembly.src/M000009.html +0 -19
- data/doc/classes/TestDisassembly.src/M000016.html +0 -19
- data/doc/classes/TestDisassembly.src/M000022.html +0 -19
- data/doc/classes/TestDisassembly.src/M000025.html +0 -19
- data/doc/classes/TestDisassembly.src/M000028.html +0 -19
- data/doc/classes/TestNADOLDisks.src/M000055.html +0 -19
- data/doc/classes/TestNADOLDisks.src/M000056.html +0 -19
- data/doc/classes/TestNADOLDisks.src/M000057.html +0 -19
- data/doc/classes/TestNADOLDisks.src/M000058.html +0 -34
- data/doc/classes/TestNADOLDisks.src/M000062.html +0 -19
- data/doc/classes/TestNADOLDisks.src/M000063.html +0 -34
- data/doc/classes/TextFile.src/M000025.html +0 -18
- data/doc/classes/TextFile.src/M000026.html +0 -18
- data/doc/classes/TextFile.src/M000029.html +0 -18
- data/doc/classes/TextFile.src/M000030.html +0 -18
- data/doc/classes/TextFile.src/M000035.html +0 -18
- data/doc/classes/TextFile.src/M000045.html +0 -18
- data/doc/classes/TextFile.src/M000046.html +0 -18
- data/doc/classes/TextFile.src/M000047.html +0 -20
- data/doc/classes/TextFile.src/M000052.html +0 -18
- data/doc/classes/TextFile.src/M000053.html +0 -18
- data/doc/classes/TextFile.src/M000054.html +0 -20
- data/doc/classes/TextFile.src/M000063.html +0 -18
- data/doc/classes/TextFile.src/M000064.html +0 -18
- data/doc/classes/TextFile.src/M000065.html +0 -18
- data/doc/classes/TextFile.src/M000066.html +0 -18
- data/doc/classes/TextFile.src/M000067.html +0 -18
- data/doc/classes/TextFile.src/M000068.html +0 -20
- data/doc/classes/TextFile.src/M000071.html +0 -18
- data/doc/classes/TextFile.src/M000072.html +0 -18
- data/doc/classes/TextFile.src/M000073.html +0 -20
- data/doc/dot/f_0.png +0 -0
- data/doc/dot/f_1.dot +0 -14
- data/doc/dot/f_1.png +0 -0
- data/doc/dot/f_10.dot +0 -32
- data/doc/dot/f_10.png +0 -0
- data/doc/dot/f_11.dot +0 -32
- data/doc/dot/f_11.png +0 -0
- data/doc/dot/f_12.dot +0 -14
- data/doc/dot/f_12.png +0 -0
- data/doc/dot/f_2.dot +0 -23
- data/doc/dot/f_2.png +0 -0
- data/doc/dot/f_3.dot +0 -32
- data/doc/dot/f_3.png +0 -0
- data/doc/dot/f_4.dot +0 -88
- data/doc/dot/f_4.png +0 -0
- data/doc/dot/f_5.dot +0 -23
- data/doc/dot/f_5.png +0 -0
- data/doc/dot/f_6.dot +0 -32
- data/doc/dot/f_6.png +0 -0
- data/doc/dot/f_7.dot +0 -49
- data/doc/dot/f_7.png +0 -0
- data/doc/dot/f_8.dot +0 -30
- data/doc/dot/f_8.png +0 -0
- data/doc/dot/f_9.dot +0 -32
- data/doc/dot/f_9.png +0 -0
- data/doc/dot/m_0_0.dot +0 -30
- data/doc/dot/m_0_0.png +0 -0
- data/doc/dot/m_6_0.dot +0 -30
- data/doc/dot/m_6_0.png +0 -0
- data/doc/dot/m_8_0.dot +0 -30
- data/doc/dot/m_8_0.png +0 -0
- data/doc/files/bin/dskserver_rb.html +0 -247
- data/doc/files/bin/dskserver_rb.src/M000001.html +0 -22
- data/doc/files/bin/dskserver_rb.src/M000002.html +0 -19
- data/doc/files/bin/dskserver_rb.src/M000003.html +0 -62
- data/doc/files/bin/dskserver_rb.src/M000004.html +0 -39
- data/doc/files/bin/dskserver_rb.src/M000005.html +0 -26
|
@@ -0,0 +1,38 @@
|
|
|
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>delete_file (NADOLDisk)</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/NADOLDisk.rb, line 113</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete_file</span>(<span class="ruby-identifier">filename</span>)
|
|
15
|
+
<span class="ruby-identifier">this_files_catalog_slot</span>=<span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-identifier">filename</span>)
|
|
16
|
+
<span class="ruby-comment cmt">#if file not in catalog, do nothing</span>
|
|
17
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">nil?</span>
|
|
18
|
+
<span class="ruby-identifier">file_descriptive_entry</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)[<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0f</span>]
|
|
19
|
+
|
|
20
|
+
<span class="ruby-comment cmt">#mark sector as free in sector usage list</span>
|
|
21
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>)
|
|
22
|
+
<span class="ruby-identifier">sectors_to_mark_available</span>=<span class="ruby-identifier">get_track_sector_list</span>(<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>],<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>])
|
|
23
|
+
<span class="ruby-identifier">sectors_to_mark_available</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>],<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>])
|
|
24
|
+
<span class="ruby-identifier">sectors_to_mark_available</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ts</span><span class="ruby-operator">|</span>
|
|
25
|
+
<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>=<span class="ruby-value">0x20</span><span class="ruby-operator">+</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">track_no</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>)<span class="ruby-operator">+</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">sector_no</span><span class="ruby-operator">/</span><span class="ruby-value">8</span>)
|
|
26
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]
|
|
27
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">byte_containing_this_sector</span><span class="ruby-operator">&</span>(<span class="ruby-value">0xff</span><span class="ruby-operator">-</span>(<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-value">7</span><span class="ruby-operator">-</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">sector_no</span><span class="ruby-operator">%</span><span class="ruby-value">8</span>))))
|
|
28
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]=<span class="ruby-identifier">byte_containing_this_sector</span>
|
|
29
|
+
<span class="ruby-keyword kw">end</span>
|
|
30
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>,<span class="ruby-identifier">sector_usage_bitmap_sector</span>)
|
|
31
|
+
|
|
32
|
+
<span class="ruby-comment cmt">#mark slot as available in catalog</span>
|
|
33
|
+
<span class="ruby-identifier">catalog_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)
|
|
34
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span>]=<span class="ruby-value">0x</span><span class="ruby-constant">FF</span>
|
|
35
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">catalog_sector</span>)
|
|
36
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
37
|
+
</body>
|
|
38
|
+
</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>get_track_sector_list (NADOLDisk)</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/NADOLDisk.rb, line 139</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_track_sector_list</span>(<span class="ruby-identifier">ts_list_track_no</span>,<span class="ruby-identifier">ts_list_sector_no</span>)
|
|
15
|
+
<span class="ruby-identifier">ts_list_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">ts_list_track_no</span>,<span class="ruby-identifier">ts_list_sector_no</span>)
|
|
16
|
+
<span class="ruby-identifier">ts_list</span>=[]
|
|
17
|
+
<span class="ruby-keyword kw">for</span> <span class="ruby-identifier">entry_number</span> <span class="ruby-keyword kw">in</span> <span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">0x7f</span>
|
|
18
|
+
<span class="ruby-identifier">data_track_no</span>=<span class="ruby-identifier">ts_list_sector</span>[<span class="ruby-identifier">entry_number</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]
|
|
19
|
+
<span class="ruby-identifier">data_sector_no</span>=<span class="ruby-identifier">ts_list_sector</span>[<span class="ruby-identifier">entry_number</span><span class="ruby-operator">*</span><span class="ruby-value">2</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
|
20
|
+
<span class="ruby-keyword kw">if</span>( (<span class="ruby-identifier">data_track_no!</span>=<span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">data_sector_no!</span>=<span class="ruby-value">0</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">data_track_no</span><span class="ruby-operator"><</span><span class="ruby-identifier">track_count</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">data_sector_no</span><span class="ruby-operator"><=</span><span class="ruby-value">0x0f</span>) <span class="ruby-keyword kw">then</span>
|
|
21
|
+
<span class="ruby-identifier">ts_list</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data_track_no</span>,<span class="ruby-identifier">data_sector_no</span>)
|
|
22
|
+
<span class="ruby-keyword kw">end</span>
|
|
23
|
+
<span class="ruby-keyword kw">end</span>
|
|
24
|
+
<span class="ruby-identifier">ts_list</span>
|
|
25
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
26
|
+
</body>
|
|
27
|
+
</html>
|
|
@@ -0,0 +1,53 @@
|
|
|
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>add_file (NADOLDisk)</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/NADOLDisk.rb, line 153</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_file</span>(<span class="ruby-identifier">file</span>)
|
|
15
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"only NADOLFiles may be added to NADOL format disks!"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">NADOLFile</span>)
|
|
16
|
+
|
|
17
|
+
<span class="ruby-identifier">delete_file</span>(<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">files</span>[<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>].<span class="ruby-identifier">nil?</span>
|
|
18
|
+
<span class="ruby-identifier">catalog_slot</span>=<span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-keyword kw">nil</span>)
|
|
19
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"CATALOG IS FULL!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">nil?</span>
|
|
20
|
+
|
|
21
|
+
<span class="ruby-identifier">free_sectors</span>=<span class="ruby-identifier">free_sector_list</span>
|
|
22
|
+
|
|
23
|
+
<span class="ruby-identifier">sectors_needed</span>=<span class="ruby-value">1</span><span class="ruby-operator">+</span><span class="ruby-identifier">file</span>.<span class="ruby-identifier">length_in_sectors</span>
|
|
24
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"not enough free space - #{sectors_needed} sectors needed, #{free_sector_list.length} available "</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">sectors_needed</span><span class="ruby-operator"><=</span><span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">length</span>
|
|
25
|
+
|
|
26
|
+
<span class="ruby-comment cmt">#for each sector in the file, copy it to disk and then record it in the track/sector list</span>
|
|
27
|
+
<span class="ruby-identifier">track_sector_list</span>=<span class="ruby-value str">"\0"</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>
|
|
28
|
+
<span class="ruby-identifier">track_sector_list_sector</span>=<span class="ruby-identifier">free_sectors</span>[<span class="ruby-value">0</span>]
|
|
29
|
+
(<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">2</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">|</span>
|
|
30
|
+
<span class="ruby-identifier">sector_to_use</span>=<span class="ruby-identifier">free_sectors</span>[<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
|
31
|
+
<span class="ruby-identifier">track_sector_list</span>[<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]=<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">track_no</span>
|
|
32
|
+
<span class="ruby-identifier">track_sector_list</span>[(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span>]=<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">sector_no</span>
|
|
33
|
+
<span class="ruby-identifier">sector_contents</span>=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>[(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>)<span class="ruby-operator">..</span>(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>)<span class="ruby-operator">+</span><span class="ruby-value">255</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">""</span>
|
|
34
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">sector_contents</span>)
|
|
35
|
+
<span class="ruby-keyword kw">end</span>
|
|
36
|
+
<span class="ruby-comment cmt">#write the track/sector list</span>
|
|
37
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">track_sector_list</span>)
|
|
38
|
+
|
|
39
|
+
<span class="ruby-comment cmt">#update the catalog</span>
|
|
40
|
+
<span class="ruby-identifier">catalog_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)
|
|
41
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">B</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">catalog_filename</span>
|
|
42
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">C</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">%</span> <span class="ruby-value">0x100</span>
|
|
43
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">D</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">0x100</span>
|
|
44
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">E</span>]=<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">track_no</span>
|
|
45
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">F</span>]=<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">sector_no</span>
|
|
46
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">catalog_sector</span>)
|
|
47
|
+
|
|
48
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"catalog not updated correctly!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>).<span class="ruby-identifier">nil?</span>
|
|
49
|
+
<span class="ruby-comment cmt">#reread the catalog to populate the files list</span>
|
|
50
|
+
<span class="ruby-identifier">read_catalog</span>
|
|
51
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
52
|
+
</body>
|
|
53
|
+
</html>
|
|
@@ -0,0 +1,46 @@
|
|
|
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_catalog (NADOLDisk)</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/NADOLDisk.rb, line 199</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">read_catalog</span>
|
|
15
|
+
<span class="ruby-ivar">@files</span>={}
|
|
16
|
+
<span class="ruby-identifier">track</span>=<span class="ruby-value">0</span>
|
|
17
|
+
<span class="ruby-identifier">sector</span>=<span class="ruby-value">3</span>
|
|
18
|
+
<span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">sector</span><span class="ruby-operator"><=</span><span class="ruby-value">9</span>) <span class="ruby-keyword kw">do</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-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">15</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">slot_no</span><span class="ruby-operator">|</span>
|
|
21
|
+
<span class="ruby-identifier">slot_offset</span>=<span class="ruby-identifier">slot_no</span><span class="ruby-operator">*</span><span class="ruby-value">0x10</span>
|
|
22
|
+
<span class="ruby-identifier">file_descriptive_entry</span>=<span class="ruby-identifier">sector_data</span>[<span class="ruby-identifier">slot_offset</span><span class="ruby-operator">..</span><span class="ruby-identifier">slot_offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x10</span>]
|
|
23
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">!=</span><span class="ruby-value">0x</span><span class="ruby-constant">FF</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0</span>]<span class="ruby-operator">!=</span><span class="ruby-value">0x00</span>) <span class="ruby-keyword kw">then</span> <span class="ruby-comment cmt"># skip deleted /empty files</span>
|
|
24
|
+
<span class="ruby-identifier">filename</span>=<span class="ruby-value str">""</span>
|
|
25
|
+
<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">11</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">each_byte</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">b</span><span class="ruby-operator">|</span> <span class="ruby-identifier">filename</span><span class="ruby-operator">+=</span>(<span class="ruby-identifier">b</span>.<span class="ruby-operator">%</span><span class="ruby-value">128</span>).<span class="ruby-identifier">chr</span>} <span class="ruby-comment cmt">#strip off high bit</span>
|
|
26
|
+
<span class="ruby-identifier">filename</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/ *$/</span>,<span class="ruby-value str">""</span>) <span class="ruby-comment cmt">#strip off trailing spaces</span>
|
|
27
|
+
<span class="ruby-identifier">file_size</span>=<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">D</span>]<span class="ruby-operator">*</span><span class="ruby-value">256</span><span class="ruby-operator">+</span><span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">C</span>]
|
|
28
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">file_size</span><span class="ruby-operator">></span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
|
29
|
+
<span class="ruby-identifier">contents</span>=<span class="ruby-value str">""</span>
|
|
30
|
+
<span class="ruby-identifier">get_track_sector_list</span>(<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>],<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ts</span><span class="ruby-operator">|</span>
|
|
31
|
+
<span class="ruby-identifier">contents</span><span class="ruby-operator"><<</span><span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">sector_no</span>)
|
|
32
|
+
<span class="ruby-keyword kw">end</span>
|
|
33
|
+
<span class="ruby-identifier">contents</span>=<span class="ruby-identifier">contents</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-identifier">file_size</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>]
|
|
34
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-constant">NADOLTokenisedFile</span>.<span class="ruby-identifier">can_be_nadol_tokenised_file?</span>(<span class="ruby-identifier">contents</span>)) <span class="ruby-keyword kw">then</span>
|
|
35
|
+
<span class="ruby-ivar">@files</span>[<span class="ruby-identifier">filename</span>]= <span class="ruby-constant">NADOLTokenisedFile</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>)
|
|
36
|
+
<span class="ruby-keyword kw">else</span>
|
|
37
|
+
<span class="ruby-ivar">@files</span>[<span class="ruby-identifier">filename</span>]= <span class="ruby-constant">NADOLBinaryFile</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>)
|
|
38
|
+
<span class="ruby-keyword kw">end</span>
|
|
39
|
+
<span class="ruby-keyword kw">end</span>
|
|
40
|
+
<span class="ruby-keyword kw">end</span>
|
|
41
|
+
<span class="ruby-keyword kw">end</span>
|
|
42
|
+
<span class="ruby-identifier">sector</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span>
|
|
43
|
+
<span class="ruby-keyword kw">end</span>
|
|
44
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
45
|
+
</body>
|
|
46
|
+
</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>dump_catalog (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 30</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dump_catalog</span>
|
|
15
|
+
<span class="ruby-identifier">s</span>=<span class="ruby-value str">""</span>
|
|
16
|
+
<span class="ruby-identifier">files</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">file_name</span><span class="ruby-operator">|</span>
|
|
17
|
+
<span class="ruby-identifier">file</span>=<span class="ruby-identifier">files</span>[<span class="ruby-identifier">file_name</span>]
|
|
18
|
+
<span class="ruby-identifier">s</span><span class="ruby-operator"><<</span> <span class="ruby-node">"#{sprintf('% 6d',file.contents.length)} #{file.filename}\n"</span>
|
|
19
|
+
}
|
|
20
|
+
<span class="ruby-identifier">s</span>
|
|
21
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
22
|
+
</body>
|
|
23
|
+
</html>
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">file_bytes</span>)
|
|
15
|
-
<span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">file_bytes</span>)
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File test/backup/NADOLDisk.rb, line 39</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-identifier">sector_order</span>)
|
|
15
|
+
<span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">file_bytes</span>,<span class="ruby-identifier">sector_order</span>)
|
|
16
16
|
<span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">read_catalog</span>
|
|
17
17
|
<span class="ruby-keyword kw">end</span></pre>
|
|
18
18
|
</body>
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
|
|
6
6
|
<html>
|
|
7
7
|
<head>
|
|
8
|
-
<title>
|
|
8
|
+
<title>file_system (NADOLDisk)</title>
|
|
9
9
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
10
|
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">
|
|
15
|
-
<span class="ruby-
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File test/backup/NADOLDisk.rb, line 44</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">file_system</span>
|
|
15
|
+
<span class="ruby-identifier">:nadol</span>
|
|
16
16
|
<span class="ruby-keyword kw">end</span></pre>
|
|
17
17
|
</body>
|
|
18
18
|
</html>
|
|
@@ -0,0 +1,29 @@
|
|
|
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 (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 49</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-keyword kw">super</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">contents</span>)
|
|
16
|
+
|
|
17
|
+
<span class="ruby-comment cmt">#now mark sector as used in sector usage list</span>
|
|
18
|
+
<span class="ruby-comment cmt">#don't bother marking the 'system' sectors used</span>
|
|
19
|
+
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">track</span><span class="ruby-operator">></span><span class="ruby-value">0</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">sector</span><span class="ruby-operator">></span><span class="ruby-value">9</span>)) <span class="ruby-keyword kw">then</span>
|
|
20
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>)
|
|
21
|
+
<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>=<span class="ruby-value">0x20</span><span class="ruby-operator">+</span>(<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>)<span class="ruby-operator">+</span>(<span class="ruby-identifier">sector</span><span class="ruby-operator">/</span><span class="ruby-value">8</span>)
|
|
22
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]
|
|
23
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">byte_containing_this_sector</span><span class="ruby-operator">|</span>(<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-value">7</span><span class="ruby-operator">-</span>(<span class="ruby-identifier">sector</span><span class="ruby-operator">%</span><span class="ruby-value">8</span>)))
|
|
24
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]=<span class="ruby-identifier">byte_containing_this_sector</span>
|
|
25
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>,<span class="ruby-identifier">sector_usage_bitmap_sector</span>)
|
|
26
|
+
<span class="ruby-keyword kw">end</span>
|
|
27
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
28
|
+
</body>
|
|
29
|
+
</html>
|
|
@@ -0,0 +1,34 @@
|
|
|
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>find_catalog_slot (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 66</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-identifier">filename</span>)
|
|
15
|
+
<span class="ruby-identifier">track</span>=<span class="ruby-value">0</span>
|
|
16
|
+
<span class="ruby-identifier">sector</span>=<span class="ruby-value">3</span>
|
|
17
|
+
<span class="ruby-identifier">catalog_filename</span>=<span class="ruby-constant">NADOLFile</span>.<span class="ruby-identifier">catalog_filename</span>(<span class="ruby-identifier">filename</span>.<span class="ruby-identifier">upcase</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">filename</span>.<span class="ruby-identifier">nil?</span>
|
|
18
|
+
<span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">sector</span><span class="ruby-operator"><=</span><span class="ruby-value">9</span>) <span class="ruby-keyword kw">do</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-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">15</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">slot_no</span><span class="ruby-operator">|</span>
|
|
21
|
+
<span class="ruby-identifier">slot_start</span>=<span class="ruby-identifier">slot_no</span><span class="ruby-operator">*</span><span class="ruby-value">0x10</span>
|
|
22
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">filename</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">sector_data</span>[<span class="ruby-identifier">slot_start</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x00</span>)<span class="ruby-operator">||</span> (<span class="ruby-identifier">sector_data</span>[<span class="ruby-identifier">slot_start</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x</span><span class="ruby-constant">FF</span>)) <span class="ruby-keyword kw">then</span>
|
|
23
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">slot_start</span>)
|
|
24
|
+
<span class="ruby-keyword kw">end</span>
|
|
25
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-operator">!</span><span class="ruby-identifier">filename</span>.<span class="ruby-identifier">nil?</span>) <span class="ruby-operator">&&</span> (<span class="ruby-identifier">sector_data</span>[<span class="ruby-identifier">slot_start</span><span class="ruby-operator">..</span><span class="ruby-identifier">slot_start</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">B</span>]<span class="ruby-operator">==</span><span class="ruby-identifier">catalog_filename</span>) <span class="ruby-keyword kw">then</span>
|
|
26
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>,<span class="ruby-identifier">slot_start</span>)
|
|
27
|
+
<span class="ruby-keyword kw">end</span>
|
|
28
|
+
<span class="ruby-keyword kw">end</span>
|
|
29
|
+
<span class="ruby-identifier">sector</span><span class="ruby-operator">+=</span><span class="ruby-value">1</span>
|
|
30
|
+
<span class="ruby-keyword kw">end</span>
|
|
31
|
+
<span class="ruby-keyword kw">nil</span>
|
|
32
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
33
|
+
</body>
|
|
34
|
+
</html>
|
|
@@ -0,0 +1,32 @@
|
|
|
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>free_sector_list (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 87</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">free_sector_list</span>
|
|
15
|
+
<span class="ruby-identifier">sector_usage_bitmap</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>)[<span class="ruby-value">0x20</span><span class="ruby-operator">..</span><span class="ruby-value">0x65</span>]
|
|
16
|
+
<span class="ruby-identifier">free_sectors</span>=[]
|
|
17
|
+
(<span class="ruby-value">0</span><span class="ruby-operator">..</span>(<span class="ruby-identifier">sector_usage_bitmap</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-value">2</span>)<span class="ruby-operator">-</span><span class="ruby-value">1</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">track</span><span class="ruby-operator">|</span>
|
|
18
|
+
<span class="ruby-identifier">track_bitmap_lo</span>=<span class="ruby-identifier">sector_usage_bitmap</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]
|
|
19
|
+
<span class="ruby-identifier">track_bitmap_hi</span>=<span class="ruby-identifier">sector_usage_bitmap</span>[<span class="ruby-value">1</span><span class="ruby-operator">+</span><span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]
|
|
20
|
+
(<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">7</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector</span><span class="ruby-operator">|</span>
|
|
21
|
+
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">track_bitmap_lo</span> <span class="ruby-operator">&</span> (<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-value">7</span><span class="ruby-operator">-</span><span class="ruby-identifier">sector</span>)))<span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
|
22
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span>)
|
|
23
|
+
<span class="ruby-keyword kw">end</span>
|
|
24
|
+
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">track_bitmap_hi</span> <span class="ruby-operator">&</span> (<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-value">7</span><span class="ruby-operator">-</span><span class="ruby-identifier">sector</span>)))<span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
|
25
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">track</span>,<span class="ruby-identifier">sector</span><span class="ruby-operator">+</span><span class="ruby-value">8</span>)
|
|
26
|
+
<span class="ruby-keyword kw">end</span>
|
|
27
|
+
<span class="ruby-keyword kw">end</span>
|
|
28
|
+
<span class="ruby-keyword kw">end</span>
|
|
29
|
+
<span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">sort</span>
|
|
30
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
31
|
+
</body>
|
|
32
|
+
</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>make_file (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 105</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">make_file</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>,<span class="ruby-identifier">file_options</span>={})
|
|
15
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">file_options</span>[<span class="ruby-identifier">:tokenise</span>]) <span class="ruby-keyword kw">then</span>
|
|
16
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-constant">NADOLTokenisedFile</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-constant">NADOLTokenisedFile</span>.<span class="ruby-identifier">tokenise</span>(<span class="ruby-identifier">contents</span>))
|
|
17
|
+
<span class="ruby-keyword kw">else</span>
|
|
18
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-constant">NADOLFile</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">contents</span>)
|
|
19
|
+
<span class="ruby-keyword kw">end</span>
|
|
20
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
21
|
+
</body>
|
|
22
|
+
</html>
|
|
@@ -0,0 +1,38 @@
|
|
|
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>delete_file (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 113</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete_file</span>(<span class="ruby-identifier">filename</span>)
|
|
15
|
+
<span class="ruby-identifier">this_files_catalog_slot</span>=<span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-identifier">filename</span>)
|
|
16
|
+
<span class="ruby-comment cmt">#if file not in catalog, do nothing</span>
|
|
17
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">nil?</span>
|
|
18
|
+
<span class="ruby-identifier">file_descriptive_entry</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)[<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0f</span>]
|
|
19
|
+
|
|
20
|
+
<span class="ruby-comment cmt">#mark sector as free in sector usage list</span>
|
|
21
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>)
|
|
22
|
+
<span class="ruby-identifier">sectors_to_mark_available</span>=<span class="ruby-identifier">get_track_sector_list</span>(<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>],<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>])
|
|
23
|
+
<span class="ruby-identifier">sectors_to_mark_available</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">E</span>],<span class="ruby-identifier">file_descriptive_entry</span>[<span class="ruby-value">0x0</span><span class="ruby-constant">F</span>])
|
|
24
|
+
<span class="ruby-identifier">sectors_to_mark_available</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ts</span><span class="ruby-operator">|</span>
|
|
25
|
+
<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>=<span class="ruby-value">0x20</span><span class="ruby-operator">+</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">track_no</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>)<span class="ruby-operator">+</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">sector_no</span><span class="ruby-operator">/</span><span class="ruby-value">8</span>)
|
|
26
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]
|
|
27
|
+
<span class="ruby-identifier">byte_containing_this_sector</span>=<span class="ruby-identifier">byte_containing_this_sector</span><span class="ruby-operator">&</span>(<span class="ruby-value">0xff</span><span class="ruby-operator">-</span>(<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-value">7</span><span class="ruby-operator">-</span>(<span class="ruby-identifier">ts</span>.<span class="ruby-identifier">sector_no</span><span class="ruby-operator">%</span><span class="ruby-value">8</span>))))
|
|
28
|
+
<span class="ruby-identifier">sector_usage_bitmap_sector</span>[<span class="ruby-identifier">offset_of_byte_containing_this_sector</span>]=<span class="ruby-identifier">byte_containing_this_sector</span>
|
|
29
|
+
<span class="ruby-keyword kw">end</span>
|
|
30
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-value">0</span>,<span class="ruby-value">2</span>,<span class="ruby-identifier">sector_usage_bitmap_sector</span>)
|
|
31
|
+
|
|
32
|
+
<span class="ruby-comment cmt">#mark slot as available in catalog</span>
|
|
33
|
+
<span class="ruby-identifier">catalog_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)
|
|
34
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">offset</span>]=<span class="ruby-value">0x</span><span class="ruby-constant">FF</span>
|
|
35
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">this_files_catalog_slot</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">catalog_sector</span>)
|
|
36
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
37
|
+
</body>
|
|
38
|
+
</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>get_track_sector_list (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 139</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_track_sector_list</span>(<span class="ruby-identifier">ts_list_track_no</span>,<span class="ruby-identifier">ts_list_sector_no</span>)
|
|
15
|
+
<span class="ruby-identifier">ts_list_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">ts_list_track_no</span>,<span class="ruby-identifier">ts_list_sector_no</span>)
|
|
16
|
+
<span class="ruby-identifier">ts_list</span>=[]
|
|
17
|
+
<span class="ruby-keyword kw">for</span> <span class="ruby-identifier">entry_number</span> <span class="ruby-keyword kw">in</span> <span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">0x7f</span>
|
|
18
|
+
<span class="ruby-identifier">data_track_no</span>=<span class="ruby-identifier">ts_list_sector</span>[<span class="ruby-identifier">entry_number</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]
|
|
19
|
+
<span class="ruby-identifier">data_sector_no</span>=<span class="ruby-identifier">ts_list_sector</span>[<span class="ruby-identifier">entry_number</span><span class="ruby-operator">*</span><span class="ruby-value">2</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
|
20
|
+
<span class="ruby-keyword kw">if</span>( (<span class="ruby-identifier">data_track_no!</span>=<span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">data_sector_no!</span>=<span class="ruby-value">0</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">data_track_no</span><span class="ruby-operator"><</span><span class="ruby-identifier">track_count</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">data_sector_no</span><span class="ruby-operator"><=</span><span class="ruby-value">0x0f</span>) <span class="ruby-keyword kw">then</span>
|
|
21
|
+
<span class="ruby-identifier">ts_list</span><span class="ruby-operator"><<</span><span class="ruby-constant">DSKTrackSector</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">data_track_no</span>,<span class="ruby-identifier">data_sector_no</span>)
|
|
22
|
+
<span class="ruby-keyword kw">end</span>
|
|
23
|
+
<span class="ruby-keyword kw">end</span>
|
|
24
|
+
<span class="ruby-identifier">ts_list</span>
|
|
25
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
26
|
+
</body>
|
|
27
|
+
</html>
|
|
@@ -0,0 +1,53 @@
|
|
|
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>add_file (NADOLDisk)</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 test/backup/NADOLDisk.rb, line 152</span>
|
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_file</span>(<span class="ruby-identifier">file</span>)
|
|
15
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"only NADOLFiles may be added to NADOL format disks!"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">NADOLFile</span>)
|
|
16
|
+
|
|
17
|
+
<span class="ruby-identifier">delete_file</span>(<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">files</span>[<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>].<span class="ruby-identifier">nil?</span>
|
|
18
|
+
<span class="ruby-identifier">catalog_slot</span>=<span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-keyword kw">nil</span>)
|
|
19
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"CATALOG IS FULL!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">nil?</span>
|
|
20
|
+
|
|
21
|
+
<span class="ruby-identifier">free_sectors</span>=<span class="ruby-identifier">free_sector_list</span>
|
|
22
|
+
|
|
23
|
+
<span class="ruby-identifier">sectors_needed</span>=<span class="ruby-value">1</span><span class="ruby-operator">+</span><span class="ruby-identifier">file</span>.<span class="ruby-identifier">length_in_sectors</span>
|
|
24
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"not enough free space - #{sectors_needed} sectors needed, #{free_sector_list.length} available "</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">sectors_needed</span><span class="ruby-operator"><=</span><span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">length</span>
|
|
25
|
+
|
|
26
|
+
<span class="ruby-comment cmt">#for each sector in the file, copy it to disk and then record it in the track/sector list</span>
|
|
27
|
+
<span class="ruby-identifier">track_sector_list</span>=<span class="ruby-value str">"\0"</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>
|
|
28
|
+
<span class="ruby-identifier">track_sector_list_sector</span>=<span class="ruby-identifier">free_sectors</span>[<span class="ruby-value">0</span>]
|
|
29
|
+
(<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">2</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">|</span>
|
|
30
|
+
<span class="ruby-identifier">sector_to_use</span>=<span class="ruby-identifier">free_sectors</span>[<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
|
31
|
+
<span class="ruby-identifier">track_sector_list</span>[<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>]=<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">track_no</span>
|
|
32
|
+
<span class="ruby-identifier">track_sector_list</span>[(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">2</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span>]=<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">sector_no</span>
|
|
33
|
+
<span class="ruby-identifier">sector_contents</span>=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>[(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>)<span class="ruby-operator">..</span>(<span class="ruby-identifier">sector_in_file</span><span class="ruby-operator">*</span><span class="ruby-value">256</span>)<span class="ruby-operator">+</span><span class="ruby-value">255</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">""</span>
|
|
34
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">sector_to_use</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">sector_contents</span>)
|
|
35
|
+
<span class="ruby-keyword kw">end</span>
|
|
36
|
+
<span class="ruby-comment cmt">#write the track/sector list</span>
|
|
37
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">track_sector_list</span>)
|
|
38
|
+
|
|
39
|
+
<span class="ruby-comment cmt">#update the catalog</span>
|
|
40
|
+
<span class="ruby-identifier">catalog_sector</span>=<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">sector_no</span>)
|
|
41
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">..</span><span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">B</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">catalog_filename</span>
|
|
42
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">C</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">%</span> <span class="ruby-value">0x100</span>
|
|
43
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">D</span>]=<span class="ruby-identifier">file</span>.<span class="ruby-identifier">contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">0x100</span>
|
|
44
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">E</span>]=<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">track_no</span>
|
|
45
|
+
<span class="ruby-identifier">catalog_sector</span>[<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">offset</span><span class="ruby-operator">+</span><span class="ruby-value">0x0</span><span class="ruby-constant">F</span>]=<span class="ruby-identifier">track_sector_list_sector</span>.<span class="ruby-identifier">sector_no</span>
|
|
46
|
+
<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">catalog_slot</span>.<span class="ruby-identifier">sector_no</span>,<span class="ruby-identifier">catalog_sector</span>)
|
|
47
|
+
|
|
48
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"catalog not updated correctly!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">find_catalog_slot</span>(<span class="ruby-identifier">file</span>.<span class="ruby-identifier">filename</span>).<span class="ruby-identifier">nil?</span>
|
|
49
|
+
<span class="ruby-comment cmt">#reread the catalog to populate the files list</span>
|
|
50
|
+
<span class="ruby-identifier">read_catalog</span>
|
|
51
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
52
|
+
</body>
|
|
53
|
+
</html>
|