ripxplore 0.15.1 → 0.16.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/doc/classes/A2DskDosOrder.html +5 -5
- data/doc/classes/A2DskDosOrder.src/M000307.html +18 -0
- data/doc/classes/A2DskDosOrder.src/M000311.html +18 -0
- data/doc/classes/A2DskPhysicalOrder.html +5 -5
- data/doc/classes/A2DskPhysicalOrder.src/M000195.html +18 -0
- data/doc/classes/A2WriteTests.html +10 -10
- data/doc/classes/A2WriteTests.src/M000133.html +42 -0
- data/doc/classes/A2WriteTests.src/M000134.html +67 -0
- data/doc/classes/Apple2.html +70 -70
- data/doc/classes/Apple2.src/M000254.html +18 -0
- data/doc/classes/Apple2.src/M000255.html +18 -0
- data/doc/classes/Apple2.src/M000256.html +18 -0
- data/doc/classes/Apple2.src/M000257.html +18 -0
- data/doc/classes/Apple2.src/M000258.html +18 -0
- data/doc/classes/Apple2.src/M000259.html +19 -0
- data/doc/classes/Apple2.src/M000260.html +19 -0
- data/doc/classes/Apple2.src/M000261.html +18 -0
- data/doc/classes/Apple2.src/M000262.html +18 -0
- data/doc/classes/Apple2.src/M000263.html +18 -0
- data/doc/classes/Apple2.src/M000264.html +18 -0
- data/doc/classes/Apple2.src/M000265.html +18 -0
- data/doc/classes/Apple2.src/M000266.html +4 -4
- data/doc/classes/Apple2.src/M000267.html +4 -4
- data/doc/classes/Apple2.src/M000268.html +4 -4
- data/doc/classes/Apple2.src/M000269.html +4 -5
- data/doc/classes/AppleDos.html +55 -55
- data/doc/classes/AppleDos.src/M000276.html +18 -0
- data/doc/classes/AppleDos.src/M000277.html +18 -0
- data/doc/classes/AppleDos.src/M000278.html +18 -0
- data/doc/classes/AppleDos.src/M000279.html +73 -0
- data/doc/classes/AppleDos.src/M000280.html +18 -0
- data/doc/classes/AppleDos.src/M000281.html +18 -0
- data/doc/classes/AppleDos.src/M000282.html +18 -0
- data/doc/classes/AppleDos.src/M000283.html +73 -0
- data/doc/classes/AppleDos.src/M000284.html +98 -0
- data/doc/classes/AppleDos.src/M000285.html +28 -0
- data/doc/classes/AppleDos.src/M000286.html +34 -0
- data/doc/classes/AppleDos.src/M000287.html +37 -0
- data/doc/classes/AppleDos.src/M000288.html +17 -4
- data/doc/classes/AppleDos.src/M000289.html +14 -5
- data/doc/classes/AppleDos.src/M000290.html +30 -5
- data/doc/classes/AppleDosPic.html +20 -20
- data/doc/classes/AppleDosPic.src/M000299.html +20 -0
- data/doc/classes/AppleDosPic.src/M000300.html +18 -0
- data/doc/classes/AppleDosPic.src/M000301.html +18 -0
- data/doc/classes/AppleDosPic.src/M000302.html +18 -0
- data/doc/classes/AppleDosPic.src/M000303.html +20 -0
- data/doc/classes/AppleDosPic.src/M000304.html +18 -0
- data/doc/classes/AppleDosPic.src/M000305.html +18 -0
- data/doc/classes/AppleDosPic.src/M000306.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.html +221 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000348.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000349.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000350.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000351.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000352.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000353.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000354.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000355.html +18 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000356.html +19 -0
- data/doc/classes/AppleDosPrintShopFont.src/M000357.html +18 -0
- data/doc/classes/AppleHiResPic.html +40 -40
- data/doc/classes/AppleHiResPic.src/M000378.html +18 -0
- data/doc/classes/AppleHiResPic.src/M000379.html +18 -0
- data/doc/classes/AppleHiResPic.src/M000380.html +18 -0
- data/doc/classes/AppleHiResPic.src/M000381.html +52 -0
- data/doc/classes/AppleHiResPic.src/M000382.html +18 -0
- data/doc/classes/AppleHiResPic.src/M000383.html +18 -0
- data/doc/classes/AppleHiResPic.src/M000384.html +5 -5
- data/doc/classes/AppleHiResPic.src/M000385.html +38 -4
- data/doc/classes/AppleHiResPic.src/M000386.html +4 -4
- data/doc/classes/AppleHiResPic.src/M000387.html +4 -38
- data/doc/classes/AppleHiResPic.src/M000388.html +4 -4
- data/doc/classes/AppleHiResPic.src/M000389.html +4 -4
- data/doc/classes/ApplePrintShopMiniPix.html +20 -20
- data/doc/classes/ApplePrintShopMiniPix.src/M000596.html +38 -0
- data/doc/classes/ApplePrintShopMiniPix.src/M000597.html +18 -0
- data/doc/classes/ApplePrintShopMiniPix.src/M000598.html +18 -0
- data/doc/classes/ApplePrintShopMiniPix.src/M000599.html +18 -0
- data/doc/classes/ApplePrintShopMiniPix.src/M000600.html +38 -0
- data/doc/classes/ApplePrintShopMiniPix.src/M000601.html +4 -24
- data/doc/classes/ApplePrintShopMiniPix.src/M000602.html +4 -4
- data/doc/classes/ApplePrintShopMiniPix.src/M000603.html +4 -4
- data/doc/classes/Applesoft.html +10 -10
- data/doc/classes/Applesoft.src/M000179.html +21 -0
- data/doc/classes/Applesoft.src/M000180.html +75 -0
- data/doc/classes/Atari800.html +80 -80
- data/doc/classes/Atari800.src/M000314.html +18 -0
- data/doc/classes/Atari800.src/M000315.html +23 -0
- data/doc/classes/Atari800.src/M000316.html +22 -0
- data/doc/classes/Atari800.src/M000317.html +23 -0
- data/doc/classes/Atari800.src/M000318.html +18 -0
- data/doc/classes/Atari800.src/M000319.html +23 -0
- data/doc/classes/Atari800.src/M000320.html +22 -0
- data/doc/classes/Atari800.src/M000321.html +23 -0
- data/doc/classes/Atari800.src/M000322.html +23 -0
- data/doc/classes/Atari800.src/M000323.html +18 -0
- data/doc/classes/Atari800.src/M000324.html +19 -0
- data/doc/classes/Atari800.src/M000325.html +18 -0
- data/doc/classes/Atari800.src/M000326.html +4 -4
- data/doc/classes/Atari800.src/M000327.html +4 -9
- data/doc/classes/Atari800.src/M000328.html +4 -8
- data/doc/classes/Atari800.src/M000329.html +4 -9
- data/doc/classes/Atari800.src/M000330.html +4 -9
- data/doc/classes/Atari800.src/M000331.html +4 -4
- data/doc/classes/Atari800.src/M000332.html +4 -5
- data/doc/classes/Atari800.src/M000333.html +4 -4
- data/doc/classes/AtariBasic.html +10 -10
- data/doc/classes/AtariBasic.src/M000330.html +20 -0
- data/doc/classes/AtariBasic.src/M000331.html +108 -0
- data/doc/classes/AtariBasic.src/M000334.html +20 -0
- data/doc/classes/AtariBasic.src/M000335.html +108 -0
- data/doc/classes/AtariBinary.html +20 -20
- data/doc/classes/AtariBinary.src/M000388.html +20 -0
- data/doc/classes/AtariBinary.src/M000389.html +18 -0
- data/doc/classes/AtariBinary.src/M000390.html +18 -0
- data/doc/classes/AtariBinary.src/M000391.html +18 -0
- data/doc/classes/AtariBinary.src/M000392.html +20 -0
- data/doc/classes/AtariBinary.src/M000393.html +18 -0
- data/doc/classes/AtariBinary.src/M000394.html +4 -6
- data/doc/classes/AtariBinary.src/M000395.html +4 -4
- data/doc/classes/AtariBitmapFont.html +30 -30
- data/doc/classes/AtariBitmapFont.src/M000308.html +20 -0
- data/doc/classes/AtariBitmapFont.src/M000309.html +18 -0
- data/doc/classes/AtariBitmapFont.src/M000310.html +18 -0
- data/doc/classes/AtariBitmapFont.src/M000311.html +32 -0
- data/doc/classes/AtariBitmapFont.src/M000312.html +20 -0
- data/doc/classes/AtariBitmapFont.src/M000313.html +18 -0
- data/doc/classes/AtariBitmapFont.src/M000314.html +18 -0
- data/doc/classes/AtariBitmapFont.src/M000315.html +32 -0
- data/doc/classes/AtariBitmapFont.src/M000316.html +18 -0
- data/doc/classes/AtariBitmapFont.src/M000317.html +19 -0
- data/doc/classes/AtariMicroPainterPic.html +20 -20
- data/doc/classes/AtariMicroPainterPic.src/M000205.html +18 -0
- data/doc/classes/AtariMicroPainterPic.src/M000206.html +18 -0
- data/doc/classes/AtariMicroPainterPic.src/M000207.html +18 -0
- data/doc/classes/AtariMicroPainterPic.src/M000208.html +18 -0
- data/doc/classes/AtariMicroPainterPic.src/M000209.html +18 -0
- data/doc/classes/AtariMicroPainterPic.src/M000210.html +20 -0
- data/doc/classes/AtariText.html +10 -10
- data/doc/classes/AtariText.src/M000135.html +20 -0
- data/doc/classes/AtariText.src/M000136.html +18 -0
- data/doc/classes/AxePackedAppleDosPic.html +5 -5
- data/doc/classes/AxePackedAppleDosPic.src/M000268.html +59 -0
- data/doc/classes/AxePackedAppleDosPic.src/M000272.html +59 -0
- data/doc/classes/C64.html +105 -105
- data/doc/classes/C64.src/M000443.html +18 -0
- data/doc/classes/C64.src/M000444.html +18 -0
- data/doc/classes/C64.src/M000445.html +31 -0
- data/doc/classes/C64.src/M000446.html +20 -0
- data/doc/classes/C64.src/M000447.html +18 -0
- data/doc/classes/C64.src/M000448.html +18 -0
- data/doc/classes/C64.src/M000449.html +17 -4
- data/doc/classes/C64.src/M000450.html +6 -4
- data/doc/classes/C64.src/M000451.html +7 -16
- data/doc/classes/C64.src/M000452.html +8 -6
- data/doc/classes/C64.src/M000453.html +5 -8
- data/doc/classes/C64.src/M000454.html +5 -8
- data/doc/classes/C64.src/M000455.html +4 -5
- data/doc/classes/C64.src/M000456.html +4 -5
- data/doc/classes/C64.src/M000457.html +4 -4
- data/doc/classes/C64.src/M000458.html +4 -4
- data/doc/classes/C64.src/M000459.html +4 -4
- data/doc/classes/C64.src/M000460.html +4 -4
- data/doc/classes/C64.src/M000461.html +4 -4
- data/doc/classes/C64.src/M000462.html +5 -4
- data/doc/classes/C64.src/M000463.html +5 -4
- data/doc/classes/C64.src/M000464.html +4 -5
- data/doc/classes/C64.src/M000465.html +4 -5
- data/doc/classes/C64.src/M000466.html +55 -4
- data/doc/classes/C64.src/M000467.html +99 -4
- data/doc/classes/C64BasicPrg.html +1 -1
- data/doc/classes/C64BasicPrg.src/M000093.html +2 -1
- data/doc/classes/C64BasicPrg.src/M000094.html +1 -1
- data/doc/classes/C64BasicPrg.src/M000095.html +2 -2
- data/doc/classes/C64GeoWriteFile.html +5 -5
- data/doc/classes/C64GeoWriteFile.src/M000241.html +39 -0
- data/doc/classes/C64GeoWriteFile.src/M000243.html +39 -0
- data/doc/classes/C64GeosBASICFile.html +10 -10
- data/doc/classes/C64GeosBASICFile.src/M000475.html +19 -0
- data/doc/classes/C64GeosBASICFile.src/M000476.html +18 -0
- data/doc/classes/C64GeosBASICFile.src/M000479.html +19 -0
- data/doc/classes/C64GeosBASICFile.src/M000480.html +18 -0
- data/doc/classes/C64GeosFile.html +85 -85
- data/doc/classes/C64GeosFile.src/M000477.html +18 -0
- data/doc/classes/C64GeosFile.src/M000478.html +19 -0
- data/doc/classes/C64GeosFile.src/M000479.html +19 -0
- data/doc/classes/C64GeosFile.src/M000480.html +18 -0
- data/doc/classes/C64GeosFile.src/M000481.html +18 -0
- data/doc/classes/C64GeosFile.src/M000482.html +19 -0
- data/doc/classes/C64GeosFile.src/M000483.html +5 -4
- data/doc/classes/C64GeosFile.src/M000484.html +4 -5
- data/doc/classes/C64GeosFile.src/M000485.html +4 -5
- data/doc/classes/C64GeosFile.src/M000486.html +4 -4
- data/doc/classes/C64GeosFile.src/M000487.html +8 -4
- data/doc/classes/C64GeosFile.src/M000488.html +4 -4
- data/doc/classes/C64GeosFile.src/M000489.html +7 -7
- data/doc/classes/C64GeosFile.src/M000490.html +14 -5
- data/doc/classes/C64GeosFile.src/M000491.html +5 -8
- data/doc/classes/C64GeosFile.src/M000492.html +25 -13
- data/doc/classes/C64GeosFile.src/M000493.html +4 -5
- data/doc/classes/C64GeosFile.src/M000494.html +4 -25
- data/doc/classes/C64GeosFile.src/M000495.html +4 -4
- data/doc/classes/C64GeosFile.src/M000496.html +7 -4
- data/doc/classes/C64GeosFile.src/M000497.html +21 -4
- data/doc/classes/C64GeosPhotoAlbum.html +15 -15
- data/doc/classes/C64GeosPhotoAlbum.src/M000238.html +18 -0
- data/doc/classes/C64GeosPhotoAlbum.src/M000239.html +19 -0
- data/doc/classes/C64GeosPhotoAlbum.src/M000240.html +18 -0
- data/doc/classes/C64GeosPhotoAlbum.src/M000241.html +19 -0
- data/doc/classes/C64GeosPhotoAlbum.src/M000242.html +39 -0
- data/doc/classes/C64PhotoScrap.html +70 -70
- data/doc/classes/C64PhotoScrap.src/M000209.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000210.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000211.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000212.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000213.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000214.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000215.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000216.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000217.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000218.html +21 -0
- data/doc/classes/C64PhotoScrap.src/M000219.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000220.html +18 -0
- data/doc/classes/C64PhotoScrap.src/M000221.html +4 -4
- data/doc/classes/C64PhotoScrap.src/M000222.html +40 -5
- data/doc/classes/C64PhotoScrap.src/M000223.html +32 -5
- data/doc/classes/C64PhotoScrap.src/M000224.html +11 -5
- data/doc/classes/C64Prg.html +35 -20
- data/doc/classes/C64Prg.src/M000588.html +20 -0
- data/doc/classes/C64Prg.src/M000589.html +18 -0
- data/doc/classes/C64Prg.src/M000590.html +19 -0
- data/doc/classes/C64Prg.src/M000591.html +18 -0
- data/doc/classes/C64Prg.src/M000592.html +22 -0
- data/doc/classes/C64Prg.src/M000593.html +18 -0
- data/doc/classes/C64Prg.src/M000594.html +5 -6
- data/doc/classes/C64Prg.src/M000595.html +4 -4
- data/doc/classes/C64Prg.src/M000596.html +6 -5
- data/doc/classes/C64PrgSnapshot.html +154 -0
- data/doc/classes/C64PrgSnapshot.src/M000205.html +18 -0
- data/doc/classes/C64PrgSnapshot.src/M000206.html +22 -0
- data/doc/classes/C64PrgText.html +10 -10
- data/doc/classes/C64PrgText.src/M000499.html +18 -0
- data/doc/classes/C64PrgText.src/M000500.html +18 -0
- data/doc/classes/C64PrgText.src/M000503.html +18 -0
- data/doc/classes/C64PrgText.src/M000504.html +18 -0
- data/doc/classes/C64Seq.html +15 -15
- data/doc/classes/C64Seq.src/M000192.html +20 -0
- data/doc/classes/C64Seq.src/M000193.html +18 -0
- data/doc/classes/C64Seq.src/M000194.html +18 -0
- data/doc/classes/C64SinglePrgImage.html +154 -0
- data/doc/classes/C64SinglePrgImage.src/M000270.html +18 -0
- data/doc/classes/C64SinglePrgImage.src/M000271.html +18 -0
- data/doc/classes/CPMFile.html +15 -15
- data/doc/classes/CPMFile.src/M000578.html +20 -0
- data/doc/classes/CPMFile.src/M000579.html +18 -0
- data/doc/classes/CPMFile.src/M000580.html +22 -0
- data/doc/classes/CPMFile.src/M000582.html +20 -0
- data/doc/classes/CPMFile.src/M000583.html +18 -0
- data/doc/classes/CPMFile.src/M000584.html +9 -7
- data/doc/classes/CVT.html +10 -10
- data/doc/classes/CVT.src/M000501.html +4 -4
- data/doc/classes/CVT.src/M000502.html +18 -0
- data/doc/classes/CVT.src/M000505.html +18 -0
- data/doc/classes/CVT.src/M000506.html +18 -0
- data/doc/classes/CVTArchive.html +12 -12
- data/doc/classes/CVTArchive.src/M000346.html +18 -0
- data/doc/classes/CVTArchive.src/M000347.html +70 -0
- data/doc/classes/CVTArchive.src/M000350.html +18 -0
- data/doc/classes/CVTArchive.src/M000351.html +70 -0
- data/doc/classes/CacheAndCollections.html +15 -15
- data/doc/classes/CacheAndCollections.src/M000371.html +21 -0
- data/doc/classes/CacheAndCollections.src/M000372.html +26 -0
- data/doc/classes/CacheAndCollections.src/M000373.html +22 -0
- data/doc/classes/CacheAndCollections.src/M000375.html +21 -0
- data/doc/classes/CacheAndCollections.src/M000376.html +26 -0
- data/doc/classes/CacheAndCollections.src/M000377.html +8 -7
- data/doc/classes/CbmDos.html +50 -50
- data/doc/classes/CbmDos.src/M000537.html +18 -0
- data/doc/classes/CbmDos.src/M000538.html +92 -0
- data/doc/classes/CbmDos.src/M000539.html +38 -0
- data/doc/classes/CbmDos.src/M000540.html +18 -0
- data/doc/classes/CbmDos.src/M000541.html +18 -0
- data/doc/classes/CbmDos.src/M000542.html +92 -0
- data/doc/classes/CbmDos.src/M000543.html +24 -4
- data/doc/classes/CbmDos.src/M000544.html +4 -78
- data/doc/classes/CbmDos.src/M000545.html +53 -23
- data/doc/classes/CbmDos.src/M000546.html +18 -4
- data/doc/classes/CbmDos.src/M000547.html +13 -53
- data/doc/classes/CbmDos.src/M000548.html +14 -17
- data/doc/classes/CbmDos.src/M000549.html +24 -13
- data/doc/classes/CbmDos.src/M000550.html +36 -14
- data/doc/classes/Coco.html +65 -65
- data/doc/classes/Coco.src/M000547.html +18 -0
- data/doc/classes/Coco.src/M000548.html +18 -0
- data/doc/classes/Coco.src/M000549.html +18 -0
- data/doc/classes/Coco.src/M000550.html +18 -0
- data/doc/classes/Coco.src/M000551.html +18 -0
- data/doc/classes/Coco.src/M000552.html +18 -0
- data/doc/classes/Coco.src/M000553.html +4 -4
- data/doc/classes/Coco.src/M000554.html +4 -4
- data/doc/classes/Coco.src/M000555.html +4 -4
- data/doc/classes/Coco.src/M000556.html +4 -4
- data/doc/classes/Coco.src/M000557.html +4 -4
- data/doc/classes/Coco.src/M000558.html +4 -4
- data/doc/classes/Coco.src/M000559.html +4 -4
- data/doc/classes/Coco.src/M000560.html +4 -4
- data/doc/classes/Coco.src/M000561.html +4 -4
- data/doc/classes/Coco.src/M000562.html +4 -4
- data/doc/classes/Coco.src/M000563.html +41 -4
- data/doc/classes/CocoBasic.html +10 -10
- data/doc/classes/CocoBasic.src/M000387.html +58 -6
- data/doc/classes/CocoBasic.src/M000390.html +20 -0
- data/doc/classes/CocoBasic.src/M000391.html +72 -0
- data/doc/classes/CocoMachineLanguage.html +15 -15
- data/doc/classes/CocoMachineLanguage.src/M000534.html +20 -0
- data/doc/classes/CocoMachineLanguage.src/M000535.html +18 -0
- data/doc/classes/CocoMachineLanguage.src/M000536.html +19 -0
- data/doc/classes/CocoMachineLanguage.src/M000538.html +20 -0
- data/doc/classes/CocoMachineLanguage.src/M000539.html +18 -0
- data/doc/classes/CocoMachineLanguage.src/M000540.html +5 -6
- data/doc/classes/CocoScreen.html +20 -20
- data/doc/classes/CocoScreen.src/M000137.html +4 -4
- data/doc/classes/CocoScreen.src/M000138.html +4 -4
- data/doc/classes/CocoScreen.src/M000139.html +18 -0
- data/doc/classes/CocoScreen.src/M000140.html +18 -0
- data/doc/classes/CocoText.html +10 -10
- data/doc/classes/CocoText.src/M000303.html +20 -0
- data/doc/classes/CocoText.src/M000304.html +18 -0
- data/doc/classes/CocoText.src/M000307.html +20 -0
- data/doc/classes/CocoText.src/M000308.html +18 -0
- data/doc/classes/D81.html +45 -45
- data/doc/classes/D81.src/M000521.html +18 -0
- data/doc/classes/D81.src/M000522.html +18 -0
- data/doc/classes/D81.src/M000523.html +18 -0
- data/doc/classes/D81.src/M000524.html +18 -0
- data/doc/classes/D81.src/M000525.html +18 -0
- data/doc/classes/D81.src/M000526.html +18 -0
- data/doc/classes/D81.src/M000527.html +4 -4
- data/doc/classes/D81.src/M000528.html +4 -4
- data/doc/classes/D81.src/M000529.html +4 -4
- data/doc/classes/D81.src/M000530.html +4 -4
- data/doc/classes/D81.src/M000531.html +4 -4
- data/doc/classes/D81.src/M000532.html +9 -4
- data/doc/classes/D81.src/M000533.html +10 -4
- data/doc/classes/DumpUtilities.html +10 -10
- data/doc/classes/DumpUtilities.src/M000343.html +33 -0
- data/doc/classes/DumpUtilities.src/M000344.html +27 -0
- data/doc/classes/DumpUtilities.src/M000347.html +33 -0
- data/doc/classes/DumpUtilities.src/M000348.html +27 -0
- data/doc/classes/FileCache.html +70 -70
- data/doc/classes/FileCache.src/M000503.html +26 -0
- data/doc/classes/FileCache.src/M000504.html +20 -0
- data/doc/classes/FileCache.src/M000505.html +18 -0
- data/doc/classes/FileCache.src/M000506.html +24 -0
- data/doc/classes/FileCache.src/M000507.html +26 -0
- data/doc/classes/FileCache.src/M000508.html +20 -0
- data/doc/classes/FileCache.src/M000509.html +4 -12
- data/doc/classes/FileCache.src/M000510.html +10 -6
- data/doc/classes/FileCache.src/M000511.html +8 -4
- data/doc/classes/FileCache.src/M000512.html +18 -10
- data/doc/classes/FileCache.src/M000513.html +7 -8
- data/doc/classes/FileCache.src/M000514.html +7 -17
- data/doc/classes/FileCache.src/M000515.html +9 -7
- data/doc/classes/FileCache.src/M000516.html +12 -7
- data/doc/classes/FileCache.src/M000517.html +10 -9
- data/doc/classes/FileCache.src/M000518.html +10 -13
- data/doc/classes/FileCache.src/M000519.html +7 -10
- data/doc/classes/FileCache.src/M000520.html +6 -10
- data/doc/classes/FileCacheItem.html +10 -10
- data/doc/classes/FileCacheItem.src/M000497.html +18 -0
- data/doc/classes/FileCacheItem.src/M000498.html +18 -0
- data/doc/classes/FileCacheItem.src/M000501.html +18 -0
- data/doc/classes/FileCacheItem.src/M000502.html +18 -0
- data/doc/classes/FileContainer.html +5 -5
- data/doc/classes/FileContainer.src/M000582.html +26 -0
- data/doc/classes/FileContainer.src/M000586.html +26 -0
- data/doc/classes/FileSystem.html +41 -41
- data/doc/classes/FileSystem.src/M000225.html +18 -0
- data/doc/classes/FileSystem.src/M000226.html +18 -0
- data/doc/classes/FileSystem.src/M000227.html +18 -0
- data/doc/classes/FileSystem.src/M000228.html +18 -0
- data/doc/classes/FileSystem.src/M000229.html +18 -0
- data/doc/classes/FileSystem.src/M000230.html +18 -0
- data/doc/classes/FileSystem.src/M000231.html +18 -0
- data/doc/classes/FileSystem.src/M000232.html +18 -0
- data/doc/classes/FileSystem.src/M000233.html +20 -0
- data/doc/classes/FileSystem.src/M000234.html +25 -0
- data/doc/classes/FileSystemImage.html +132 -132
- data/doc/classes/FileSystemImage.src/M000392.html +22 -0
- data/doc/classes/FileSystemImage.src/M000393.html +41 -0
- data/doc/classes/FileSystemImage.src/M000394.html +27 -0
- data/doc/classes/FileSystemImage.src/M000395.html +18 -0
- data/doc/classes/FileSystemImage.src/M000396.html +22 -0
- data/doc/classes/FileSystemImage.src/M000397.html +41 -0
- data/doc/classes/FileSystemImage.src/M000398.html +13 -8
- data/doc/classes/FileSystemImage.src/M000399.html +4 -27
- data/doc/classes/FileSystemImage.src/M000400.html +4 -13
- data/doc/classes/FileSystemImage.src/M000401.html +5 -4
- data/doc/classes/FileSystemImage.src/M000402.html +4 -4
- data/doc/classes/FileSystemImage.src/M000403.html +8 -5
- data/doc/classes/FileSystemImage.src/M000404.html +6 -5
- data/doc/classes/FileSystemImage.src/M000405.html +4 -8
- data/doc/classes/FileSystemImage.src/M000406.html +5 -6
- data/doc/classes/FileSystemImage.src/M000407.html +4 -4
- data/doc/classes/FileSystemImage.src/M000408.html +4 -4
- data/doc/classes/FileSystemImage.src/M000409.html +7 -5
- data/doc/classes/FileSystemImage.src/M000410.html +9 -5
- data/doc/classes/FileSystemImage.src/M000411.html +9 -7
- data/doc/classes/FileSystemImage.src/M000412.html +5 -9
- data/doc/classes/FileSystemImage.src/M000413.html +11 -9
- data/doc/classes/FileSystemImage.src/M000414.html +9 -4
- data/doc/classes/FileSystemImage.src/M000415.html +12 -11
- data/doc/classes/FileSystemImage.src/M000416.html +4 -9
- data/doc/classes/FileSystemImage.src/M000417.html +5 -12
- data/doc/classes/FileSystemImage.src/M000418.html +4 -4
- data/doc/classes/FileSystemImage.src/M000419.html +4 -4
- data/doc/classes/FileSystemImage.src/M000420.html +13 -4
- data/doc/classes/FileSystemImage.src/M000421.html +6 -4
- data/doc/classes/Font.html +55 -55
- data/doc/classes/Font.src/M000622.html +4 -4
- data/doc/classes/Font.src/M000623.html +4 -4
- data/doc/classes/Font.src/M000624.html +4 -53
- data/doc/classes/Font.src/M000625.html +5 -10
- data/doc/classes/Font.src/M000626.html +5 -18
- data/doc/classes/Font.src/M000627.html +18 -0
- data/doc/classes/Font.src/M000628.html +18 -0
- data/doc/classes/Font.src/M000629.html +18 -0
- data/doc/classes/Font.src/M000630.html +18 -0
- data/doc/classes/Font.src/M000631.html +18 -0
- data/doc/classes/Font.src/M000632.html +18 -0
- data/doc/classes/Font.src/M000633.html +18 -0
- data/doc/classes/Font.src/M000634.html +67 -0
- data/doc/classes/Font.src/M000635.html +23 -0
- data/doc/classes/Font.src/M000636.html +31 -0
- data/doc/classes/G64.html +25 -25
- data/doc/classes/G64.src/M000563.html +30 -0
- data/doc/classes/G64.src/M000564.html +18 -0
- data/doc/classes/G64.src/M000565.html +18 -0
- data/doc/classes/G64.src/M000566.html +18 -0
- data/doc/classes/G64.src/M000567.html +30 -0
- data/doc/classes/G64.src/M000568.html +18 -0
- data/doc/classes/G64.src/M000569.html +4 -16
- data/doc/classes/G64.src/M000570.html +4 -4
- data/doc/classes/G64.src/M000571.html +7 -4
- data/doc/classes/GenericFile.html +10 -10
- data/doc/classes/GenericFile.src/M000583.html +20 -0
- data/doc/classes/GenericFile.src/M000584.html +18 -0
- data/doc/classes/GenericFile.src/M000587.html +20 -0
- data/doc/classes/GenericFile.src/M000588.html +18 -0
- data/doc/classes/GenericGIF.html +25 -25
- data/doc/classes/GenericGIF.src/M000616.html +18 -0
- data/doc/classes/GenericGIF.src/M000617.html +18 -0
- data/doc/classes/GenericGIF.src/M000618.html +18 -0
- data/doc/classes/GenericGIF.src/M000619.html +18 -0
- data/doc/classes/GenericGIF.src/M000620.html +18 -0
- data/doc/classes/GenericGIF.src/M000621.html +18 -0
- data/doc/classes/GenericGIF.src/M000622.html +18 -0
- data/doc/classes/GenericGIF.src/M000623.html +18 -0
- data/doc/classes/GenericGIF.src/M000624.html +18 -0
- data/doc/classes/ImageFormat.html +85 -85
- data/doc/classes/ImageFormat.src/M000354.html +18 -0
- data/doc/classes/ImageFormat.src/M000355.html +18 -0
- data/doc/classes/ImageFormat.src/M000356.html +18 -0
- data/doc/classes/ImageFormat.src/M000357.html +18 -0
- data/doc/classes/ImageFormat.src/M000358.html +18 -0
- data/doc/classes/ImageFormat.src/M000359.html +18 -0
- data/doc/classes/ImageFormat.src/M000360.html +4 -4
- data/doc/classes/ImageFormat.src/M000361.html +4 -4
- data/doc/classes/ImageFormat.src/M000362.html +4 -4
- data/doc/classes/ImageFormat.src/M000363.html +8 -4
- data/doc/classes/ImageFormat.src/M000364.html +5 -4
- data/doc/classes/ImageFormat.src/M000365.html +4 -8
- data/doc/classes/ImageFormat.src/M000366.html +4 -5
- data/doc/classes/ImageFormat.src/M000367.html +4 -4
- data/doc/classes/ImageFormat.src/M000368.html +4 -4
- data/doc/classes/ImageFormat.src/M000369.html +4 -4
- data/doc/classes/ImageFormat.src/M000370.html +4 -4
- data/doc/classes/ImageFormat.src/M000371.html +4 -4
- data/doc/classes/ImageFormat.src/M000372.html +6 -4
- data/doc/classes/ImageFormat.src/M000373.html +12 -4
- data/doc/classes/ImageFormat.src/M000374.html +4 -6
- data/doc/classes/ImageSniffing.html +40 -40
- data/doc/classes/ImageSniffing.src/M000570.html +151 -0
- data/doc/classes/ImageSniffing.src/M000571.html +54 -0
- data/doc/classes/ImageSniffing.src/M000572.html +175 -0
- data/doc/classes/ImageSniffing.src/M000573.html +47 -0
- data/doc/classes/ImageSniffing.src/M000574.html +151 -0
- data/doc/classes/ImageSniffing.src/M000575.html +54 -0
- data/doc/classes/ImageSniffing.src/M000576.html +140 -109
- data/doc/classes/ImageSniffing.src/M000577.html +34 -41
- data/doc/classes/ImageSniffing.src/M000578.html +32 -161
- data/doc/classes/ImageSniffing.src/M000579.html +46 -34
- data/doc/classes/ImageSniffing.src/M000580.html +51 -23
- data/doc/classes/ImageSniffing.src/M000581.html +27 -42
- data/doc/classes/IntegerBASIC.html +10 -10
- data/doc/classes/IntegerBASIC.src/M000464.html +20 -0
- data/doc/classes/IntegerBASIC.src/M000465.html +86 -0
- data/doc/classes/IntegerBASIC.src/M000468.html +20 -0
- data/doc/classes/IntegerBASIC.src/M000469.html +86 -0
- data/doc/classes/JvcDsk.html +30 -30
- data/doc/classes/JvcDsk.src/M000466.html +18 -0
- data/doc/classes/JvcDsk.src/M000467.html +39 -0
- data/doc/classes/JvcDsk.src/M000468.html +18 -0
- data/doc/classes/JvcDsk.src/M000469.html +18 -0
- data/doc/classes/JvcDsk.src/M000470.html +18 -0
- data/doc/classes/JvcDsk.src/M000471.html +39 -0
- data/doc/classes/JvcDsk.src/M000472.html +4 -4
- data/doc/classes/JvcDsk.src/M000473.html +4 -25
- data/doc/classes/JvcDsk.src/M000474.html +4 -4
- data/doc/classes/JvcDsk.src/M000475.html +8 -4
- data/doc/classes/MBasic.html +10 -10
- data/doc/classes/MBasic.src/M000141.html +20 -0
- data/doc/classes/MBasic.src/M000142.html +22 -0
- data/doc/classes/NADOLDos.html +10 -10
- data/doc/classes/NADOLDos.src/M000181.html +18 -0
- data/doc/classes/NADOLDos.src/M000182.html +52 -0
- data/doc/classes/NADOLFile.html +10 -10
- data/doc/classes/NADOLFile.src/M000183.html +20 -0
- data/doc/classes/NADOLFile.src/M000184.html +18 -0
- data/doc/classes/NADOLTokens.html +5 -5
- data/doc/classes/NADOLTokens.src/M000345.html +41 -0
- data/doc/classes/NADOLTokens.src/M000349.html +41 -0
- data/doc/classes/PNG.html +22 -22
- data/doc/classes/PNG.src/M000426.html +18 -0
- data/doc/classes/PNG.src/M000427.html +21 -0
- data/doc/classes/PNG.src/M000428.html +26 -0
- data/doc/classes/PNG.src/M000429.html +26 -0
- data/doc/classes/PNG.src/M000430.html +18 -0
- data/doc/classes/PNG.src/M000431.html +21 -0
- data/doc/classes/PNG.src/M000432.html +12 -4
- data/doc/classes/PNG.src/M000433.html +13 -8
- data/doc/classes/PNG/Canvas.html +33 -33
- data/doc/classes/PNG/Canvas.src/M000437.html +20 -0
- data/doc/classes/PNG/Canvas.src/M000438.html +20 -0
- data/doc/classes/PNG/Canvas.src/M000439.html +20 -0
- data/doc/classes/PNG/Canvas.src/M000440.html +22 -0
- data/doc/classes/PNG/Canvas.src/M000441.html +20 -0
- data/doc/classes/PNG/Canvas.src/M000442.html +20 -0
- data/doc/classes/PNG/Canvas.src/M000443.html +6 -6
- data/doc/classes/PNG/Canvas.src/M000444.html +8 -6
- data/doc/classes/PNG/Canvas.src/M000445.html +4 -6
- data/doc/classes/PNG/Canvas.src/M000446.html +57 -6
- data/doc/classes/PNG/Color.html +40 -40
- data/doc/classes/PNG/Color.src/M000430.html +18 -0
- data/doc/classes/PNG/Color.src/M000431.html +16 -0
- data/doc/classes/PNG/Color.src/M000432.html +16 -0
- data/doc/classes/PNG/Color.src/M000433.html +16 -0
- data/doc/classes/PNG/Color.src/M000434.html +18 -0
- data/doc/classes/PNG/Color.src/M000435.html +16 -0
- data/doc/classes/PNG/Color.src/M000436.html +3 -5
- data/doc/classes/PNG/Color.src/M000437.html +3 -3
- data/doc/classes/PNG/Color.src/M000438.html +3 -3
- data/doc/classes/PNG/Color.src/M000439.html +8 -3
- data/doc/classes/PNG/Color.src/M000440.html +5 -3
- data/doc/classes/PascalPic.html +10 -10
- data/doc/classes/PascalPic.src/M000586.html +20 -0
- data/doc/classes/PascalPic.src/M000587.html +18 -0
- data/doc/classes/PascalPic.src/M000590.html +20 -0
- data/doc/classes/PascalPic.src/M000591.html +18 -0
- data/doc/classes/Pc99DD.html +40 -40
- data/doc/classes/Pc99DD.src/M000242.html +18 -0
- data/doc/classes/Pc99DD.src/M000243.html +18 -0
- data/doc/classes/Pc99DD.src/M000244.html +18 -0
- data/doc/classes/Pc99DD.src/M000245.html +18 -0
- data/doc/classes/Pc99DD.src/M000246.html +18 -0
- data/doc/classes/Pc99DD.src/M000247.html +18 -0
- data/doc/classes/Pc99DD.src/M000248.html +18 -0
- data/doc/classes/Pc99DD.src/M000249.html +18 -0
- data/doc/classes/Pc99DD.src/M000250.html +18 -0
- data/doc/classes/Pc99DD.src/M000251.html +18 -0
- data/doc/classes/Pc99SD.html +40 -40
- data/doc/classes/Pc99SD.src/M000418.html +18 -0
- data/doc/classes/Pc99SD.src/M000419.html +18 -0
- data/doc/classes/Pc99SD.src/M000420.html +18 -0
- data/doc/classes/Pc99SD.src/M000421.html +18 -0
- data/doc/classes/Pc99SD.src/M000422.html +18 -0
- data/doc/classes/Pc99SD.src/M000423.html +18 -0
- data/doc/classes/Pc99SD.src/M000424.html +4 -4
- data/doc/classes/Pc99SD.src/M000425.html +4 -4
- data/doc/classes/Pc99SD.src/M000426.html +4 -4
- data/doc/classes/Pc99SD.src/M000427.html +4 -4
- data/doc/classes/Pc99SD.src/M000428.html +4 -4
- data/doc/classes/Pc99SD.src/M000429.html +4 -4
- data/doc/classes/PrintShopFont.html +288 -0
- data/doc/classes/PrintShopFont.src/M000600.html +31 -0
- data/doc/classes/PrintShopFont.src/M000601.html +18 -0
- data/doc/classes/PrintShopFont.src/M000602.html +20 -0
- data/doc/classes/PrintShopFont.src/M000603.html +18 -0
- data/doc/classes/PrintShopFont.src/M000604.html +31 -0
- data/doc/classes/PrintShopFont.src/M000605.html +18 -0
- data/doc/classes/PrintShopFont.src/M000606.html +20 -0
- data/doc/classes/PrintShopFont.src/M000607.html +18 -0
- data/doc/classes/PrintShopFont.src/M000608.html +18 -0
- data/doc/classes/PrintShopFont.src/M000609.html +18 -0
- data/doc/classes/PrintShopFont.src/M000610.html +20 -0
- data/doc/classes/PrintShopFont.src/M000611.html +21 -0
- data/doc/classes/PrintShopFont.src/M000612.html +50 -0
- data/doc/classes/PrintShopFont.src/M000613.html +22 -0
- data/doc/classes/PrintShopFont.src/M000614.html +27 -0
- data/doc/classes/ProDosBINFile.html +20 -20
- data/doc/classes/ProDosBINFile.src/M000185.html +20 -0
- data/doc/classes/ProDosBINFile.src/M000186.html +18 -0
- data/doc/classes/ProDosBINFile.src/M000187.html +18 -0
- data/doc/classes/ProDosBINFile.src/M000188.html +18 -0
- data/doc/classes/ProDosBinPic.html +15 -15
- data/doc/classes/ProDosBinPic.src/M000593.html +20 -0
- data/doc/classes/ProDosBinPic.src/M000594.html +18 -0
- data/doc/classes/ProDosBinPic.src/M000595.html +18 -0
- data/doc/classes/ProDosBinPic.src/M000597.html +20 -0
- data/doc/classes/ProDosBinPic.src/M000598.html +5 -7
- data/doc/classes/ProDosBinPic.src/M000599.html +4 -4
- data/doc/classes/ProDosFile.html +15 -15
- data/doc/classes/ProDosFile.src/M000560.html +20 -0
- data/doc/classes/ProDosFile.src/M000561.html +18 -0
- data/doc/classes/ProDosFile.src/M000562.html +19 -0
- data/doc/classes/ProDosFile.src/M000564.html +20 -0
- data/doc/classes/ProDosFile.src/M000565.html +18 -0
- data/doc/classes/ProDosFile.src/M000566.html +5 -6
- data/doc/classes/Proc.html +55 -55
- data/doc/classes/Proc.src/M000332.html +21 -0
- data/doc/classes/Proc.src/M000333.html +19 -0
- data/doc/classes/Proc.src/M000334.html +22 -0
- data/doc/classes/Proc.src/M000335.html +22 -0
- data/doc/classes/Proc.src/M000336.html +21 -0
- data/doc/classes/Proc.src/M000337.html +19 -0
- data/doc/classes/Proc.src/M000338.html +22 -0
- data/doc/classes/Proc.src/M000339.html +22 -0
- data/doc/classes/Proc.src/M000340.html +22 -0
- data/doc/classes/Proc.src/M000341.html +19 -0
- data/doc/classes/Proc.src/M000342.html +16 -0
- data/doc/classes/Proc.src/M000343.html +20 -0
- data/doc/classes/Proc.src/M000344.html +4 -7
- data/doc/classes/Proc.src/M000345.html +3 -6
- data/doc/classes/Proc.src/M000346.html +3 -9
- data/doc/classes/ProcSource.html +10 -10
- data/doc/classes/ProcSource.src/M000614.html +38 -0
- data/doc/classes/ProcSource.src/M000615.html +109 -0
- data/doc/classes/ProcSource.src/M000618.html +38 -0
- data/doc/classes/ProcSource.src/M000619.html +109 -0
- data/doc/classes/RDoc.html +5 -5
- data/doc/classes/RDoc.src/M000613.html +40 -0
- data/doc/classes/RDoc.src/M000617.html +40 -0
- data/doc/classes/RawDisk.html +10 -10
- data/doc/classes/RawDisk.src/M000517.html +18 -0
- data/doc/classes/RawDisk.src/M000518.html +23 -0
- data/doc/classes/RawDisk.src/M000521.html +18 -0
- data/doc/classes/RawDisk.src/M000522.html +23 -0
- data/doc/classes/RipXplore.html +1 -1
- data/doc/classes/RsDos.html +20 -20
- data/doc/classes/RsDos.src/M000374.html +18 -0
- data/doc/classes/RsDos.src/M000375.html +18 -0
- data/doc/classes/RsDos.src/M000376.html +18 -0
- data/doc/classes/RsDos.src/M000377.html +62 -0
- data/doc/classes/RsDos.src/M000378.html +18 -0
- data/doc/classes/RsDos.src/M000379.html +18 -0
- data/doc/classes/RsDos.src/M000380.html +4 -4
- data/doc/classes/RsDos.src/M000381.html +48 -4
- data/doc/classes/ScAsm.html +5 -5
- data/doc/classes/ScAsm.src/M000581.html +45 -0
- data/doc/classes/ScAsm.src/M000585.html +45 -0
- data/doc/classes/ScreenDump.html +5 -5
- data/doc/classes/ScreenDump.src/M000611.html +24 -0
- data/doc/classes/ScreenDump.src/M000615.html +24 -0
- data/doc/classes/ScreenDumps.html +15 -15
- data/doc/classes/ScreenDumps.src/M000494.html +22 -0
- data/doc/classes/ScreenDumps.src/M000495.html +24 -0
- data/doc/classes/ScreenDumps.src/M000496.html +35 -0
- data/doc/classes/ScreenDumps.src/M000498.html +22 -0
- data/doc/classes/ScreenDumps.src/M000499.html +24 -0
- data/doc/classes/ScreenDumps.src/M000500.html +21 -8
- data/doc/classes/ScrunchedAppleDosPic.html +5 -5
- data/doc/classes/ScrunchedAppleDosPic.src/M000275.html +37 -0
- data/doc/classes/ScrunchedAppleDosPic.src/M000279.html +37 -0
- data/doc/classes/ShapeTable.html +5 -5
- data/doc/classes/ShapeTable.src/M000612.html +52 -0
- data/doc/classes/ShapeTable.src/M000616.html +52 -0
- data/doc/classes/ShapeTableFont.html +45 -45
- data/doc/classes/ShapeTableFont.src/M000290.html +21 -0
- data/doc/classes/ShapeTableFont.src/M000291.html +27 -0
- data/doc/classes/ShapeTableFont.src/M000292.html +21 -0
- data/doc/classes/ShapeTableFont.src/M000293.html +19 -0
- data/doc/classes/ShapeTableFont.src/M000294.html +21 -0
- data/doc/classes/ShapeTableFont.src/M000295.html +27 -0
- data/doc/classes/ShapeTableFont.src/M000296.html +21 -0
- data/doc/classes/ShapeTableFont.src/M000297.html +19 -0
- data/doc/classes/ShapeTableFont.src/M000298.html +18 -0
- data/doc/classes/ShapeTableFont.src/M000299.html +35 -0
- data/doc/classes/ShapeTableFont.src/M000300.html +18 -0
- data/doc/classes/ShapeTableFont.src/M000301.html +18 -0
- data/doc/classes/ShapeTableFont.src/M000302.html +8 -8
- data/doc/classes/SubclassTracking.html +5 -5
- data/doc/classes/SubclassTracking.src/M000621.html +23 -0
- data/doc/classes/SubclassTracking.src/M000625.html +23 -0
- data/doc/classes/Ti99BasicFile.html +5 -5
- data/doc/classes/Ti99BasicFile.src/M000585.html +72 -0
- data/doc/classes/Ti99BasicFile.src/M000589.html +72 -0
- data/doc/classes/Ti99Dsk.html +45 -45
- data/doc/classes/Ti99Dsk.src/M000196.html +18 -0
- data/doc/classes/Ti99Dsk.src/M000197.html +18 -0
- data/doc/classes/Ti99Dsk.src/M000198.html +18 -0
- data/doc/classes/Ti99Dsk.src/M000199.html +18 -0
- data/doc/classes/Ti99Dsk.src/M000200.html +18 -0
- data/doc/classes/Ti99Dsk.src/M000201.html +22 -0
- data/doc/classes/Ti99Dsk.src/M000202.html +22 -0
- data/doc/classes/Ti99Dsk.src/M000203.html +22 -0
- data/doc/classes/Ti99Dsk.src/M000204.html +27 -0
- data/doc/classes/Ti99File.html +10 -10
- data/doc/classes/Ti99File.src/M000568.html +20 -0
- data/doc/classes/Ti99File.src/M000569.html +18 -0
- data/doc/classes/Ti99File.src/M000572.html +20 -0
- data/doc/classes/Ti99File.src/M000573.html +18 -0
- data/doc/classes/Ti99Fms.html +10 -10
- data/doc/classes/Ti99Fms.src/M000273.html +18 -0
- data/doc/classes/Ti99Fms.src/M000274.html +77 -0
- data/doc/classes/Ti99Fms.src/M000277.html +18 -0
- data/doc/classes/Ti99Fms.src/M000278.html +77 -0
- data/doc/classes/Ti99TextFile.html +10 -10
- data/doc/classes/Ti99TextFile.src/M000523.html +33 -0
- data/doc/classes/Ti99TextFile.src/M000524.html +18 -0
- data/doc/classes/TiArtistPattern.html +20 -20
- data/doc/classes/TiArtistPattern.src/M000269.html +50 -0
- data/doc/classes/TiArtistPattern.src/M000270.html +18 -0
- data/doc/classes/TiArtistPattern.src/M000271.html +18 -0
- data/doc/classes/TiArtistPattern.src/M000272.html +18 -0
- data/doc/classes/TiArtistPattern.src/M000273.html +50 -0
- data/doc/classes/TiArtistPattern.src/M000274.html +18 -0
- data/doc/classes/TiArtistPattern.src/M000275.html +18 -0
- data/doc/classes/TiArtistPattern.src/M000276.html +18 -0
- data/doc/classes/Trs80BasicListing.html +15 -15
- data/doc/classes/Trs80BasicListing.src/M000472.html +20 -0
- data/doc/classes/Trs80BasicListing.src/M000473.html +18 -0
- data/doc/classes/Trs80BasicListing.src/M000474.html +18 -0
- data/doc/classes/Trs80BasicListing.src/M000476.html +20 -0
- data/doc/classes/Trs80BasicListing.src/M000477.html +18 -0
- data/doc/classes/Trs80BasicListing.src/M000478.html +4 -6
- data/doc/classes/Trs80Jcl.html +10 -10
- data/doc/classes/Trs80Jcl.src/M000305.html +20 -0
- data/doc/classes/Trs80Jcl.src/M000306.html +18 -0
- data/doc/classes/Trs80Jcl.src/M000309.html +20 -0
- data/doc/classes/Trs80Jcl.src/M000310.html +18 -0
- data/doc/classes/Trs80LevelIIBasic.html +15 -15
- data/doc/classes/Trs80LevelIIBasic.src/M000287.html +20 -0
- data/doc/classes/Trs80LevelIIBasic.src/M000288.html +18 -0
- data/doc/classes/Trs80LevelIIBasic.src/M000289.html +43 -0
- data/doc/classes/Trs80LevelIIBasic.src/M000291.html +20 -0
- data/doc/classes/Trs80LevelIIBasic.src/M000292.html +18 -0
- data/doc/classes/Trs80LevelIIBasic.src/M000293.html +43 -0
- data/doc/classes/Trs80PascalSource.html +10 -10
- data/doc/classes/Trs80PascalSource.src/M000250.html +20 -0
- data/doc/classes/Trs80PascalSource.src/M000251.html +30 -0
- data/doc/classes/Trs80PascalSource.src/M000252.html +20 -0
- data/doc/classes/Trs80PascalSource.src/M000253.html +30 -0
- data/doc/classes/Trs80Text.html +15 -15
- data/doc/classes/Trs80Text.src/M000189.html +20 -0
- data/doc/classes/Trs80Text.src/M000190.html +18 -0
- data/doc/classes/Trs80Text.src/M000191.html +18 -0
- data/doc/classes/TrsDos.html +20 -20
- data/doc/classes/TrsDos.src/M000530.html +18 -0
- data/doc/classes/TrsDos.src/M000531.html +18 -0
- data/doc/classes/TrsDos.src/M000532.html +18 -0
- data/doc/classes/TrsDos.src/M000533.html +64 -0
- data/doc/classes/TrsDos.src/M000534.html +18 -0
- data/doc/classes/TrsDos.src/M000535.html +18 -0
- data/doc/classes/TrsDos.src/M000536.html +4 -4
- data/doc/classes/TrsDos.src/M000537.html +50 -4
- data/doc/classes/Zx81.html +25 -25
- data/doc/classes/Zx81.src/M000233.html +18 -0
- data/doc/classes/Zx81.src/M000234.html +206 -0
- data/doc/classes/Zx81.src/M000235.html +18 -0
- data/doc/classes/Zx81.src/M000236.html +206 -0
- data/doc/classes/Zx81.src/M000237.html +18 -0
- data/doc/classes/Zx81.src/M000238.html +23 -0
- data/doc/classes/Zx81.src/M000239.html +29 -0
- data/doc/classes/Zx81PFile.html +10 -10
- data/doc/classes/Zx81PFile.src/M000252.html +18 -0
- data/doc/classes/Zx81PFile.src/M000253.html +18 -0
- data/doc/classes/Zx81PFile.src/M000254.html +18 -0
- data/doc/classes/Zx81PFile.src/M000255.html +18 -0
- data/doc/classes/Zx81Snapshot.html +10 -10
- data/doc/classes/Zx81Snapshot.src/M000223.html +18 -0
- data/doc/classes/Zx81Snapshot.src/M000224.html +22 -0
- data/doc/classes/Zx81Snapshot.src/M000225.html +18 -0
- data/doc/classes/Zx81Snapshot.src/M000226.html +22 -0
- data/doc/created.rid +1 -1
- data/doc/files/lib/FileSystemImage_rb.html +1 -1
- data/doc/files/lib/LibRipXplore_rb.html +1 -1
- data/doc/files/lib/file_systems/C64PrgSnapshot_rb.html +108 -0
- data/doc/files/lib/image_formats/C64SinglePrgImage_rb.html +108 -0
- data/doc/files/lib/native_file_types/apple2/ApplePrintShopFont_rb.html +2 -1
- data/doc/files/lib/native_file_types/c64/C64BasicPrg_rb.html +1 -1
- data/doc/files/lib/native_file_types/c64/C64Prg_rb.html +1 -1
- data/doc/files/test/tc_apple_2_rb.html +1 -1
- data/doc/files/test/tc_c64_rb.html +1 -1
- data/doc/fr_class_index.html +4 -1
- data/doc/fr_file_index.html +2 -0
- data/doc/fr_method_index.html +502 -492
- data/lib/FileSystemImage.rb +1 -1
- data/lib/LibRipXplore.rb +1 -1
- data/lib/file_systems/C64PrgSnapshot.rb +48 -0
- data/lib/image_formats/C64SinglePrgImage.rb +45 -0
- data/lib/native_file_types/apple2/ApplePrintShopFont.rb +133 -109
- data/lib/native_file_types/c64/C64BasicPrg.rb +4 -3
- data/lib/native_file_types/c64/C64Prg.rb +6 -1
- data/test/$ +0 -0
- data/test/tc_apple_2.rb +5 -2
- data/test/tc_c64.rb +4 -0
- metadata +498 -3
@@ -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>free_sector_list (CbmDos)</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/file_systems/CbmDos.rb, line 102</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">free_sector_list</span>(<span class="ruby-identifier">file_system_image</span>)
|
15
|
+
<span class="ruby-identifier">bam</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">18</span>,<span class="ruby-value">0</span>)
|
16
|
+
<span class="ruby-identifier">free_sectors</span>=[]
|
17
|
+
(<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">35</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-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">track</span><span class="ruby-operator">==</span><span class="ruby-value">18</span> <span class="ruby-comment cmt">#don't try to save files to track 18
|
19
|
+
<span class="ruby-identifier">track_bitmap_lo</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
20
|
+
<span class="ruby-identifier">track_bitmap_mid</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>]
|
21
|
+
<span class="ruby-identifier">track_bitmap_hi</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">3</span>]
|
22
|
+
(<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">bit_no</span><span class="ruby-operator">|</span>
|
23
|
+
<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-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
24
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span>]
|
25
|
+
<span class="ruby-keyword kw">end</span>
|
26
|
+
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">track_bitmap_mid</span> <span class="ruby-operator">&</span> (<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
27
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span><span class="ruby-operator">+</span><span class="ruby-value">8</span>]
|
28
|
+
<span class="ruby-keyword kw">end</span>
|
29
|
+
<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-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
30
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span><span class="ruby-operator">+</span><span class="ruby-value">16</span>]
|
31
|
+
<span class="ruby-keyword kw">end</span>
|
32
|
+
<span class="ruby-keyword kw">end</span>
|
33
|
+
<span class="ruby-keyword kw">end</span>
|
34
|
+
<span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">sort!</span>
|
35
|
+
<span class="ruby-comment cmt"># free_sectors.each {|ts| puts "T#{ts[0]} S#{ts[1]}"}
|
36
|
+
<span class="ruby-keyword kw">end</span></pre>
|
37
|
+
</body>
|
38
|
+
</html>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>directory_entry_for_filename (CbmDos)</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/file_systems/CbmDos.rb, line 126</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">directory_entry_for_filename</span>(<span class="ruby-identifier">filename</span>)
|
15
|
+
(<span class="ruby-identifier">filename</span><span class="ruby-operator">+</span>(<span class="ruby-value">0x</span><span class="ruby-constant">A0</span>.<span class="ruby-identifier">chr</span>)<span class="ruby-operator">*</span><span class="ruby-value">16</span>)[<span class="ruby-value">0</span>,<span class="ruby-value">0x10</span>]
|
16
|
+
<span class="ruby-keyword kw">end</span></pre>
|
17
|
+
</body>
|
18
|
+
</html>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>host_system (CbmDos)</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/file_systems/CbmDos.rb, line 13</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">host_system</span>
|
15
|
+
<span class="ruby-constant">C64</span>
|
16
|
+
<span class="ruby-keyword kw">end</span></pre>
|
17
|
+
</body>
|
18
|
+
</html>
|
@@ -0,0 +1,92 @@
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
5
|
+
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<title>files (CbmDos)</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/file_systems/CbmDos.rb, line 23</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">files</span>(<span class="ruby-identifier">file_system_image</span>)
|
15
|
+
<span class="ruby-identifier">files</span>=<span class="ruby-constant">FileContainer</span>.<span class="ruby-identifier">new</span>
|
16
|
+
<span class="ruby-identifier">dir_track_no</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">image_format</span>.<span class="ruby-identifier">dir_track_no</span>
|
17
|
+
<span class="ruby-identifier">dir_sector_no</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">image_format</span>.<span class="ruby-identifier">dir_sector_no</span>
|
18
|
+
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">dir_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">dir_track_no</span><span class="ruby-operator">></span> <span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
19
|
+
<span class="ruby-identifier">directory_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">dir_track_no</span>,<span class="ruby-identifier">dir_sector_no</span>)
|
20
|
+
<span class="ruby-identifier">dir_track_no</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-value">0</span>]
|
21
|
+
<span class="ruby-identifier">dir_sector_no</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-value">1</span>]
|
22
|
+
<span class="ruby-value">0</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-value">7</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry_number</span><span class="ruby-operator">|</span>
|
23
|
+
<span class="ruby-identifier">directory_entry</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-constant">DIRECTORY_ENTRY_SIZE</span><span class="ruby-operator">*</span><span class="ruby-identifier">entry_number</span>,<span class="ruby-constant">DIRECTORY_ENTRY_SIZE</span>]
|
24
|
+
<span class="ruby-identifier">file_name</span>=<span class="ruby-constant">C64</span>.<span class="ruby-identifier">s_to_ascii</span>(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x05</span><span class="ruby-operator">..</span><span class="ruby-value">0x14</span>]).<span class="ruby-identifier">strip</span>
|
25
|
+
<span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x00</span> <span class="ruby-comment cmt">#skip SCRATCHed files
|
26
|
+
<span class="ruby-identifier">file_type</span>=<span class="ruby-constant">FILE_TYPES</span>[<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]<span class="ruby-operator">%</span><span class="ruby-value">8</span>]
|
27
|
+
<span class="ruby-identifier">geos_file_type</span>=<span class="ruby-constant">GEOS_FILE_TYPES</span>[<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x18</span>]]
|
28
|
+
<span class="ruby-identifier">is_geos_file</span>=(<span class="ruby-identifier">geos_file_type!</span>=<span class="ruby-identifier">:not_geos</span>)
|
29
|
+
<span class="ruby-identifier">is_vlir</span>=<span class="ruby-identifier">is_geos_file</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x17</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x01</span>)
|
30
|
+
<span class="ruby-comment cmt"># puts "geos file type: #{geos_file_type} #{is_geos_file} #{is_vlir}"
|
31
|
+
<span class="ruby-identifier">file_track_no</span>=<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x03</span>]
|
32
|
+
<span class="ruby-identifier">file_sector_no</span>=<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x04</span>]
|
33
|
+
<span class="ruby-identifier">info_block</span>=<span class="ruby-identifier">nil?</span>
|
34
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
35
|
+
<span class="ruby-identifier">file_name</span>=(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x05</span><span class="ruby-operator">..</span><span class="ruby-value">0x14</span>]).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\xa0/</span>,<span class="ruby-value str">" "</span>).<span class="ruby-identifier">strip</span> <span class="ruby-comment cmt">#GEOS filenames will be ASCII not PETSCII
|
36
|
+
<span class="ruby-identifier">info_block</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x15</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x16</span>])
|
37
|
+
<span class="ruby-identifier">file_contents</span>=[<span class="ruby-identifier">info_block</span>]
|
38
|
+
|
39
|
+
<span class="ruby-keyword kw">end</span>
|
40
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_vlir</span>) <span class="ruby-keyword kw">then</span>
|
41
|
+
<span class="ruby-comment cmt"># puts file_name
|
42
|
+
<span class="ruby-identifier">record_block</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">file_track_no</span>,<span class="ruby-identifier">file_sector_no</span>)
|
43
|
+
<span class="ruby-value">127</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
44
|
+
<span class="ruby-identifier">record_no</span>=<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>
|
45
|
+
<span class="ruby-identifier">record_track_no</span>=<span class="ruby-identifier">record_block</span>[<span class="ruby-value">2</span><span class="ruby-operator">*</span><span class="ruby-identifier">record_no</span>]
|
46
|
+
<span class="ruby-identifier">record_sector_no</span>=<span class="ruby-identifier">record_block</span>[<span class="ruby-value">1</span><span class="ruby-operator">+</span>(<span class="ruby-value">2</span><span class="ruby-operator">*</span><span class="ruby-identifier">record_no</span>)]
|
47
|
+
<span class="ruby-identifier">record_contents</span>=<span class="ruby-keyword kw">nil</span>
|
48
|
+
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">record_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">record_track_no</span><span class="ruby-operator">></span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
49
|
+
<span class="ruby-identifier">record_contents</span>=<span class="ruby-value str">""</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">record_contents</span>.<span class="ruby-identifier">nil?</span>
|
50
|
+
<span class="ruby-identifier">record_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">record_track_no</span>,<span class="ruby-identifier">record_sector_no</span>)
|
51
|
+
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">record_sector</span>.<span class="ruby-identifier">nil?</span>
|
52
|
+
<span class="ruby-identifier">record_track_no</span>=<span class="ruby-identifier">record_sector</span>[<span class="ruby-value">0</span>]
|
53
|
+
<span class="ruby-identifier">record_sector_no</span>=<span class="ruby-identifier">record_sector</span>[<span class="ruby-value">1</span>]
|
54
|
+
<span class="ruby-identifier">end_of_data</span>= (<span class="ruby-identifier">record_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">record_sector</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">:</span> <span class="ruby-value">255</span>
|
55
|
+
<span class="ruby-identifier">record_contents</span><span class="ruby-operator"><<</span><span class="ruby-identifier">record_sector</span>[<span class="ruby-value">2</span><span class="ruby-operator">..</span><span class="ruby-identifier">end_of_data</span>]
|
56
|
+
<span class="ruby-keyword kw">end</span>
|
57
|
+
<span class="ruby-identifier">file_contents</span><span class="ruby-operator"><<</span>(<span class="ruby-identifier">record_contents</span>)
|
58
|
+
<span class="ruby-keyword kw">end</span>
|
59
|
+
<span class="ruby-keyword kw">else</span>
|
60
|
+
<span class="ruby-identifier">file_contents</span>=<span class="ruby-value str">""</span>
|
61
|
+
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">file_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">file_track_no</span><span class="ruby-operator">></span> <span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
62
|
+
<span class="ruby-identifier">file_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">file_track_no</span>,<span class="ruby-identifier">file_sector_no</span>)
|
63
|
+
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_sector</span>.<span class="ruby-identifier">nil?</span>
|
64
|
+
<span class="ruby-identifier">file_track_no</span>=<span class="ruby-identifier">file_sector</span>[<span class="ruby-value">0</span>]
|
65
|
+
<span class="ruby-identifier">file_sector_no</span>=<span class="ruby-identifier">file_sector</span>[<span class="ruby-value">1</span>]
|
66
|
+
<span class="ruby-identifier">end_of_data</span>= (<span class="ruby-identifier">file_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">file_sector</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">:</span> <span class="ruby-value">255</span>
|
67
|
+
<span class="ruby-identifier">file_contents</span><span class="ruby-operator">+=</span><span class="ruby-identifier">file_sector</span>[<span class="ruby-value">2</span><span class="ruby-operator">..</span><span class="ruby-identifier">end_of_data</span>]
|
68
|
+
<span class="ruby-comment cmt"># puts "#{file_name} #{file_track_no} #{file_sector_no} #{end_of_data}"
|
69
|
+
<span class="ruby-keyword kw">end</span>
|
70
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
71
|
+
<span class="ruby-identifier">file_contents</span>=[<span class="ruby-identifier">info_block</span>,<span class="ruby-identifier">file_contents</span>]
|
72
|
+
<span class="ruby-keyword kw">end</span>
|
73
|
+
<span class="ruby-keyword kw">end</span>
|
74
|
+
<span class="ruby-identifier">file</span>=<span class="ruby-constant">NativeFileType</span>.<span class="ruby-identifier">best_fit</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">file_name</span>,<span class="ruby-identifier">file_contents</span>,<span class="ruby-identifier">file_type</span>,<span class="ruby-identifier">geos_file_type</span>)
|
75
|
+
[<span class="ruby-identifier">file</span>].<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
76
|
+
|
77
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"c64_file_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]
|
78
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"first_block"</span>]=<span class="ruby-value str">"track $%02x sector $%02x"</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x03</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">04</span>]]
|
79
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
80
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_header"</span>]=<span class="ruby-value str">"track $%02x sector $%02x"</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x15</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">16</span>]]
|
81
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_structure_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x17</span>]
|
82
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x18</span>]
|
83
|
+
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_modified_date"</span>]=<span class="ruby-value str">"%04d-%02d-%02d %02d:%02d"</span> <span class="ruby-operator">%</span> [<span class="ruby-value">1900</span><span class="ruby-operator">+</span><span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x19</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">A</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">B</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">C</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">D</span>]]
|
84
|
+
<span class="ruby-keyword kw">end</span>
|
85
|
+
<span class="ruby-keyword kw">end</span>
|
86
|
+
<span class="ruby-identifier">files</span><span class="ruby-operator"><<</span><span class="ruby-identifier">file</span>
|
87
|
+
<span class="ruby-keyword kw">end</span>
|
88
|
+
<span class="ruby-keyword kw">end</span>
|
89
|
+
<span class="ruby-identifier">files</span>
|
90
|
+
<span class="ruby-keyword kw">end</span></pre>
|
91
|
+
</body>
|
92
|
+
</html>
|
@@ -5,14 +5,34 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>free_sector_list (CbmDos)</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 lib/file_systems/CbmDos.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">
|
15
|
-
<span class="ruby-
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/file_systems/CbmDos.rb, line 102</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">free_sector_list</span>(<span class="ruby-identifier">file_system_image</span>)
|
15
|
+
<span class="ruby-identifier">bam</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">18</span>,<span class="ruby-value">0</span>)
|
16
|
+
<span class="ruby-identifier">free_sectors</span>=[]
|
17
|
+
(<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">35</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-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">track</span><span class="ruby-operator">==</span><span class="ruby-value">18</span> <span class="ruby-comment cmt">#don't try to save files to track 18
|
19
|
+
<span class="ruby-identifier">track_bitmap_lo</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
20
|
+
<span class="ruby-identifier">track_bitmap_mid</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>]
|
21
|
+
<span class="ruby-identifier">track_bitmap_hi</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">track</span><span class="ruby-operator">*</span><span class="ruby-value">4</span><span class="ruby-operator">+</span><span class="ruby-value">3</span>]
|
22
|
+
(<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">bit_no</span><span class="ruby-operator">|</span>
|
23
|
+
<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-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
24
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span>]
|
25
|
+
<span class="ruby-keyword kw">end</span>
|
26
|
+
<span class="ruby-keyword kw">if</span> ((<span class="ruby-identifier">track_bitmap_mid</span> <span class="ruby-operator">&</span> (<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
27
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span><span class="ruby-operator">+</span><span class="ruby-value">8</span>]
|
28
|
+
<span class="ruby-keyword kw">end</span>
|
29
|
+
<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-identifier">bit_no</span>)))<span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">then</span>
|
30
|
+
<span class="ruby-identifier">free_sectors</span><span class="ruby-operator"><<</span>[<span class="ruby-identifier">track</span>,<span class="ruby-identifier">bit_no</span><span class="ruby-operator">+</span><span class="ruby-value">16</span>]
|
31
|
+
<span class="ruby-keyword kw">end</span>
|
32
|
+
<span class="ruby-keyword kw">end</span>
|
33
|
+
<span class="ruby-keyword kw">end</span>
|
34
|
+
<span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">sort!</span>
|
35
|
+
<span class="ruby-comment cmt"># free_sectors.each {|ts| puts "T#{ts[0]} S#{ts[1]}"}
|
16
36
|
<span class="ruby-keyword kw">end</span></pre>
|
17
37
|
</body>
|
18
38
|
</html>
|
@@ -5,88 +5,14 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>directory_entry_for_filename (CbmDos)</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 lib/file_systems/CbmDos.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">
|
15
|
-
<span class="ruby-identifier">
|
16
|
-
<span class="ruby-identifier">dir_track_no</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">image_format</span>.<span class="ruby-identifier">dir_track_no</span>
|
17
|
-
<span class="ruby-identifier">dir_sector_no</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">image_format</span>.<span class="ruby-identifier">dir_sector_no</span>
|
18
|
-
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">dir_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">dir_track_no</span><span class="ruby-operator">></span> <span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
19
|
-
<span class="ruby-identifier">directory_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">dir_track_no</span>,<span class="ruby-identifier">dir_sector_no</span>)
|
20
|
-
<span class="ruby-identifier">dir_track_no</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-value">0</span>]
|
21
|
-
<span class="ruby-identifier">dir_sector_no</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-value">1</span>]
|
22
|
-
<span class="ruby-value">0</span>.<span class="ruby-identifier">upto</span>(<span class="ruby-value">7</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry_number</span><span class="ruby-operator">|</span>
|
23
|
-
<span class="ruby-identifier">directory_entry</span>=<span class="ruby-identifier">directory_sector</span>[<span class="ruby-constant">DIRECTORY_ENTRY_SIZE</span><span class="ruby-operator">*</span><span class="ruby-identifier">entry_number</span>,<span class="ruby-constant">DIRECTORY_ENTRY_SIZE</span>]
|
24
|
-
<span class="ruby-identifier">file_name</span>=<span class="ruby-constant">C64</span>.<span class="ruby-identifier">s_to_ascii</span>(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x05</span><span class="ruby-operator">..</span><span class="ruby-value">0x14</span>]).<span class="ruby-identifier">strip</span>
|
25
|
-
<span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x00</span> <span class="ruby-comment cmt">#skip SCRATCHed files
|
26
|
-
<span class="ruby-identifier">file_type</span>=<span class="ruby-constant">FILE_TYPES</span>[<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]<span class="ruby-operator">%</span><span class="ruby-value">8</span>]
|
27
|
-
<span class="ruby-identifier">geos_file_type</span>=<span class="ruby-constant">GEOS_FILE_TYPES</span>[<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x18</span>]]
|
28
|
-
<span class="ruby-identifier">is_geos_file</span>=(<span class="ruby-identifier">geos_file_type!</span>=<span class="ruby-identifier">:not_geos</span>)
|
29
|
-
<span class="ruby-identifier">is_vlir</span>=<span class="ruby-identifier">is_geos_file</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x17</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x01</span>)
|
30
|
-
<span class="ruby-comment cmt"># puts "geos file type: #{geos_file_type} #{is_geos_file} #{is_vlir}"
|
31
|
-
<span class="ruby-identifier">file_track_no</span>=<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x03</span>]
|
32
|
-
<span class="ruby-identifier">file_sector_no</span>=<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x04</span>]
|
33
|
-
<span class="ruby-identifier">info_block</span>=<span class="ruby-identifier">nil?</span>
|
34
|
-
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
35
|
-
<span class="ruby-identifier">file_name</span>=(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x05</span><span class="ruby-operator">..</span><span class="ruby-value">0x14</span>]).<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/\xa0/</span>,<span class="ruby-value str">" "</span>).<span class="ruby-identifier">strip</span> <span class="ruby-comment cmt">#GEOS filenames will be ASCII not PETSCII
|
36
|
-
<span class="ruby-identifier">info_block</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x15</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x16</span>])
|
37
|
-
<span class="ruby-identifier">file_contents</span>=[<span class="ruby-identifier">info_block</span>]
|
38
|
-
|
39
|
-
<span class="ruby-keyword kw">end</span>
|
40
|
-
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_vlir</span>) <span class="ruby-keyword kw">then</span>
|
41
|
-
<span class="ruby-comment cmt"># puts file_name
|
42
|
-
<span class="ruby-identifier">record_block</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">file_track_no</span>,<span class="ruby-identifier">file_sector_no</span>)
|
43
|
-
<span class="ruby-value">127</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
44
|
-
<span class="ruby-identifier">record_no</span>=<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>
|
45
|
-
<span class="ruby-identifier">record_track_no</span>=<span class="ruby-identifier">record_block</span>[<span class="ruby-value">2</span><span class="ruby-operator">*</span><span class="ruby-identifier">record_no</span>]
|
46
|
-
<span class="ruby-identifier">record_sector_no</span>=<span class="ruby-identifier">record_block</span>[<span class="ruby-value">1</span><span class="ruby-operator">+</span>(<span class="ruby-value">2</span><span class="ruby-operator">*</span><span class="ruby-identifier">record_no</span>)]
|
47
|
-
<span class="ruby-identifier">record_contents</span>=<span class="ruby-keyword kw">nil</span>
|
48
|
-
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">record_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">record_track_no</span><span class="ruby-operator">></span><span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
49
|
-
<span class="ruby-identifier">record_contents</span>=<span class="ruby-value str">""</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">record_contents</span>.<span class="ruby-identifier">nil?</span>
|
50
|
-
<span class="ruby-identifier">record_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">record_track_no</span>,<span class="ruby-identifier">record_sector_no</span>)
|
51
|
-
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">record_sector</span>.<span class="ruby-identifier">nil?</span>
|
52
|
-
<span class="ruby-identifier">record_track_no</span>=<span class="ruby-identifier">record_sector</span>[<span class="ruby-value">0</span>]
|
53
|
-
<span class="ruby-identifier">record_sector_no</span>=<span class="ruby-identifier">record_sector</span>[<span class="ruby-value">1</span>]
|
54
|
-
<span class="ruby-identifier">end_of_data</span>= (<span class="ruby-identifier">record_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">record_sector</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">:</span> <span class="ruby-value">255</span>
|
55
|
-
<span class="ruby-identifier">record_contents</span><span class="ruby-operator"><<</span><span class="ruby-identifier">record_sector</span>[<span class="ruby-value">2</span><span class="ruby-operator">..</span><span class="ruby-identifier">end_of_data</span>]
|
56
|
-
<span class="ruby-keyword kw">end</span>
|
57
|
-
<span class="ruby-identifier">file_contents</span><span class="ruby-operator"><<</span>(<span class="ruby-identifier">record_contents</span>)
|
58
|
-
<span class="ruby-keyword kw">end</span>
|
59
|
-
<span class="ruby-keyword kw">else</span>
|
60
|
-
<span class="ruby-identifier">file_contents</span>=<span class="ruby-value str">""</span>
|
61
|
-
<span class="ruby-keyword kw">until</span> <span class="ruby-identifier">file_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">file_track_no</span><span class="ruby-operator">></span> <span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">end_track</span> <span class="ruby-keyword kw">do</span>
|
62
|
-
<span class="ruby-identifier">file_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">file_track_no</span>,<span class="ruby-identifier">file_sector_no</span>)
|
63
|
-
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_sector</span>.<span class="ruby-identifier">nil?</span>
|
64
|
-
<span class="ruby-identifier">file_track_no</span>=<span class="ruby-identifier">file_sector</span>[<span class="ruby-value">0</span>]
|
65
|
-
<span class="ruby-identifier">file_sector_no</span>=<span class="ruby-identifier">file_sector</span>[<span class="ruby-value">1</span>]
|
66
|
-
<span class="ruby-identifier">end_of_data</span>= (<span class="ruby-identifier">file_track_no</span><span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">file_sector</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">:</span> <span class="ruby-value">255</span>
|
67
|
-
<span class="ruby-identifier">file_contents</span><span class="ruby-operator">+=</span><span class="ruby-identifier">file_sector</span>[<span class="ruby-value">2</span><span class="ruby-operator">..</span><span class="ruby-identifier">end_of_data</span>]
|
68
|
-
<span class="ruby-comment cmt"># puts "#{file_name} #{file_track_no} #{file_sector_no} #{end_of_data}"
|
69
|
-
<span class="ruby-keyword kw">end</span>
|
70
|
-
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
71
|
-
<span class="ruby-identifier">file_contents</span>=[<span class="ruby-identifier">info_block</span>,<span class="ruby-identifier">file_contents</span>]
|
72
|
-
<span class="ruby-keyword kw">end</span>
|
73
|
-
<span class="ruby-keyword kw">end</span>
|
74
|
-
<span class="ruby-identifier">file</span>=<span class="ruby-constant">NativeFileType</span>.<span class="ruby-identifier">best_fit</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">file_name</span>,<span class="ruby-identifier">file_contents</span>,<span class="ruby-identifier">file_type</span>,<span class="ruby-identifier">geos_file_type</span>)
|
75
|
-
[<span class="ruby-identifier">file</span>].<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
|
76
|
-
|
77
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"c64_file_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x02</span>]
|
78
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"first_block"</span>]=<span class="ruby-value str">"track $%02x sector $%02x"</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x03</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">04</span>]]
|
79
|
-
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">is_geos_file</span>) <span class="ruby-keyword kw">then</span>
|
80
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_header"</span>]=<span class="ruby-value str">"track $%02x sector $%02x"</span> <span class="ruby-operator">%</span> [<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x15</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">16</span>]]
|
81
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_structure_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x17</span>]
|
82
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_type"</span>]=<span class="ruby-value str">"$%02x"</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x18</span>]
|
83
|
-
<span class="ruby-identifier">f</span>.<span class="ruby-identifier">meta_data</span>[<span class="ruby-value str">"geos_file_modified_date"</span>]=<span class="ruby-value str">"%04d-%02d-%02d %02d:%02d"</span> <span class="ruby-operator">%</span> [<span class="ruby-value">1900</span><span class="ruby-operator">+</span><span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x19</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">A</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">B</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">C</span>],<span class="ruby-identifier">directory_entry</span>[<span class="ruby-value">0x1</span><span class="ruby-constant">D</span>]]
|
84
|
-
<span class="ruby-keyword kw">end</span>
|
85
|
-
<span class="ruby-keyword kw">end</span>
|
86
|
-
<span class="ruby-identifier">files</span><span class="ruby-operator"><<</span><span class="ruby-identifier">file</span>
|
87
|
-
<span class="ruby-keyword kw">end</span>
|
88
|
-
<span class="ruby-keyword kw">end</span>
|
89
|
-
<span class="ruby-identifier">files</span>
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/file_systems/CbmDos.rb, line 126</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">directory_entry_for_filename</span>(<span class="ruby-identifier">filename</span>)
|
15
|
+
(<span class="ruby-identifier">filename</span><span class="ruby-operator">+</span>(<span class="ruby-value">0x</span><span class="ruby-constant">A0</span>.<span class="ruby-identifier">chr</span>)<span class="ruby-operator">*</span><span class="ruby-value">16</span>)[<span class="ruby-value">0</span>,<span class="ruby-value">0x10</span>]
|
90
16
|
<span class="ruby-keyword kw">end</span></pre>
|
91
17
|
</body>
|
92
18
|
</html>
|
@@ -5,34 +5,64 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>add_file (CbmDos)</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 lib/file_systems/CbmDos.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">
|
15
|
-
<span class="ruby-
|
16
|
-
<span class="ruby-identifier">
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/file_systems/CbmDos.rb, line 130</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">add_file</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">native_filetype_class</span>,<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">file_contents</span>,<span class="ruby-identifier">file_type</span>=<span class="ruby-keyword kw">nil</span>,<span class="ruby-identifier">aux_code</span>=<span class="ruby-keyword kw">nil</span>)
|
15
|
+
<span class="ruby-comment cmt">#make sure the file type is supported on CBM DOS!
|
16
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"#{native_filetype_class} not supported on CBM DOS 2.6 file system"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">native_filetype_class</span>.<span class="ruby-identifier">file_system_file_types</span>[<span class="ruby-keyword kw">self</span>].<span class="ruby-identifier">nil?</span>
|
17
|
+
<span class="ruby-identifier">expected_file_type</span>=<span class="ruby-identifier">native_filetype_class</span>.<span class="ruby-identifier">file_system_file_types</span>[<span class="ruby-keyword kw">self</span>]
|
18
|
+
<span class="ruby-identifier">file_type</span>=<span class="ruby-identifier">expected_file_type</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_type</span>.<span class="ruby-identifier">nil?</span>
|
19
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"inconsistent file_type (should be #{expected_file_type} but was #{file_type})"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">expected_file_type</span><span class="ruby-operator">==</span><span class="ruby-identifier">file_type</span>
|
20
|
+
<span class="ruby-identifier">native_file</span>=<span class="ruby-identifier">native_filetype_class</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">filename</span>,<span class="ruby-identifier">file_contents</span>,<span class="ruby-identifier">file_type</span>,<span class="ruby-identifier">aux_code</span>)
|
21
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"couldn't make #{native_filetype_class}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">native_file</span>.<span class="ruby-identifier">nil?</span>
|
22
|
+
|
23
|
+
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">delete_file</span>(<span class="ruby-identifier">filename</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">files</span>[<span class="ruby-identifier">filename</span>].<span class="ruby-identifier">nil?</span>
|
24
|
+
|
25
|
+
|
26
|
+
<span class="ruby-identifier">free_sectors</span>=<span class="ruby-identifier">free_sector_list</span>(<span class="ruby-identifier">file_system_image</span>)
|
27
|
+
<span class="ruby-identifier">sectors_needed</span>=<span class="ruby-value">1</span><span class="ruby-operator">+</span>(<span class="ruby-identifier">file_contents</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-value">254</span>)
|
28
|
+
<span class="ruby-identifier">file_sectors</span>=<span class="ruby-identifier">free_sectors</span>[(<span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">length</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">sectors_needed</span>] <span class="ruby-comment cmt">#we take a chunk out of the middle of the available sectors, so we keep as close to track 18 as possible
|
29
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"not enough free space - #{sectors_needed} sectors needed, #{file_sectors.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">file_sectors</span>.<span class="ruby-identifier">length</span>
|
30
|
+
<span class="ruby-identifier">directory_slot</span>=<span class="ruby-identifier">find_free_directory_slot</span>(<span class="ruby-identifier">file_system_image</span>)
|
31
|
+
<span class="ruby-comment cmt"># file_sectors.each {|ts| puts "T#{ts[0]} S#{ts[1]}"}
|
32
|
+
<span class="ruby-identifier">directory_slot</span>=<span class="ruby-identifier">create_empty_directory_sector</span>(<span class="ruby-identifier">file_system_image</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>.<span class="ruby-identifier">nil?</span>
|
33
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"DIRECTORY IS FULL!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>.<span class="ruby-identifier">nil?</span>
|
34
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"invalid directory slot "</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">nil?</span>
|
35
|
+
<span class="ruby-comment cmt"># puts "T#{directory_slot[0]} S#{directory_slot[1]} OFFSET #{directory_slot[2]}"
|
36
|
+
<span class="ruby-identifier">directory_track_no</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">0</span>]
|
37
|
+
<span class="ruby-identifier">directory_sector_no</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">1</span>]
|
38
|
+
<span class="ruby-identifier">directory_offset</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">2</span>]
|
39
|
+
<span class="ruby-identifier">directory_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>)
|
40
|
+
<span class="ruby-identifier">directory_filename</span>=<span class="ruby-identifier">directory_entry_for_filename</span>(<span class="ruby-identifier">filename</span>)
|
41
|
+
<span class="ruby-identifier">file_code</span>=<span class="ruby-constant">FILE_TYPES</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">native_file</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">file_system_file_types</span>[<span class="ruby-constant">CbmDos</span>])
|
42
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"invalid file type"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_code</span>.<span class="ruby-identifier">nil?</span>
|
43
|
+
<span class="ruby-identifier">file_code</span><span class="ruby-operator">+=</span><span class="ruby-value">0x80</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file_code</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-comment cmt">#DEL files should be OPEN, all other files should be CLOSED
|
44
|
+
<span class="ruby-comment cmt"># puts "%x" % file_code
|
45
|
+
<span class="ruby-identifier">directory_entry</span>=[<span class="ruby-identifier">file_code</span>,<span class="ruby-identifier">file_sectors</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>],<span class="ruby-identifier">file_sectors</span>[<span class="ruby-value">0</span>][<span class="ruby-value">1</span>],<span class="ruby-identifier">directory_filename</span>,<span class="ruby-identifier">file_sectors</span>.<span class="ruby-identifier">length</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">"CCCa16x9v"</span>)
|
46
|
+
<span class="ruby-comment cmt"># puts "start of file #{filename} will be T #{file_sectors[0][0]} S #{file_sectors[0][1]}"
|
47
|
+
<span class="ruby-identifier">sectors_needed</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
48
|
+
<span class="ruby-identifier">this_track_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">0</span>]
|
49
|
+
<span class="ruby-identifier">this_sector_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>]
|
50
|
+
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">i</span><span class="ruby-operator">==</span>(<span class="ruby-identifier">sectors_needed</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>) <span class="ruby-keyword kw">then</span>
|
51
|
+
<span class="ruby-identifier">next_track_no</span>=<span class="ruby-value">0</span>
|
52
|
+
<span class="ruby-identifier">data_length</span>=(<span class="ruby-identifier">file_contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">%</span> <span class="ruby-value">254</span>)
|
53
|
+
<span class="ruby-identifier">next_sector_no</span>=<span class="ruby-identifier">data_length</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>
|
54
|
+
<span class="ruby-keyword kw">else</span>
|
55
|
+
<span class="ruby-identifier">next_track_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>][<span class="ruby-value">0</span>]
|
56
|
+
<span class="ruby-identifier">next_sector_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>][<span class="ruby-value">1</span>]
|
57
|
+
<span class="ruby-identifier">data_length</span>=<span class="ruby-value">254</span>
|
33
58
|
<span class="ruby-keyword kw">end</span>
|
34
|
-
<span class="ruby-identifier">
|
35
|
-
<span class="ruby-
|
59
|
+
<span class="ruby-identifier">sector_data</span>=[<span class="ruby-identifier">next_track_no</span>,<span class="ruby-identifier">next_sector_no</span>,<span class="ruby-identifier">file_contents</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">*</span><span class="ruby-value">254</span>,<span class="ruby-identifier">data_length</span>] ].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">"CCA254"</span>)
|
60
|
+
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">this_track_no</span>,<span class="ruby-identifier">this_sector_no</span>,<span class="ruby-identifier">sector_data</span>)
|
61
|
+
<span class="ruby-identifier">mark_sector_as_used</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">this_track_no</span>,<span class="ruby-identifier">this_sector_no</span>)
|
62
|
+
<span class="ruby-keyword kw">end</span>
|
63
|
+
<span class="ruby-identifier">directory_sector</span>[<span class="ruby-identifier">directory_offset</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>,<span class="ruby-value">0x1</span><span class="ruby-constant">D</span>]=<span class="ruby-identifier">directory_entry</span> <span class="ruby-comment cmt">#skip over the first 2 bytes, which are the track / sector of next directory sector in slot 1, or 0/0 in other slots
|
64
|
+
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>,<span class="ruby-identifier">directory_sector</span>)
|
65
|
+
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">native_file</span>
|
36
66
|
<span class="ruby-keyword kw">end</span></pre>
|
37
67
|
</body>
|
38
68
|
</html>
|
@@ -5,14 +5,28 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>find_free_directory_slot (CbmDos)</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 lib/file_systems/CbmDos.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">
|
15
|
-
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/file_systems/CbmDos.rb, line 185</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">find_free_directory_slot</span>(<span class="ruby-identifier">file_system_image</span>)
|
15
|
+
<span class="ruby-identifier">directory_track_no</span>=<span class="ruby-value">18</span>
|
16
|
+
<span class="ruby-identifier">directory_sector_no</span>=<span class="ruby-value">1</span>
|
17
|
+
<span class="ruby-keyword kw">while</span> (<span class="ruby-identifier">directory_track_no</span> <span class="ruby-operator">!=</span><span class="ruby-value">0</span>) <span class="ruby-keyword kw">do</span>
|
18
|
+
<span class="ruby-identifier">directory</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>)
|
19
|
+
<span class="ruby-identifier">raise</span> <span class="ruby-node">"attempted to read invalid directory sector at T #{directory_track_no} S#{directory_sector_no}"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory</span>.<span class="ruby-identifier">nil?</span>
|
20
|
+
<span class="ruby-value">8</span>.<span class="ruby-identifier">times</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">0x20</span>
|
22
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">directory</span>[<span class="ruby-identifier">slot_start</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>]<span class="ruby-operator">==</span><span class="ruby-value">0x00</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">directory</span>[<span class="ruby-identifier">slot_start</span><span class="ruby-operator">+</span><span class="ruby-value">2</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-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>,<span class="ruby-identifier">slot_start</span>]
|
24
|
+
<span class="ruby-keyword kw">end</span>
|
25
|
+
<span class="ruby-keyword kw">end</span>
|
26
|
+
<span class="ruby-identifier">directory_track_no</span>=<span class="ruby-identifier">directory</span>[<span class="ruby-value">00</span>]
|
27
|
+
<span class="ruby-identifier">directory_sector_no</span>=<span class="ruby-identifier">directory</span>[<span class="ruby-value">01</span>]
|
28
|
+
<span class="ruby-keyword kw">end</span>
|
29
|
+
<span class="ruby-keyword kw">nil</span>
|
16
30
|
<span class="ruby-keyword kw">end</span></pre>
|
17
31
|
</body>
|
18
32
|
</html>
|
@@ -5,64 +5,24 @@
|
|
5
5
|
|
6
6
|
<html>
|
7
7
|
<head>
|
8
|
-
<title>
|
8
|
+
<title>mark_sector_as_used (CbmDos)</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 lib/file_systems/CbmDos.rb, line
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">
|
15
|
-
<span class="ruby-
|
16
|
-
<span class="ruby-identifier">
|
17
|
-
<span class="ruby-identifier">
|
18
|
-
<span class="ruby-identifier">
|
19
|
-
<span class="ruby-identifier">
|
20
|
-
|
21
|
-
<span class="ruby-identifier">
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
<span class="ruby-identifier">free_sectors</span>=<span class="ruby-identifier">free_sector_list</span>(<span class="ruby-identifier">file_system_image</span>)
|
27
|
-
<span class="ruby-identifier">sectors_needed</span>=<span class="ruby-value">1</span><span class="ruby-operator">+</span>(<span class="ruby-identifier">file_contents</span>.<span class="ruby-identifier">length</span><span class="ruby-operator">/</span><span class="ruby-value">254</span>)
|
28
|
-
<span class="ruby-identifier">file_sectors</span>=<span class="ruby-identifier">free_sectors</span>[(<span class="ruby-identifier">free_sectors</span>.<span class="ruby-identifier">length</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">sectors_needed</span>] <span class="ruby-comment cmt">#we take a chunk out of the middle of the available sectors, so we keep as close to track 18 as possible
|
29
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-node">"not enough free space - #{sectors_needed} sectors needed, #{file_sectors.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">file_sectors</span>.<span class="ruby-identifier">length</span>
|
30
|
-
<span class="ruby-identifier">directory_slot</span>=<span class="ruby-identifier">find_free_directory_slot</span>(<span class="ruby-identifier">file_system_image</span>)
|
31
|
-
<span class="ruby-comment cmt"># file_sectors.each {|ts| puts "T#{ts[0]} S#{ts[1]}"}
|
32
|
-
<span class="ruby-identifier">directory_slot</span>=<span class="ruby-identifier">create_empty_directory_sector</span>(<span class="ruby-identifier">file_system_image</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>.<span class="ruby-identifier">nil?</span>
|
33
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"DIRECTORY IS FULL!"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>.<span class="ruby-identifier">nil?</span>
|
34
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"invalid directory slot "</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">nil?</span>
|
35
|
-
<span class="ruby-comment cmt"># puts "T#{directory_slot[0]} S#{directory_slot[1]} OFFSET #{directory_slot[2]}"
|
36
|
-
<span class="ruby-identifier">directory_track_no</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">0</span>]
|
37
|
-
<span class="ruby-identifier">directory_sector_no</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">1</span>]
|
38
|
-
<span class="ruby-identifier">directory_offset</span>=<span class="ruby-identifier">directory_slot</span>[<span class="ruby-value">2</span>]
|
39
|
-
<span class="ruby-identifier">directory_sector</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>)
|
40
|
-
<span class="ruby-identifier">directory_filename</span>=<span class="ruby-identifier">directory_entry_for_filename</span>(<span class="ruby-identifier">filename</span>)
|
41
|
-
<span class="ruby-identifier">file_code</span>=<span class="ruby-constant">FILE_TYPES</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">native_file</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">file_system_file_types</span>[<span class="ruby-constant">CbmDos</span>])
|
42
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-value str">"invalid file type"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_code</span>.<span class="ruby-identifier">nil?</span>
|
43
|
-
<span class="ruby-identifier">file_code</span><span class="ruby-operator">+=</span><span class="ruby-value">0x80</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file_code</span><span class="ruby-operator">==</span><span class="ruby-value">0</span> <span class="ruby-comment cmt">#DEL files should be OPEN, all other files should be CLOSED
|
44
|
-
<span class="ruby-comment cmt"># puts "%x" % file_code
|
45
|
-
<span class="ruby-identifier">directory_entry</span>=[<span class="ruby-identifier">file_code</span>,<span class="ruby-identifier">file_sectors</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>],<span class="ruby-identifier">file_sectors</span>[<span class="ruby-value">0</span>][<span class="ruby-value">1</span>],<span class="ruby-identifier">directory_filename</span>,<span class="ruby-identifier">file_sectors</span>.<span class="ruby-identifier">length</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">"CCCa16x9v"</span>)
|
46
|
-
<span class="ruby-comment cmt"># puts "start of file #{filename} will be T #{file_sectors[0][0]} S #{file_sectors[0][1]}"
|
47
|
-
<span class="ruby-identifier">sectors_needed</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
48
|
-
<span class="ruby-identifier">this_track_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">0</span>]
|
49
|
-
<span class="ruby-identifier">this_sector_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span>][<span class="ruby-value">1</span>]
|
50
|
-
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">i</span><span class="ruby-operator">==</span>(<span class="ruby-identifier">sectors_needed</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>) <span class="ruby-keyword kw">then</span>
|
51
|
-
<span class="ruby-identifier">next_track_no</span>=<span class="ruby-value">0</span>
|
52
|
-
<span class="ruby-identifier">data_length</span>=(<span class="ruby-identifier">file_contents</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">%</span> <span class="ruby-value">254</span>)
|
53
|
-
<span class="ruby-identifier">next_sector_no</span>=<span class="ruby-identifier">data_length</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>
|
54
|
-
<span class="ruby-keyword kw">else</span>
|
55
|
-
<span class="ruby-identifier">next_track_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>][<span class="ruby-value">0</span>]
|
56
|
-
<span class="ruby-identifier">next_sector_no</span>=<span class="ruby-identifier">file_sectors</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>][<span class="ruby-value">1</span>]
|
57
|
-
<span class="ruby-identifier">data_length</span>=<span class="ruby-value">254</span>
|
58
|
-
<span class="ruby-keyword kw">end</span>
|
59
|
-
<span class="ruby-identifier">sector_data</span>=[<span class="ruby-identifier">next_track_no</span>,<span class="ruby-identifier">next_sector_no</span>,<span class="ruby-identifier">file_contents</span>[<span class="ruby-identifier">i</span><span class="ruby-operator">*</span><span class="ruby-value">254</span>,<span class="ruby-identifier">data_length</span>] ].<span class="ruby-identifier">pack</span>(<span class="ruby-value str">"CCA254"</span>)
|
60
|
-
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">this_track_no</span>,<span class="ruby-identifier">this_sector_no</span>,<span class="ruby-identifier">sector_data</span>)
|
61
|
-
<span class="ruby-identifier">mark_sector_as_used</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">this_track_no</span>,<span class="ruby-identifier">this_sector_no</span>)
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/file_systems/CbmDos.rb, line 203</span>
|
14
|
+
<span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">mark_sector_as_used</span>(<span class="ruby-identifier">file_system_image</span>,<span class="ruby-identifier">track_no</span>,<span class="ruby-identifier">sector_no</span>)
|
15
|
+
<span class="ruby-identifier">bam</span>=<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">get_sector</span>(<span class="ruby-value">18</span>,<span class="ruby-value">0</span>)
|
16
|
+
<span class="ruby-identifier">bam_entry_offset</span>=<span class="ruby-identifier">track_no</span><span class="ruby-operator">*</span><span class="ruby-value">4</span>
|
17
|
+
<span class="ruby-identifier">sector_offset</span>=<span class="ruby-identifier">sector_no</span><span class="ruby-operator">/</span><span class="ruby-value">8</span>
|
18
|
+
<span class="ruby-identifier">bitmask</span>=<span class="ruby-value">2</span><span class="ruby-operator">**</span>(<span class="ruby-identifier">sector_no</span> <span class="ruby-operator">%</span> <span class="ruby-value">8</span>)
|
19
|
+
<span class="ruby-identifier">existing_bam_byte</span>=<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">bam_entry_offset</span><span class="ruby-operator">+</span><span class="ruby-identifier">sector_offset</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]
|
20
|
+
<span class="ruby-comment cmt"># puts "T #{"%02x"% track_no} S #{"%02x"% sector_no} L #{"%02x"% bam_entry_offset} sector_offset #{sector_offset} mask #{"%08b" % bitmask} was #{"%08b" % existing_bam_byte}"
|
21
|
+
<span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">existing_bam_byte</span> <span class="ruby-operator">&</span> <span class="ruby-identifier">bitmask</span>)<span class="ruby-operator">==</span>(<span class="ruby-identifier">bitmask</span>) <span class="ruby-keyword kw">then</span>
|
22
|
+
<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">bam_entry_offset</span><span class="ruby-operator">+</span><span class="ruby-identifier">sector_offset</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>]<span class="ruby-operator">-=</span><span class="ruby-identifier">bitmask</span>
|
23
|
+
<span class="ruby-identifier">bam</span>[<span class="ruby-identifier">bam_entry_offset</span>]<span class="ruby-operator">-=</span><span class="ruby-value">1</span>
|
24
|
+
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">set_sector</span>(<span class="ruby-value">18</span>,<span class="ruby-value">0</span>,<span class="ruby-identifier">bam</span>)
|
62
25
|
<span class="ruby-keyword kw">end</span>
|
63
|
-
<span class="ruby-identifier">directory_sector</span>[<span class="ruby-identifier">directory_offset</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>,<span class="ruby-value">0x1</span><span class="ruby-constant">D</span>]=<span class="ruby-identifier">directory_entry</span> <span class="ruby-comment cmt">#skip over the first 2 bytes, which are the track / sector of next directory sector in slot 1, or 0/0 in other slots
|
64
|
-
<span class="ruby-identifier">file_system_image</span>.<span class="ruby-identifier">set_sector</span>(<span class="ruby-identifier">directory_track_no</span>,<span class="ruby-identifier">directory_sector_no</span>,<span class="ruby-identifier">directory_sector</span>)
|
65
|
-
<span class="ruby-keyword kw">return</span> <span class="ruby-identifier">native_file</span>
|
66
26
|
<span class="ruby-keyword kw">end</span></pre>
|
67
27
|
</body>
|
68
28
|
</html>
|