Hi Aitor, > Eric Auer escribió: > > PS: If MS DOS allows you to access a drive which is bigger than > > the reachable range of your BIOS then MS DOS has a bug. It should > > ONLY allow you to access drive letters (partitions) on your harddisk > > which are ENTIRELY inside the reachable-by-BIOS range (usually at > > least 504 MB even for old BIOSes). > > Why? If it behaves nicely with data stored beyond BIOS range then it > seems it's doing well...
I once (ages ago when I was using MS DOS) lost a FAT because the access did just wrap around from the last to the first cylinder. So access beyond the officially available range must ONLY be activated if the user KNOWS that the BIOS has a bug in REPORTING the size but supports ACCESSING data even beyond the supported size... My point is: There ARE BIOSes which actually support access to 1024 cylinders or to 2^28 LBA sectors or even 2^32 LBA sectors but which have a BUG which prevents them from reporting that. For SUCH BIOSes it would be very nice to have a SYS CONFIG option which allows bypassing of the limits! In particular, loading UDMA2 from DOS can be used to access 2^32 LBA sectors EVEN if the BIOS supports less than that! So the SYS CONFIG option that I suggest would allow DOS to accept partitions which overlap the BIOS-accessible range as long as the USER makes sure to load UDMA2 before crossing the range (e.g. load UDAM2 from C: which is entirely in range before accessing D: which reaches beyond the BIOS-accessible range). Note that FreeDOS cannot detect partitions whose partition information is out of range itself (i.e. which are ext. partitions which START beyond the range) because the partition table scan is only done at boot time. So the logics would be: The bypass-limits option disables the CHS max cylinder number check completely, and allows LBA partition ENDs to be beyond the BIOS-reported LBA size of the disk. It would be a question of testing whether there are BIOSes which actually SUPPORT access beyond the reported LBA size even without the need to load UDMA2. I think many BIOSes WILL support such acces for up to 2^28 (2^24?) sectors, yet another thing which could make the bypass-limits option more effective. What I have in mind are in particular BIOSes for which you have to force fixed CHS geometries because they would crash in their CHS setup for LBA disks bigger than 32 GB. For those, you know that the LBA size is bigger, but the BIOS must not know it, so the BIOS must believe that the disk is smaller. DOS itself will later use LBA instead of CHS anyway, so bypass-limits would be a very nice solution for such BIOSes. What I have in mind for the bypass-CHS-limits part of the story are BIOSes for which you have to pick one of a fixed set of geometries due to CMOS setup limitations, while you can actually use up to 1024 cylinders under that geometry without problems. Eric ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click _______________________________________________ Freedos-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-devel
