Ok, what would it take to write a BIOS in asembly languige, not planing on doing it. ; no money for chips and thats crazy. So...

Really, in its most simple form , the BIOS can be nothing more than the code to initialize the chipset, turn on RAM and find some device to load in an OS loader from.
All BIOS from the original PC on were written in Assembler, all new BIOS are now based on UEFI which is mostly C based.

If you want to support a current BIOS you will need some of the following:
Chip set initialization Guidelines from the chip set vendor (generally only given to people who sign an NDA)
Knowledge of ACPI and perhaps even DMI memory constructs.
You will need to create a memory table which can be queried by an E820 interrupt call.
Depending on the OS you want to load you may need to implement PCI BIOS calls and enumerate all devices on your bus and setup interrupt routing.

There can be more or less in there depending on what you want to support.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.