X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Fvrstest.c;h=14baca184f71fe280f1b25722aa7ed1547f3dcab;hb=340e87b918384afcde08592db5c24fc49ebf0694;hp=16da3b134d35a3fec86dc9d2fb1877f13363425e;hpb=31f7d5ef5f11def7a113a8a572fc0e29cab03ca2;p=16.git diff --git a/src/vrstest.c b/src/vrstest.c index 16da3b13..14baca18 100755 --- a/src/vrstest.c +++ b/src/vrstest.c @@ -28,9 +28,10 @@ #include "src/lib/16_ca.h" #include "src/lib/16_mm.h" -extern boolean dbg_notest; +extern boolean dbg_nointest; static word far* clockw= (word far*) 0x046C; /* 18.2hz clock */ +static byte palette[768]; void main() { @@ -41,7 +42,7 @@ void main() word start; float t1, t2; //boolean baka; - struct sprite spri; + entity_t enti; //vrl1_vgax_offset_t * off, *off1; struct vrs_container vrs; vrl1_vgax_offset_t **vrl_line_offsets; @@ -50,16 +51,12 @@ void main() uint32_t vrl_size; int num_of_vrl; struct vrl1_vgax_header far *curr_vrl; - byte *pal=0; int size=0; - word w=0; - dbg_notest=0; + dbg_nointest=0; Startup16(&gvar); // What should be done by read_vrs: - //sega = (mm.bufferseg); - //if( CA_LoadFile("data/spri/chikyuu.vrs", &bigbuffer, &gvar);//) baka=1; else baka=0; // Insert sanity cheks later @@ -93,15 +90,15 @@ void main() //read_vrs(&gvar, "data/spri/chikyuu.vrs", &vrs); - spri.spritesheet = &vrs; - spri.sprite_vrl_cont = malloc(sizeof(struct vrl_container)); - i = set_anim_by_id(&spri, 11); + enti.spri->spritesheet = &vrs; + enti.spri->sprite_vrl_cont = malloc(sizeof(struct vrl_container)); + i = set_anim_by_id((enti.spri), 31); if (i == -1) { return; } - spri.x = 5; - spri.y = 100; + enti.spri->x = TILEWH-4; + enti.spri->y = TILEWH; // Uncomment to see broken sprites /* sega = mm.bufferseg; @@ -109,7 +106,7 @@ void main() VGAmodeX(1, 1, &gvar); modexHiganbanaPageSetup(&gvar.video); - modexShowPage_(&gvar.video.page[0]); + VL_ShowPage(&gvar.video.page[0], 0, 0); /* non sprite comparison */ start = *clockw; @@ -122,12 +119,19 @@ void main() /*modexLoadPalFile("data/spri/chikyuu.pal", &pal); modexPalUpdate1(pal);*/ - for (i = 0; i < 5; i++){ - spri.delay = 1; animate_spri(&spri, &gvar); spri.x += 20; /*sleep(1);*/ } + VL_LoadPalFile("data/spri/chikyuu.pal", &palette); + for (i = 0; i < 10; i++){ + enti.spri->delay = 1; + + if(i==5) set_anim_by_id(enti.spri, 21); + + animate_spri(&enti, &gvar.video);// enti.spri->x += 16; + delay(500); + } while(!IN_KeyDown(sc_Escape)) { - switch(w) + /*switch(w) { case 1024: modexPalUpdate0(pal); @@ -135,7 +139,8 @@ void main() default: w++; break; - } + }*/ + if(IN_KeyDown(25)){ modexpdump(&gvar.video.page[0]); IN_UserInput(1,1); } //p FUNCTIONKEYFUNCTIONS; } VGAmodeX(0, 1, &gvar); @@ -143,10 +148,10 @@ FUNCTIONKEYFUNCTIONS; MM_DumpData(&gvar); MM_Report_(&gvar); Shutdown16(&gvar); - free(spri.sprite_vrl_cont); + free(enti.spri->sprite_vrl_cont); free(vrl_line_offsets); MM_FreePtr(&bigbuffer, &gvar); - //MM_FreePtr(&((void __based(sega)*)spri.spritesheet->buffer), &mm); + //MM_FreePtr(&((void __based(sega)*)enti.spri->spritesheet->buffer), &mm); //printf("CPU to VGA: %f\n", t1); //printf("VGA to VGA: %f\n", t2); heapdump(&gvar);