Support bios that expect a BPB being present #1
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Depends on
#2 Figure out how we support real realmode codegen
chalk-os/rustboot
Reference: chalk-os/rustboot#1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Some bios variants expect a BIOSPparameterBlock being present, which they also happily write inside thus screwing with the assembly in our bootsector.
Essentially blocked by the real realmode codegen problem since a BPB (or realisticly a EBPB) eats around 32 - 51 bytes (plus 3 bytes offset / initial jump), but currently we only have ~20 bytes wiggleroom.
Most of the bytes used tho are "useless" bc rust + LLVM try to encode everything in 32bit instructions where they perfectly fine could be 16bit ones (i.e. an 16bit value is mapped to an 32bit register and a 32bit move is used to load an 16bit immediate value into it...)