]> 4ch.mooo.com Git - 16.git/blobdiff - src/lib/16_tdef.h
p16 is being worked on a bunch by me wwww [16_ca needs huge amounts of work and I...
[16.git] / src / lib / 16_tdef.h
index f9e8a30b2aeb99c3178a487a5e176abf80abef62..fac2ba26fab254d9ff33b935a0d66a864c9d1d31 100755 (executable)
@@ -310,7 +310,6 @@ typedef struct// inconfig
 //     Global variables\r
        KeyboardDef     KbdDefs[MaxKbds];\r
        JoystickDef     JoyDefs[MaxJoys];\r
-       //struct        instat  *inst;\r
        inst_t  *inst;\r
 } in_info_t;\r
 \r
@@ -355,29 +354,45 @@ typedef struct
 } kurokku_t;\r
 \r
 //===================================//\r
-#define     PALSIZE            768\r
+#define PALSIZE        768\r
 #define NUMCHUNKS      416     //keen\r
+#define MAXSCANLINES   240                     // size of ylookup table\r
+\r
 //video\r
+typedef struct\r
+{\r
+       word    tileHeight, tileWidth;  //defined by mapfile\r
+       word    quadwh;                 //preproccessed quad size of tilewidth and tileheight\r
+} tile_dimention_t;\r
+\r
 typedef struct\r
 {\r
        unsigned int offscreen_ofs;\r
        unsigned int pattern_ofs;\r
+       unsigned        bufferofs,      ylookup[MAXSCANLINES], linewidth,displayofs;\r
 } ofs_t;       //unfinished\r
 \r
 typedef struct\r
 {\r
-       char old_mode;          //old video mode before game!\r
-       byte palette[PALSIZE], dpal[PALSIZE];   //palette array\r
-       page_t page[MAXPAGE];   //can be used as a pointer to root page[0]\r
-       word vmem_remain;       //remaining video memory\r
-       byte num_of_pages;      //number of actual pages\r
-       //doslib origi vars\r
+//doslib origi vars\r
        byte far * omemptr;\r
        byte vga_draw_stride;\r
        byte vga_draw_stride_limit;             // further X clipping\r
-       //end of doslib origi vars\r
+//end of doslib origi vars\r
        boolean __near rss;             //render sprite switch\r
        boolean __near bgps;            //bg preservation render switch between old and new\r
+} vga_state_t;\r
+\r
+typedef struct\r
+{\r
+       boolean VL_Started;\r
+       char old_mode;          //old video mode before game!\r
+       byte palette[PALSIZE], dpal[PALSIZE];   //palette array\r
+       byte            far     palette1[256][3],far palette2[256][3];\r
+       page_t page[MAXPAGE];   //can be used as a pointer to root page[0]\r
+       word vmem_remain;       //remaining video memory\r
+       byte num_of_pages;      //number of actual pages\r
+       vga_state_t     vga_state;\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
@@ -387,10 +402,12 @@ typedef struct
        nibble sfip;            //shinku_fps_indicator_page; // we're on page 1 now, shinku(). follow along please or it will not be visible.\r
        ofs_t   ofs;            //offset vars used for doslib\r
        word    vh;             //video combined height\r
+       tile_dimention_t        td;\r
        //0000word startclk; float clk, tickclk;        //timer\r
-//newer vars\r
-//TODO: find out how they are used\r
-//     byte grneeded[NUMCHUNKS];\r
+       //wolf3d vars\r
+       boolean screenfaded;\r
+       word            bordercolor;\r
+       boolean fastpalette;\r
 } video_t;\r
 \r
 //from scroll16\r
@@ -426,8 +443,8 @@ typedef struct
 //from 16_mm\r
 //==========================================================================\r
 \r
-#define MAXBLOCKS              1024\r
-#define MAXUMBS                12\r
+#define MAXBLOCKS              1024//kd=1300 wolf3d=700 cata=600\r
+//----#define MAXUMBS          12\r
 \r
 typedef struct mmblockstruct\r
 {\r
@@ -447,7 +464,6 @@ typedef struct
 \r
 typedef struct\r
 {\r
-       memptr bufferseg;\r
        boolean         mmstarted, bombonerror, mmerror;\r
        void far        *farheap;\r
 #ifdef __BORLANDC__\r
@@ -456,11 +472,12 @@ typedef struct
 #ifdef __WATCOMC__\r
        void __near     *nearheap;\r
 #endif\r
-       unsigned int            EMSVer;\r
-       word numUMBs,UMBbase[MAXUMBS];\r
-       word                    totalEMSpages, freeEMSpages, EMSpagesmapped, EMSHandle, EMSPageFrame;\r
-       //dword numUMBs,UMBbase[MAXUMBS];\r
+//---- unsigned int            EMSVer;\r
+//---- word numUMBs,UMBbase[MAXUMBS];\r
+//---- word                    totalEMSpages, freeEMSpages, EMSpagesmapped, EMSHandle, EMSPageFrame;\r
+//---- dword   numUMBs,UMBbase[MAXUMBS];\r
        mmblocktype     far mmblocks[MAXBLOCKS],far *mmhead,far *mmfree,far *mmrover,far *mmnew;\r
+       memptr  bufferseg;      //Allocates bufferseg misc buffer\r
 } mminfo_t;\r
 \r
 //==========================================================================\r
@@ -641,17 +658,18 @@ typedef struct    //TODO: USE THIS!!!!
 //==========================================================================\r
 \r
 //actual global game varables!\r
-/*typedef enum {\r
-       ENGI_QUIT,\r
-       ENGI_RUN,\r
-       ENGI_MENU,\r
-       ENGI_PAUSE\r
-} engi_stat_t;*/\r
-//ENGI_INPUT,\r
+/*typedef struct {\r
+       boolean clearmem;\r
+} vidsw_t;\r
 \r
-typedef struct\r
+typedef struct {\r
+       vidsw_t vsw;\r
+} sw_t;*/\r
+\r
+\r
+\r
+typedef struct glob_game_vars\r
 {\r
-//---- engi_stat_t     engi_stat;\r
        video_t video;  // video settings variable\r
        ca_t            ca;     // ca stuff\r
        pm_t            pm;     // pm stuff\r
@@ -661,6 +679,7 @@ typedef struct
        in_info_t       in;             // 16_in info\r
        player_t        player[MaxPlayers];     // player vars\r
        map_view_t      mv[4];\r
+//     sw_t            sw;\r
 } global_game_variables_t;\r
 \r
 #ifdef __WATCOMC__\r