Exemple #1
0
int main(int argc, char* argv[])
{
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    syscall_get_io();
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    intptr_t ret = monapi_enable_stacktrace("/SERVERS/KEYBDMNG.map");
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    if (ret != M_OK) {
        monapi_warn("syscall_stack_trace_enable error %d\n", ret);
        exit(-1);
    }
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    /* initilize KeyBoardManager */
    KeyBoardManager manager;
    manager.init();

  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    if (monapi_notify_server_start("MONITOR.BIN") != M_OK) {
        exit(-1);
    }
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    syscall_set_irq_receiver(1, 0);
  logprintf("%s %s:%d\n", __func__, __FILE__, __LINE__);
    if (monapi_name_add("/servers/keyboard") != M_OK) {
        monapi_fatal("monapi_name_add failed");
    }
    KeyboardServer server;
    server.messageLoop(manager);
    return 0;
}