EK_EVENTHANDLER(eventhandler, ev, data) { switch(ev) { case EK_EVENT_INIT: case EK_EVENT_REPLACE: ctk_window_new(&window, DUMP_WIDTH, DUMP_HEIGHT, "TFE dump"); CTK_WIDGET_ADD(&window, &dumplabel); ctk_window_open(&window); uip_setethaddr(addr); lan91c96_init(); break; case EK_EVENT_REQUEST_REPLACE: ctk_window_close(&window); ek_replace((struct ek_proc *)data, NULL); LOADER_UNLOAD(); break; case EK_EVENT_REQUEST_EXIT: ctk_window_close(&window); ek_exit(); LOADER_UNLOAD(); break; default: break; } }
/*-----------------------------------------------------------------------------------*/ static void quit(void) { ctk_window_close(&mainwindow); process_exit(&www_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ PROCESS_THREAD(webserver_process, ev, data) { PROCESS_BEGIN(); ctk_window_new(&mainwindow, LOG_WIDTH, LOG_HEIGHT+1, "Web server"); CTK_WIDGET_ADD(&mainwindow, &message); CTK_WIDGET_ADD(&mainwindow, &loglabel); httpd_init(); ctk_window_open(&mainwindow); while(1) { PROCESS_WAIT_EVENT(); if(ev == ctk_signal_window_close || ev == PROCESS_EVENT_EXIT) { ctk_window_close(&mainwindow); process_exit(&webserver_process); LOADER_UNLOAD(); } else if(ev == tcpip_event) { httpd_appcall(data); } } PROCESS_END(); }
/*-----------------------------------------------------------------------------------*/ static void configedit_quit(void) { ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void about_quit(void) { ctk_dialog_close(); process_exit(&about_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ LOADER_INIT_FUNC(config_init, arg) { arg_free(arg); config_load(); config_apply(); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void app_quit(void) { ctk_window_close(&window); process_exit(&dhcp_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void fire_quit(void) { ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void about_quit(void) { ctk_dialog_close(); ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void quit(void) { ctk_window_close(&window); ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*---------------------------------------------------------------------------*/ static void quit(void) { close_file(); ctk_window_close(&window); process_exit(&ftp_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void quit(void) { *(char *)0xC051 = 0; ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ LOADER_INIT_FUNC(themeloader_init, arg) { arg_free(arg); memcpy(ctk_hires_theme_ptr, &ctk_hires_theme, sizeof(struct ctk_hires_theme)); ctk_draw_init(); LOADER_UNLOAD(); }
/*---------------------------------------------------------------------------*/ EK_EVENTHANDLER(eventhandler, ev, data) { switch(ev) { case EK_EVENT_INIT: case EK_EVENT_REPLACE: // ppp_init(); break; case EK_EVENT_REQUEST_REPLACE: ek_replace((struct ek_proc *)data, NULL); LOADER_UNLOAD(); break; case EK_EVENT_REQUEST_EXIT: ek_exit(); LOADER_UNLOAD(); break; default: break; } }
/*---------------------------------------------------------------------------*/ void telnetd_quit(void) { shell_quit(); #if TELNETD_CONF_GUI telnetd_gui_quit(); #endif /* TELNETD_CONF_GUI */ process_exit(&telnetd_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void app_quit(void) { if(file != -1) { cfs_close(file); } puts("Press any key to continue..."); getchar(); process_exit(&wget_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static DISPATCHER_SIGHANDLER(rtl8019_drv_sighandler, s, data) { DISPATCHER_SIGHANDLER_ARGS(s, data); if(s == uip_signal_uninstall) { dispatcher_exit(&p); id = EK_ID_NONE; LOADER_UNLOAD(); } }
EK_EVENTHANDLER(eventhandler, ev, data) { switch(ev) { case EK_EVENT_INIT: case EK_EVENT_REPLACE: uip_setethaddr(addr); asm("lda #1"); asm("ora $de01"); asm("sta $de01"); cs8900a_init(); break; case EK_EVENT_REQUEST_REPLACE: ek_replace((struct ek_proc *)data, NULL); LOADER_UNLOAD(); break; case EK_EVENT_REQUEST_EXIT: ek_exit(); LOADER_UNLOAD(); break; default: break; } }
/*-----------------------------------------------------------------------------------*/ static void quit(void) { unsigned char i; if(loading == LOADING_DIR) { cfs_closedir(&dir); } ctk_window_close(&window); for(i = 0; dscs[i] != NULL; ++i) { LOADER_UNLOAD_DSC(dscs[i]); } process_exit(&directory_process); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ static void quit(void) { unsigned char i; if(loading == LOADING_DIR) { cfs_closedir(&dir); } ctk_window_close(&window); for(i = 0; dscs[i] != NULL; ++i) { LOADER_UNLOAD_DSC(dscs[i]); } ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ PROCESS_THREAD(shell_gui_process, ev, data) { PROCESS_BEGIN(); ctk_window_new(&window, SHELL_GUI_XSIZE, SHELL_GUI_YSIZE + 1, "Command shell"); CTK_WIDGET_ADD(&window, &loglabel); /* CTK_WIDGET_SET_FLAG(&loglabel, CTK_WIDGET_FLAG_MONOSPACE);*/ CTK_WIDGET_ADD(&window, &commandentry); /* CTK_WIDGET_SET_FLAG(&commandentry, CTK_WIDGET_FLAG_MONOSPACE);*/ CTK_WIDGET_FOCUS(&window, &commandentry); shell_init(); shell_file_init(); shell_ps_init(); shell_run_init(); shell_text_init(); shell_time_init(); shell_wget_init(); ctk_window_open(&window); while(1) { PROCESS_WAIT_EVENT(); if(ev == ctk_signal_widget_activate && data == (process_data_t)&commandentry) { int command_len = (int)strlen(command); shell_default_output("> ", 2, command, command_len); shell_input(command, command_len); if(shell_gui_process.state) { CTK_TEXTENTRY_CLEAR(&commandentry); CTK_WIDGET_REDRAW(&commandentry); } } else if(ev == ctk_signal_window_close || ev == PROCESS_EVENT_EXIT) { shell_quit(); ctk_window_close(&window); process_exit(&shell_gui_process); LOADER_UNLOAD(); } } PROCESS_END(); }
/*--------------------------------------------------------------------------*/ EK_EVENTHANDLER(eventhandler, ev, data) { EK_EVENTHANDLER_ARGS(ev, data); switch(ev) { case EK_EVENT_INIT: case EK_EVENT_REPLACE: s_ctk_draw_init(); ctk_restore(); break; case EK_EVENT_REQUEST_REPLACE: VIC.ctrl1 = 0x1b; /* $D011 */ VIC.addr = 0x17; /* $D018 */ VIC.ctrl2 = 0xc8; /* $D016 */ CIA2.pra = 0x03; /* $DD00 */ ek_replace((struct ek_proc *)data, NULL); LOADER_UNLOAD(); break; } }
/*-----------------------------------------------------------------------------------*/ EK_EVENTHANDLER(webserver_eventhandler, ev, data) { EK_EVENTHANDLER_ARGS(ev, data); if(ev == EK_EVENT_INIT) { ctk_window_new(&mainwindow, LOG_WIDTH, LOG_HEIGHT+1, "Web server"); CTK_WIDGET_ADD(&mainwindow, &message); CTK_WIDGET_ADD(&mainwindow, &loglabel); httpd_init(); ctk_window_open(&mainwindow); } else if(ev == ctk_signal_window_close || ev == EK_EVENT_REQUEST_EXIT) { ctk_window_close(&mainwindow); ek_exit(); id = EK_ID_NONE; LOADER_UNLOAD(); } else if(ev == tcpip_event) { httpd_appcall(data); } }
/*-----------------------------------------------------------------------------------*/ PROCESS_THREAD(simpletelnet_process, ev, data) { struct ctk_widget *w; int sendlen; PROCESS_BEGIN(); ctk_window_new(&telnetwindow, TELNET_WINDOW_WIDTH, TELNET_WINDOW_HEIGHT, "Simple telnet"); strcpy(telnetport, "23"); CTK_WIDGET_ADD(&telnetwindow, &telnethostlabel); CTK_WIDGET_ADD(&telnetwindow, &telnetportlabel); CTK_WIDGET_ADD(&telnetwindow, &telnethosttextentry); CTK_WIDGET_ADD(&telnetwindow, &telnetporttextentry); CTK_WIDGET_ADD(&telnetwindow, &telnetconnectbutton); CTK_WIDGET_ADD(&telnetwindow, &telnetdisconnectbutton); CTK_WIDGET_ADD(&telnetwindow, &telnetlinetextentry); CTK_WIDGET_ADD(&telnetwindow, &telnetsendbutton); CTK_WIDGET_ADD(&telnetwindow, &telnetsep1); CTK_WIDGET_ADD(&telnetwindow, &telnettextarea); CTK_WIDGET_ADD(&telnetwindow, &telnetsep2); CTK_WIDGET_ADD(&telnetwindow, &telnetstatus); CTK_WIDGET_FOCUS(&telnetwindow, &telnethosttextentry); ctk_window_open(&telnetwindow); while(1) { PROCESS_WAIT_EVENT(); if(ev == ctk_signal_button_activate) { w = (struct ctk_widget *)data; if(w == (struct ctk_widget *)&telnetsendbutton) { strcpy(sendline, telnetline); sendlen = (int)strlen(sendline); petsciiconv_toascii(sendline, sendlen); sendline[sendlen++] = ISO_CR; sendline[sendlen++] = ISO_NL; if(telnet_send(&ts_appstate, sendline, sendlen)) { /* Could not send. */ ctk_label_set_text(&telnetstatus, "Could not send"); ctk_window_redraw(&telnetwindow); /* } else {*/ /* Could send */ } } else if(w == (struct ctk_widget *)&telnetdisconnectbutton) { telnet_close(&ts_appstate); show("Closing..."); } else if(w == (struct ctk_widget *)&telnetconnectbutton) { connect(); ctk_window_redraw(&telnetwindow); } #if UIP_UDP } else if(ev == resolv_event_found) { if(strcmp(data, telnethost) == 0) { if(resolv_lookup(telnethost) != NULL) { connect(); } else { show("Host not found"); } } #endif /* UIP_UDP */ } else if( #if CTK_CONF_WINDOWCLOSE ev == ctk_signal_window_close || #endif /* CTK_CONF_WINDOWCLOSE */ ev == PROCESS_EVENT_EXIT) { process_exit(&simpletelnet_process); ctk_window_close(&telnetwindow); LOADER_UNLOAD(); } else if(ev == tcpip_event) { telnet_app(data); } } PROCESS_END(); }
/*-----------------------------------------------------------------------------------*/ static void netconf_quit(void) { process_exit(&netconf_process); LOADER_UNLOAD(); }
void telnetd_quit(void) { //shell_quit(); process_exit(&telnetd_process); LOADER_UNLOAD(); }
/*---------------------------------------------------------------------------*/ static void quit(void) { process_exit(&pinger); LOADER_UNLOAD(); }
/*-----------------------------------------------------------------------------------*/ PROCESS_THREAD(vnc_process, ev, data) { unsigned short x, y; unsigned char xc, yc; PROCESS_BEGIN(); ctk_window_new(&mainwindow, 36, HEIGHT, "VNC client"); ctk_window_move(&mainwindow, 0, 0); CTK_WIDGET_ADD(&mainwindow, &hosttextentry); CTK_WIDGET_FOCUS(&mainwindow, &hosttextentry); CTK_WIDGET_ADD(&mainwindow, &porttextentry); CTK_WIDGET_ADD(&mainwindow, &connectbutton); CTK_WIDGET_ADD(&mainwindow, &sep1); CTK_WIDGET_ADD(&mainwindow, &vncbitmap); CTK_WIDGET_ADD(&mainwindow, &leftbutton); CTK_WIDGET_ADD(&mainwindow, &upbutton); CTK_WIDGET_ADD(&mainwindow, &downbutton); CTK_WIDGET_ADD(&mainwindow, &rightbutton); vnc_draw_init(); ctk_window_open(&mainwindow); while(1) { PROCESS_WAIT_EVENT(); if(ev == ctk_signal_button_activate) { if(data == (process_data_t)&connectbutton) { connect(); } } else if(ev == ctk_signal_window_close) { process_exit(&vnc_process); LOADER_UNLOAD(); } else if(ev == resolv_event_found) { if(strcmp(data, host) == 0) { if(resolv_lookup(host) != NULL) { connect(); } else { show("Host not found"); } } } else if(ev == ctk_signal_pointer_move) { /* Check if pointer is within the VNC viewer area */ x = ctk_mouse_x(); y = ctk_mouse_y(); xc = ctk_mouse_xtoc(x); yc = ctk_mouse_ytoc(y); if(xc >= 2 && yc >= 2 && xc < 2 + VNC_VIEWPORT_WIDTH / 8 && yc < 2 + VNC_VIEWPORT_HEIGHT / 8) { VNC_VIEWER_POST_POINTER_EVENT(x, y, 0); } } else if(ev == tcpip_event) { vnc_viewer_appcall(data); } } PROCESS_END(); }