]> 4ch.mooo.com Git - 16.git/blobdiff - src/vrstest.c
wwww cleanings and now the compiler header generated files are shown and so is the...
[16.git] / src / vrstest.c
index afa7dea09bda89c8f652543986ae92fde8687935..fe532b84eb6e6a9f5842c3a5f8d198a28497563f 100755 (executable)
@@ -24,7 +24,7 @@
 #include <dos.h>
 #include <string.h>
 #include "src/lib/modex16.h"
-#include "src/lib/16_sprite.h"
+#include "src/lib/16_sprit.h"
 #include "src/lib/16_ca.h"
 #include "src/lib/16_mm.h"
 
@@ -52,6 +52,7 @@ void main() {
        struct vrl1_vgax_header huge *curr_vrl;
        struct vrl_container *vrl;
        int success;
+       word w=0;
 
 
 
@@ -82,6 +83,8 @@ void main() {
        mm.mmstarted=0;
        MM_Startup(&mm, &mmi);
        CA_Startup(&gvar);
+       // What should be done by read_vrs:
+       //sega = (mm.bufferseg);
        if(CA_LoadFile("data/spri/chikyuu.vrs", &bigbuffer, &mm, &mmi)) baka=1; else baka=0;
        fd = open("data/spri/chikyuu.vrs", O_RDONLY|O_BINARY);
        size = lseek(fd, 0, SEEK_END);
@@ -116,40 +119,21 @@ void main() {
        }
        vrs.vrl_line_offsets = vrl_line_offsets;
 
+
        //read_vrs(&gvar, "data/spri/chikyuu.vrs", &vrs);
        spri.spritesheet = &vrs;
        spri.sprite_vrl_cont = malloc(sizeof(struct vrl_container));
-
-       vrl = malloc(sizeof(struct vrl_container));
-       i = get_vrl_by_id(&vrs, 10, vrl);
-       if(i == -2)
-       {
-               puts("Die");
-               return;
-       }
-       off = vrl1_vgax_genlineoffsets(curr_vrl/*vrl->buffer*/, vrl->buffer + sizeof(struct vrl1_vgax_header), vrl->data_size);
-       fd = open("data/spri/chikyuu.vrl", O_RDONLY|O_BINARY);
-       size = lseek(fd, 0, SEEK_END);
-       lseek(fd, 0, SEEK_SET);
-       close(fd);
-
-       if(CA_LoadFile("data/spri/chikyuu.vrl", &bigbuffer, &mm, &mmi)) baka=1; else baka=0;
-       off1 = vrl1_vgax_genlineoffsets(bigbuffer, (byte *)bigbuffer + sizeof(struct vrl1_vgax_header), size - sizeof(struct vrl1_vgax_header));
-
-
-       //read_vrs(&gvar, "data/spri/chikyuu.vrs", spri.spritesheet);
-       i = set_anim_by_id(&spri, 10);
+       i = set_anim_by_id(&spri, 11);
        if (i == -1)
        {
                return;
        }
-       spri.x = spri.y = 70;
-
+       spri.x = 5;
+       spri.y = 100;
 
-       /* fix up the palette and everything */
-       //modexPalUpdate1(bmp.palette);
-       //modexLoadPalFile("data/spri/chikyuu.pal", &pal);
-       //modexPalUpdate1(pal);
+//     Uncomment to see broken sprites
+/*     sega = mm.bufferseg;
+       if(CA_LoadFile("data/spri/CHUBACW1.vrl", &bigbuffer, &mm, &mmi)) baka=1; else baka=0;*/
 
        /* clear and draw one sprite and one bitmap */
        VGAmodeX(1, 1, &gvar);
@@ -157,48 +141,27 @@ void main() {
 
        /* non sprite comparison */
        start = *clockw;
-       //for(i=0; i<100 ;i++) {
-       //      oldDrawBmp(VGA, 20, 20, &bmp, 0);
-       //}
-
-       start = *clockw;
-       //for(i=0; i<100 ;i++) {
-//0000         modexDrawBmp(&gvar.video.page[0], 20, 20, &bmp);
-       //      modexDrawBmp(&gvar.video.page[0], 160, 120, &bmp);
-       //}
+       modexCopyPageRegion(&gvar.video.page[0], &gvar.video.page[0], 0, 0, 0, 0, 320, 240);
        t1 = (*clockw-start) /18.2;
 
        start = *clockw;
-       //for(i=0; i<100; i++) {
-//0000         modexCopyPageRegion(&gvar.video.page[0], &gvar.video.page[0], 20, 20, 128, 20, 64, 64);
-               modexCopyPageRegion(&gvar.video.page[0], &gvar.video.page[0], 0, 0, 0, 0, 320, 240);
-               animate_spri(&spri);
-       draw_vrl1_vgax_modex(5,5,curr_vrl/*vrl->buffer*/,vrl->line_offsets,vrl->buffer + sizeof(struct vrl1_vgax_header),vrl->data_size);
-       draw_vrl1_vgax_modex(40,40,curr_vrl/*vrs.buffer*/ + vrl_headers_offsets[0],vrs.vrl_line_offsets[0],vrs.buffer + vrl_headers_offsets[0] + sizeof(struct vrl1_vgax_header),vrl_headers_offsets[1] - vrl_headers_offsets[0] - sizeof(struct vrl1_vgax_header));
-       draw_vrl1_vgax_modex(100, 5, bigbuffer, off1, (byte *)bigbuffer + sizeof(struct vrl1_vgax_header), size - sizeof(struct vrl1_vgax_header));
-
-       //}
-       t2 = (*clockw-start)/18.2;
 
-       //for (i = 0; i < 5; i++){
-       //animate_spri(&spri);
-
-       start = *clockw;
-       //for(i=0; i<100 ;i++) {
-       //      oldDrawBmp(VGA, 20, 20, &bmp, 1);
-       //}
+       t2 = (*clockw-start)/18.2;
 
+       for (i = 0; i < 5; i++){
+       spri.delay = 1; animate_spri(&spri); spri.x += 20; sleep(2); }
 
-       start = *clockw;
-       //for(i=0; i<100 ;i++) {
-//0000         modexDrawSprite(&gvar.video.page[0], 20, 20, &bmp);
-       //      modexDrawSprite(&gvar.video.page[0], 160, 120, &bmp);
-       //}
-       //_fmemset(MK_FP(0xA000, 0), (int)p->plane, gvar.video.page[0].sw*(gvar.video.page[0].sh*2));
-       //modexDrawBmp(&gvar.video.page[0], 0, 0, &bmp);
        while(!kbhit())
        {
-               //DrawPBuf(&gvar.video.page[0], 0, 0, p, 0);
+               switch(w)
+               {
+                       case 1024:
+                               modexPalUpdate0(pal);
+                               w=0;
+                       default:
+                               w++;
+                       break;
+               }
        }
        VGAmodeX(0, 1, &gvar);
        free(spri.sprite_vrl_cont);
@@ -206,21 +169,10 @@ void main() {
        //MM_FreePtr(&((void __based(sega)*)spri.spritesheet->buffer), &mm);
        MM_Shutdown(&mm);
        CA_Shutdown(&gvar);
-       /*printf("\nmain=%Fp\n\n", &i);
-       printf("bmp.data=%Fp\n", bmp.data);
-       printf("*bmp.data=%Fp\n", *(bmp.data));
-       printf("&bmp.data=%Fp\n", &(bmp.data));
-
-       printf("\n%d\n", sizeof(p->plane));
-       printf("%d\n", sizeof(bmp));*/
-
-       /*for(i=0; i<(320*240); i++)
-       {
-               fprintf(stdout, "%d", bmp.data[i]);
-               if(i%bmp.width==0) fprintf(stdout, "\n");
-       }*/
-       printf("CPU to VGA: %f\n", t1);
-       printf("VGA to VGA: %f\n", t2);
+       //printf("CPU to VGA: %f\n", t1);
+       //printf("VGA to VGA: %f\n", t2);
+       printf("t1: %f\n", t1);
+       printf("t2: %f\n", t2);
        printf("gvar.video.page[0].width: %u\n", gvar.video.page[0].width);
        printf("gvar.video.page[0].height: %u\n", gvar.video.page[0].height);
        printf("Num %d", num_of_vrl);