----- Original Message ----- From: "Ruud Baltissen" <Ruud.Baltissen@abp.nl> To: <cbm-hackers@cling.gu.se>; "CommodoreOne" <CommodoreOne@yahoogroups.com> Sent: Thursday, September 20, 2001 10:33 PM Subject: Saving a File | Hallo allemaal, | | When saving a file, the 1541 checks the BAM to see what sector is free. | Actually the 1541 doesn't check the BAM but the memory in $0700/$07FF where | a copy of the BAM is stored. | | Saving a file on the harddisk means I need to check and update the BAM as | well. Unfortunately this BAM probably is so big (need 32 KB for every 100 | MB) that it is impossible to load it in memory. I could load, update and | save the BAM sector every time I save a sector of the file to be saved but | that is ridiculous IMO. | On the other hand I can load a BAM sector into memory, use it until it is | full, save it to disk again and use another one. After saving the complete | file, the BAM sector is saved again to disk. | | So far no problem. But now suppose I have to alocate a set of random | sectors. In this case the Kernal has no idea where to store them in the | first place. It could calculate if the bit of the sector to be alocated can | be found in memory so at least no loading of the according BAM sector is | needed. But it does not know if this is the last sector to be alocated and | so to be sure it must save the memory after each update. | | My first question is: does anybody know how the 1581, 8250 and 90x0 handle | this situation? I'm guessing that since the 1581 has a track cache, it would have enough memory for its 2 BAM sectors. | 2nd one: any other ideas? | | Thanks. | ___ | / __|__ | / / |_/ Groetjes, Ruud | \ \__|_\ | \___| http://Ruud.C64.org | | | | | | Message was sent through the cbm-hackers mailing list | Message was sent through the cbm-hackers mailing list
Archive generated by hypermail 2.1.1.