⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 registers.h

📁 Lido PXA270平台开发板的最新BSP,包括源代码
💻 H
字号:
/******************************************************************************
<module>
* Name         : Registers.h
* Title        : Interface for register-setup and management
* Author(s)    : Imagination Technologies
* Created      : 2 March 2004
*
* Copyright    : 2004 by Imagination Technologies Limited.
*                All rights reserved.  No part of this software, either
*                material or conceptual may be copied or distributed,
*                transmitted, transcribed, stored in a retrieval system
*                or translated into any human or computer language in any
*                form by any means, electronic, mechanical, manual or
*                other-wise, or disclosed to third parties without the
*                express written permission of Imagination Technologies
*                Limited, Unit 8, HomePark Industrial Estate,
*                King's Langley, Hertfordshire, WD4 8LZ, U.K.
*
* Description  : definitions and declarations for 3D-context register setup 
*				  and maintenance
*
* Platform     : Windows CE
*
</module>

 $Log: registers.h $
 
********************************************************************************/
#if !defined(_REGISTERS_H_)
#define _REGISTERS_H_

/*
	Default TA/3D-core register values

	NB:	Each entry consists of the index within the context SW register array,
		and the corresponding HW register address and default value.
*/

typedef struct _SWREG_DEFAULT_
{
	DWORD			dwSWRegIdx;
	PVRSRV_HWREG	sReg;
} SWREG_DEFAULT, *PSWREG_DEFAULT;

extern SWREG_DEFAULT psDefault3DRegs[];
extern SWREG_DEFAULT psDefaultTARegs[];

/*
	TA registers setup/used by the context
*/
typedef enum _D3DM_SWTAREG_
{
	D3DM_SWTAREG_TAILPTRBASE,
	D3DM_SWTAREG_REGION_BASE,
	D3DM_SWTAREG_GLOBAL_LIST_CTRL,
	D3DM_SWTAREG_XCLIP,
	D3DM_SWTAREG_YCLIP,
	D3DM_SWTAREG_RHWCLAMP,
	D3DM_SWTAREG_RHWCOMP,
	D3DM_SWTAREG_CONFIG,

	D3DM_SWTAREG_COUNT,
	D3DM_SWTAREG_FORCEDWORD				= 0x7FFFFFFF
} D3DM_SWTAREG, *PD3DM_SWTAREG;


/*
	3D-core registers setup/used by the context
*/
typedef enum _D3DM_SW3DREG_
{
	D3DM_SW3DREG_RGNBASE				= 0,
	D3DM_SW3DREG_ZLOADSTORE,
	D3DM_SW3DREG_FPUPERPVAL,
	D3DM_SW3DREG_FPUCULLVAL,
	D3DM_SW3DREG_3DPIXSAMP,
	D3DM_SW3DREG_FOGCOLVERT,
	D3DM_SW3DREG_SCALERCTL,
	D3DM_SW3DREG_BLENDCTL,
	D3DM_SW3DREG_ARGBSUM,
	D3DM_SW3DREG_FBCTL,
	D3DM_SW3DREG_FBXCLIP,
	D3DM_SW3DREG_FBYCLIP,
	D3DM_SW3DREG_FBSTART,
	D3DM_SW3DREG_FBLINESTRIDE,
	D3DM_SW3DREG_ZBASEADDR,
	D3DM_SW3DREG_3DFLATSHADEDCS,
	D3DM_SW3DREG_3D_ZL_BACKGROUND_DEPTH,
	D3DM_SW3DREG_3D_ZL_BACKGROUND_TAG,
	D3DM_SW3DREG_OBJBASE,
	D3DM_SW3DREG_3DSCREENSIZE,
	D3DM_SW3DREG_STARTRENDER,

	D3DM_SW3DREG_COUNT,
	D3DM_SW3DREG_FORCEDWORD				= 0x7FFFFFFF
} D3DM_SW3DREG, *PD3DM_SW3DREG;

#define D3DM_SWMODREG_COUNT	2


/*****************************************************************************
 FN prototypes
*****************************************************************************/
/* Sets up required registers for a new scene */
void SetupSceneRegs(LPD3DM_CONTEXT psContext);

/* Sets up h/w registers related to the chosen render-target */
void SetupRenderTargetRegs(LPD3DM_CONTEXT psContext);

/* Perform one-time initialisation of the context register arrays */
void SetupHWRegs(LPD3DM_CONTEXT psContext);

/* Sets up required registers for a mid scene render */
void SetupMidSceneModifyRegs(LPD3DM_CONTEXT psContext);

#endif /* #if !defined(_REGISTERS_H_) */
/*****************************************************************************
 End of file (Registers.h)
*****************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -