\r
typedef struct {\r
byte far **data;\r
- word ntiles; /* the number of tiles */\r
- word twidth; /* width of the tiles */\r
- word theight; /* height of the tiles */\r
- byte *palette; /* palette for the tile set */\r
+ word ntiles; // the number of tiles\r
+ word twidth; // width of the tiles\r
+ word theight; // height of the tiles\r
+ byte *palette; // palette for the tile set\r
} tileset_t;\r
\r
typedef struct {\r
byte *palette;\r
} planar_buf_t;\r
\r
+//===========================================================================//\r
+\r
//TODO: 16_mm and 16_ca must handle this\r
typedef struct {\r
- bitmap_t far *btdata; //old\r
- planar_buf_t far *data; //old\r
- word tileHeight, tileWidth;\r
+ bitmap_t far *pcximg; //I will probibaly use this --sparky4\r
+ //planar_buf_t far *pbdata; //old\r
+ word tileHeight, tileWidth; //defined by mapfile\r
unsigned int rows, cols;\r
-// #ifdef __DEBUG__\r
-// boolean debug_text; //show the value of the tile! wwww\r
-// byte *debug_data;\r
-// #endif\r
-} tiles_t;\r
+ byte imgname[8]; //image file of tileset (set to 8 because DOS ^^;)\r
+} tiles_t; //seems to be the tileset properties\r
\r
//TODO: 16_mm and 16_ca must handle this\r
//TODO: add variables from 16_ca\r
+//#define __NEWMAPTILEDATAVARS__\r
+#define MAPLAYERS 4\r
+#ifdef __NEWMAPTILEDATAVARS__\r
+#define MAPTILESPTR layertile[0]\r
+#define MAPTILESPTK layertile[k]\r
+#define MAPDATAPTR layerdata[0]\r
+#define MAPDATAPTK layerdata[k]\r
+#else\r
+#define MAPTILESPTR tiles//layertile[0]\r
+#define MAPTILESPTK tiles//layertile[k]\r
+#define MAPDATAPTR data//layerdata[0]\r
+#define MAPDATAPTK data//layerdata[k]\r
+#endif\r
typedef struct {\r
//long planestart[3];\r
//unsigned planelength[3];\r
+#ifndef __NEWMAPTILEDATAVARS__\r
byte *data; //TODO: 16_mm and 16_ca must handle this\r
- byte * far *layerdata; //TODO: 16_mm and 16_ca must handle this\r
tiles_t *tiles; //TODO: 16_mm and 16_ca must handle this\r
- tiles_t * far *layertile; //TODO: 16_mm and 16_ca must handle this\r
+#else\r
+ byte far *layerdata[MAPLAYERS]; // mapdata for multilayer (map index values for rendering which image on the tile)\r
+ tiles_t far *layertile[MAPLAYERS]; // tilesets for layers (currently ony 4 can be loaded wwww)\r
+#endif\r
int width, height; //this has to be signed!\r
- char name[16];\r
+ byte name[16];\r
} map_t;\r
\r
+//===================================//\r
+\r
typedef struct{\r
word tw; /* screen width in tiles */\r
word th; /* screen height in tiles */\r
sword tilemidposscreeny; /* middle tile y position */ /* needed for scroll system to work accordingly */\r
sword tileplayerposscreenx; /* player position on screen */ /* needed for scroll and map system to work accordingly */\r
sword tileplayerposscreeny; /* player position on screen */ /* needed for scroll and map system to work accordingly */\r
-} tileinfo_t;\r
+} pagetileinfo_t;\r
\r
typedef struct {\r
nibble/*word*/ id; /* the Identification number of the page~ For layering~ */\r
byte far* data; /* the data for the page */\r
- tileinfo_t ti;\r
+ pagetileinfo_t ti;\r
word dx; /* col we are viewing on virtual screen (on page[0]) */ /* off screen buffer on the left size */\r
word dy; /* row we are viewing on virtual screen (on page[0]) */ /* off screen buffer on the top size */\r
word sw; /* screen width */ /* resolution */\r
word stridew; /* width/4 */ /* VGA */\r
word pagesize; /* page size */\r
word pi; /* increment page by this much to preserve location */\r
+ int tlx,tly;\r
//newer vars\r
//TODO: find where they are used\r
sword delta; // How much should we shift the page for smooth scrolling\r
sword __near sprifilei; //player file's i\r
nibble __near p; //render page number\r
nibble __near sp; //show page number(for showpage)\r
- boolean __near r; //page flip, showpage, or render if true\r
+ boolean __near dorender; //page flip, showpage, or render if true\r
word pr[MAXPAGE][4]; //render sections of pages (this is supposed to be set up to draw sections of the screen if updated)\r
\r
nibble sfip; //shinku_fps_indicator_page; // we're on page 1 now, shinku(). follow along please or it will not be visible.\r
typedef struct\r
{\r
int mapon, mapnum;\r
- __SEGA *mapsegs[4];\r
- __SEGA *mapheaderseg[NUMMAPS];\r
- __SEGA *tinf;\r
+ //__SEGA *mapsegs[4];\r
+ //__SEGA *mapheaderseg[NUMMAPS];\r
+ //__SEGA *tinf;\r
+ memptr mapsegs;\r
} ca_mapinfo_t;\r
\r
typedef struct\r
\r
#ifdef __WATCOMC__\r
extern char global_temp_status_text[512];\r
+extern char global_temp_status_text2[512];\r
#define EINVFMT EMFILE\r
#endif\r
#endif /* _TYPEDEFSTRUCT_H_ */\r