Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filesystem Proposal: bfs512/BBFS #32

Open
interfect opened this issue Oct 14, 2016 · 2 comments
Open

Filesystem Proposal: bfs512/BBFS #32

interfect opened this issue Oct 14, 2016 · 2 comments

Comments

@interfect
Copy link

Hello,

Seeing as how F-FAT16 hasn't been re-implemented yet, I was wondering if I could prevail upon y'all to implement bfs512, the filesystem used in @Blecki's DCPUB language library, in addition or instead. It's a fairly simple system that I like a lot; there's a free bitmap for finding free sectors and basically an array of next-sector pointers that let you trace out the sectors a file uses by jumping from one to the next. Files are defined by their start sector number, and directories are just files listing names and start sector numbers. There's a provision for a Tech Compliant-style boot sector, and I have a bootloader that can load a file that could be reused or cribbed off of. There are also some reserved words left over in the header layout if things like volume labels or serial numbers are desired.

It's pretty easy to implement because there's no messing around with ranges and things, and there's already code in B, bleki's C-like language, that could maybe be cribbed off of. I also have a nice diagram in my assembly implementation (where I call the same system BBFS for historical/laziness reasons).

I think it would be best if people can share a filesystem between projects, and this one is nice, kinda documented, and already has two implementations (Blecki's and mine) that are supposed to be interoperable.

If you don't want to support it, could I at least prevail upon you to do a writeup of how F-FAT16 lays out its disks?

@Yamakaky
Copy link
Contributor

Yamakaky commented Oct 14, 2016

Of course, make a PR! We would be happy to integrate it! It's always better to support multiple filesystems. Let's start the game with standards from the beginning ;)

@L3nn0x
Copy link
Member

L3nn0x commented Oct 14, 2016

Because we plan on using modules, i'd be very easy to implement a new file system or a new driver. We don't have the specs yet but it's planned. So yeah, implementing BBFS is a really good idea ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants