--- /dev/null
+// Emtpy main.c file generated by the wizard
+#include <cpu/irq.h>
+#include <kern/proc.h>
+#include <kern/signal.h>
+#include <kern/msg.h>
+#include <drv/ser.h>
+#include <drv/timer.h>
+
+MsgPort in_port;
+Serial ser;
+Timer t;
+
+static void init(void)
+{
+ IRQ_ENABLE;
+ proc_init();
+ timer_init();
+ ser_init(&ser, SER_UART0);
+}
+
+static cpu_stack_t proc1_stack[500];
+
+static void proc1_main(void)
+{
+ msg_peek(&in_port);
+ Msg *msg = msg_get(&in_port);
+ msg_reply(msg);
+ sig_wait(SIG_USER0);
+}
+
+int main(void)
+{
+ init();
+ struct Process *p = proc_new(proc1_main, 0, sizeof(proc1_stack), proc1_stack);
+ msg_initPort(&in_port, event_createSignal(p, SIG_USER1));
+ Msg msg;
+ msg_put(&in_port, &msg);
+ proc_setPri(p, 5);
+ // generate timer code
+ timer_clock();
+ timer_delay(ms_to_ticks(500));
+ timer_setDelay(&t, ms_to_ticks(500));
+ timer_add(&t);
+ timer_abort(&t);
+ // generate ser code
+ char buf[10];
+ kfile_write(&ser.fd, buf, sizeof(buf));
+ kfile_read(&ser.fd, buf, sizeof(buf));
+
+ while (1)
+ {
+ sig_signal(p, SIG_USER0);
+ proc_yield();
+ }
+
+ return 0;
+}
+