X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ftypdefst.h;h=da79ebc8b63b74a0416b8fa298633b64b907bbf1;hb=9e4ec19da5e1df6d0f18978ceb567a9712185aab;hp=9f4936b96cc951548f0da81797c5bc17acb61262;hpb=ef6299431f115ac663324d55ffb64570a2e66258;p=16.git diff --git a/src/lib/typdefst.h b/src/lib/typdefst.h index 9f4936b9..da79ebc8 100755 --- a/src/lib/typdefst.h +++ b/src/lib/typdefst.h @@ -1,5 +1,5 @@ /* Project 16 Source Code~ - * Copyright (C) 2012-2015 sparky4 & pngwen & andrius4669 + * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123 * * This file is part of Project 16. * @@ -36,11 +36,13 @@ #define AAMAGENTA "\x1b[45;35m" #define AARESET "\x1b[0m" +#define MAXPAGE 4 + /* * typedefs of the game variables! */ typedef struct { - byte huge *data; + byte *data; word width; word height; byte *palette; @@ -48,7 +50,7 @@ typedef struct { } bitmap_t; typedef struct { - byte **data; + byte huge **data; word ntiles; /* the number of tiles */ word twidth; /* width of the tiles */ word theight; /* height of the tiles */ @@ -56,7 +58,7 @@ typedef struct { } tileset_t; typedef struct { - byte far *plane[4]; /* 4 planes of image data */ + byte huge *plane[4]; /* 4 planes of image data */ word width; /* width of the image (spread across 4 planes) */ word height; /* height of the image (spread across 4 planes) */ word pwidth; /* the number of bytes in each plane */ @@ -70,16 +72,19 @@ typedef struct { word dy; /* row we are viewing on the virtual screen */ word sw; /* screen width */ word sh; /* screen heigth */ - word tilesw; /* screen width in tiles */ - word tilesh; /* screen height in tiles */ + word tw; /* screen width in tiles */ + word th; /* screen height in tiles */ word width; /* virtual width of the page */ word height; /* virtual height of the page */ - word tw; - word th; + word tilesw; /* virtual screen width in tiles */ + word tilesh; /* virtual screen height in tiles */ sword tilemidposscreenx; /* middle tile position */ sword tilemidposscreeny; /* middle tile position */ sword tileplayerposscreenx; /* player position on screen */ sword tileplayerposscreeny; /* player position on screen */ + word stridew; /*width/4*/ + word pagesize; /* page size */ + word pi; /* incremention page by this much to preserve location */ } page_t; typedef struct @@ -101,8 +106,19 @@ typedef struct typedef struct { - long old_mode; //old video mode before game! - page_t page[4]; //pointer to root page[0] + word pn; +} pan_t; + +typedef struct +{ + char old_mode; //old video mode before game! + page_t page[MAXPAGE]; //pointer to root page[0] + word vmem_remain; //remaining video memory + byte num_of_pages; //number of actual pages + boolean __near p; //render page number + boolean __near r; //page flip if true + word pr[MAXPAGE][4]; //render sections of pages + //0000word startclk; float clk, tickclk; //timer } video_t; typedef struct