From: Tormod Volden Date: Thu, 19 May 2016 21:19:15 +0000 (+0200) Subject: dragon-nx32: Zero out udata block instead of loading it X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=7248036386101f52427d4842bf5a19a1df2eb6a5;p=FUZIX.git dragon-nx32: Zero out udata block instead of loading it Especially handy if the bootloader occupies the area where the udata block will reside. Signed-off-by: Tormod Volden --- diff --git a/Kernel/platform-dragon-nx32/commonmem.s b/Kernel/platform-dragon-nx32/commonmem.s index 335764dd..4e9abfa4 100644 --- a/Kernel/platform-dragon-nx32/commonmem.s +++ b/Kernel/platform-dragon-nx32/commonmem.s @@ -8,7 +8,7 @@ .globl istack_top .globl istack_switched_sp - .area .udata + .area .udata,bss _ub: ; first 512 bytes: starts with struct u_block, with the kernel stack working down from above _udata: diff --git a/Kernel/platform-dragon-nx32/crt0.s b/Kernel/platform-dragon-nx32/crt0.s index 10ce72f6..1ee3eca9 100644 --- a/Kernel/platform-dragon-nx32/crt0.s +++ b/Kernel/platform-dragon-nx32/crt0.s @@ -22,9 +22,13 @@ start: main: orcc #0x10 ; interrupts definitely off lds #kstack_top + clra + ldx #__sectionbase_.udata__ +udata_wipe: sta ,x+ + cmpx #__sectionbase_.udata__+__sectionlen_.udata__ + blo udata_wipe ldx #__sectionbase_.bss__ ldy #__sectionlen_.bss__ - clra bss_wipe: sta ,x+ leay -1,y bne bss_wipe