]> git.sur5r.net Git - cc65/blobdiff - testcode/lib/pce/conio.c
fixed screensize, timertick, revers mode
[cc65] / testcode / lib / pce / conio.c
index 88c343af255ecb15a8b0eaa7267782f3135458db..b94c918777448b142670bb26e97e85d36e311a26 100644 (file)
@@ -13,10 +13,12 @@ void main(void)
     int i, j;
     clock_t clk;
     char *p;
+    unsigned char xsize, ysize, n;
 
     joy_install(&joy_static_stddrv);
 
     clrscr();
+    screensize(&xsize, &ysize);
 
     cputs("hello world");
     cputsxy(0, 2, "colors:" );
@@ -43,8 +45,42 @@ void main(void)
         );
     }
 
-    for(;;)
-    {
+    gotoxy(0,ysize - 1);
+    for (i = 0; i < xsize; ++i) {
+        cputc('0' + i % 10);
+    }
+
+    gotoxy(0,ysize - 2 - ((256 + xsize) / xsize));
+    for (i = 0; i < xsize; ++i) {
+        cputc('0' + i % 10);
+    }
+    for (i = 0; i < (xsize * 5); ++i) {
+        cputc('#');
+    }
+    gotoxy(0,ysize - 1 - ((256 + xsize) / xsize));
+    for (i = 0; i < 256; ++i) {
+        if ((i != '\n') && (i != '\r')) {
+            cputc(i);
+        }
+    }
+
+    i = get_tv();
+    gotoxy(30,0);
+    cputs("TV Mode: ");
+    switch(i) {
+        case TV_NTSC:
+            cputs("NTSC");
+            break;
+        case TV_PAL:
+            cputs("PAL");
+            break;
+        case TV_OTHER:
+            cputs("OTHER");
+            break;
+    }
+    cprintf(" %dx%d", xsize, ysize);
+
+    for(;;) {
         gotoxy(13,4);
         cprintf("%02x", datavar);
         gotoxy(13,5);
@@ -68,6 +104,16 @@ void main(void)
                      (j & joy_masks[JOY_FIRE])?  " fire " : " ---- ",
                      (j & joy_masks[JOY_FIRE2])? "fire2 " : " ---- ");
         }
+
+        gotoxy(xsize - 10, 3);
+        j = (n >> 5) & 1;
+        revers(j);
+        cputc(j ? 'R' : ' ');
+        cputs(" revers");
+        revers(0);
+
+        waitvblank();
+        ++n;
     }
     for(;;);
 }