Hi,
Prochamber wrote:Brendan wrote:brain wrote:I assume you have a really good reason for not switching into protected mode so i won't evangelise that.
This is a false assumption. There is only one good reason for not switching into protected mode - it's called long mode.
Sadly, lazy beginners that don't know better see the BIOS as a way of avoiding the need to write device drivers; and use this as an excuse to waste years developing a piece of crud, while failing to learn anything about developing a real OS. It's unethical not to (attempt to) prevent these beginners from heading down this dead-end path; especially now that the entire industry is shifting to UEFI.
Well, I wasn't really expecting any insults. Firstly
THERE IS NOTHING WRONG WITH BIOS!
Wrong. Hardware is capable of reading from disk while reading from floppy while sending/receiving packets on the network while playing audio while blitting data to video while transferring data from web cam; while all of the CPUs are still free to get real work done. As soon as you use BIOS for any of this it turns into a "one piece of hardware at a time" joke.
Worse, when you finally do get around to writing a real OS it makes it hard because you've designed everything around "land of puss" and don't have the framework needed for anything decent. For example, you might be tempted to write a decent ethernet driver, but you can't use MSI like you should because that'd break everything, and don't have decent power management because the BIOS sucked and couldn't use it anyway, and don't have reasonable IO priorities because the BIOS is too crappy to use them, etc.
Even more worse; the only "drivers" you actually gain by turning your OS into a crippled mess are things like SATA/PATA controllers that have standardised interfaces; where writing a small number of drivers covers a large range of hardware. Things like ethernet and sound and GPUs (where you'd need to write a large number of drivers for a small range of hardware) aren't supported by the BIOS. Basically you only "gain" (if you can call it that) where it's doesn't matter much and you don't gain anything where it does matter.
Prochamber wrote:Is it so wrong that I want to get my operating system off the ground without worrying about writing low level drivers for everything?
Yes, it is wrong. You're not getting your OS off the ground, you're digging a hole to bury the OS in.
Prochamber wrote:If I had started writing in protected mode I would not have been able to start at all.
You wasted time doing things wrong, and then started learning how to do things right. You could've of skipped "doing things wrong" to save time.
Prochamber wrote:I know NOW how to write device driver, I didn't when I started. I have written drivers for some devices but I will slowly replace BIOS drivers in a way that they remain compatible this takes times and will not happen overnight.
How does "replace BIOS drivers in a way that they remain compatible" help? You want drivers to be good, not "compatible with puss".
Let's build a car. We'll start with a dead horse, and slowly replace pieces one at a time without breaking compatibility. You start designing a pump to replace the mouldy old heart, and I'll start trying to design some sort of filter to use instead of the maggot infested kidneys. This will be the best car ever!
Prochamber wrote:Also, I'm pretty such UEFI will still support legacy BIOS so it is not a "dead-end path". Even if there is not BIOS support I can still run in an emulator or write my own imitations of BIOS drivers.
Now that Microsoft requires UEFI (for their hardware compatibility logo thing), the only excuse motherboard manufacturers have to bother with BIOS is old OSs. This mostly means Windows XP, which is probably the only OS that consumers still care about that doesn't support UEFI. We may have less than 5 years before BIOS isn't supported on new hardware.
Running inside an emulator sounds like a dead-end path to me. Writing your own "BIOS imitation drivers" doesn't make sense (it'd be easier to write native drivers instead).
Prochamber wrote:I can't read any more of this because you persist in insulting everything I have created. I know what protected mode is and I have written code for it. I am not a beginner and yes, I understand what I am getting into. Why don't you and the rest of your protected mode elitists go off to some other forum where you can write your "real operating systems" and leave the rest of us alone.
At the moment, you may hate me for insulting your work. That's fine (I really don't mind). Just don't forget to thank me later when you realise I was right; even if "later" means "several years of mistakes that you eventually regret because you didn't want to listen now".
Cheers,
Brendan