diff --git a/src/Library/src/run.cpp b/src/Library/src/run.cpp index d0c9940e..5484ced3 100644 --- a/src/Library/src/run.cpp +++ b/src/Library/src/run.cpp @@ -1,11 +1,24 @@ #include #include +extern "C" uint32_t __bss_start; +extern "C" uint32_t __bss_end; extern void main(); namespace JabyEngine { + static void clear_bss() { + uint32_t* bss_adr = &__bss_start; + while(bss_adr < &__bss_end) { + printf("Free: 0x%p\n", bss_adr); + *bss_adr = 0; + bss_adr++; + } + } + // Executes the game void __no_return run() { + clear_bss(); + main(); printf("Stop!!\n"); while(true);