Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

DOS specifications ("standards") (Developers)

posted by ecm Homepage E-mail, Düsseldorf, Germany, 20.11.2020, 16:08

> 3. MBR amendments to support blocks (sectors) above 4G

GPT is right there. I don't think extending the MBR scheme is going to be supported by many implementations.

(For a hack, we could try to support "33 bit LBA" schemes, ie the 32-bit fields for start and length are kept, but it is valid for start and length to *both* be up to FFFF_FFFFh, so (with 512 B/s) a 2 TiB - 512 B FAT32 partition may start at sector FFFF_FFFFh. That is, allowing to use nearly 4 TiB of hard disk space. I'm considering adding that to my early loader (iniload), debugger, and kernel. Most difficult would be the boot sector loaders due to space being at a premium there.)

> 4. large file support (llseek, etc.)

> Where it makes sense, existing specifications should be amended, but some
> things may be better to redo from scratch.

There's FAT+ for FAT32 (and big-cluster FAT16) to store files up to 256 GiB - 1 B in size. (Up from the prior limit of either (commonly) 2 GiB - 1 B or (if using unsigned values) 4 GiB - 1 B). EDR-DOS is the only implementation of this yet.

And here's a description of EDR-DOS's llseek function 7142h. This interface, and corresponding seek offset and size field extensions in the SFTs, allows using 64-bit seeks.

EDR-DOS also allows using a cluster size of "zero" in the BPB byte to mean "256", which (on 512 B/s units) results in 128 KiB clusters. I'm partially supporting that already (in the loaders and debugger), and will add it to the RxDOS kernel eventually.

---
l

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 167 users online (0 registered, 167 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum