diff options
author | inmarket <andrewh@inmarket.com.au> | 2013-12-24 01:00:14 +1000 |
---|---|---|
committer | inmarket <andrewh@inmarket.com.au> | 2013-12-24 01:00:14 +1000 |
commit | 39adfff2a9f73919dd09593efc38884dc2a05f40 (patch) | |
tree | f0fdf8c70ce4a1396e33927f9033049de370c56a /demos/3rdparty/doom/v_video.h | |
parent | 57d9c4854beefd22aa367f6a44b5da4a586632b1 (diff) | |
download | uGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.tar.gz uGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.tar.bz2 uGFX-39adfff2a9f73919dd09593efc38884dc2a05f40.zip |
demo - DOOM the game.
Runs but not quite functional yet (requires user input to be completed).
Shareware WAD file. Please read README.txt and DOOMLIC.txt
Diffstat (limited to 'demos/3rdparty/doom/v_video.h')
-rw-r--r-- | demos/3rdparty/doom/v_video.h | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/demos/3rdparty/doom/v_video.h b/demos/3rdparty/doom/v_video.h new file mode 100644 index 00000000..cc2aca56 --- /dev/null +++ b/demos/3rdparty/doom/v_video.h @@ -0,0 +1,119 @@ +// Emacs style mode select -*- C++ -*- +//----------------------------------------------------------------------------- +// +// $Id:$ +// +// Copyright (C) 1993-1996 by id Software, Inc. +// +// This source is available for distribution and/or modification +// only under the terms of the DOOM Source Code License as +// published by id Software. All rights reserved. +// +// The source is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License +// for more details. +// +// DESCRIPTION: +// Gamma correction LUT. +// Functions to draw patches (by post) directly to screen. +// Functions to blit a block to the screen. +// +//----------------------------------------------------------------------------- + + +#ifndef __V_VIDEO__ +#define __V_VIDEO__ + +#include "doomtype.h" + +#include "doomdef.h" + +// Needed because we are refering to patches. +#include "r_data.h" + +// +// VIDEO +// + +#define CENTERY (SCREENHEIGHT/2) + + +// Screen 0 is the screen updated by I_Update screen. +// Screen 1 is an extra buffer. + + + +extern byte* screens[5]; + +extern int dirtybox[4]; + +extern byte gammatable[5][256]; +extern int usegamma; + + + +// Allocates buffer screens, call before R_Init. +void V_Init (void); + + +void +V_CopyRect +( int srcx, + int srcy, + int srcscrn, + int width, + int height, + int destx, + int desty, + int destscrn ); + +void +V_DrawPatch +( int x, + int y, + int scrn, + patch_t* patch); + +void +V_DrawPatchDirect +( int x, + int y, + int scrn, + patch_t* patch ); + + +// Draw a linear block of pixels into the view buffer. +void +V_DrawBlock +( int x, + int y, + int scrn, + int width, + int height, + byte* src ); + +// Reads a linear block of pixels into the view buffer. +void +V_GetBlock +( int x, + int y, + int scrn, + int width, + int height, + byte* dest ); + + +void +V_MarkRect +( int x, + int y, + int width, + int height ); + +#endif +//----------------------------------------------------------------------------- +// +// $Log:$ +// +//----------------------------------------------------------------------------- |