X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=16%2Fmodex16%2FTEST.C;h=8d000d566d1475cc3e8f40280e470015013688a6;hb=c652700ead888913116701f8eaba7893b237fb3a;hp=74a9b8011e0f8f2900874082d185aef35831ac5b;hpb=d274f7cdb66fd39016a2d342ed8b9d5a548c15fe;p=16.git diff --git a/16/modex16/TEST.C b/16/modex16/TEST.C index 74a9b801..8d000d56 100644 --- a/16/modex16/TEST.C +++ b/16/modex16/TEST.C @@ -3,15 +3,20 @@ word far* clock= (word far*) 0x046C; /* 18.2hz clock */ -void main() { - int plane; - int x, y, i; +void main() { + bitmap_t bmp; + bitmap_t bmp2; + int i, j; word start, end; page_t page, page2; - word far* ptr; float elapsed; byte *pal, *pal2=NULL; + /* load pcx file */ + bmp = modexLoadPcx("ed.pcx"); + bmp2 = modexLoadPcx("koishi~.pcx"); + modexPalUpdate(bmp2.palette); + /* load our palette */ modexLoadPalFile("gfx.pal", &pal2); @@ -19,32 +24,61 @@ void main() { pal = modexNewPal(); modexPalSave(pal); modexFadeOff(1, pal); - modexPalBlack();; + modexPalBlack(); modexEnter(); modexPalBlack(); - page= VGA; - page2=VGA+PAGE_SIZE; + /* set up the page, but with 16 pixels on all borders in offscreen mem */ + page=modexDefaultPage(); + page2 = modexNextPage(&page); + page.width += 32; + page.height += 32; - /* fill the page with one color */ - modexShowPage(page2); - modexClearRegion(page, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 42); - modexClearRegion(page, 17, 12, 30, 30, 19); - modexShowPage(page); + + /* fill the page with one color, but with a black border */ + modexShowPage(&page2); + modexClearRegion(&page, 16, 16, SCREEN_WIDTH, SCREEN_HEIGHT, 128); + modexClearRegion(&page, 32, 32, SCREEN_WIDTH-32, SCREEN_HEIGHT-32, 42); + modexClearRegion(&page, 48, 48, SCREEN_WIDTH-64, SCREEN_HEIGHT-64, 128); + modexShowPage(&page); + + modexDrawSprite(&page, 320, 240, &bmp); + modexDrawSprite(&page, 32, 32, &bmp2); + //modexDrawBmp(&page, 0, 0, &bmp2); /* fade in */ modexFadeOn(1, pal2); - - /* fill page2 up */ - modexClearRegion(page2, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 128); - + +modexPalUpdate(bmp2.palette); start = *clock; - for(i=0; i<500; i++) { - modexShowPage(page); - page+=SCREEN_WIDTH/4; + //for(i=0; i<5; i++) { + while (!kbhit()){ /* Wait for a keystroke */ + /* go right */ + for(j=0; j<32; j++) { + page.dx++; + modexShowPage(&page); + } + /* go left */ + for(j=0; j<32; j++) { + page.dx--; + modexShowPage(&page); + } + /* go up */ + for(j=0; j<32; j++) { + page.dy++; + modexShowPage(&page); + } + + /* go down */ + for(j=0; j<32; j++) { + page.dy--; + modexShowPage(&page); + } } + + (void) getch(); /* Clear the keyboard buffer */ end = *clock; /* fade back to text mode */ @@ -53,6 +87,4 @@ void main() { modexLeave(); modexPalBlack(); modexFadeOn(1, pal); - elapsed = (end-start)/18.2; - printf("500 frames in %f seconds for %f fps\n", elapsed, 500.0/elapsed); }