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

📄 ramdef.h

📁 车载电子影音系统dvd播放系统原程序代码
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef __RAMDEF_H__
#define __RAMDEF_H__
//*****************************************************
//Define DRAM parameters
#define         W99AV_DRAM_VERSION_ADR          0x0000 // ref. technote #6 VERSION_ADR

//bit[31-16]: picture's vertical size
//bit[15-0]: picture's horizontal size
#define         W99AV_DRAM_VHSIZE               0x0001 // ref. technote #6 VHSIZE

//bit[31-16]: Horizontal I frame PS vector (bottom field) -- LLY.162
#define         W99AV_DRAM_HOFFSET0_B           0x000d

//bit[31-16]: Horizontal P frame PS vector (bottom field) -- LLY.162
#define         W99AV_DRAM_HOFFSET1_B           0x000e

//bit[31-16]: Horizontal B frame PS vector (bottom field) -- LLY.162
#define         W99AV_DRAM_HOFFSET2_B           0x000f

//bit[31-16]: picture's vertical size
#define         W99AV_DRAM_VSIZE                0x0010 // ref. technote #6 VSIZE

//bit[31:16]: current temporal reference of displaying picture
#define         W99AV_DRAM_FRAME_ID             0x0014 // ref. technote #6 FRAME_ID

//bit[31-16]: horizontal clipping start position
#define         W99AV_DRAM_HCS                  0x0019 // ref. technote #6 HCS

//bit[31-16]: vertical clipping start position
#define         W99AV_DRAM_VCS                  0x001A // ref. technote #6 VCS

//bit[31-16]: horizontal clipping width
#define         W99AV_DRAM_HCW                  0x001B // ref. technote #6 HCW

//bit[31-16]: vertical clipping width
#define         W99AV_DRAM_VCW                  0x001C // ref. technote #6 VCW

// Chuan1.11, Keep the DRAM address of Flash.Bin for Serial Debug tool
#define         W99AV_DRAM_FLASH_BIN_ADDR       0x001F 

//bit[31:0]: 4 Y components of current subsample picture in digest command. 
#define         W99AV_DRAM_DIGEST_Y             0x0038 // ref. technote #6 DIGEST_Y

// LLY.103, give A/V sync master control mode
// 0x10000: sync master control mode in RISC -- video
// 0x0    : sync master control mode in DSP -- audio
#define         W99AV_DRAM_V_MASTER_SYNC        0x003e

//bit[31-0]: starting address of OSD bottom filed
#define         W99AV_DRAM_OSDB_ADR             0x0040 // ref. technote #6 OSDB_ADR

//bit[31-0]: OSD bottom filed size
#define         W99AV_DRAM_OSDB_SIZE            0x0041 // ref. technote #6 OSDB_SIZE

//bit[31-0]: starting address of OSD top filed
#define         W99AV_DRAM_OSDT_ADR             0x0042 // ref. technote #6 OSDT_ADR

//bit[31-0]: OSD top filed size
#define         W99AV_DRAM_OSDT_SIZE            0x0043 // ref. technote #6 OSDT_SIZE

//bit[31-16]: status of highlight
#define         W99AV_DRAM_HLI_STATE            0x0047 // ref. technote #6 HLI_STATE

//bit[31-0]: starting address of highlight button information
#define         W99AV_DRAM_BUTTON_INFO_START    0x004C // ref. technote #6 BUTTON_INFO_START

//bit[31-16]: PS mode
#define         W99AV_DRAM_DISP_ASP             0x004D // LLY.0991

// LLY.100b, ZOOM_CLIP & LOGO_START address is swapping
//bit[31-15]: fix video field mis-alignment in zoom command. Only for BB5580A
#define         W99AV_DRAM_ZOOM_CLIP            0x0050 // ref. technote #6 ZOOM_CLIP

//bit[31-15]: fix twinkle video displaying during logo displaying. Only for BB5580A
#define         W99AV_DRAM_LOGO_START           0x0051 // ref. technote #6 LOGO_START

//bit[31:0]: start address of "write pixel" palette. (used in "write_pixel" command.)
#define         W99AV_DRAM_WPXL_YADR            0x0052 // ref. technote #6 WPXL_YADR

//bit[31-16]: Horizontal I frame PS vector (top field) -- LLY.162
#define         W99AV_DRAM_HOFFSET0_T           0x0054

//bit[31-16]: Horizontal P frame PS vector (top field) -- LLY.162
#define         W99AV_DRAM_HOFFSET1_T           0x0055

//bit[31-16]: Horizontal B frame PS vector (top field) -- LLY.162
#define         W99AV_DRAM_HOFFSET2_T           0x0056

//bit
#define         W99AV_DRAM_SP_OFF               0x0059 // ref. technote #6 SP_OFF

//bit
#define         W99AV_DRAM_SP_TOP               0x005e // ref. technote #6 SP_TOP

//bit[31:16]: decoding still picture for VCD title. 0: normal decoding. non zero: decoding still picture.
#define         W99AV_DRAM_STILL_MODE           0x0066 // ref. technote #6 STILL_MODE

//bit[31:0]: starting address of OSD font palette table
#define         W99AV_DRAM_FONTPAL_TBL_ADR      0x0067 // ref. technote #6 FONTPAL_TBL_ADR

//bit[31:16]: horizontal subsample iteration in digest mode. bit[15:0]: vertical subsample iteration in digest mode.
#define         W99AV_DRAM_DIG_HVSIZE           0x0068 // ref. technote #6 DIG_HVSIZE

//bit[31:16]: horizontal clipping start position in digest mode. bit[15:0]: vertical clipping start position in digest mode.
#define         W99AV_DRAM_DIG_SHSV             0x0069 // ref. technote #6 DIG_SHSV

//bit[31:16]: used in digest command. 0: no subsample operation.non-zero: do picture's subsample..
#define         W99AV_DRAM_DIG_SHOW             0x006B  // ref. technote #6 DIG_SHOW

//bit[31:16]: used in digest command. 0: reset "DIG_SHOW" to 0. non-zero: no operation.
#define         W99AV_DRAM_CONT_DIG_SHOW        0x006C  // ref. technote #6 CONT_DIG_SHOW

//bit[31:16]: error-concealment to remove video block. 0: no error-concealment. non-zero: enable error concealment
#define         W99AV_DRAM_SKIP_MOSAIC          0x006D // ref. technote #6 SKIP_MOSAIC

//bit[31:16]: picture's horizontal size.
#define         W99AV_DRAM_SHSIZE               0x006E // ref. technote #6 SHSIZE

//bit[31:16]: to fix twinkle video in zoom command. 0: do nothingnon zero: do adjustment. Only for BB5580A
#define         W99AV_DRAM_VINI_ADJUST          0x0080 // ref. technote #6 VINI_ADJUST

//bit[31:16]: picture's vertical size.
#define         W99AV_DRAM_SVSIZE               0x0086 // ref. technote #6 SVSIZE

//bit[31:16]: horizontal start position of displaying picture in digest mode. bit[15:0]: vertical start position of displaying picture in digest mode.
#define         W99AV_DRAM_DIG_HVSTART          0x008C // ref. technote #6 DIG_HVSTART

//bit[31:16]: shift sub-picture vertical position 0: do nothing. 1: shift up 96
#define         W99AV_DRAM_TV_SWITCHING         0x0094 // ref. technote #6 TV_SWITCHING

//bit[31:16]: inform risc to switch sub-picture id. 0: do nothing. non zero: risc won't change sub-picture id until previous sub-picture ending
#define         W99AV_DRAM_SP_CHANGE            0x0095 // ref. technote #6 SP_CHANGE

//bit[31:16]: used with "SP_CHANGE", store the desired sub-picture id.
#define         W99AV_DRAM_SUB_ID               0x0096 // ref. technote #6 SUB_ID

//bit[31:16]: inform risc that TV mode is "letter-box". 0: do nothing. non-zero: TV mode is "letter-box" and risc will do sub-picture position adjustment automatically. 
#define         W99AV_DRAM_LETTER_BOX           0x0097 // ref. technote #6 LETTER_BOX

//bit[31:16]: inform risc to do sub-picture scaling. (If highlight exists, scaling should be turn on).0: do nothing. non-zero: do sub-picture scaling.
#define         W99AV_DRAM_VBICTL_CHANGE        0x009A // ref. technote #6 VBICTL_CHANGE

//bit[9:8]: N2P or P2N scaling. (used with "VBICTL_CHAGNE"). 2'b01: N2P scaling. 2'b10: P2N scaling
#define         W99AV_DRAM_VBICTL_98            0x009B // ref. technote #6 VBICTL_98

//bit[31:16]: non-zero: "full-encoded" sub-picture (sub-picture is full-screen encoded) encountered. Only for BA5580E.
#define         W99AV_DRAM_FULL_SP              0x009D // ref. technote #6 FULL_SP

//bit[31:16]: frame-rate conversion. 0: AV synchronization is in normal state. 1: risc will do frame rate conversion of "ntsc to pal". 2: risc will do frame rate conversion of "pal to ntsc".
#define         W99AV_DRAM_NTSC_PAL             0x009F // ref. technote #6 NTSC_PAL

//bit
#define         W99AV_DRAM_ONE_FIELD            0x00A1 // ref. 

//Chuan1.05, bit8, to notify F/W that picture decoding error has occurred
#define         W99AV_DRAM_DEC_ERR              0x00A2
//bit[31:16]: I/P pictire decoded only.0: risc will skip B-picture until 2 I/P picture are decoded. Only "0" can be written.
#define         W99AV_DRAM_IPDECED              0x00A3 // ref. technote #6 IPDECED

//bit[31:16]: load new palette to "VBI". 0: do nothing. non zero: load new palette to "VBI"
#define         W99AV_DRAM_NEW_LOAD_PAL         0x00AA // ref. technote #6 NEW_LOAD_PAL

//bit[31:16]: skip video decoding. 0: do nothing. non zero: do skipping video.
#define         W99AV_DRAM_SKIP_PIC             0x00AC // ref. technote #6 SKIP_PIC

//bit[31:16]: update sequence header."n": risc will update "n" sequence header then protect the information of picture size. The value of "UPDATE_SEQ" will decrease to "0" after "n" sequence header updated.
#define         W99AV_DRAM_UPDATE_SEQ           0x00AD // ref. technote #6 UPDATE_SEQ

//bit[31:16]: change sup-picture color palette.0: do nothing. non-zero: risc will re-write sub-picture color palette to "SPU" (hardwre on chip) from "SP_COLOR_START" to "SP_COLOR_END".
#define         W99AV_DRAM_SP_COLOR_CHANGE      0x00AF // ref. technote #6 SP_COLOR_CHANGE

//CoCo1.22, add the DRAM address to detect JPEG display is completed or not. 
//bit [31:16]: 1: Display is not completed. 0: Display is OK.
#define			W99AV_DRAM_JPEG_DISPLAY_OK		0x00B0

//starting address of sub-picture color palette. bit[31:16]: color palette of "Y". bit[15:0]: color palette of "UV".
#define         W99AV_DRAM_SP_COLOR_START       0x00F0 // ref. technote #6 SP_COLOR_START

//end address of sub-picture color palette. bit[31:16]: color palette of "Y". bit[15:0]: color palette of "UV".
#define         W99AV_DRAM_SP_COLOR_END         0x00FF // ref. technote #6 SP_COLOR_END

// DVD_161Micky, 
// sp_ptm, sub-picture end time
#define         W99AV_DRAM_SP_PTM               0x0061

// Brian.161A, Video PTS2, for RISC reference in Step and Pause
#define         W99AV_DRAM_VIDEO_PTS2           0x000c

//CoCo.jpeg
#define         W99AV_DRAM_JPEG_DISPLAY_HVSTART 0x008C
#define         W99AV_DRAM_JPEG_DISPLAY_HVSIZE  0x0069
#define         W99AV_DRAM_JPEG_SCALING_HVSIZE  0x0068
#define         W99AV_DRAM_JPEG_CROP_SIZE       0x006C
#define         W99AV_DRAM_JPEG_DOWNSAMPLE      0x00D0
#define         W99AV_DRAM_JPEG_SHOW            0x00D1
#define         W99AV_DRAM_JPEG_SAMPLING_FACTOR 0x00D2

//CoCo2.80a, for CT908 JPEG
//bit[31:16]:The status of parsing header. 0==>unfinish. 1==>finish. 2==>failed.
//bit[15:0]:The JPEG can be decoded or not. 1==>The JPEG's format is supported. 0==>The JPEG's format is not supported. 
#define         W99AV_DRAM_JPEG_PARSE_STATUS    0x0147  

//bit[31:16]: The real width of the picture in Forg.
//bit[15:0]: The real height of the picture in Forg.
#define         W99AV_DRAM_JPEG_SIZE            0x0148             

//bit[31:0]: 0: no date information. 1: have extrated date information
//#define         W99AV_DRAM_JPEG_DATE            0x0156
#define         W99AV_DRAM_JPEG_CHECK_HANG      0x0156  //check JPEG hang

//bit[31:24], [23:16], [15:8], [7:0] ==> Year

⌨️ 快捷键说明

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