29,13 → 29,15 |
#include "main.h" |
#include "printf.h" |
#include "ofw.h" |
#include "asm.h" |
|
#define KERNEL_LOAD_ADDRESS 0x800000 |
#define KERNEL_START &_binary_____________kernel_kernel_bin_start |
#define KERNEL_END &_binary_____________kernel_kernel_bin_end |
#define KERNEL_SIZE ((unsigned int) KERNEL_END - (unsigned int) KERNEL_START) |
#define KERNEL_SIZE ((unsigned int) &_binary_____________kernel_kernel_bin_end - (unsigned int) &_binary_____________kernel_kernel_bin_start) |
|
static void halt(void) |
{ |
while (1); |
} |
|
void bootstrap(void) |
{ |
printf("\nHelenOS PPC Bootloader\nKernel size %d bytes, load address %L\n", KERNEL_SIZE, KERNEL_LOAD_ADDRESS); |
45,8 → 47,6 |
printf("Error: Unable to claim memory"); |
halt(); |
} |
memcpy(addr, KERNEL_START, KERNEL_SIZE); |
|
printf("Booting the kernel...\n"); |
jump_to_kernel(addr); |
halt(); |
} |