diff --git a/platform/pc-6001/contiki-loader-main.c b/platform/pc-6001/contiki-loader-main.c new file mode 100644 index 000000000..dea316b14 --- /dev/null +++ b/platform/pc-6001/contiki-loader-main.c @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2007, Takahide Matsutsuka. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $Id: contiki-loader-main.c,v 1.1 2007/11/28 09:44:27 matsutsuka Exp $ + * + */ + +/* + * \file + * This is a main file with loader. + * \author + * Takahide Matsutsuka + */ + +#include "contiki.h" + +#include "program-handler.h" +//#include "process-list-dsc.h" +//#include "shell-dsc.h" +//#include "directory-dsc.h" + +/*---------------------------------------------------------------------------*/ +int +main(void) +{ + /* initialize process manager. */ + process_init(); + + /* start services */ + process_start(&ctk_process, NULL); + process_start(&program_handler_process, NULL); + process_start(&etimer_process, NULL); + + /* register programs to the program handler */ + /* + program_handler_add(&directory_dsc, "Directory", 1); + program_handler_add(&processes_dsc, "Processes", 1); + program_handler_add(&shell_dsc, "Command shell", 1); + */ + while(1) { + process_run(); + etimer_request_poll(); + } +} diff --git a/platform/pc-6001/contiki-serial-main.c b/platform/pc-6001/contiki-serial-main.c index 205a72555..3fc82780c 100644 --- a/platform/pc-6001/contiki-serial-main.c +++ b/platform/pc-6001/contiki-serial-main.c @@ -27,7 +27,7 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: contiki-serial-main.c,v 1.2 2007/09/19 12:44:45 matsutsuka Exp $ + * $Id: contiki-serial-main.c,v 1.3 2007/11/28 09:44:27 matsutsuka Exp $ * */ @@ -42,8 +42,7 @@ /* devices */ #include "dev/serial.h" -#include "lib/libconio.h" -#include "log.h" +#include "ctk/libconio_arch-small.h" #undef RS232_INTR #ifdef RS232_INTR @@ -62,31 +61,37 @@ rs232_print(char* str) { } } /*---------------------------------------------------------------------------*/ +static void +log_message(char* str) { + while (*str != 0) { + libputc_arch(*str++); + } +} +/*---------------------------------------------------------------------------*/ PROCESS_THREAD(stest_process, ev, data) { static struct etimer timer; PROCESS_BEGIN(); - clrscr(); - gotoxy(0, 0); + clrscr_arch(); #ifdef RS232_INTR rs232_arch_init(serial_input_byte, 0); #endif etimer_set(&timer, CLOCK_SECOND); - log_message("Starting serial test process", ""); + log_message("Starting serial test process"); while(1) { PROCESS_WAIT_EVENT(); if (etimer_expired(&timer)) { - log_message("Sending serial data now", ""); + log_message("Sending serial data now"); rs232_print("GNU's not Unix\n"); etimer_reset(&timer); } if(ev == serial_event_message) { - log_message(data, ""); + log_message(data); } } diff --git a/platform/pc-6001/contiki-server-main.c b/platform/pc-6001/contiki-server-main.c new file mode 100644 index 000000000..0824ebb97 --- /dev/null +++ b/platform/pc-6001/contiki-server-main.c @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2007, Takahide Matsutsuka. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * 3. The name of the author may not be used to endorse or promote + * products derived from this software without specific prior + * written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $Id: contiki-server-main.c,v 1.1 2007/11/28 09:44:27 matsutsuka Exp $ + * + */ + +/* + * \file + * This is a sample main file with slip network. + * \author + * Takahide Matsutsuka + */ + +#include "contiki.h" + +/* devices */ +#include "uip.h" +#include "dev/slip.h" +#include "dev/rs232.h" + +/* network server programs */ +#include "webserver-nogui.h" +#include "cmdd.h" +#include "telnetd.h" +#include "ctk/libconio_arch-small.h" + +/*---------------------------------------------------------------------------*/ +/* inteface */ +static struct uip_fw_netif slipif = + {UIP_FW_NETIF(0, 0, 0, 0, 0, 0, 0, 0, slip_send)}; + +/* ip address of contiki */ +const uip_ipaddr_t hostaddr = { { 10, 0, 1, 10 } }; + +/*---------------------------------------------------------------------------*/ +int +main(void) +{ + /* initialize process manager. */ + process_init(); + + clrscr_arch(); + uip_init(); + uip_sethostaddr(&hostaddr); + uip_fw_default(&slipif); + + /* start services */ + process_start(&etimer_process, NULL); + process_start(&tcpip_process, NULL); + process_start(&slip_process, NULL); + process_start(&uip_fw_process, NULL); + process_start(&rs232_process, NULL); + + process_start(&webserver_nogui_process, NULL); +// process_start(&cmdd_process, NULL); +// process_start(&telnetd_process, NULL); + + while(1) { + process_run(); + etimer_request_poll(); + } +}