qzdoom/src/sdl/i_video.h
Randy Heit c412b42703 - Fixed: cycle_t was still a DWORD and not a QWORD under GCC.
- The stat meters now return an FString instead of sprintfing into a fixed
  output buffer.
- NOASM is now automatically defined when compiling for a non-x86 target.
- Some changes have been made to the integral types in doomtype.h:
  - For consistancy with the other integral types, byte is no longer a
    synonym for BYTE.
  - Most uses of BOOL have been change to the standard C++ bool type. Those
    that weren't were changed to INTBOOL to indicate they may contain values
    other than 0 or 1 but are still used as a boolean.
  - Compiler-provided types with explicit bit sizes are now used. In
    particular, DWORD is no longer a long so it will work with both 64-bit
    Windows and Linux.
  - Since some files need to include Windows headers, uint32 is a synonym
    for the non-Windows version of DWORD.
- Removed d_textur.h. The pic_t struct it defined was used nowhere, and that
  was all it contained.


SVN r326 (trunk)
2006-09-14 00:02:31 +00:00

69 lines
2 KiB
C++

// 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:
// System specific interface stuff.
//
//-----------------------------------------------------------------------------
#ifndef __I_VIDEO_H__
#define __I_VIDEO_H__
#include "doomtype.h"
#include "v_video.h"
// [RH] Set the display mode
void I_SetMode (int &width, int &height, int &bits);
// Takes full 8 bit values.
void I_SetPalette (DWORD *palette);
void I_BeginUpdate (void); // [RH] Locks screen[0]
void I_FinishUpdate (void);
void I_FinishUpdateNoBlit (void);
// Wait for vertical retrace or pause a bit.
void I_WaitVBL(int count);
void I_ReadScreen (BYTE *scr);
bool I_CheckResolution (int width, int height, int bits);
void I_ClosestResolution (int *width, int *height, int bits);
bool I_SetResolution (int width, int height, int bits);
void I_StartModeIterator (int bits);
bool I_NextMode (int *width, int *height, bool letterbox);
bool I_AllocateScreen (DCanvas *canvas, int width, int height, int bits);
void I_FreeScreen (DCanvas *canvas);
void I_LockScreen (DCanvas *canvas);
void I_UnlockScreen (DCanvas *canvas);
void I_Blit (DCanvas *from, int srcx, int srcy, int srcwidth, int srcheight,
DCanvas *to, int destx, int desty, int destwidth, int destheight);
enum EDisplayType
{
DISPLAY_WindowOnly,
DISPLAY_FullscreenOnly,
DISPLAY_Both
};
EDisplayType I_DisplayType ();
#endif // __I_VIDEO_H__