added bootstrap_stack so the temporary stack is not in the same place as the page directory
git-svn-id: svn://anubis/hos/trunk@29 5b3e749e-e535-0410-8002-a9bb6afbdfca
This commit is contained in:
parent
981a01ba9b
commit
39ea3f231b
@ -16,7 +16,7 @@
|
|||||||
extern _end, _bss
|
extern _end, _bss
|
||||||
|
|
||||||
; Symbols from C
|
; Symbols from C
|
||||||
extern k_bootstrap, page_directory
|
extern k_bootstrap, bootstrap_stack
|
||||||
|
|
||||||
;-------------------------------------------------------
|
;-------------------------------------------------------
|
||||||
[section .text]
|
[section .text]
|
||||||
@ -64,7 +64,7 @@ segmented_start:
|
|||||||
mov es, cx
|
mov es, cx
|
||||||
mov gs, cx
|
mov gs, cx
|
||||||
mov fs, cx
|
mov fs, cx
|
||||||
mov esp, page_directory+PAGE_SIZE-4 ; set up temporary stack space
|
mov esp, bootstrap_stack+4096-4 ; set up temporary stack space
|
||||||
|
|
||||||
mov cx, 0x0700 + 'b'
|
mov cx, 0x0700 + 'b'
|
||||||
mov [CONSOLE_MEMORY+160*8+1*2], cx
|
mov [CONSOLE_MEMORY+160*8+1*2], cx
|
||||||
|
@ -8,6 +8,8 @@
|
|||||||
#define DEBUG_LETTER(col,chr) *(u16_t *)(CONSOLE_MEMORY + 160 * 8 + (col) * 2) \
|
#define DEBUG_LETTER(col,chr) *(u16_t *)(CONSOLE_MEMORY + 160 * 8 + (col) * 2) \
|
||||||
= 0x0700 | (chr)
|
= 0x0700 | (chr)
|
||||||
|
|
||||||
|
u8_t bootstrap_stack[4096];
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* This function is invoked before paging is enabled. Segmentation is *
|
* This function is invoked before paging is enabled. Segmentation is *
|
||||||
* utilized to map virtual address 0xE000_0000 to physical address 0x0. *
|
* utilized to map virtual address 0xE000_0000 to physical address 0x0. *
|
||||||
|
Loading…
x
Reference in New Issue
Block a user