11 /* ¥³¥ó¥½¡¼¥ë¤Ø¤Îʸ»úÎó½ÐÎϤò¥³¥ó¥½¡¼¥ë¡¦¥É¥é¥¤¥Ð¤Ë°ÍÍꤹ¤ë */
12 static void send_write(char *str)
17 p = kz_kmalloc(len + 2);
19 p[1] = CONSDRV_CMD_WRITE;
20 memcpy(&p[2], str, len);
21 kz_send(MSGBOX_ID_CONSOUTPUT, len + 2, p);
24 /* ¥¿¥¤¥Þ¤Î¥«¥¦¥ó¥È³«»Ï¤ò¥¿¥¤¥Þ¡¦¥É¥é¥¤¥Ð¤Ë°ÍÍꤹ¤ë */
25 static void send_start(int msec)
28 req = kz_kmalloc(sizeof(*req));
29 req->id = MSGBOX_ID_TIMEXPIRE;
31 kz_send(MSGBOX_ID_TIMDRIVE, TIMERDRV_CMD_START, (char *)req);
34 static void send_led_write(int target, int state)
38 p[0] = state ? LEDDRV_CMD_LED_ON : LEDDRV_CMD_LED_OFF;
40 kz_send(MSGBOX_ID_LEDDRIVE, 2, p);
43 static void send_led_toggle(int target)
47 p[0] = LEDDRV_CMD_LED_TOGGLE;
49 kz_send(MSGBOX_ID_LEDDRIVE, 2, p);
52 int clock_main(int argc, char *argv[])
59 lcd_draw_string(5, 5, "KOZOS EXPBRD #00", 0);
62 uint16 prev = 0, curr = 0;
64 val = (val + 1) % 101;
65 lcd_draw_progressbar(5, 20, 121 - 5, 25, 0, 100, val, 0);
68 kz_recv(MSGBOX_ID_TIMEXPIRE, NULL, NULL);
76 kz_recv(MSGBOX_ID_TIMEXPIRE, NULL, NULL);
85 int dir = (int)(curr & 0xff) - (int)(prev & 0xff);