/*
*    DivaPC ARM C source
*
*    VID.H.MODES  - Video Mode-related things
*
*
*    08-01-92 INH  Original
*                  Many revisions later...
*    16-03-93      TEXT_FONT_SIZE replaced by TBL_FontPosition
*    17-01-96      v2.00 Fixed text mode deleted, 256CLR generic mode
*    20-06-96      v2.01 VESA bits added
*/

#define  VGA_RAM_SIZE (256*1024)

extern int   VID_PCYtotal;
extern int   VID_PCXtotal;
extern int   VID_PCbpp;
extern bool  VID_FullScreenActive;
extern bool  VID_256ClrNeedsTranslate;

extern int   VID_GetVESAModeCaps ( void );
extern void  VID_ModesInit( void );

extern void  VID_UpdateModeVars    ( void );
extern void  VID_RedrawBuffer      ( void );

extern void  VID_RedrawRequest ( int timer );
  /* 'Ticks' should be a typical time before the redraw should be done */
extern void  VID_AreaChanged ( int, int, int, int, int );

extern void  VID_SetSpriteBase ( int offset );

extern int   VID_WatchBytesPerLine;
extern int   VID_MemorySize;
extern int   VID_SpriteHeight;
extern int   VID_ImageSize;
extern int   VID_TextModeRows;
extern int   VID_TextModeCols;
extern BYTE *VID_RealScreenBase;

/* VID_ModeType & related variables ******************************* */

#define  MODE_NONE    0
#define  MODE_TEXT    1
#define  MODE_CGA45   2
#define  MODE_CGA6    4
#define  MODE_VGA     8
#define  MODE_256CLR  16
#define  MODE_WINDOWS 32
#define  MODE_VESA    64

extern int   VID_ModeType;

/* General purpose routines ******************** */

extern int max  ( int, int );
extern int min  ( int, int );
extern int clip ( int, int, int );


