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

Could Beelzebub fit on a floppy? #28

Open
informer2016 opened this issue Dec 14, 2017 · 15 comments
Open

Could Beelzebub fit on a floppy? #28

informer2016 opened this issue Dec 14, 2017 · 15 comments

Comments

@informer2016
Copy link

informer2016 commented Dec 14, 2017

Hi @vercas ! I just noticed that Beelzebub's ISO size from the latest release is just 830 KB - so it seems that Beelzebub could fit inside a floppy! Even today the floppies are still being used, for example - as virtual floppies inside the coreboot open source BIOS. Just imagine: your wonderful OS could be a part of someone's BIOS build! (for coreboot supported motherboard, maybe you have or could get one - see https://www.coreboot.org/Supported_Motherboards )

Please tell , are there any planned Beelzebub releases in a floppy format? (even 2.88 MB is supported, although 1.44 MB will be preferred because a space inside a BIOS flash chip is very limited, could be just 4 MB total with about 3 MB free space left for floppies after the primary BIOS part)

@vercas
Copy link
Owner

vercas commented Dec 14, 2017 via email

@informer2016
Copy link
Author

informer2016 commented Dec 14, 2017

@vercas Your OS could potentially become useful for some practical purposes - like KolibriOS which also fits on a floppy. Also - if you have a chance to get a coreboot supported motherboard - wouldn't it be cool to be able to launch your own OS straight from the BIOS? ;) Its very easy to add any floppy to coreboot BIOS build and then you see it as a boot entry, multiple floppies could be added this way (as long as you have enough space, luckily LZMA compression could be used for the stored floppies to reduce their occupied size)

@vercas
Copy link
Owner

vercas commented Dec 14, 2017 via email

@informer2016
Copy link
Author

informer2016 commented Dec 14, 2017

@vercas, for example - imagine you would like to edit some text files at your hard drive very quickly and don't want to wait for the main OS to boot (which could take a few minutes). You just start your "floppy OS" from a BIOS ROM and instantly could access and edit these files! It would be nice to have such an opportunity - and in any case it can be a good idea to occupy the remaining free space at BIOS ROM chip with something useful - or just for fun

@vercas
Copy link
Owner

vercas commented Dec 14, 2017

Hm, I can certainly think of more use cases now.
Yeah, this is something I'd definitely work on eventually.

Only problem is: I don't have a coreboot-compatible mobo. Or a desktop, for that matter.

@informer2016
Copy link
Author

informer2016 commented Dec 14, 2017

@vercas, Hopefully you will have a chance to get the coreboot-supported board in the future, e.g. I saw a used Lenovo G505S (powerful A10-5750M quad-core AMD laptop supported by coreboot, could have 16GB RAM also) for just $100 at eBay, not sure if its still there though... According to https://github.com/coreboot/seabios/blob/master/src/hw/floppy.c , any floppy could be added - as long as it is one of these sizes listed below

// 1 - 360KB, 5.25" - 2 heads, 40 tracks, 9 sectors
// 2 - 1.2MB, 5.25" - 2 heads, 80 tracks, 15 sectors
// 3 - 720KB, 3.5"  - 2 heads, 80 tracks, 9 sectors
// 4 - 1.44MB, 3.5" - 2 heads, 80 tracks, 18 sectors
// 5 - 2.88MB, 3.5" - 2 heads, 80 tracks, 36 sectors
// 6 - 160k, 5.25"  - 1 heads, 40 tracks, 8 sectors
// 7 - 180k, 5.25"  - 1 heads, 40 tracks, 9 sectors
// 8 - 320k, 5.25"  - 2 heads, 40 tracks, 8 sectors

it is possible to have more than 1 floppy of course, and if you use LZMA compression option while putting this floppy image to the BIOS - it will occupy less space there, and will be quickly uncompressed by the BIOS when you try to boot it

@vercas
Copy link
Owner

vercas commented Dec 14, 2017

I am definitely interested in this with one goal in mind: being able to use the same OS installation with any disk, so you can swap disks in and out at any time, without having to make sure it's installed on each disk.
Beelzebub can also double as a bootloader in this case, so it may be able to chainload other OSes.
Or, even better: boot disks into VM.

I'll have to slim down the kernel a bit (which I'm already doing) and get rid of more bloat. For instance, the initrd shouldn't be the fake sysroot created in order to build the OS.
Things like headers and static libraries aren't needed.

@informer2016
Copy link
Author

@vercas yes there are a lot of possible opportunities ;) I will be following your project and wish you good luck

@informer2016
Copy link
Author

informer2016 commented Nov 18, 2018

@vercas Hi there, Alexandru ! 😉 Any updates regarding a possible floppy build? I'll be updating my coreboot in the near future and that would be a good opportunity to test your OS as a part of coreboot - I will do it if a floppy would be available

@vercas
Copy link
Owner

vercas commented Nov 19, 2018

@informer2016 Sorry for the lack of updates, I've been really busy with work.
Once I finish a major project at work (really soon actually), I'll get back to development.
I have lots of changes that I just haven't pushed to the repo yet... I will once I make sure the build is stable.

@informer2016
Copy link
Author

@vercas no problem, I'll be checking Beelzebub sometimes (nice name btw) to see if there are any news... Wish you a nice coming holidays ! 😉 🎄

@informer2016
Copy link
Author

@vercas Happy to see you back at Beelzebub 😃 any news about a floppy build? 😉

@vercas
Copy link
Owner

vercas commented Apr 11, 2019

@informer2016 There's a lot of bizzare issues to fix before I can have a proper build...
If I just build it with all the bugs, I won't know which has something to do with the floppy build specifically and which doesn't.

@vercas
Copy link
Owner

vercas commented May 12, 2019

@informer2016 FYI I'm nearly done squashing bugs. There's some weird stuff going on, probably because I'm using a newer GCC version to compile and it's finding more UB in my code, but I'm working on it...
e.g. When I remove the debug print at the beginning of the mailbox test, it stops working...

In the meantime, I added a proper scheduler (required for a couple of tests).

@informer2016
Copy link
Author

Good day @vercas ! Any news my friend?

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

No branches or pull requests

2 participants