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

📄 regtbl.c

📁 有关OSD开发和ADI公司的几款ADC软件控制
💻 C
📖 第 1 页 / 共 2 页
字号:
  GRP_PaletteR				= {PALETTE_R_ADDR					, 256,1,	ADDR_CLEAR1_ADDR,	CLEAR_PALETTE			},
  GRP_PaletteG				= {PALETTE_G_ADDR					, 256,1,	ADDR_CLEAR1_ADDR,	CLEAR_PALETTE			},
  GRP_PaletteB				= {PALETTE_B_ADDR					, 256,1,	ADDR_CLEAR1_ADDR,	CLEAR_PALETTE			},
  GRP_BackgroundColor	= {BACKGROUND_GRP_ADDR			,	 3,1,	ADDR_CLEAR1_ADDR,	CLEAR_BACKGROUND		},
  GRP_DisplayFrame		= {DISPLAY_FRAME_GRP_ADDR		,	 8,2,	ADDR_CLEAR1_ADDR,	CLEAR_DISPLAY_FRAME	},
  GRP_SectionStart		= {SECTION_START_GRP_ADDR		,	12,2,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_LineLength			= {LINE_LENGTH_GRP_ADDR			,	 7,2,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_WindowLineOffset	= {WINDOW_LINE_OFFSET_GRP_ADDR,	 4,2,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_WindowDelay			= {WINDOW_DELAY_GRP_ADDR		,	 4,2,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_WindowLength		= {WINDOW_LENGTH_GRP_ADDR		,	 4,2,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_SCThreshold			= {SC_THRESHOLD_GRP_ADDR		,	 4,1,	ADDR_CLEAR0_ADDR,	CLEAR_SDRAM_CONTROL	},
  GRP_MsrAoi				= {MSR_AOI_GRP_ADDR				,	 4,2,	ADDR_CLEAR0_ADDR,	CLEAR_MEASUREMENT		},
  GRP_MsrHvParameters	= {MSR_HV_PARAMETERS_GRP_ADDR	,	 5,2,	ADDR_CLEAR0_ADDR,	CLEAR_MEASUREMENT		},
  GRP_MsrActiveRegion	= {MSR_ACTIVE_REGION_GRP_ADDR	,	 4,2,	ADDR_CLEAR0_ADDR,	CLEAR_MEASUREMENT		};


/****************************************************************************
 * Local Static Variables
 ****************************************************************************/
/*----Local Data ------------------------------------------------------------*/

/****************************************************************************
 * Local Function Prototypes
 ****************************************************************************/

/*----Global Routines-------------------------------------------------------*/

/*--------- Start of code --------------------------------------------------*/

/*********************************************************************************/


/*--------------------------------------------------------------------------
 * Routine:     REG_Init
 *             Name           r/w  Usage
 * Parameters: none
 *
 * Returns:    none
 * Description:
 * 				Called at first initialization copy the absolute address
 *             of the HW registers.
 *--------------------------------------------------------------------------*/


void REG_Init()
{
  VDP1_BaseAddress 		= 	(TByte huge *)LinearToPtr(VDP1_BASE_ADDRESS);

  REG_OutputControl		=	(TREG_OutputControl huge *)&VDP1_BaseAddress[OUTPUT_CONTROL_ADDR];
  REG_Config				=	(TREG_Config huge *)			&VDP1_BaseAddress[CONFIG_ADDR];
  REG_AddrClear0			=	(TREG_AddrClear0 huge *)	&VDP1_BaseAddress[ADDR_CLEAR0_ADDR];
  REG_AddrClear1			=	(TREG_AddrClear1 huge *)	&VDP1_BaseAddress[ADDR_CLEAR1_ADDR];
  REG_LoadShadow			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[LOAD_SHADOW_ADDR];
  REG_IrqSource		  	=	(TREG_IrqSource huge *)		&VDP1_BaseAddress[IRQ_SOURCE_ADDR];
  REG_IrqMask				=	(TREG_IrqSource huge *)		&VDP1_BaseAddress[IRQ_MASK_ADDR];
  REG_IrqClear				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[IRQ_CLEAR_ADDR];
  REG_Flags					=	(TREG_Flags huge *)			&VDP1_BaseAddress[FLAGS_ADDR];
  REG_FlagsClear			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[FLAGS_CLEAR_ADDR];
  REG_GpOutput				=	(TREG_GpOutput  huge *)	  	&VDP1_BaseAddress[GP_OUTPUT_ADDR];
  REG_Status1				=	(TREG_Status1  huge *)		&VDP1_BaseAddress[STATUS1_ADDR];
  REG_Status2				=	(TREG_Status2  huge *)		&VDP1_BaseAddress[STATUS2_ADDR];
  REG_MpllMdivL			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[MPLL_MDIV_L_ADDR];
  REG_MpllMdivH			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[MPLL_MDIV_H_ADDR];
  REG_MpllNdiv				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[MPLL_NDIV_ADDR];
  REG_PpllMdivL			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[PPLL_MDIV_L_ADDR];
  REG_PpllMdivH			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[PPLL_MDIV_H_ADDR];
  REG_PpllNdiv				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[PPLL_NDIV_ADDR];
  REG_OpllMdivL			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OPLL_MDIV_L_ADDR];
  REG_OpllMdivH			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OPLL_MDIV_H_ADDR];
  REG_OpllNdiv				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OPLL_NDIV_ADDR];
  REG_NlControl			=	(TREG_NlControl huge *)		&VDP1_BaseAddress[NL_CONTROL_ADDR];
  REG_NlSwitch				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[NL_SWITCH_ADDR];
  REG_VideoConfig			=	(TREG_VideoConfig huge *)	&VDP1_BaseAddress[VIDEO_CONFIG_ADDR];
  REG_VideoSC				=	(TREG_VideoSC huge *)		&VDP1_BaseAddress[VIDEO_SC_ADDR];
  REG_VinPolarity			=	(TREG_VinPolarity huge *)	&VDP1_BaseAddress[VIN_POLARITY_ADDR];
  REG_VinControl			=	(TREG_VinControl huge *)	&VDP1_BaseAddress[VIN_CONTROL_ADDR];
  REG_VinActivePixelsL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VIN_ACTIVE_PIXELS_L_ADDR];
  REG_VinActiveLinesL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VIN_ACTIVE_LINES_L_ADDR];
  REG_VinFlaggedLineL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VIN_FLAGGED_LINE_L_ADDR];
  REG_VinRegsMsbits		=	(TREG_VinRegsMsbits huge *)&VDP1_BaseAddress[VIN_REGS_MSBITS_ADDR];
  REG_VdscalerToutxL		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_TOUTX_L_ADDR];
  REG_VdscalerToutxH		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_TOUTX_H_ADDR];
  REG_VdscalerControl	=	(TREG_VdscalerControl huge*)&VDP1_BaseAddress[VDSCALER_CONTROL_ADDR];
  REG_VdscalerDeltaxL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_DELTAX_L_ADDR];
  REG_VdscalerDeltaxH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_DELTAX_H_ADDR];
  REG_VdscalerDeltayL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_DELTAY_L_ADDR];
  REG_VdscalerDeltayH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_DELTAY_H_ADDR];
  REG_VdscalerX0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_X0_ADDR];
  REG_VdscalerY0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_Y0_ADDR];
  REG_VdscalerToutyL		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_TOUTY_L_ADDR];
  REG_VdscalerToutyH		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VDSCALER_TOUTY_H_ADDR];
  REG_VuscalerControl	=	(TREG_VuscalerControl huge*)&VDP1_BaseAddress[VUSCALER_CONTROL_ADDR];
  REG_VuscalerDeltaxL	=	(TVDP1_Reg huge *)		  	&VDP1_BaseAddress[VUSCALER_DELTAX_L_ADDR];
  REG_VuscalerDeltaxH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VUSCALER_DELTAX_H_ADDR];
  REG_VuscalerDeltayL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VUSCALER_DELTAY_L_ADDR];
  REG_VuscalerDeltayH	=	(TREG_VUScalerDeltaY_H huge*)&VDP1_BaseAddress[VUSCALER_DELTAY_H_ADDR];
  REG_VuscalerX0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VUSCALER_X0_ADDR];
  REG_VuscalerY0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VUSCALER_Y0_ADDR];
  REG_DiControl			=	(TREG_DiControl huge *)		&VDP1_BaseAddress[DI_CONTROL_ADDR];
  REG_DiC0					=	(TVDP1_Reg huge *)		  	&VDP1_BaseAddress[DI_C0_ADDR];
  REG_DiC1					=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DI_C1_ADDR];
  REG_DiC2					=	(TREG_DiC2 huge *)			&VDP1_BaseAddress[DI_C2_ADDR];
  REG_DiC3					=	(TREG_DiC3 huge *)			&VDP1_BaseAddress[DI_C3_ADDR];
  REG_DiC4					=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DI_C4_ADDR];
  REG_DataConfig			=	(TREG_DataConfig huge *)	&VDP1_BaseAddress[DATA_CONFIG_ADDR];
  REG_DataSC				=	(TREG_DataSC huge *)			&VDP1_BaseAddress[DATA_SC_ADDR];
  REG_DinPolarity0		=	(TREG_DinPolarity0 huge *)	&VDP1_BaseAddress[DIN_POLARITY0_ADDR];
  REG_DinPolarity1		=	(TREG_DinPolarity1 huge *)	&VDP1_BaseAddress[DIN_POLARITY1_ADDR];
  REG_DinControl0			=	(TREG_DinControl0 huge *)	&VDP1_BaseAddress[DIN_CONTROL0_ADDR];
  REG_DinControl1			=	(TREG_DinControl1 huge *)	&VDP1_BaseAddress[DIN_CONTROL1_ADDR];
  REG_DinControl2			=	(TREG_DinControl2 huge *)	&VDP1_BaseAddress[DIN_CONTROL2_ADDR];
  REG_DpllDivL				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DPLL_DIV_L_ADDR];
  REG_DpllDivH				=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DPLL_DIV_H_ADDR];
  REG_DinThreshold		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DIN_THRESHOLD_ADDR];
  REG_ClampStart			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[CLAMP_START_ADDR];
  REG_ClampWidth			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[CLAMP_WIDTH_ADDR];
  REG_DinLineTrig			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DIN_LINE_TRIG_ADDR];
  REG_DinPixelTrig		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DIN_PIXEL_TRIG_ADDR];
  REG_DinFlaggedLineL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DIN_FLAGGED_LINE_L_ADDR];
  REG_DinFlaggedLineH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DIN_FLAGGED_LINE_H_ADDR];
  REG_DinControl3			=	(TREG_DinControl3 huge *)	&VDP1_BaseAddress[DIN_CONTROL3_ADDR];
  REG_DdscalerToutxL		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_TOUTX_L_ADDR];
  REG_DdscalerToutxH		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_TOUTX_H_ADDR];
  REG_DdscalerControl	=	(TREG_DdscalerControl huge*)&VDP1_BaseAddress[DDSCALER_CONTROL_ADDR];
  REG_DdscalerDeltaxL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_DELTAX_L_ADDR];
  REG_DdscalerDeltaxH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_DELTAX_H_ADDR];
  REG_DdscalerDeltayL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_DELTAY_L_ADDR];
  REG_DdscalerDeltayH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_DELTAY_H_ADDR];
  REG_DdscalerToutyL		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_TOUTY_L_ADDR];
  REG_DdscalerToutyH		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DDSCALER_TOUTY_H_ADDR];
  REG_DuscalerControl	=	(TREG_DuscalerControl huge*)&VDP1_BaseAddress[DUSCALER_CONTROL_ADDR];
  REG_DuscalerDeltaxL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DUSCALER_DELTAX_L_ADDR];
  REG_DuscalerDeltaxH	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DUSCALER_DELTAX_H_ADDR];
  REG_DuscalerDeltayL	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DUSCALER_DELTAY_L_ADDR];
  REG_DuscalerDeltayH	=	(TREG_DUScalerDeltaY_H huge*)&VDP1_BaseAddress[DUSCALER_DELTAY_H_ADDR];
  REG_DuscalerX0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DUSCALER_X0_ADDR];
  REG_DuscalerY0			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DUSCALER_Y0_ADDR];
  REG_VideoCscBias		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[VIDEO_CSC_BIAS_ADDR];
  REG_DataCscBias			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DATA_CSC_BIAS_ADDR];
  REG_OutConfig			=	(TREG_OutConfig huge *)		&VDP1_BaseAddress[OUT_CONFIG_ADDR];
  REG_OsdaControl			=	(TREG_OsdControl huge *)	&VDP1_BaseAddress[OSDA_CONTROL_ADDR];
  REG_OsdbControl			=	(TREG_OsdControl huge *)	&VDP1_BaseAddress[OSDB_CONTROL_ADDR];
  REG_KeystoneControl	=	(TREG_KeystoneControl huge*)&VDP1_BaseAddress[KEYSTONE_CONTROL_ADDR];
  REG_KeystoneLines		=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[KEYSTONE_LINES_ADDR];
  REG_DitherControl		=	(TREG_DitherControl huge *)&VDP1_BaseAddress[DITHER_CONTROL_ADDR];
  REG_DitherC0				=	(TREG_DitherC0 huge *)		&VDP1_BaseAddress[DITHER_C0_ADDR];
  REG_DitherC1				=	(TREG_DitherC1 huge *)		&VDP1_BaseAddress[DITHER_C1_ADDR];
  REG_DisplayControl0	=	(TREG_DisplayControl0 huge*)&VDP1_BaseAddress[DISPLAY_CONTROL0_ADDR];
  REG_DisplayControl1	=	(TREG_DisplayControl1 huge*)&VDP1_BaseAddress[DISPLAY_CONTROL1_ADDR];
  REG_DisplayControl2	=	(TREG_DisplayControl2 huge*)&VDP1_BaseAddress[DISPLAY_CONTROL2_ADDR];
  REG_DisplayHvDelay0	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DISPLAY_HV_DELAY0_ADDR];
  REG_DisplayHvDelay1	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[DISPLAY_HV_DELAY1_ADDR];
  REG_DisplayPolarity	=	(TREG_DisplayPolarity huge*)&VDP1_BaseAddress[DISPLAY_POLARITY_ADDR];
  REG_Control3D			=	(TREG_Control3D huge *)		&VDP1_BaseAddress[CONTROL_3D_ADDR];
  REG_X0_3D					=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[X0_3D_ADDR];
  REG_OsdInAddrL			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OSD_IN_ADDR_L_ADDR];
  REG_OsdInAddrH			=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OSD_IN_ADDR_H_ADDR];
  REG_OsdInBlockLength	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OSD_IN_BLOCK_LENGTH_ADDR];
  REG_OsdSections		  	=	(TREG_OsdSections huge *)	&VDP1_BaseAddress[OSD_SECTIONS_ADDR];
  REG_OsdInData		  	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OSD_IN_DATA_ADDR];
  REG_OsdInControl	  	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[OSD_IN_CONTROL_ADDR];
  REG_SdramWindowControl=	(TREG_SdramWindowControl huge*)&VDP1_BaseAddress[SDRAM_WINDOW_CONTROL_ADDR];
  REG_SdramInit		  	=	(TREG_SdramInit huge *)		&VDP1_BaseAddress[SDRAM_INIT_ADDR];
  REG_MsrControl		  	=	(TREG_MsrControl huge *)	&VDP1_BaseAddress[MSR_CONTROL_ADDR];
  REG_MsrEnable		  	=	(TREG_MsrEnable huge *)		&VDP1_BaseAddress[MSR_ENABLE_ADDR];
  REG_MsrCommands		  	=	(TREG_MsrCommands huge *)	&VDP1_BaseAddress[MSR_COMMANDS_ADDR];
  REG_MsrStatus		  	=	(TREG_MsrStatus huge *)		&VDP1_BaseAddress[MSR_STATUS_ADDR];
  REG_MsryMin			  	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[MSR_Y_MIN_ADDR];
  REG_MsryMax			  	=	(TVDP1_Reg huge *)			&VDP1_BaseAddress[MSR_Y_MAX_ADDR];
  REG_Debug				  	=	(TREG_Debug huge *)			&VDP1_BaseAddress[DEBUG_ADDR];
  REG_DiagSelect		  	=	(TREG_DiagSelect huge *)	&VDP1_BaseAddress[DIAG_SELECT_ADDR];

  REG_ID = VDP1_BaseAddress[SECTION_START_GRP_ADDR];
}


/*========= Single line comment, major point in code =======================*/

/*--------- Single line comment, minor point in code -----------------------*/

/*--------- Block commnet ---------------------------------------------------
 * Comment on what has just happened and/or what is about to happened
 *--------------------------------------------------------------------------*/

/****************************************************************************
 *
 * Revision Details
 * ----------------
 *    $Log: /Oplus/Opsw/source/vdp1/rgtbl.c $
 *
 ****************************************************************************/

/* End of Module */


⌨️ 快捷键说明

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