Mercurial > libdvdread4.hg
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 |