Added a flag indicating a modeswitch happened/is happening so the 3D add-on can block rendering and re-inits.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12436 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Rudolf Cornelissen 2005-04-18 11:26:37 +00:00
parent afb207ac58
commit 300af26345

View File

@ -5,7 +5,7 @@
Other authors:
Mark Watson;
Apsed;
Rudolf Cornelissen 10/2002-2/2005.
Rudolf Cornelissen 10/2002-4/2005.
*/
#ifndef DRIVERINTERFACE_H
@ -78,16 +78,16 @@ enum {
#define NV_IMAGE_PATTERN 0x00000002 /* 2D */
#define NV3_SURFACE_0 0x00000003 /* 3D: old cmd */
#define NV3_SURFACE_1 0x00000004 /* 3D: old cmd */
#define NV3_SURFACE_2 0x00000005 /* 3D: old cmd */
#define NV3_SURFACE_3 0x00000006 /* 3D: old cmd */
#define NV4_CONTEXT_SURFACES_ARGB_ZS 0x00000007 /* 3D: should replace the old cmd's */
#define NV10_CONTEXT_SURFACES_ARGB_ZS 0x00000007 /* 3D: should replace the old cmd's */
#define NV3_SURFACE_2 0x00000005 /* 3D: nolonger used */
#define NV3_SURFACE_3 0x00000006 /* 3D: nolonger used */
#define NV4_CONTEXT_SURFACES_ARGB_ZS 0x00000007 /* 3D */
#define NV10_CONTEXT_SURFACES_ARGB_ZS 0x00000007 /* 3D */
//fixme: learn the rules of nvidia's hardware hashtable implementation!!!
//#define NV4_SURFACE 0x00000008 /* 2D */
//#define NV10_CONTEXT_SURFACES_2D 0x00000008 /* 2D */
#define NV4_SURFACE 0x00000010 /* 2D */
#define NV10_CONTEXT_SURFACES_2D 0x00000010 /* 2D */
#define NV1_IMAGE_FROM_CPU 0x00000010 /* 2D: unused, remove? */
#define NV1_IMAGE_FROM_CPU 0x00000010 /* 2D: unused */
#define NV_IMAGE_BLIT 0x00000011 /* 2D */
/* fixme:
* never use NV3_GDI_RECTANGLE_TEXT for DMA acceleration:
@ -99,7 +99,7 @@ enum {
* NV4_GDI_RECTANGLE_TEXT (tested with BeRoMeter 1.2.6). */
#define NV3_GDI_RECTANGLE_TEXT 0x00000012 /* 2D */
#define NV4_GDI_RECTANGLE_TEXT 0x00000012 /* 2D */
#define NV_RENDER_D3D0_TRIANGLE_ZETA 0x00000013 /* unused (yet?) */
#define NV_RENDER_D3D0_TRIANGLE_ZETA 0x00000013 /* 3D: nolonger used */
#define NV4_DX5_TEXTURE_TRIANGLE 0x00000014 /* 3D */
#define NV10_DX5_TEXTURE_TRIANGLE 0x00000014 /* 3D */
#define NV4_DX6_MULTI_TEXTURE_TRIANGLE 0x00000015 /* unused (yet?) */
@ -217,6 +217,8 @@ typedef struct {
/* pointers to first and last free memory adress for 3D use: cardmem local offsets */
uint32 mem_low;
uint32 mem_high;
/* flag to inform 3D add-on to stop rendering and reinitialize */
bool mode_changed;
/* card info - information gathered from PINS (and other sources) */
enum