/* glitterapp.c code by SASANO Takayoshi --- public domain, no warranty. */ #include #include #include #include #include #define CMD_REDRAW 0x40000000 #define CMD_BRIGHTNESS 0x41000000 #define CMD_FILL 0x42000000 #define CMD_REVERSE 0x43000000 #define CMD_MASK 0xff000000 #define DAT_MASK 0x0000ffff EXPORT ERR main(W argc, TC *argv[]) { W err, i, dd, size; TC dev[] = {TK_g, TK_l, TK_i, TK_t, TK_t, TK_e, TK_r, TK_NULL}; /* open */ err = opn_dev(dev, D_UPDATE | D_EXCL, NULL); if (err < ER_OK) { printf("opn_dev %d\n", err); goto fin0; } dd = err; /* fill all pixel */ for (i = 0; i < 16; i++) { wri_dev(dd, (i << 24) | (1 << i), NULL, 0, &size, NULL); } /* display (redraw) */ wri_dev(dd, CMD_REDRAW, NULL, 0, &size, NULL); wai_prc(1000); /* change brightness (with redraw) */ for (i = 0; i < 5; i++) { wri_dev(dd, CMD_BRIGHTNESS | i, NULL, 0, &size, NULL); wai_prc(500); } /* pattern fill (with redraw) */ for (i = 0; i < 17; i++) { wri_dev(dd, CMD_FILL | ((1 << i) & DAT_MASK), NULL, 0, &size, NULL); wai_prc(250); } /* reverse (with redraw) */ for (i = 0; i < 8; i++) { wri_dev(dd, CMD_REVERSE, NULL, 0, &size, NULL); wai_prc(250); } //fin1: cls_dev(dd, 0, NULL); fin0: return err; }