I recently decided to partially start anew with my rust kernel project. I wanted to add bootloader support instead of relying on the bootimage tool. For this I went with Limine and the Limine Boot Protocol since it has the ability to load a 64-bit kernel ELF directly. To test this project I use QEMU with OVMF.
Right now I have the serial port as an output for debugging purposes, but I want to add some basic text plotting since, as far as I know, UEFI does not support VGA text mode. Before that is possible however, I need to be able to manipulate the framebuffers, but unfortunately I haven't been able to get this to work.
As of now I do get a response to my Limine framebuffer request, however when I read it (there is only one framebuffer), the only populated value is the framebuffer pointer, the rest is all zeroes.
You may find the implementation here https://github.com/h3tR/limine-protocol ... ree/master, this is a tiny library I've written.
The actual requests that are being linked into the kernel binary are pretty much exactly what's in the example code.
I can't really figure out what's wrong. I can't find anyone else who had this problem and asking AI isn't much help either.
I'd almost think this is an issue with Limine itself but I'd like to ask here first before I open an issue for my terrible code
That would be quite embarrasing.
Anyways, thanks a lot for your help
