X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Femul%2Femul.cpp;h=6327a5bf0ca454e161b26c0de74e7cbbdbe60e9c;hb=a5d199ea6aed560d3b62c41b73d16d500ba51b99;hp=e26c680e7a0ecfb05f58c13094b86b09db40a2c7;hpb=d4e6689215738b0802c3fa9948392bc6d73bf557;p=bertos.git diff --git a/bertos/emul/emul.cpp b/bertos/emul/emul.cpp index e26c680e..6327a5bf 100644 --- a/bertos/emul/emul.cpp +++ b/bertos/emul/emul.cpp @@ -39,8 +39,6 @@ #include "emul.h" #include "emulwin.h" -#include "cfg/cfg_kern.h" - #include #include @@ -50,17 +48,6 @@ /// The global emulator instance. Emulator *emul; -#if CONFIG_KERNEL - #include - - /// List of process stacks - List StackFreeList; - - // HACK: Reserve 64KB of stack space for kernel processes - const int NPROC = 8; - int stacks[NPROC][(64 * 1024) / sizeof(int)]; -#endif - Emulator::Emulator(int &argc, char **argv) : emulApp(new QApplication(argc, argv)), emulWin(new EmulWin(this)) @@ -95,12 +82,6 @@ extern "C" void emul_init(int *argc, char *argv[]) // setup global emulator pointer emul = new Emulator(*argc, argv); -#if CONFIG_KERNEL - LIST_INIT(&StackFreeList); - for (int i = 0; i < NPROC; i++) - ADDTAIL(&StackFreeList, (Node *)stacks[i]); -#endif - MOD_INIT(emul); } @@ -108,6 +89,10 @@ extern "C" void emul_cleanup() { MOD_CLEANUP(emul); + // Timer must be made inactive before we destroy the emulator + extern bool timer_initialized; + ASSERT(!timer_initialized); + delete emul; emul = NULL; }