Re: Saving a File

From: Nathan Smith (stryyker16_at_hotmail.com)
Date: 2001-09-20 15:01:41

----- 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.