aboutsummaryrefslogtreecommitdiff
path: root/boot/load.c
diff options
context:
space:
mode:
authorMarvin Borner2021-03-14 16:12:44 +0100
committerGitHub2021-03-14 16:12:44 +0100
commit268f3ccdb90ab4b9bd70ca176478797aae97ca05 (patch)
tree2dbc3e52d90dab4aae8021773f09b6b72a74b8cb /boot/load.c
parent4309322f9d2b3e31421a3cc5399ab1f4368e0652 (diff)
parent6dec7db5158447b66f31a3f786ce2916cab83cec (diff)
Added memory management using paging
This was quite a roller-coaster and most things are slower now, but it works and is way more secure. I still need to implement things like shared memory for the WM/GUI system but other than that everything is supported.
Diffstat (limited to 'boot/load.c')
-rw-r--r--boot/load.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/boot/load.c b/boot/load.c
index b243629..34c6af8 100644
--- a/boot/load.c
+++ b/boot/load.c
@@ -133,16 +133,16 @@ int find_inode(const char *name, int dir_inode);
void serial_install(void);
void serial_print(const char *data);
-int main(void *data)
+int main(void *data1, void *data2)
{
serial_install();
serial_print("Loaded bootloader!\n");
heap = 0xf00000;
- void (*entry)(void *);
+ void (*entry)(void *, void *);
*(void **)(&entry) = read_inode(get_inode(find_inode("kernel.bin", 2)));
if (entry) {
serial_print("Loaded kernel!\n");
- entry(data);
+ entry(data1, data2);
} else {
serial_print("Couldn't find kernel!\n");
}