//////////////////////////////////////////////////////////////////////
//
// Project  : BRender Demo Framework
//            Copyright (c) 1996 Argonaut Technologies Ltd.
//            All rights reserved.
//
// Author   : Steve Williams, October 1996
//
// File     : DOS_BITS.H
//
// Requires : BRender V1.3
//
// Comments : DOS specific header
//
//////////////////////////////////////////////////////////////////////

#include "dosio.h"

#define MouseReadAbsolute DOSMouseReadAbsolute

br_error BrDemo_Allocate_Pixelmaps( char *name,
                      br_pixelmap **screen, 
							 br_pixelmap **back_buffer,
							 br_pixelmap **depth_buffer, 
							 br_pixelmap **palette, 
							 char *palette_filename );

br_error BrDemo_InitApp( int argc, char **argv );
br_error BrDemo_Render_Loop();
br_error BrDemo_ShutDown();

br_error BrDemo_OnResize();


br_error BrDemo_SetRootActor( br_actor *pActor );

br_error BrDemo_Refresh_Pointers( br_pixelmap **screen, 
							   br_pixelmap **back_buffer,
							   br_pixelmap **depth_buffer );

br_error BrDemo_PaletteSet(br_pixelmap *pNewPal);

br_error BrDemo_Restart();

br_error BrDemo_AddMenuItem(char *, void *);

br_uint_32 BR_CALLBACK BrDemo_Generate_Valid_Materials_Callback( br_material *pMat, void *user );

typedef struct DOSBits_Tag
{
	br_pixelmap *screen ;
   br_pixelmap *back_buffer ;
	br_pixelmap *depth_buffer ;
	br_pixelmap *palette ; 
	br_uint_16 Offscreen_Height ;
	br_uint_16 Offscreen_Width ;
   br_boolean bStretch ;
   br_int_32 xMousePos ;
	br_int_32 yMousePos ;
   br_actor *pRoot ;
} DOS_BITS, *DOS_BITS_PTR ;
