From: sparky4 Date: Fri, 14 Apr 2017 22:08:37 +0000 (-0500) Subject: p16 is being worked on a bunch by me wwww [16_ca needs huge amounts of work and I... X-Git-Url: http://4ch.mooo.com/gitweb/?p=16.git;a=commitdiff_plain;h=77dd79155f6eae0d3a31fb792fd785f93ba72454 p16 is being worked on a bunch by me wwww [16_ca needs huge amounts of work and I should remember what needs to be done soon][OpenVGMFile needs to be ported to 16_snd.c]going to port rest of code to borland c some time so we can use the core components of id engine here [going to add 16_us.c eventually but the debug system and CA_ PM_ and MM_ usage is priority now]older zcroll renamed to xcroll][zcroll is now the pre menu game loop system with PROPER data usage with CAMMPM] MM_ShowMemory is quite buggy on real machines. i need to debug it and fix added a struct printer[gvar.mm is FUCKING HUGE 14402 bytes FAT\!]16_rf now compiles BT UNKNOWN ON WHAT IT DOSE\! text box creates a ghost because page 1 do not have bg info thus it is stored and saved.... wwww fizzfade being worked on and no idea how to make it work...[xcroll is fixed resuming fizzfade testings] --- diff --git a/src/0.c b/src/0.c index b3548620..fb3d0fc9 100755 --- a/src/0.c +++ b/src/0.c @@ -111,7 +111,7 @@ int main(int argc,char **argv) EN_initPlayer(&gvar.player[0], &gvar.video); /* setup camera and screen~ */ - modexHiganbanaPageSetup(&gvar.video); + modexHiganbanaPageSetup(&gvar); ZC_MVSetup(&gvar.mv, &map, &gvar); ZC_ShowMV(&gvar.mv, gvar.video.sp, 0); diff --git a/src/bakapi.h b/src/bakapi.h index ec7091cd..cb5b30b7 100755 --- a/src/bakapi.h +++ b/src/bakapi.h @@ -35,8 +35,8 @@ #define DOFSS BDOFSCONV (gvar.video.DOFS)//gvar.video.ofs.displayofs #define SETUPPAGEBAKAPI \ -gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0], &gvar.video); \ -gvar.video.page[1] = modexNextPage(&gvar.video.page[0]); + PALPROGRAMSNEWPAGE \ + gvar.video.page[1] = modexNextPage(&gvar.video.page[0]); #ifdef BAKAFIZZUNSIGNED #define FIZZFADEFUN baka_FizzleFade (BOFSS, DOFSS, gvar.video.page[0].width, gvar.video.page[0].height, 70, true, &gvar); diff --git a/src/lib/16_spri.c b/src/lib/16_spri.c index 5c24d89b..62c01aa4 100755 --- a/src/lib/16_spri.c +++ b/src/lib/16_spri.c @@ -22,8 +22,6 @@ #include "src/lib/16_spri.h" -struct glob_game_vars *ggvv; - char* get_curr_anim_name(struct sprite *spri) { // Retrive animation name list @@ -103,6 +101,7 @@ void animate_spri(entity_t *enti, video_t *video) #define INC_PER_FRAME if(enti->q&1) enti->persist_aniframe++; if(enti->persist_aniframe>4) enti->persist_aniframe = 1; unsigned int i,o,o2; int j; int x,y,rx,ry,w,h; + static struct glob_game_vars *ggvv; VGA_RAM_PTR omemptr = (VGA_RAM_PTR)video->page[0].data;// save original mem ptr x=enti->spri.x; diff --git a/src/lib/16_spri.h b/src/lib/16_spri.h index bb633d27..0e29ebeb 100755 --- a/src/lib/16_spri.h +++ b/src/lib/16_spri.h @@ -23,9 +23,7 @@ #define __16_SPRI__ #include "src/lib/16_vrs.h" -#ifndef OLDOLDOLDOLDSCROLLEXE #include "src/lib/scroll16.h" -#endif //moved to 16_tdef.h // struct sprite diff --git a/src/lib/16_vl.c b/src/lib/16_vl.c index bc5ee4dd..db066c72 100755 --- a/src/lib/16_vl.c +++ b/src/lib/16_vl.c @@ -398,7 +398,7 @@ modexDefaultPage(page_t *p) } #endif page_t -modexDefaultPage(page_t *p, video_t *v) +modexDefaultPage(page_t *p, global_game_variables_t *gvar) { page_t page; @@ -412,7 +412,7 @@ modexDefaultPage(page_t *p, video_t *v) page.sh = p->sh; page.width = p->sw; page.height = p->sh; - if(v->curr_mode == 1) + if(gvar->video.curr_mode == 1) { page.width += TILEWHD; page.height += TILEWHD; } page.ti.tw = page.sw/TILEWH; @@ -513,38 +513,38 @@ void VL_Initofs(video_t *video) } } -void modexHiganbanaPageSetup(video_t *video) +void modexHiganbanaPageSetup(global_game_variables_t *gvar) { - video->vmem_remain=65535U; - video->num_of_pages=0; - (video->page[0]) = modexDefaultPage(&(video->page[0]), video); video->num_of_pages++; //video->page[0].width += (TILEWHD); video->page[0].height += (TILEWHD); - (video->page[1]) = modexNextPage(&(video->page[0])); video->num_of_pages++; -//0000 (video->page[2]) = modexNextPageFlexibleSize(&(video->page[1]), (video->page[0]).width, TILEWH*4); video->num_of_pages++; -//0000 (video->page[3]) = (video->page[2]); video->num_of_pages++; -//// (video->page[2]) = modexNextPageFlexibleSize(&(video->page[1]), TILEWH*4, TILEWH*4); video->num_of_pages++; -//// (video->page[3]) = modexNextPageFlexibleSize(&(video->page[2]), video->page[0].sw, 208); video->num_of_pages++; - (video->page[2]) = modexNextPageFlexibleSize(&(video->page[1]), video->page[0].width, 96); video->num_of_pages++; - (video->page[3]) = modexNextPageFlexibleSize(&(video->page[2]), video->page[0].width, 96); video->num_of_pages++; - modexCalcVmemRemain(video); - - video->sp=video->p = 0; //showpage - video->dorender = 1; //render - video->vh=video->page[0].height+video->page[1].height+video->page[2].height+video->page[3].height; - - VL_Initofs(video); + gvar->video.vmem_remain=65535U; + gvar->video.num_of_pages=0; + (gvar->video.page[0]) = modexDefaultPage(&(gvar->video.page[0]), gvar); gvar->video.num_of_pages++; //gvar->video.page[0].width += (TILEWHD); gvar->video.page[0].height += (TILEWHD); + (gvar->video.page[1]) = modexNextPage(&(gvar->video.page[0])); gvar->video.num_of_pages++; +//0000 (gvar->video.page[2]) = modexNextPageFlexibleSize(&(gvar->video.page[1]), (gvar->video.page[0]).width, TILEWH*4); gvar->video.num_of_pages++; +//0000 (gvar->video.page[3]) = (gvar->video.page[2]); gvar->video.num_of_pages++; +//// (gvar->video.page[2]) = modexNextPageFlexibleSize(&(gvar->video.page[1]), TILEWH*4, TILEWH*4); gvar->video.num_of_pages++; +//// (gvar->video.page[3]) = modexNextPageFlexibleSize(&(gvar->video.page[2]), gvar->video.page[0].sw, 208); gvar->video.num_of_pages++; + (gvar->video.page[2]) = modexNextPageFlexibleSize(&(gvar->video.page[1]), gvar->video.page[0].width, 96); gvar->video.num_of_pages++; + (gvar->video.page[3]) = modexNextPageFlexibleSize(&(gvar->video.page[2]), gvar->video.page[0].width, 96); gvar->video.num_of_pages++; + modexCalcVmemRemain(&gvar->video); + + gvar->video.sp=gvar->video.p = 0; //showpage + gvar->video.dorender = 1; //render + gvar->video.vh=gvar->video.page[0].height+gvar->video.page[1].height+gvar->video.page[2].height+gvar->video.page[3].height; + + VL_Initofs(&gvar->video); //doslib origi var - video->vga_state.omemptr= vga_state.vga_graphics_ram; - video->vga_state.vga_draw_stride= vga_state.vga_draw_stride; - video->vga_state.vga_draw_stride_limit= vga_state.vga_draw_stride_limit; + gvar->video.vga_state.omemptr= vga_state.vga_graphics_ram; + gvar->video.vga_state.vga_draw_stride= vga_state.vga_draw_stride; + gvar->video.vga_state.vga_draw_stride_limit= vga_state.vga_draw_stride_limit; //sprite render switch and bgpreservation switch - video->vga_state.rss= 1; - video->vga_state.bgps= 1; + gvar->video.vga_state.rss= 1; + gvar->video.vga_state.bgps= 1; //setup the buffersize - video->page[0].dx=video->page[0].dy= - video->page[1].dx=video->page[1].dy=TILEWH; // 1 tile size buffer - video->page[2].dx=video->page[2].dy= - video->page[3].dx=video->page[3].dy=0; // cache pages are buffer wwww + gvar->video.page[0].dx=gvar->video.page[0].dy= + gvar->video.page[1].dx=gvar->video.page[1].dy=TILEWH; // 1 tile size buffer + gvar->video.page[2].dx=gvar->video.page[2].dy= + gvar->video.page[3].dx=gvar->video.page[3].dy=0; // cache pages are buffer wwww } // diff --git a/src/lib/16_vl.h b/src/lib/16_vl.h index 535b36aa..9ad82384 100755 --- a/src/lib/16_vl.h +++ b/src/lib/16_vl.h @@ -158,7 +158,7 @@ void VGAWRITEMODE(byte x), #define VW_Hlin(x,z,y,c,q) VL_Hlin(x,y,(z)-(x)+1,c,q) #define VW_Vlin(y,z,x,c,q) VL_Vlin(x,y,(z)-(y)+1,c,q) -#define PALPROGRAMSNEWPAGE gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0], &gvar.video);// modexFadeOn(4, &gvar.video.palette); +#define PALPROGRAMSNEWPAGE gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0], &gvar);// modexFadeOn(4, &gvar.video.palette); /* -============================ Functions =============================- */ /* mode switching, page, and plane functions */ @@ -174,12 +174,12 @@ byte VL_vgaGetMode(void); extern void TL_VidInit(global_game_variables_t *gvar); void modexLeave(void); void modexsetBaseXMode(); -page_t modexDefaultPage(page_t *p, video_t *v); +page_t modexDefaultPage(page_t *p, global_game_variables_t *gvar); page_t modexNextPage(page_t *p); page_t modexNextPageFlexibleSize(page_t *p, word x, word y); void modexCalcVmemRemain(video_t *video); void VL_Initofs(video_t *video); -void modexHiganbanaPageSetup(video_t *video); +void modexHiganbanaPageSetup(global_game_variables_t *gvar); //void modexShowPage(page_t *page); void VL_ShowPage(page_t *page, boolean vsync, boolean sr); void modexPanPage(page_t *page, int dx, int dy); diff --git a/src/lib/bakapee.c b/src/lib/bakapee.c index 3236d8d3..52786282 100755 --- a/src/lib/bakapee.c +++ b/src/lib/bakapee.c @@ -22,7 +22,6 @@ #include "src/lib/bakapee.h" -struct glob_game_vars *ggvv; //static word far* clockw= (word far*) 0x046C; /* 18.2hz clock */ char global_temp_status_text[512]; char global_temp_status_text2[512]; diff --git a/src/vidtest.c b/src/vidtest.c index 69d0ec3a..8995f1d8 100755 --- a/src/vidtest.c +++ b/src/vidtest.c @@ -121,7 +121,7 @@ void main(int argc, char *argv[]) //modexPalOverscan(44+1); /* set up the page, but with 16 pixels on all borders in offscreen mem */ - modexHiganbanaPageSetup(&gvar.video); + modexHiganbanaPageSetup(&gvar); ZC_MVSetup(&gvar.mv, &map, &gvar); /* fill the page with one color, but with a black border */ diff --git a/src/vrstest.c b/src/vrstest.c index 517d2c82..2e6a90bb 100755 --- a/src/vrstest.c +++ b/src/vrstest.c @@ -107,7 +107,7 @@ void main() if(CA_LoadFile("data/spri/CHUBACW1.vrl", &bigbuffer, &mm, &mmi)) baka=1; else baka=0;*/ VGAmodeX(1, 1, &gvar); - modexHiganbanaPageSetup(&gvar.video); + modexHiganbanaPageSetup(&gvar); VL_ShowPage(&gvar.video.page[0], 1, 0); /* non sprite comparison */ diff --git a/src/xcroll.c b/src/xcroll.c index 891f15cd..542301c1 100755 --- a/src/xcroll.c +++ b/src/xcroll.c @@ -52,7 +52,7 @@ memptr pal; void main(int argc, char *argv[]) { static global_game_variables_t gvar; - struct glob_game_vars *ggvv; + struct glob_game_vars *ggvv; // sword bakapee; // if(argv[1]) bakapee = atoi(argv[1]); // else bakapee = 1; @@ -129,7 +129,7 @@ void main(int argc, char *argv[]) #endif // setup camera and screen~ - modexHiganbanaPageSetup(&gvar.video); + modexHiganbanaPageSetup(&gvar); ZC_MVSetup(&gvar.mv, &map, &gvar); #ifdef FADE