X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fscroll.c;h=2746ca4f1cc500316ba210f54ce75dc116b13871;hb=8fc8ecea5711627603ffc54025692aabcc9dd843;hp=6cb59b464059efdd0860b3b6aea91892b91da8c9;hpb=51de7420be7fab3204a202553ecbcf9e20395150;p=16.git diff --git a/src/scroll.c b/src/scroll.c index 6cb59b46..2746ca4f 100755 --- a/src/scroll.c +++ b/src/scroll.c @@ -1,5 +1,5 @@ /* Project 16 Source Code~ - * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 + * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover * * This file is part of Project 16. * @@ -28,20 +28,18 @@ #define MODEX //this is for mode x initiating //word far *clock= (word far*) 0x046C; /* 18.2hz clock */ -bitmap_t *p; +//bitmap_t *p; global_game_variables_t gvar; static map_t map; player_t player[MaxPlayers]; -//page_t screen, gvar.video.page[1], gvar.video.page[2]; map_view_t mv[4]; //word pn=0; //i forgot ww -//static planar_buf_t huge *pp; float t; sword bakapee; pan_t pan; //debugswitches boolean panswitch=0; -boolean pageflipflop=1; +//extern boolean pageflipflop=1; unsigned int i; const char *cpus; //static int persist_aniframe = 0; /* gonna be increased to 1 before being used, so 0 is ok for default */ @@ -50,7 +48,7 @@ boolean pageflipflop=1; word pg; //#ifdef FADE static word paloffset=0; - byte *dpal, *default_pal; + byte *dpal; //#endif byte *gpal; byte *ptr; @@ -93,13 +91,8 @@ void main(int argc, char *argv[]) _DEBUGF("Serial debug output printf test %u %u %u\n",1U,2U,3U); pan.pn=1; - //player[0].data = &pp; - //printf("starting timer "); start_timer(&gvar); - //printf("ok\n"); - -// atexit(qclean()); /* create the map */ fprintf(stderr, "testing map load~ "); @@ -114,12 +107,8 @@ void main(int argc, char *argv[]) //mappalptr = map.tiles->btdata->palette; /* data */ - //++++ - p = malloc(48*128); - player[0].data = p; - *p = bitmapLoadPcx("data/chikyuu.pcx"); // load sprite + player[0].data = malloc(48*128); //TODO use exmm *player[0].data = bitmapLoadPcx("data/chikyuu.pcx"); // load sprite - //npctmp = bitmapLoadPcx("ptmp1.pcx"); // load sprite /* create the planar buffer */ ////++++ (player[0].data) = *planar_buf_from_bitmap(&p); @@ -137,8 +126,6 @@ void main(int argc, char *argv[]) #ifdef MODEX #ifdef FADE dpal = modexNewPal(); - default_pal = modexNewPal(); - *default_pal = *dpal; modexPalSave(dpal); modexFadeOff(4, dpal); #endif @@ -153,7 +140,7 @@ void main(int argc, char *argv[]) // printf("Total used @ before palette initiation: %zu\n", oldfreemem-GetFreeSize()); //++++ player[0].data.offset=(paloffset/3); //++++ modexPalUpdate1(&player[0].data, &paloffset, 0, 0); - modexPalUpdate1(p->palette); + modexPalUpdate1(player[0].data->palette); //++++0000 modexPalUpdate1(map.tiles->btdata->palette); //printf(" %d\n", sizeof(ptmp->data)); //printf("1: %d\n", paloffset); @@ -198,7 +185,7 @@ void main(int argc, char *argv[]) //modexClearRegion(mv[1].page, player[0].x, player[0].y-TILEWH, 16, 32, 15); #else //PBUFSFUN(mv[1].page, player[0].x, player[0].y-TILEWH, 16, 64, 24, 32, PLAYERBMPDATA); - PBUFSFUN(mv[0].page, player[0].x, player[0].y-TILEWH, 16, 64, 16, 32, p); + PBUFSFUN(mv[0].page, player[0].x, player[0].y-TILEWH, 16, 64, 16, 32, player[0].data); #endif if(!pageflipflop) modexShowPage(mv[1].page); @@ -295,14 +282,15 @@ void main(int argc, char *argv[]) } if(IN_KeyDown(67)) //f9 { -// modexClearRegion(mv[2].page, 0, 0, mv[2].page->width, mv[2].page->height, 47); -// modexClearRegion(mv[3].page, 0, 0, mv[3].page->width, mv[3].page->height, 45); - modexClearRegion(mv[3].page, 0, 128, 28, 36, 15); + modexClearRegion(mv[1].page, 0, 0, mv[1].page->width, mv[1].page->height, 2); + modexClearRegion(mv[2].page, 0, 0, mv[2].page->width, mv[2].page->height, 3); + modexClearRegion(mv[3].page, 0, 0, mv[3].page->width, mv[3].page->height, 4); + modexClearRegion(mv[3].page, 0, 0, 20, 36, 15); //IN_UserInput(1,1); } if(IN_KeyDown(66)) //f8 { - modexDrawSprite(mv[0].page, 16, 16, p); +// modexDrawSprite(mv[0].page, 16, 16, p); modexDrawSprite(mv[0].page, 32+48, 16, (player[0].data)); } //TODO fmemtest into page @@ -314,7 +302,7 @@ void main(int argc, char *argv[]) }*/ //9 - if(IN_KeyDown(10)){ modexPalOverscan(rand()%56); modexPalUpdate1(default_pal); IN_UserInput(1,1); } + if(IN_KeyDown(10)){ modexPalOverscan(rand()%56); modexPalUpdate1(dpal); IN_UserInput(1,1); } //if(IN_KeyDown(11)){ modexPalOverscan(15); } if((player[0].q==1) && !(player[0].x%TILEWH==0 && player[0].y%TILEWH==0)) break; //incase things go out of sync! }