OSDN Git Service

Added env script.
[kozos-expbrd/kozos_expbrd.git] / firm / hwtest / 10 / os / main.c
1 #include "defines.h"
2 #include "kozos.h"
3 #include "interrupt.h"
4 #include "lib.h"
5
6 /* ¥·¥¹¥Æ¥à¡¦¥¿¥¹¥¯¤È¥æ¡¼¥¶¡¦¥¿¥¹¥¯¤Îµ¯Æ° */
7 static int start_threads(int argc, char *argv[])
8 {
9   kz_run(driver_console,    "dConsole",      1, 0x200, 0, NULL);
10   kz_run(driver_timer,      "dTimer",        2, 0x200, 0, NULL);
11   kz_run(driver_led,        "dLed",          3, 0x200, 0, NULL);
12   kz_run(driver_lcd,        "dLcd",          4, 0x200, 0, NULL);
13   kz_run(driver_audio,      "dAudio",        5, 0x200, 0, NULL);
14   kz_run(task_command,      "tCommand",      6, 0x200, 0, NULL);
15   kz_run(task_userinput,    "tUserinput",    7, 0x200, 0, NULL);
16   kz_run(task_ir,           "tIr",           8, 0x200, 0, NULL);
17
18   kz_chpri(15); /* Í¥Àè½ç°Ì¤ò²¼¤²¤Æ¡¤¥¢¥¤¥É¥ë¥¹¥ì¥Ã¥É¤Ë°Ü¹Ô¤¹¤ë */
19   INTR_ENABLE; /* ³ä¹þ¤ßÍ­¸ú¤Ë¤¹¤ë */
20   while (1) {
21     asm volatile ("sleep"); /* ¾ÊÅÅÎϥ⡼¥É¤Ë°Ü¹Ô */
22   }
23
24   return 0;
25 }
26
27 int main(void)
28 {
29   INTR_DISABLE; /* ³ä¹þ¤ß̵¸ú¤Ë¤¹¤ë */
30
31   puts("kozos boot succeed!\n");
32
33   /* OS¤ÎÆ°ºî³«»Ï */
34   kz_start(start_threads, "idle", 0, 0x100, 0, NULL);
35   /* ¤³¤³¤Ë¤ÏÌá¤Ã¤Æ¤³¤Ê¤¤ */
36
37   return 0;
38 }