\r
#define MAXPAGE 4\r
\r
+#define BDOFSCONV (unsigned __near)\r
+#define BOFS page[1].data\r
+#define DOFS page[0].data\r
+\r
/*\r
* typedefs of the game variables!\r
*/\r
#define NUMCHUNKS 416 //keen\r
#define MAXSCANLINES 240 // size of ylookup table\r
\r
+typedef struct\r
+{\r
+ int width,height;\r
+} pictabletype;\r
+\r
//video\r
typedef struct\r
{\r
\r
typedef struct\r
{\r
+ //ylookup[MAXSCANLINES],\r
unsigned int offscreen_ofs;\r
unsigned int pattern_ofs;\r
- unsigned bufferofs, ylookup[MAXSCANLINES], linewidth,displayofs;\r
+// unsigned bufferofs,linewidth,displayofs;\r
pan_t pan;\r
+\r
} ofs_t; //unfinished\r
\r
typedef struct\r
word bordercolor;\r
boolean fastpalette;\r
byte far palette1[256][3],far palette2[256][3];\r
+ pictabletype _seg *pictable;\r
} video_t;\r
\r
//from scroll16\r
//from 16_mm\r
//==========================================================================\r
\r
-#define MAXBLOCKS 1024//kd=1300 wolf3d=700 cata=600\r
-//----#define MAXUMBS 12\r
+#define MAXBLOCKS 800//kd=1300 wolf3d=700 cata=600\r
\r
typedef struct mmblockstruct\r
{\r
- word start,length;\r
- //word start; dword length;\r
-//++++ word blob; //for data larger than 64k\r
+ unsigned start,length;\r
unsigned attributes;\r
memptr *useptr; // pointer to the segment start\r
struct mmblockstruct far *next;\r
} mmblocktype;\r
\r
+typedef struct mmshowmemoryinfo\r
+{\r
+ word x,y;\r
+ mmblocktype far *scan;\r
+} mmshowmemoryinfo_t;\r
+\r
typedef struct\r
{\r
dword nearheap,farheap,EMSmem,XMSmem,mainmem;\r
//from 16_ca\r
//==========================================================================\r
\r
+#define NOMAPS\r
+//#define NOGRAPHICS\r
+#define NOAUDIO\r
+\r
+#define MAPHEADERLINKED\r
+//#define GRHEADERLINKED\r
+#define AUDIOHEADERLINKED\r
+\r
#define NUMMAPS 4//39\r
-#define NUMSNDCHUNKS 84\r
+#define NUMSNDCHUNKS 4//3\r
+//#define NUMPICS 4//132//wolf3d wl6\r
+\r
+#define STRUCTPIC 0\r
+#define CASVT dword //*start var type\r
+\r
+\r
+#define DATADIR "data/"\r
+#define GDICTNAME DATADIR"vgadict."\r
+#define GHEADNAME DATADIR"vgahead."\r
+#define GFILENAME DATADIR"vgagraph."\r
+#define EXTENSION "hb1"\r
+\r
\r
typedef struct\r
{\r
byte far grneeded[NUMCHUNKS];\r
word _seg *audiosegs[NUMSNDCHUNKS];//long\r
\r
- word _seg *grstarts; // array of offsets in egagraph, -1 for sparse//long\r
- word _seg *audiostarts; // array of offsets in audio / audiot//long\r
+ CASVT _seg *grstarts; // array of offsets in egagraph, -1 for sparse//long\r
+ CASVT _seg *audiostarts; // array of offsets in audio / audiot//long\r
+\r
+#ifdef GRHEADERLINKED\r
+ huffnode *grhuffman;\r
+#else\r
+ huffnode grhuffman[255];\r
+#endif\r
+\r
+#ifdef AUDIOHEADERLINKED\r
+ huffnode *audiohuffman;\r
+#else\r
+ huffnode audiohuffman[255];\r
+#endif\r
\r
- huffnode huffnode;\r
+ CASVT chunkcomplen,chunkexplen;//long\r
\r
sd_t sd;\r
//TODO: extend! and learn from keen/wolf/catacomb's code wwww\r
player_t player[MaxPlayers]; // player vars\r
map_view_t mv[4];\r
// sw_t sw;\r
+ boolean DLStarted;\r
} global_game_variables_t;\r
\r
#ifdef __WATCOMC__\r