comparison nav_types.h @ 20:fce16251755c src

Remove all trailing whitespace, patch by Erik Hovland *erik$hovland dot org%
author rathann
date Sat, 06 Sep 2008 21:55:51 +0000
parents b91b7ea30fd3
children 4aa618ae094f
comparison
equal deleted inserted replaced
19:7f7e87bd7536 20:fce16251755c
41 41
42 /* Remove this */ 42 /* Remove this */
43 #define DSI_START_BYTE 1031 43 #define DSI_START_BYTE 1031
44 44
45 /** 45 /**
46 * PCI General Information 46 * PCI General Information
47 */ 47 */
48 typedef struct { 48 typedef struct {
49 uint32_t nv_pck_lbn; /**< sector address of this nav pack */ 49 uint32_t nv_pck_lbn; /**< sector address of this nav pack */
50 uint16_t vobu_cat; /**< 'category' of vobu */ 50 uint16_t vobu_cat; /**< 'category' of vobu */
51 uint16_t zero1; /**< reserved */ 51 uint16_t zero1; /**< reserved */
62 */ 62 */
63 typedef struct { 63 typedef struct {
64 uint32_t nsml_agl_dsta[9]; /**< address of destination vobu in AGL_C#n */ 64 uint32_t nsml_agl_dsta[9]; /**< address of destination vobu in AGL_C#n */
65 } ATTRIBUTE_PACKED nsml_agli_t; 65 } ATTRIBUTE_PACKED nsml_agli_t;
66 66
67 /** 67 /**
68 * Highlight General Information 68 * Highlight General Information
69 * 69 *
70 * For btngrX_dsp_ty the bits have the following meaning: 70 * For btngrX_dsp_ty the bits have the following meaning:
71 * 000b: normal 4/3 only buttons 71 * 000b: normal 4/3 only buttons
72 * XX1b: wide (16/9) buttons 72 * XX1b: wide (16/9) buttons
73 * X1Xb: letterbox buttons 73 * X1Xb: letterbox buttons
85 unsigned int zero3 : 1; /**< reserved */ 85 unsigned int zero3 : 1; /**< reserved */
86 unsigned int btngr2_dsp_ty : 3; /**< display type of subpic stream for button group 2 */ 86 unsigned int btngr2_dsp_ty : 3; /**< display type of subpic stream for button group 2 */
87 unsigned int zero4 : 1; /**< reserved */ 87 unsigned int zero4 : 1; /**< reserved */
88 unsigned int btngr3_dsp_ty : 3; /**< display type of subpic stream for button group 3 */ 88 unsigned int btngr3_dsp_ty : 3; /**< display type of subpic stream for button group 3 */
89 uint8_t btn_ofn; /**< button offset number range 0-255 */ 89 uint8_t btn_ofn; /**< button offset number range 0-255 */
90 uint8_t btn_ns; /**< number of valid buttons <= 36/18/12 (low 6 bits) */ 90 uint8_t btn_ns; /**< number of valid buttons <= 36/18/12 (low 6 bits) */
91 uint8_t nsl_btn_ns; /**< number of buttons selectable by U_BTNNi (low 6 bits) nsl_btn_ns <= btn_ns */ 91 uint8_t nsl_btn_ns; /**< number of buttons selectable by U_BTNNi (low 6 bits) nsl_btn_ns <= btn_ns */
92 uint8_t zero5; /**< reserved */ 92 uint8_t zero5; /**< reserved */
93 uint8_t fosl_btnn; /**< forcedly selected button (low 6 bits) */ 93 uint8_t fosl_btnn; /**< forcedly selected button (low 6 bits) */
94 uint8_t foac_btnn; /**< forcedly activated button (low 6 bits) */ 94 uint8_t foac_btnn; /**< forcedly activated button (low 6 bits) */
95 } ATTRIBUTE_PACKED hl_gi_t; 95 } ATTRIBUTE_PACKED hl_gi_t;
96 96
97 97
98 /** 98 /**
99 * Button Color Information Table 99 * Button Color Information Table
100 * Each entry beeing a 32bit word that contains the color indexs and alpha 100 * Each entry beeing a 32bit word that contains the color indexs and alpha
101 * values to use. They are all represented by 4 bit number and stored 101 * values to use. They are all represented by 4 bit number and stored
102 * like this [Ci3, Ci2, Ci1, Ci0, A3, A2, A1, A0]. The actual palette 102 * like this [Ci3, Ci2, Ci1, Ci0, A3, A2, A1, A0]. The actual palette
103 * that the indexes reference is in the PGC. 103 * that the indexes reference is in the PGC.
104 * @TODO split the uint32_t into a struct 104 * @TODO split the uint32_t into a struct
105 */ 105 */
106 typedef struct { 106 typedef struct {
107 uint32_t btn_coli[3][2]; /**< [button color number-1][select:0/action:1] */ 107 uint32_t btn_coli[3][2]; /**< [button color number-1][select:0/action:1] */
108 } ATTRIBUTE_PACKED btn_colit_t; 108 } ATTRIBUTE_PACKED btn_colit_t;
109 109
110 /** 110 /**
111 * Button Information 111 * Button Information
112 * 112 *
113 * NOTE: I've had to change the structure from the disk layout to get 113 * NOTE: I've had to change the structure from the disk layout to get
114 * the packing to work with Sun's Forte C compiler. 114 * the packing to work with Sun's Forte C compiler.
115 * The 4 and 7 bytes are 'rotated' was: ABC DEF GHIJ is: ABCG DEFH IJ 115 * The 4 and 7 bytes are 'rotated' was: ABC DEF GHIJ is: ABCG DEFH IJ
135 unsigned int right : 6; /**< button index when pressing right */ 135 unsigned int right : 6; /**< button index when pressing right */
136 vm_cmd_t cmd; 136 vm_cmd_t cmd;
137 } ATTRIBUTE_PACKED btni_t; 137 } ATTRIBUTE_PACKED btni_t;
138 138
139 /** 139 /**
140 * Highlight Information 140 * Highlight Information
141 */ 141 */
142 typedef struct { 142 typedef struct {
143 hl_gi_t hl_gi; 143 hl_gi_t hl_gi;
144 btn_colit_t btn_colit; 144 btn_colit_t btn_colit;
145 btni_t btnit[36]; 145 btni_t btnit[36];
157 157
158 158
159 159
160 160
161 /** 161 /**
162 * DSI General Information 162 * DSI General Information
163 */ 163 */
164 typedef struct { 164 typedef struct {
165 uint32_t nv_pck_scr; 165 uint32_t nv_pck_scr;
166 uint32_t nv_pck_lbn; /**< sector address of this nav pack */ 166 uint32_t nv_pck_lbn; /**< sector address of this nav pack */
167 uint32_t vobu_ea; /**< end address of this VOBU */ 167 uint32_t vobu_ea; /**< end address of this VOBU */
186 uint32_t vob_v_e_e_ptm; /**< video end ptm in vob */ 186 uint32_t vob_v_e_e_ptm; /**< video end ptm in vob */
187 struct { 187 struct {
188 uint32_t stp_ptm1; 188 uint32_t stp_ptm1;
189 uint32_t stp_ptm2; 189 uint32_t stp_ptm2;
190 uint32_t gap_len1; 190 uint32_t gap_len1;
191 uint32_t gap_len2; 191 uint32_t gap_len2;
192 } vob_a[8]; 192 } vob_a[8];
193 } ATTRIBUTE_PACKED sml_pbi_t; 193 } ATTRIBUTE_PACKED sml_pbi_t;
194 194
195 /** 195 /**
196 * Seamless Angle Infromation for one angle 196 * Seamless Angle Infromation for one angle
206 typedef struct { 206 typedef struct {
207 sml_agl_data_t data[9]; 207 sml_agl_data_t data[9];
208 } ATTRIBUTE_PACKED sml_agli_t; 208 } ATTRIBUTE_PACKED sml_agli_t;
209 209
210 /** 210 /**
211 * VOBU Search Information 211 * VOBU Search Information
212 */ 212 */
213 typedef struct { 213 typedef struct {
214 uint32_t next_video; /**< Next vobu that contains video */ 214 uint32_t next_video; /**< Next vobu that contains video */
215 uint32_t fwda[19]; /**< Forwards, time */ 215 uint32_t fwda[19]; /**< Forwards, time */
216 uint32_t next_vobu; 216 uint32_t next_vobu;
221 221
222 #define SRI_END_OF_CELL 0x3fffffff 222 #define SRI_END_OF_CELL 0x3fffffff
223 223
224 /** 224 /**
225 * Synchronous Information 225 * Synchronous Information
226 */ 226 */
227 typedef struct { 227 typedef struct {
228 uint16_t a_synca[8]; /**< offset to first audio packet for this VOBU */ 228 uint16_t a_synca[8]; /**< offset to first audio packet for this VOBU */
229 uint32_t sp_synca[32]; /**< offset to first subpicture packet */ 229 uint32_t sp_synca[32]; /**< offset to first subpicture packet */
230 } ATTRIBUTE_PACKED synci_t; 230 } ATTRIBUTE_PACKED synci_t;
231 231