e2515c1109
Buildsystem: default bootloader is not my custom one
...
You can set BANAN_BOOTLOADER=GRUB to use grub instead. Image creation
does not convert disk image now automatically between bootloaders and
calling ./bos image-full is now required.
2023-11-18 17:18:03 +02:00
6e2443ca72
Bootloader do some directory restructuring
2023-11-18 13:59:45 +02:00
a312d75bb2
Bootloader: Implement VESA video mode query and pass it to kernel
...
Kernel now gets framebuffer from bootloader. Framebuffer dimensions
and bpp are hardcoded in bootloader, but will probably be read from
config file at some point.
2023-11-17 22:45:35 +02:00
a554bd0fd8
Bootloader: Fix kernel memset to zero
2023-11-17 21:05:02 +02:00
f0d2a211ea
Bootloader add temporary initial command line
...
This will probably be read from some config file at some point
2023-11-17 20:38:38 +02:00
065eec430e
Kernel/Bootloader: banan-os can now be booted with my bootloader :D
2023-11-17 20:33:02 +02:00
5f4d81a502
Bootloader: Clear screen, better memcpy
...
Clear screen before jumping to kernel. Memcpy now uses ebx as offset
register, so only one register has to updated every loop
2023-11-17 20:31:42 +02:00
07ae1bbf34
Bootloader: Load kernel to memory and jump to it!
2023-11-17 16:36:29 +02:00
03b80ed113
Bootloader enter unreal mode at the start of stage2
2023-11-17 14:22:21 +02:00
407a7b80c5
Bootloader: Fix getting command line
2023-11-17 13:17:44 +02:00
8b4f169d0f
Bootloader: implement reading from inode
2023-11-17 13:17:44 +02:00
6f9b3ab5de
Bootloader: add support for indirect inode blocks
2023-11-16 13:34:21 +02:00
aa7a8124ce
Bootloader: Add helpers for printing n bit hexadecimal numbers
2023-11-16 13:30:01 +02:00
a9412aa741
Bootloader: Implement basic ext2 filesystem
...
This can search for files in an ext2 filesystem. Only 12 blocks
are currently supported.
Now only ELF loading is missing for loading the actual kernel!
2023-11-15 16:58:26 +02:00
8aab3a62cc
Bootloader: Build with cmake instead of custom script
2023-11-14 03:44:47 +02:00
b0b39c56ba
Bootloader: Split bootloader into multiple files
...
This cleans up the code since bootloader is starting to near 1k lines
2023-11-14 03:27:52 +02:00
055b1a2a1a
Bootloader move bootloader code from arch directory
...
The os itself only supports x86 so this won't matter. x86_64 and i386
use the same bootloader assembly.
2023-11-13 21:42:58 +02:00
d99ef11e48
Bootloader: installer now uses banan os elf headers intead of Linux's
2023-11-13 21:40:15 +02:00
aa4f3046ff
Bootloader: Find root partition from GPT header
2023-11-13 18:55:48 +02:00
b4775fbe75
Bootloader: installer now patches GPT GUID's
2023-11-13 18:53:55 +02:00
8a5753b0fe
Bootloader: Add API to create GUID from string
2023-11-13 18:52:41 +02:00
1a75262b04
BuildSystem: add bootloader target
...
Use this target to run banan-os with custom bootloader
2023-11-12 01:50:30 +02:00
a3a287f5ca
Bootloader: Continue work on bootloader
...
Bootloader can now get the memory map and read cmdline from user.
Now 'just' video mode query, ext2 and ELF parsing are needed :D
2023-11-11 22:49:00 +02:00
c47f6a78bc
Bootloader: Start work on bootloader
...
I wrote a fast first stage bootloader and a installer to put it into
a disk image.
2023-11-09 22:42:47 +02:00