#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
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
//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