X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=emul%2Femul.cpp;h=4e8d00fa901fb6639f829495a649f3380e7ad450;hb=HEAD;hp=77892ec715c36ef9314f122a94e42985899b7b7b;hpb=dd2dbc06a9dc596c473141062a555b6e71f767ad;p=bertos.git diff --git a/emul/emul.cpp b/emul/emul.cpp deleted file mode 100755 index 77892ec7..00000000 --- a/emul/emul.cpp +++ /dev/null @@ -1,128 +0,0 @@ -/** - * \file - * - * - * \version $Id$ - * - * \author Bernardo Innocenti - * - * \brief Qt-based emulator framework for embedded applications (implementation) - */ - -/*#* - *#* $Log$ - *#* Revision 1.5 2006/05/27 22:30:56 bernie - *#* Add some delay to slow things down. - *#* - *#* Revision 1.4 2006/02/24 01:35:40 bernie - *#* Update for new emulator. - *#* - *#* Revision 1.3 2006/02/20 02:00:40 bernie - *#* Port to Qt 4.1. - *#* - *#* Revision 1.2 2006/01/16 03:51:51 bernie - *#* Fix boilerplate. - *#* - *#* Revision 1.1 2006/01/16 03:37:12 bernie - *#* Add emulator skeleton. - *#* - *#*/ - -#include "emul.h" -#include "emulwin.h" -#include - -#include -#if CONFIG_KERNEL - #include -#endif - - -#include // std::exit() - -#if _QT < 4 - #include -#else - #include -#endif - - -/// 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)) -{ - #if QT_VERSION < ((4 << 16) + (0 << 8) + 0) - emulApp->setMainWidget(emulWin); - #endif - emulWin->show(); -} - - -Emulator::~Emulator() -{ - // we don't delete emulWin because it automatically - // deletes itself when closed - delete emulApp; -} - - -NORETURN void Emulator::quit() -{ - // WHAT A KLUDGE! - this->~Emulator(); - emul = NULL; - - // do we have a better way to shut down the emulation? - exit(0); -} - -MOD_DEFINE(emul) - -/// Main emulator entry point. -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); -} - -extern "C" void emul_cleanup() -{ - MOD_CLEANUP(emul); - - delete emul; - emul = NULL; -} - -extern "C" void emul_idle() -{ - // We process GUI events when the application is idle. - emul->emulApp->processEvents(); - usleep(1000); -} -