diff options
Diffstat (limited to 'kernel/mem.c')
| -rw-r--r-- | kernel/mem.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/kernel/mem.c b/kernel/mem.c index 28e05eb..68880be 100644 --- a/kernel/mem.c +++ b/kernel/mem.c @@ -205,20 +205,27 @@ void mem_test(int start, int end, int steps) } */ -void mem_init(uint16_t *memmap) +void mem_init(uint16_t *memmap,uint16_t entries) { + scr_put_string("mem: the memory map contains "); + scr_put_hex(entries); + scr_put_string_nl(" entries."); + + // hardcoded memory bitmap!!??! _mmngr_memory_map=0x9000; mem_free_blocks=0; pmmngr_init (); // count available memory uint32_t avail_mem=0; + int i; //print memory map and init regions! - while(1) + for(i=0;i<entries;i++) { - if(memmap[8]==0)break; + +// if(memmap[8]==0)break; #ifdef MEM_PRINT_MEMORYMAP @@ -247,6 +254,7 @@ void mem_init(uint16_t *memmap) } memmap+=12; + } scr_put_string("mem: Total Available Mem: "); |
