]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/16_tdef.h
xcrollbroke
[16.git] / src / lib / 16_tdef.h
index 3aeb85b1f529dc7a943190c6a3463ff2eb06a1c2..3fa1feb335ced492a655faf2c2195e411e338469 100755 (executable)
@@ -362,6 +362,11 @@ typedef struct
 #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
@@ -426,6 +431,7 @@ typedef struct
        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
@@ -462,14 +468,11 @@ typedef struct
 //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
@@ -644,8 +647,28 @@ typedef struct
 //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
@@ -693,10 +716,22 @@ typedef struct    //TODO: USE THIS!!!!
        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