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

📄 dvd_define.h

📁 AMLOGIC DPF source code
💻 H
📖 第 1 页 / 共 4 页
字号:
        unsigned short    linksins_operand;
        unsigned short    c2;
        __packed struct
        {
            unsigned char   cp2;
            unsigned char   cp1;
        } cp1cp2;
    } op1;                                       /* bit0 - bit15 for operand 1*/
    __packed union
    {
        unsigned          jump_operand;
        unsigned          setsystem_operand;
        __packed struct{
            unsigned short c2;
            unsigned char  cp1;
            unsigned char  reserved;
        } cp1c2;
        struct{
            unsigned ss : 16;
            unsigned sdg:  4;
            unsigned res: 12;
        } sdgss;
        struct{
            unsigned ss : 16;
            unsigned sdg:  4;
            unsigned res:  4;
            unsigned cp1:  8;
        } cp1sdgss;
        __packed struct{
            unsigned short c2;
            unsigned short ss;
        } ssc2;
        __packed struct{
            unsigned short c2;
            unsigned char  cp1;
            unsigned char  ssp;
        } sspcp1c2;
        __packed struct{
            unsigned char  cp2;
            unsigned char  cp1;
            unsigned short ssv;
        } ssvcp1cp2;
    } op2;                                       /* bit16 - bit47 for operand 2*/
    __packed union
    {
        struct
        {
            unsigned  branch_field:             4;
            unsigned  compare_field:            3;
            unsigned  i_flag_for_compare:       1;
            unsigned  reserved:                 4;
            unsigned  cmd_id_2:                 1;
            unsigned  cmd_id_1:                 3;
            unsigned  reserved1:               16;
        } opcode1;
        struct
        {
            unsigned  branch_field:             4;
            unsigned  compare_field:            3;
            unsigned  i_flag_for_compare:       1;
            unsigned  set_setsystem_field:      4;
            unsigned  i_flag_for_set_setsystem: 1;
            unsigned  cmd_id_1:                 3;
            unsigned  reserved:                16;
        } opcode2;
        struct
        {
            unsigned  scg_sdg:                  4;
            unsigned  compare_field:            3;
            unsigned  i_flag_for_compare:       1;
            unsigned  set_field:                4;
            unsigned  i_flag_for_set:           1;
            unsigned  cmd_id_1:                 3;
            unsigned  reserved:                16;
        } opcode3;
    } opcode;
} insn;
#pragma Pack()

#pragma Pack(4)
//For Sub-picture
typedef struct
{
    unsigned short spu_size;
    unsigned short dcsq;
    unsigned spu_start;
    unsigned PTS;
} SPU_STACK;

typedef struct
{
    unsigned short ChangeStartPixelNum;
    unsigned NewColor;
    unsigned NewContrast;
} SPU_PX_CTLI;

typedef struct
{
    unsigned short ChangeStartLineNum;
    unsigned short ChangeEndLineNum;
    unsigned char  NumOfChanges;
    unsigned       ln_ctli;
    SPU_PX_CTLI    px_ctli[8];
} SPU_PXCD;

typedef struct
{
	SPU_STACK      cur_spu;
	SPU_STACK      bak_spu;
	
    unsigned char  stack_read;
    unsigned char  stack_write;
    unsigned char  spu_out_valid;
    unsigned char  forced_subpicture;
    unsigned       valid_spu_start;
    SPU_STACK      stack[SPU_STACK_DEPTH];
    unsigned       point;
    unsigned char  point_offset;
    unsigned char  colcon_addr_valid;
    unsigned char  spu_enable;
    unsigned char  display_pending; 
    unsigned char  pgc_sp_pl_ready;
    
    unsigned short hardware_out_VIU_spu_def_plut_c;
    unsigned short hardware_out_VIU_spu_def_plut_a;
    unsigned short hardware_out_VIU_vmx_subp_hstart;
    unsigned short hardware_out_VIU_vmx_subp_hend;
    unsigned short hardware_out_VIU_vmx_subp_vstart;
    unsigned short hardware_out_VIU_vmx_subp_vend;
    unsigned short hardware_out_VIU_spu_start_x;
    unsigned short hardware_out_VIU_spu_end_x;
    unsigned short hardware_out_VIU_spu_start_y;
    unsigned short spu_color; 
    unsigned short spu_alpha; 
    unsigned short spu_start_x;
    unsigned short spu_end_x;
    unsigned short spu_start_y;
    unsigned short spu_end_y;
    unsigned short top_pxd_addr;
    unsigned short bottom_pxd_addr;
    unsigned       top_out_pxd_addr;
    unsigned       bottom_out_pxd_addr;
    unsigned       disp_colcon_addr;
    SPU_PXCD       pxcd;	                     //T329x using two highlight to implement the PXCD
    SPU_STACK      cur_stack;
	pgc_osd2_info	  pgc_osd2;
	unsigned short    hli_sl_color; 
	unsigned short    hli_sl_alpha; 
	unsigned short    hli_ac_color; 
	unsigned short    hli_ac_alpha; 
	unsigned disable_SCR;
} SPUVAR;

typedef struct
{
	unsigned char current_button;
	unsigned short BTNN_PENDING;
	unsigned high_pending;
} HLIVAR;

//For Resume
typedef  struct
{
    unsigned char  rsm_valid;
    unsigned char  vtsn;
    unsigned char  mission;
    unsigned char  cell_no;
    unsigned char  pg_no;
    unsigned char  pgc_no;
    unsigned char  action;
    unsigned short sprm4;
    unsigned short sprm5;
    unsigned short sprm6;
    unsigned short sprm7;
    unsigned short sprm8;
    unsigned short rsm_time;
    unsigned       nv_pck_lbn;
} rsm_info;

typedef struct
{
	unsigned short value;
	unsigned char  mode;
} gprm_type;

typedef struct
{
    unsigned char    buff[8196];                 //1+1+2+4*2048
}VTS_TMAP;

typedef struct
{
    unsigned  short  sprm[24];                   /* System parameters                    */
    gprm_type        gprm[16];                   /* General parameters                   */
    rsm_info         rsm;                        /* Resume information                   */
    PGC              currentpgc;                 /* Currently active PGC                 */
    VTS_TMAP         currenttmap;                
    unsigned char    current_display_config;
    unsigned char    next_display_config;
    unsigned         fwdi[19];
    unsigned         nv_pck_lbn;
} DVDVAR;
#pragma Pack()

//For UDF/9660
#pragma Pack(1)
/* Descriptor Tag (ECMA 167 3/7.2) */
typedef __packed struct
{
	unsigned short tagIdent;
	unsigned short descVersion;
	unsigned char  tagChecksum;
	unsigned char  reserved;
	unsigned short tagSerialNum;
	unsigned short descCRC;
	unsigned short descCRCLength;
	unsigned       tagLocation;
} tag;

/* Extent Descriptor (ECMA 167 3/7.1) */
typedef  __packed struct
{
	unsigned  extLength;
	unsigned  extLocation;
} extent_ad;

/* Anchor Volume Descriptor Pointer (ECMA 167 3/10.2) */
typedef __packed struct
{
	tag            descTag;
	extent_ad      mainVolDescSeqExt;
	extent_ad      reserveVolDescSeqExt;
	unsigned char  reserved[480];
} AnchorVolDescPtr;

/* Entity Identifier (ECMA 167 1/7.4) */
typedef __packed struct
{
	unsigned char flags;
	unsigned char ident[23];
	unsigned char identSuffix[8];
} regid;

/* Partition Descriptor (ECMA 167 3/10.5) */
typedef __packed struct {
	tag            descTag;
	unsigned       volDescSeqNum;
	unsigned short partitionFlags;
	unsigned short partitionNumber;
	regid          partitionContents;
	unsigned char  partitionContentsUse[128];
	unsigned       accessType;
	unsigned       partitionStartingLocation;
	unsigned       partitionLength;
	regid          impIdent;
	unsigned char  impUse[128];
	unsigned char  reserved[156];
} PartitionDesc;

/* CS0 Charspec (ECMA 167 1/7.2.1) */
typedef __packed struct
{
	unsigned char charSetType;
	unsigned char charSetInfo[63];
} charspec;

typedef unsigned char dstring;

/* Recorded Address (ECMA 167 4/7.1) */
typedef  __packed struct
{
	unsigned       logicalBlockNum;
	unsigned short partitionReferenceNum;
} lb_addr;

/* Long Allocation Descriptor (ECMA 167 4/14.14.2) */
typedef  __packed struct
{
	unsigned       extLength;
	lb_addr        extLocation;
	unsigned char  impUse[6];
} long_ad;

/* Logical Volume Descriptor (ECMA 167 3/10.6) */
typedef __packed struct
{
	tag            descTag;
	unsigned       volDescSeqNum;
	charspec       descCharSet;
	dstring        logicalVolIdent[128];
	unsigned       logicalBlockSize;
	regid          domainIdent;
	long_ad        logicalVolContentsUse;
	unsigned       mapTableLength;
	unsigned       numPartitionMaps;
	regid          impIdent;
	unsigned char  impUse[128];
	extent_ad      integritySeqExt;
	unsigned char  partitionMaps[6];
}LogicalVolDesc;

/* Timestamp (ECMA 167 1/7.3) */
typedef __packed struct
{
	unsigned short typeAndTimezone;
	unsigned short year;
	unsigned char  month;
	unsigned char  day;
	unsigned char  hour;
	unsigned char  minute;
	unsigned char  second;
	unsigned char  centiseconds;
	unsigned char  hundredsOfMicroseconds;
	unsigned char  microseconds;
} timestamp;

/* File Set Descriptor (ECMA 167 4/14.1) */
typedef __packed struct
{
	tag              descTag;
	timestamp        recordingDateandTime;
	unsigned  short  interchangeLvl;
	unsigned  short  maxInterchangeLvl;
	unsigned         charSetList;
	unsigned         maxCharSetList;
	unsigned         fileSetNum;
	unsigned         fileSetDescNum;
	charspec         logicalVolIdentCharSet;
	dstring          logicalVolIdent[128];
	charspec         fileSetCharSet;
	dstring          fileSetIdent[32];
	dstring          copyrightFileIdent[32];
	dstring          abstractFileIdent[32];
	long_ad          rootDirectoryICB;
	regid            domainIdent;
	long_ad          nextExt;
	unsigned char    reserved[48];
} FileSetDesc;

/* ICB Tag (ECMA 167 4/14.6) */
typedef __packed  struct
{
	unsigned       priorRecordedNumDirectEntries;
	unsigned short strategyType;
	unsigned char  strategyParameter[2];
	unsigned short numEntries;
	unsigned char  reserved;
	unsigned char  fileType;
	lb_addr        parentICBLocation;
	unsigned short flags;
} icbtag;

/* File Entry (ECMA 167 4/14.9) */
typedef __packed struct
{
	tag               descTag;
	icbtag            icbTag;
	unsigned          uid;
	unsigned          gid;
	unsigned          permissions;
	unsigned short    fileLinkCount;
	unsigned char     recordFormat;
	unsigned char     recordDisplayAttr;
	unsigned int      recordLength;
	unsigned          informationLength[2]; // CHIP_T25
	unsigned          logicalBlocksRecorded[2]; // CHIP_T25
	timestamp         accessTime;
	timestamp         modificationTime;
	timestamp         attrTime;
	unsigned          checkpoint;
	long_ad           extendedAttrICB;
	regid             impIdent;
	unsigned          uniqueID[2]; // CHIP_T25
	unsigned          lengthExtendedAttr;
	unsigned          lengthAllocDescs;
	unsigned char     extendedAttr;
	unsigned char     allocDescs;
}FileEntry ;

typedef __packed struct
{
	tag               descTag;
	unsigned          Imp_Attr_Location;
	unsigned          App_Attr_Location;
}ExtendedAttr ;

typedef __packed struct
{
	unsigned          Attr_Type;
	unsigned char     Attr_SubType;
	unsigned char     reserved[3];
	unsigned          Attr_Length;
	unsigned          Imp_Use_Length;
	regid             EntityID;
	unsigned char     Use_Field;

⌨️ 快捷键说明

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