6. text box rendering\r
7. text rendering\r
DONE! YAY! 8. map loading\r
-9. map rendering~\r
+DONE! YAY! wwww 9. map rendering~\r
10. map and item interation\r
11. item inventory~\r
12. Memory management (EMS + XMS)\r
/* utility */
void
-modexPalUpdate(byte *p, word *i)
+modexPalUpdate(bitmap_t *bmp, word *i)
{
+ byte *p = bmp->palette;
word w=0;
word q=0;
+ long lq;
+ long bufSize = (bmp->width * bmp->height);
+ for(lq=0; lq<bufSize; lq++)
+ {
+ bmp->data[lq]+=bmp->offset;
+ }
modexWaitBorder();
if((*i)==0) outp(PAL_WRITE_REG, 0); /* start at the beginning of palette */
else q=(*i);
void modexPalWhite();
/* utility functions */
-void modexPalUpdate(byte *p, word *i);
+void modexPalUpdate(bitmap_t *bmp, word *i);
void modexPalUpdate2(byte *p);
void modexWaitBorder();
modexEnter();\r
\r
/* fix up the palette and everything */\r
- modexPalUpdate(bmp.palette, 0);\r
+ modexPalUpdate(&bmp, 0);\r
\r
/* clear and draw one sprite and one bitmap */\r
modexClearRegion(&page, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 1);\r
long emsavail;\r
char teststr[80];\r
int i;
- long lq, bufSize;
static word paloffset=0;\r
bitmap_t ptmp;//, npctmp; // player sprite\r
planar_buf_t *p;\r
modexPalBlack();
//ptmp.offset=(paloffset/3);
ptmp.offset=(paloffset/3);
- modexPalUpdate(ptmp.palette, &paloffset);
+ modexPalUpdate(&ptmp, &paloffset);
//printf(" %d\n", sizeof(ptmp.data));
//printf("1: %d\n", paloffset);
map.tiles->data->offset=(paloffset/3);
- modexPalUpdate(map.tiles->data->palette, &paloffset);
+ modexPalUpdate(map.tiles->data, &paloffset);
//printf("wwww: %d\n", map.tiles->data->offset);
- bufSize = (map.tiles->data->width * map.tiles->data->height);
- for(lq=0; lq<bufSize; lq++)
- {
- map.tiles->data->data[lq]+=map.tiles->data->offset;
- }
//printf("2: %d\n", paloffset);
//printf(" %d\n", sizeof(map.tiles->data->(*data)));
gpal = modexNewPal();\r