X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2F16_tdef.h;h=3fa1feb335ced492a655faf2c2195e411e338469;hb=767a51ba929d4110350572d014665644fa2288d5;hp=3aeb85b1f529dc7a943190c6a3463ff2eb06a1c2;hpb=e42f649aa2ec07f95d127917fe27bc4131a63b01;p=16.git diff --git a/src/lib/16_tdef.h b/src/lib/16_tdef.h index 3aeb85b1..3fa1feb3 100755 --- a/src/lib/16_tdef.h +++ b/src/lib/16_tdef.h @@ -362,6 +362,11 @@ typedef struct #define NUMCHUNKS 416 //keen #define MAXSCANLINES 240 // size of ylookup table +typedef struct +{ + int width,height; +} pictabletype; + //video typedef struct { @@ -426,6 +431,7 @@ typedef struct word bordercolor; boolean fastpalette; byte far palette1[256][3],far palette2[256][3]; + pictabletype _seg *pictable; } video_t; //from scroll16 @@ -462,14 +468,11 @@ typedef struct //from 16_mm //========================================================================== -#define MAXBLOCKS 1024//kd=1300 wolf3d=700 cata=600 -//----#define MAXUMBS 12 +#define MAXBLOCKS 800//kd=1300 wolf3d=700 cata=600 typedef struct mmblockstruct { - word start,length; - //word start; dword length; -//++++ word blob; //for data larger than 64k + unsigned start,length; unsigned attributes; memptr *useptr; // pointer to the segment start struct mmblockstruct far *next; @@ -644,8 +647,28 @@ typedef struct //from 16_ca //========================================================================== +#define NOMAPS +//#define NOGRAPHICS +#define NOAUDIO + +#define MAPHEADERLINKED +//#define GRHEADERLINKED +#define AUDIOHEADERLINKED + #define NUMMAPS 4//39 -#define NUMSNDCHUNKS 84 +#define NUMSNDCHUNKS 4//3 +//#define NUMPICS 4//132//wolf3d wl6 + +#define STRUCTPIC 0 +#define CASVT dword //*start var type + + +#define DATADIR "data/" +#define GDICTNAME DATADIR"vgadict." +#define GHEADNAME DATADIR"vgahead." +#define GFILENAME DATADIR"vgagraph." +#define EXTENSION "hb1" + typedef struct { @@ -693,10 +716,22 @@ typedef struct //TODO: USE THIS!!!! byte far grneeded[NUMCHUNKS]; word _seg *audiosegs[NUMSNDCHUNKS];//long - word _seg *grstarts; // array of offsets in egagraph, -1 for sparse//long - word _seg *audiostarts; // array of offsets in audio / audiot//long + CASVT _seg *grstarts; // array of offsets in egagraph, -1 for sparse//long + CASVT _seg *audiostarts; // array of offsets in audio / audiot//long + +#ifdef GRHEADERLINKED + huffnode *grhuffman; +#else + huffnode grhuffman[255]; +#endif + +#ifdef AUDIOHEADERLINKED + huffnode *audiohuffman; +#else + huffnode audiohuffman[255]; +#endif - huffnode huffnode; + CASVT chunkcomplen,chunkexplen;//long sd_t sd; //TODO: extend! and learn from keen/wolf/catacomb's code wwww