Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1519 lines
42 KiB

  1. /******************************Module*Header*******************************\
  2. *
  3. * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  4. * !! !!
  5. * !! WARNING: NOT DDK SAMPLE CODE !!
  6. * !! !!
  7. * !! This source code is provided for completeness only and should not be !!
  8. * !! used as sample code for display driver development. Only those sources !!
  9. * !! marked as sample code for a given driver component should be used for !!
  10. * !! development purposes. !!
  11. * !! !!
  12. * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  13. *
  14. * Module Name: ereg.h
  15. *
  16. * Content:
  17. *
  18. * Copyright (c) 1994-1999 3Dlabs Inc. Ltd. All rights reserved.
  19. * Copyright (c) 1995-2003 Microsoft Corporation. All rights reserved.
  20. \*****************************************************************************/
  21. #ifdef __EREG
  22. #pragma message ("FILE : "__FILE__" : Multiple inclusion")
  23. #endif
  24. #define __EREG
  25. #ifndef _MSDOS
  26. typedef unsigned long unsigned32;
  27. typedef signed long signed32;
  28. #else
  29. typedef unsigned long unsigned32;
  30. typedef signed long signed32;
  31. #endif
  32. #define TAGBITS 12
  33. #define CONTEXTBITS 1
  34. #define ADDRBITS (32 - TAGBITS - CONTEXTBITS)
  35. #define ENABLE_BLOCK 1
  36. #define DISABLE_BLOCK 0
  37. #define X_FIELD_MAX 0x7FFF /* signed 16 bits */
  38. #define Y_FIELD_MAX X_FIELD_MAX
  39. typedef unsigned32 __GlintUnsignedIntFmat;
  40. typedef signed32 __GlintSignedIntFmat;
  41. typedef unsigned32 __GlintDataFmat;
  42. typedef signed32 __Glint16FixPt16Fmat;
  43. typedef signed32 __Glint16BitIntFmat;
  44. typedef unsigned32 __GlintBitMaskPatternFmat;
  45. typedef unsigned32 __GlintPointTableFmat;
  46. typedef unsigned32 __GlintAreaStipplePatternFmat;
  47. typedef unsigned32 __GlintSaveLineStippleStateFmat;
  48. typedef unsigned32 __GlintUpdateLineStippleStateFmat;
  49. typedef signed32 __GlintABGRFmat;
  50. typedef signed32 __GlintLBSourceOffsetFmat;
  51. typedef unsigned32 __GlintLBWindowBaseFmat;
  52. typedef unsigned32 __GlintLBDepthFmat;
  53. typedef unsigned32 __GlintDepthFmat;
  54. typedef signed32 __GlintUZFmat;
  55. typedef unsigned32 __GlintLZFmat;
  56. typedef signed32 __GlintFastClearDepthFmat;
  57. typedef signed32 __GlintFBPixelOffsetFmat;
  58. typedef signed32 __GlintFBSourceOffsetFmat;
  59. typedef unsigned32 __GlintFBWindowBaseFmat;
  60. typedef unsigned32 __GlintFBRDataFmat;
  61. typedef unsigned32 __GlintFBSoftwareWriteMaskFmat;
  62. typedef unsigned32 __GlintFBHardwareWriteMaskFmat;
  63. typedef unsigned32 __GlintFBModifiedDataFmat;
  64. typedef unsigned32 __GlintFBPixelWriteMaskFmat;
  65. typedef unsigned32 __GlintFBBlockColorFmat;
  66. typedef unsigned32 __GlintFBBlockColorUFmat;
  67. typedef unsigned32 __GlintFBBlockColorLFmat;
  68. typedef signed32 __Glint1x8InterpFmat;
  69. typedef signed32 __GlintFogFmat;
  70. typedef unsigned char __GlintStencilValFmat;
  71. typedef unsigned32 __GlintAddress;
  72. typedef unsigned32 __GlintWaitForCompletionFmat;
  73. typedef unsigned32 __GlintCoverageValueFmat;
  74. typedef unsigned32 __GlintSpanMaskFmat;
  75. typedef unsigned32 __GlintFBSourceDataFmat;
  76. typedef unsigned32 __GlintFBDataFmat;
  77. typedef struct {
  78. unsigned32 lo;
  79. unsigned32 hi;
  80. } __GlintLBRawDataFmat;
  81. #if BIG_ENDIAN == 1
  82. typedef struct {
  83. unsigned32 pad0: 27;
  84. unsigned32 Sign: 1;
  85. unsigned32 Magnitude: 4;
  86. } __GlintSubPixelCorrectionFmat;
  87. #else
  88. //@@BEGIN_DDKSPLIT
  89. // TMP HACK TO GET NT GOING
  90. //@@END_DDKSPLIT
  91. typedef unsigned32 __GlintSubPixelCorrectionFmat;
  92. /*
  93. typedef struct {
  94. unsigned32 Magnitude: 4;
  95. unsigned32 Sign: 1;
  96. unsigned32 pad0: 27;
  97. } __GlintSubPixelCorrectionFmat;
  98. */
  99. #endif
  100. #if BIG_ENDIAN == 1
  101. typedef struct {
  102. unsigned32 XRight: 16;
  103. unsigned32 XLeft: 16;
  104. } __GlintFastBlockLimitsFmat;
  105. #else
  106. typedef struct {
  107. unsigned32 XLeft: 16;
  108. unsigned32 XRight: 16;
  109. } __GlintFastBlockLimitsFmat;
  110. #endif
  111. #if BIG_ENDIAN == 1
  112. typedef struct {
  113. unsigned32 Depth: 32;
  114. unsigned32 pad: 12;
  115. unsigned32 GID: 4;
  116. unsigned32 FrameCount: 8;
  117. unsigned32 Stencil: 8;
  118. } __GlintLBDataFmat;
  119. #else
  120. typedef struct {
  121. unsigned32 Depth: 32;
  122. unsigned32 Stencil: 8;
  123. unsigned32 FrameCount: 8;
  124. unsigned32 GID: 4;
  125. unsigned32 pad: 12;
  126. } __GlintLBDataFmat;
  127. #endif
  128. #if BIG_ENDIAN == 1
  129. typedef struct {
  130. unsigned32 V: 12; /* 12@20 */
  131. unsigned32 U: 20; /* 20@0 */
  132. unsigned32 pad0: 24; /* 24@8 */
  133. unsigned32 V_u: 8; /* 8@0 */
  134. } __GlintTexelCoordUVFmat;
  135. #else
  136. /* CHECK THIS */
  137. typedef struct {
  138. unsigned32 V_u: 8; /* 8@0 */
  139. unsigned32 pad0: 24; /* 24@8 */
  140. unsigned32 U: 20; /* 20@0 */
  141. unsigned32 V: 12; /* 12@20 */
  142. } __GlintTexelCoordUVFmat;
  143. #endif
  144. #if BIG_ENDIAN == 1
  145. typedef struct {
  146. unsigned32 pad0: 25;
  147. unsigned32 Present0: 1;
  148. unsigned32 BorderColor0: 1;
  149. unsigned32 Depth0: 5;
  150. } __GlintTexelDataFmat;
  151. #else
  152. typedef struct {
  153. unsigned32 Depth0: 5;
  154. unsigned32 BorderColor0: 1;
  155. unsigned32 Present0: 1;
  156. unsigned32 pad0: 25;
  157. } __GlintTexelDataFmat;
  158. #endif
  159. // SuspendUntilFrameBlank tag has two formats dependant on sync_mode and
  160. // defined by the Hardware FB Arbiter
  161. //
  162. #if BIG_ENDIAN == 1
  163. typedef struct {
  164. unsigned32 sync_mode: 2;
  165. unsigned32 pad2: 3;
  166. unsigned32 ext_index: 11;
  167. unsigned32 pad1: 8;
  168. unsigned32 ext_data: 8;
  169. } __GlintSuspendUntilFrameBlankExtFmat;
  170. #else
  171. typedef struct {
  172. unsigned32 ext_data: 8;
  173. unsigned32 pad1: 8;
  174. unsigned32 ext_index: 11;
  175. unsigned32 pad2: 3;
  176. unsigned32 sync_mode: 2;
  177. } __GlintSuspendUntilFrameBlankExtFmat;
  178. #endif
  179. #if BIG_ENDIAN == 1
  180. typedef struct {
  181. unsigned32 sync_mode: 2;
  182. unsigned32 pad: 20;
  183. unsigned32 vtg_sclk: 1;
  184. unsigned32 vtg_data: 9;
  185. } __GlintSuspendUntilFrameBlankVtgFmat;
  186. #else
  187. typedef struct {
  188. unsigned32 vtg_data: 9;
  189. unsigned32 vtg_sclk: 1;
  190. unsigned32 pad: 20;
  191. unsigned32 sync_mode: 2;
  192. } __GlintSuspendUntilFrameBlankVtgFmat;
  193. #endif
  194. typedef struct {
  195. unsigned32 UnitEnable: 32;
  196. } __GlintEnableFmat;
  197. #if BIG_ENDIAN == 1
  198. typedef struct {
  199. signed32 Y: 16;
  200. signed32 X: 16;
  201. } __GlintXYFmat;
  202. #else
  203. typedef struct {
  204. signed32 X: 16;
  205. signed32 Y: 16;
  206. } __GlintXYFmat;
  207. #endif
  208. #if BIG_ENDIAN == 1
  209. typedef struct {
  210. signed32 top: 16;
  211. signed32 left: 16;
  212. } __GlintRectOrigin;
  213. #else
  214. typedef struct {
  215. signed32 left: 16;
  216. signed32 top: 16;
  217. } __GlintRectOrigin;
  218. #endif
  219. #if BIG_ENDIAN == 1
  220. typedef struct {
  221. signed32 cy: 16;
  222. signed32 cx: 16;
  223. } __GlintRectSize;
  224. #else
  225. typedef struct {
  226. signed32 cx: 16;
  227. signed32 cy: 16;
  228. } __GlintRectSize;
  229. #endif
  230. typedef __GlintXYFmat __GlintStepFmat;
  231. #if BIG_ENDIAN == 1
  232. typedef struct {
  233. signed32 Y: 16;
  234. signed32 X: 16; /* 16@0 */
  235. unsigned32 pad0: 30;
  236. unsigned32 WriteMode: 2; /* 2@0 */
  237. } __GlintLBStepFmat;
  238. #else
  239. typedef struct {
  240. signed32 X: 16; /* 16@0 */
  241. signed32 Y: 16;
  242. unsigned32 WriteMode: 2; /* 2@0 */
  243. unsigned32 pad0: 30;
  244. } __GlintLBStepFmat;
  245. #endif
  246. #if BIG_ENDIAN == 1
  247. typedef struct {
  248. unsigned32 pad0: 16;
  249. unsigned32 Val: 16;
  250. } __GlintCountFmat;
  251. #else
  252. //@@BEGIN_DDKSPLIT
  253. // TMP HACK TO GET NT GOING
  254. //@@END_DDKSPLIT
  255. typedef unsigned32 __GlintCountFmat;
  256. /*
  257. typedef struct {
  258. unsigned32 Val: 16;
  259. unsigned32 pad0: 16;
  260. } __GlintCountFmat;
  261. */
  262. #endif
  263. #if BIG_ENDIAN == 1
  264. typedef struct {
  265. signed32 YOrigin: 16;
  266. signed32 XOrigin: 16;
  267. } __GlintGIDTableFmat;
  268. #else
  269. typedef struct {
  270. signed32 XOrigin: 16;
  271. signed32 YOrigin: 16;
  272. } __GlintGIDTableFmat;
  273. #endif
  274. #if BIG_ENDIAN == 1
  275. typedef struct {
  276. unsigned32 pad: 30;
  277. unsigned32 ScreenScissorEnable: 1;
  278. unsigned32 UserScissorEnable: 1;
  279. } __GlintScissorEnableFmat;
  280. #else
  281. typedef struct {
  282. unsigned32 UserScissorEnable: 1;
  283. unsigned32 ScreenScissorEnable: 1;
  284. unsigned32 pad: 30;
  285. } __GlintScissorEnableFmat;
  286. #endif
  287. #if BIG_ENDIAN == 1
  288. typedef struct {
  289. unsigned32 pad1: 13;
  290. unsigned32 SpanOperation: 1;
  291. unsigned32 pad0: 1;
  292. unsigned32 SubPixelCorrectionEnable: 1;
  293. unsigned32 CoverageEnable: 1;
  294. unsigned32 FogEnable: 1;
  295. unsigned32 TextureEnable: 1;
  296. unsigned32 SyncOnHostData: 1;
  297. unsigned32 SyncOnBitMask: 1;
  298. unsigned32 UsePointTable: 1;
  299. unsigned32 AntialiasingQuality: 1;
  300. unsigned32 AntialiasEnable: 1;
  301. unsigned32 PrimitiveType: 2;
  302. unsigned32 FastFillIncrement: 2; /* unused on TX */
  303. unsigned32 FastFillEnable: 1;
  304. unsigned32 ResetLineStipple: 1;
  305. unsigned32 LineStippleEnable: 1;
  306. unsigned32 AreaStippleEnable: 1;
  307. } __GlintRenderFmat;
  308. #else
  309. typedef struct {
  310. unsigned32 AreaStippleEnable: 1;
  311. unsigned32 LineStippleEnable: 1;
  312. unsigned32 ResetLineStipple: 1;
  313. unsigned32 FastFillEnable: 1;
  314. unsigned32 FastFillIncrement: 2; /* unused on TX */
  315. unsigned32 PrimitiveType: 2;
  316. unsigned32 AntialiasEnable: 1;
  317. unsigned32 AntialiasingQuality: 1;
  318. unsigned32 UsePointTable: 1;
  319. unsigned32 SyncOnBitMask: 1;
  320. unsigned32 SyncOnHostData: 1;
  321. unsigned32 TextureEnable: 1;
  322. unsigned32 FogEnable: 1;
  323. unsigned32 CoverageEnable: 1;
  324. unsigned32 SubPixelCorrectionEnable: 1;
  325. unsigned32 pad0: 1;
  326. unsigned32 SpanOperation: 1;
  327. unsigned32 pad1: 13;
  328. } __GlintRenderFmat;
  329. #endif
  330. typedef __GlintRenderFmat __GlintPrepareToRenderFmat;
  331. #if BIG_ENDIAN == 1
  332. typedef struct {
  333. unsigned32 pad1: 13;
  334. unsigned32 YLimitsEnable: 1;
  335. unsigned32 MultiGLINT: 1;
  336. unsigned32 HostDataByteSwapMode: 2;
  337. unsigned32 BitMaskOffset: 5;
  338. unsigned32 BitMaskPacking: 1;
  339. unsigned32 BitMaskByteSwapMode: 2;
  340. unsigned32 pad0: 1;
  341. unsigned32 BiasCoordinates: 2;
  342. unsigned32 FractionAdjust: 2;
  343. unsigned32 InvertBitMask: 1;
  344. unsigned32 MirrorBitMask: 1;
  345. } __GlintRasterizerModeFmat;
  346. #else
  347. typedef struct {
  348. unsigned32 MirrorBitMask: 1;
  349. unsigned32 InvertBitMask: 1;
  350. unsigned32 FractionAdjust: 2;
  351. unsigned32 BiasCoordinates: 2;
  352. unsigned32 pad0: 1;
  353. unsigned32 BitMaskByteSwapMode: 2;
  354. unsigned32 BitMaskPacking: 1;
  355. unsigned32 BitMaskOffset: 5;
  356. unsigned32 HostDataByteSwapMode: 2;
  357. unsigned32 MultiGLINT: 1;
  358. unsigned32 YLimitsEnable: 1;
  359. unsigned32 pad1: 13;
  360. } __GlintRasterizerModeFmat;
  361. #endif
  362. #if BIG_ENDIAN == 1
  363. typedef struct {
  364. unsigned32 pad: 5;
  365. unsigned32 MirrorStippleMask: 1;
  366. unsigned32 StippleMask: 16;
  367. unsigned32 RepeatFactor: 9;
  368. unsigned32 UnitEnable: 1;
  369. } __GlintLineStippleModeFmat;
  370. #else
  371. typedef struct {
  372. unsigned32 UnitEnable: 1;
  373. unsigned32 RepeatFactor: 9;
  374. unsigned32 StippleMask: 16;
  375. unsigned32 MirrorStippleMask: 1;
  376. unsigned32 pad: 5;
  377. } __GlintLineStippleModeFmat;
  378. #endif
  379. typedef __GlintXYFmat __GlintScreenRegionFmat;
  380. typedef __GlintXYFmat __GlintScissorMinXYFmat;
  381. typedef __GlintXYFmat __GlintScissorMaxXYFmat;
  382. typedef __GlintXYFmat __GlintWindowOriginFmat;
  383. #if BIG_ENDIAN == 1
  384. typedef struct {
  385. unsigned32 pad: 6;
  386. unsigned32 SegmentRepeatCounter: 9;
  387. unsigned32 SegmentBitCounter: 4;
  388. unsigned32 LiveRepeatCounter: 9;
  389. unsigned32 LiveBitCounter: 4;
  390. } __GlintLineStippleCountersFmat;
  391. #else
  392. typedef struct {
  393. unsigned32 LiveBitCounter: 4;
  394. unsigned32 LiveRepeatCounter: 9;
  395. unsigned32 SegmentBitCounter: 4;
  396. unsigned32 SegmentRepeatCounter: 9;
  397. unsigned32 pad: 6;
  398. } __GlintLineStippleCountersFmat;
  399. #endif
  400. #if BIG_ENDIAN == 1
  401. typedef struct {
  402. unsigned32 pad: 12;
  403. unsigned32 MirrorY: 1;
  404. unsigned32 MirrorX: 1;
  405. unsigned32 InvertStipplePattern: 1;
  406. unsigned32 YOffset: 5;
  407. unsigned32 XOffset: 5;
  408. unsigned32 YAddressSelect: 3;
  409. unsigned32 XAddressSelect: 3;
  410. unsigned32 UnitEnable: 1;
  411. } __GlintAreaStippleModeFmat;
  412. #else
  413. typedef struct {
  414. unsigned32 UnitEnable: 1;
  415. unsigned32 XAddressSelect: 3;
  416. unsigned32 YAddressSelect: 3;
  417. unsigned32 XOffset: 5;
  418. unsigned32 YOffset: 5;
  419. unsigned32 InvertStipplePattern: 1;
  420. unsigned32 MirrorX: 1;
  421. unsigned32 MirrorY: 1;
  422. unsigned32 pad: 12;
  423. } __GlintAreaStippleModeFmat;
  424. #endif
  425. #if BIG_ENDIAN == 1
  426. typedef struct {
  427. unsigned32 pad0: 31;
  428. unsigned32 Order: 1;
  429. } __GlintRouterModeFmat;
  430. #else
  431. typedef struct {
  432. unsigned32 Order: 1;
  433. unsigned32 pad0: 31;
  434. } __GlintRouterModeFmat;
  435. #endif
  436. #if BIG_ENDIAN == 1
  437. typedef struct {
  438. unsigned32 pad: 30;
  439. unsigned32 ShadeMode: 1;
  440. unsigned32 UnitEnable: 1;
  441. } __GlintColorDDAModeFmat;
  442. #else
  443. typedef struct {
  444. unsigned32 UnitEnable: 1;
  445. unsigned32 ShadeMode: 1;
  446. unsigned32 pad: 30;
  447. } __GlintColorDDAModeFmat;
  448. #endif
  449. #if BIG_ENDIAN == 1
  450. typedef struct {
  451. unsigned32 Alpha: 8;
  452. unsigned32 Blue: 8;
  453. unsigned32 Green: 8;
  454. unsigned32 Red: 8;
  455. } __GlintColorFmat;
  456. #else
  457. //@@BEGIN_DDKSPLIT
  458. // TMP HACK TO GET NT GOING
  459. //@@END_DDKSPLIT
  460. typedef unsigned32 __GlintColorFmat;
  461. /*
  462. typedef struct {
  463. unsigned32 Red: 8;
  464. unsigned32 Green: 8;
  465. unsigned32 Blue: 8;
  466. unsigned32 Alpha: 8;
  467. } __GlintColorFmat;
  468. */
  469. #endif
  470. typedef __GlintColorFmat __GlintConstantColorFmat;
  471. #if BIG_ENDIAN == 1
  472. typedef struct {
  473. unsigned32 pad2: 8;
  474. signed32 Integer: 9;
  475. unsigned32 Fraction: 15;
  476. } __GlintCStartFmat;
  477. #else
  478. typedef struct {
  479. unsigned32 Fraction: 15;
  480. signed32 Integer: 9;
  481. unsigned32 pad2: 8;
  482. } __GlintCStartFmat;
  483. #endif
  484. typedef __GlintCStartFmat __GlintRStartFmat;
  485. typedef __GlintCStartFmat __GlintGStartFmat;
  486. typedef __GlintCStartFmat __GlintBStartFmat;
  487. typedef __GlintCStartFmat __GlintAStartFmat;
  488. #if BIG_ENDIAN == 1
  489. typedef struct {
  490. unsigned32 pad2: 8;
  491. signed32 Integer: 9;
  492. unsigned32 Fraction: 15;
  493. } __GlintdCdxFmat;
  494. #else
  495. typedef struct {
  496. unsigned32 Fraction: 15;
  497. signed32 Integer: 9;
  498. unsigned32 pad2: 8;
  499. } __GlintdCdxFmat;
  500. #endif
  501. typedef __GlintdCdxFmat __GlintdRdxFmat;
  502. typedef __GlintdCdxFmat __GlintdGdxFmat;
  503. typedef __GlintdCdxFmat __GlintdBdxFmat;
  504. typedef __GlintdCdxFmat __GlintdAdxFmat;
  505. #if BIG_ENDIAN == 1
  506. typedef struct {
  507. unsigned32 pad2: 8;
  508. signed32 Integer: 9;
  509. unsigned32 Fraction: 15;
  510. } __GlintdCdyDomFmat;
  511. #else
  512. typedef struct {
  513. unsigned32 Fraction: 15;
  514. signed32 Integer: 9;
  515. unsigned32 pad2: 8;
  516. } __GlintdCdyDomFmat;
  517. #endif
  518. typedef __GlintdCdyDomFmat __GlintdRdyDomFmat;
  519. typedef __GlintdCdyDomFmat __GlintdGdyDomFmat;
  520. typedef __GlintdCdyDomFmat __GlintdBdyDomFmat;
  521. typedef __GlintdCdyDomFmat __GlintdAdyDomFmat;
  522. #if BIG_ENDIAN == 1
  523. typedef struct {
  524. unsigned32 Alpha: 8;
  525. unsigned32 Blue: 8;
  526. unsigned32 Green: 8;
  527. unsigned32 Red: 8;
  528. } __GlintColorFmat_s;
  529. #else
  530. typedef struct {
  531. unsigned32 Red: 8;
  532. unsigned32 Green: 8;
  533. unsigned32 Blue: 8;
  534. unsigned32 Alpha: 8;
  535. } __GlintColorFmat_s;
  536. #endif
  537. #if BIG_ENDIAN == 1
  538. typedef struct {
  539. unsigned32 pad: 20;
  540. unsigned32 Reference: 8;
  541. unsigned32 Compare: 3;
  542. unsigned32 UnitEnable: 1;
  543. } __GlintAlphaTestModeFmat;
  544. #else
  545. typedef struct {
  546. unsigned32 UnitEnable: 1;
  547. unsigned32 Compare: 3;
  548. unsigned32 Reference: 8;
  549. unsigned32 pad: 20;
  550. } __GlintAlphaTestModeFmat;
  551. #endif
  552. #if BIG_ENDIAN == 1
  553. typedef struct {
  554. unsigned32 pad: 12;
  555. unsigned32 GID: 4;
  556. unsigned32 FrameCount: 8;
  557. unsigned32 Stencil: 8;
  558. } __GlintLBStencilFmat;
  559. #else
  560. typedef struct {
  561. unsigned32 Stencil: 8;
  562. unsigned32 FrameCount: 8;
  563. unsigned32 GID: 4;
  564. unsigned32 pad: 12;
  565. } __GlintLBStencilFmat;
  566. #endif
  567. #if BIG_ENDIAN == 1
  568. typedef struct {
  569. unsigned32 pad: 12;
  570. unsigned32 WriteOverride: 1;
  571. unsigned32 DepthFCP: 1;
  572. unsigned32 StencilFCP: 1;
  573. unsigned32 FrameCount: 8;
  574. unsigned32 GID: 4;
  575. unsigned32 LBUpdateSource: 1;
  576. unsigned32 ForceLBUpdate: 1;
  577. unsigned32 CompareMode: 2;
  578. unsigned32 UnitEnable: 1;
  579. } __GlintWindowFmat;
  580. #else
  581. typedef struct {
  582. unsigned32 UnitEnable: 1;
  583. unsigned32 CompareMode: 2;
  584. unsigned32 ForceLBUpdate: 1;
  585. unsigned32 LBUpdateSource: 1;
  586. unsigned32 GID: 4;
  587. unsigned32 FrameCount: 8;
  588. unsigned32 StencilFCP: 1;
  589. unsigned32 DepthFCP: 1;
  590. unsigned32 WriteOverride: 1;
  591. unsigned32 pad: 12;
  592. } __GlintWindowFmat;
  593. #endif
  594. #if BIG_ENDIAN == 1
  595. typedef struct {
  596. unsigned32 FastClearValue: 8;
  597. unsigned32 WriteMask: 8;
  598. unsigned32 CompareMask: 8;
  599. unsigned32 ReferenceValue: 8;
  600. } __GlintStencilDataFmat;
  601. #else
  602. typedef struct {
  603. unsigned32 ReferenceValue: 8;
  604. unsigned32 CompareMask: 8;
  605. unsigned32 WriteMask: 8;
  606. unsigned32 FastClearValue: 8;
  607. } __GlintStencilDataFmat;
  608. #endif
  609. #if BIG_ENDIAN == 1
  610. typedef struct {
  611. unsigned32 pad: 15;
  612. unsigned32 Width: 2;
  613. unsigned32 StencilSource: 2;
  614. unsigned32 CompareFunction: 3;
  615. unsigned32 SFail: 3;
  616. unsigned32 DPFail: 3;
  617. unsigned32 DPPass: 3;
  618. unsigned32 UnitEnable: 1;
  619. } __GlintStencilModeFmat;
  620. #else
  621. typedef struct {
  622. unsigned32 UnitEnable: 1;
  623. unsigned32 DPPass: 3;
  624. unsigned32 DPFail: 3;
  625. unsigned32 SFail: 3;
  626. unsigned32 CompareFunction: 3;
  627. unsigned32 StencilSource: 2;
  628. unsigned32 Width: 2;
  629. unsigned32 pad: 15;
  630. } __GlintStencilModeFmat;
  631. #endif
  632. #if BIG_ENDIAN == 1
  633. typedef struct {
  634. unsigned32 pad: 24;
  635. unsigned32 Stencil: 8;
  636. } __GlintStencilFmat;
  637. #else
  638. typedef struct {
  639. unsigned32 Stencil: 8;
  640. unsigned32 pad: 24;
  641. } __GlintStencilFmat;
  642. #endif
  643. #if BIG_ENDIAN == 1
  644. typedef struct {
  645. unsigned32 pad: 25;
  646. unsigned32 CompareMode: 3;
  647. unsigned32 NewDepthSource: 2;
  648. unsigned32 WriteMask: 1;
  649. unsigned32 UnitEnable: 1;
  650. } __GlintDepthModeFmat;
  651. #else
  652. typedef struct {
  653. unsigned32 UnitEnable: 1;
  654. unsigned32 WriteMask: 1;
  655. unsigned32 NewDepthSource: 2;
  656. unsigned32 CompareMode: 3;
  657. unsigned32 pad: 25;
  658. } __GlintDepthModeFmat;
  659. #endif
  660. #if BIG_ENDIAN == 1
  661. typedef struct {
  662. unsigned32 pad: 29;
  663. unsigned32 UpLoadData: 2;
  664. unsigned32 WriteEnable: 1;
  665. } __GlintLBWriteModeFmat;
  666. #else
  667. typedef struct {
  668. unsigned32 WriteEnable: 1;
  669. unsigned32 UpLoadData: 2;
  670. unsigned32 pad: 29;
  671. } __GlintLBWriteModeFmat;
  672. #endif
  673. #if BIG_ENDIAN == 1
  674. typedef struct {
  675. unsigned32 pad0: 7;
  676. unsigned32 PatchCode: 3;
  677. unsigned32 ScanlineInterval: 2;
  678. unsigned32 Patch: 1;
  679. unsigned32 WindowOrigin: 1;
  680. unsigned32 DataType: 2;
  681. unsigned32 spare: 5;
  682. unsigned32 ReadDestinationEnable: 1;
  683. unsigned32 ReadSourceEnable: 1;
  684. unsigned32 PP2: 3;
  685. unsigned32 PP1: 3;
  686. unsigned32 PP0: 3;
  687. } __GlintLBReadModeFmat;
  688. #else
  689. typedef struct {
  690. unsigned32 PP0: 3;
  691. unsigned32 PP1: 3;
  692. unsigned32 PP2: 3;
  693. unsigned32 ReadSourceEnable: 1;
  694. unsigned32 ReadDestinationEnable: 1;
  695. unsigned32 spare: 5;
  696. unsigned32 DataType: 2;
  697. unsigned32 WindowOrigin: 1;
  698. unsigned32 Patch: 1;
  699. unsigned32 ScanlineInterval: 2;
  700. unsigned32 PatchCode: 3;
  701. unsigned32 pad0: 7;
  702. } __GlintLBReadModeFmat;
  703. #endif
  704. #if BIG_ENDIAN == 1
  705. typedef struct {
  706. unsigned32 pad: 14;
  707. unsigned32 Compact32: 1;
  708. unsigned32 GIDPosition: 4;
  709. unsigned32 GIDWidth: 1;
  710. unsigned32 FrameCountPosition: 3;
  711. unsigned32 FrameCountWidth: 2;
  712. unsigned32 StencilPosition: 3;
  713. unsigned32 StencilWidth: 2;
  714. unsigned32 DepthWidth: 2;
  715. } __GlintLBFormatFmat;
  716. #else
  717. typedef struct {
  718. unsigned32 DepthWidth: 2;
  719. unsigned32 StencilWidth: 2;
  720. unsigned32 StencilPosition: 3;
  721. unsigned32 FrameCountWidth: 2;
  722. unsigned32 FrameCountPosition: 3;
  723. unsigned32 GIDWidth: 1;
  724. unsigned32 GIDPosition: 4;
  725. unsigned32 Compact32: 1;
  726. unsigned32 pad: 14;
  727. } __GlintLBFormatFmat;
  728. #endif
  729. typedef __GlintLBFormatFmat __GlintLBReadFormatFmat;
  730. typedef __GlintLBFormatFmat __GlintLBWriteFormatFmat;
  731. #if BIG_ENDIAN == 1
  732. typedef struct {
  733. unsigned32 pad2: 5;
  734. unsigned32 PatchMode: 2;
  735. unsigned32 ScanlineInterval: 2;
  736. signed32 RelativeOffset: 3;
  737. unsigned32 PackedData: 1;
  738. unsigned32 PatchEnable: 1;
  739. unsigned32 TexelInhibit: 1;
  740. unsigned32 WindowOrigin: 1;
  741. unsigned32 DataType: 1;
  742. unsigned32 pad0: 4;
  743. unsigned32 ReadDestinationEnable: 1;
  744. unsigned32 ReadSourceEnable: 1;
  745. unsigned32 PP2: 3;
  746. unsigned32 PP1: 3;
  747. unsigned32 PP0: 3;
  748. } __GlintFBReadModeFmat;
  749. #else
  750. typedef struct {
  751. unsigned32 PP0: 3;
  752. unsigned32 PP1: 3;
  753. unsigned32 PP2: 3;
  754. unsigned32 ReadSourceEnable: 1;
  755. unsigned32 ReadDestinationEnable: 1;
  756. unsigned32 pad0: 4;
  757. unsigned32 DataType: 1;
  758. unsigned32 WindowOrigin: 1;
  759. unsigned32 TexelInhibit: 1;
  760. unsigned32 PatchEnable: 1;
  761. unsigned32 PackedData: 1;
  762. signed32 RelativeOffset: 3;
  763. unsigned32 ScanlineInterval: 2;
  764. unsigned32 PatchMode: 2;
  765. unsigned32 pad2: 5;
  766. } __GlintFBReadModeFmat;
  767. #endif
  768. #if BIG_ENDIAN == 1
  769. typedef struct {
  770. unsigned32 pad1: 28;
  771. unsigned32 UpLoadData: 1;
  772. unsigned32 BlockWidth: 2; /* BACKWARDS COMPATABILITY */
  773. unsigned32 UnitEnable: 1;
  774. } __GlintFBWriteModeFmat;
  775. #else
  776. typedef struct {
  777. unsigned32 UnitEnable: 1;
  778. unsigned32 BlockWidth: 2; /* BACKWARDS COMPATABILITY */
  779. unsigned32 UpLoadData: 1;
  780. unsigned32 pad1: 28;
  781. } __GlintFBWriteModeFmat;
  782. #endif
  783. #if BIG_ENDIAN == 1
  784. typedef struct {
  785. unsigned32 pad: 30;
  786. unsigned32 ColorMode: 1;
  787. unsigned32 UnitEnable: 1;
  788. } __GlintAntialiasModeFmat;
  789. #else
  790. typedef struct {
  791. unsigned32 UnitEnable: 1;
  792. unsigned32 ColorMode: 1;
  793. unsigned32 pad: 30;
  794. } __GlintAntialiasModeFmat;
  795. #endif
  796. #if BIG_ENDIAN == 1
  797. typedef struct {
  798. unsigned32 pad: 15;
  799. unsigned32 ColorFormatExtension: 1;
  800. unsigned32 AlphaDst: 1;
  801. unsigned32 BlendType: 1;
  802. unsigned32 ColorOrder: 1;
  803. unsigned32 NoAlphaBuffer: 1;
  804. unsigned32 ColorFormat: 4;
  805. unsigned32 DestinationBlend: 3;
  806. unsigned32 SourceBlend: 4;
  807. unsigned32 UnitEnable: 1;
  808. } __PermediaAlphaBlendModeFmat;
  809. #else
  810. typedef struct {
  811. unsigned32 UnitEnable: 1;
  812. unsigned32 SourceBlend: 4;
  813. unsigned32 DestinationBlend: 3;
  814. unsigned32 ColorFormat: 4;
  815. unsigned32 NoAlphaBuffer: 1;
  816. unsigned32 ColorOrder: 1;
  817. unsigned32 BlendType: 1;
  818. unsigned32 AlphaDst: 1;
  819. unsigned32 ColorFormatExtension: 1;
  820. unsigned32 pad: 15;
  821. } __PermediaAlphaBlendModeFmat;
  822. #endif
  823. #if BIG_ENDIAN == 1
  824. typedef struct {
  825. unsigned32 pad: 14;
  826. unsigned32 AlphaConversion: 1;
  827. unsigned32 ColorConversion: 1;
  828. unsigned32 AlphaDst: 1;
  829. unsigned32 BlendType: 1;
  830. unsigned32 ColorOrder: 1;
  831. unsigned32 NoAlphaBuffer: 1;
  832. unsigned32 ColorFormat: 4;
  833. unsigned32 DestinationBlend: 3;
  834. unsigned32 SourceBlend: 4;
  835. unsigned32 UnitEnable: 1;
  836. } __GlintAlphaBlendModeFmat;
  837. #else
  838. typedef struct {
  839. unsigned32 UnitEnable: 1;
  840. unsigned32 SourceBlend: 4;
  841. unsigned32 DestinationBlend: 3;
  842. unsigned32 ColorFormat: 4;
  843. unsigned32 NoAlphaBuffer: 1;
  844. unsigned32 ColorOrder: 1;
  845. unsigned32 BlendType: 1;
  846. unsigned32 AlphaDst: 1;
  847. unsigned32 ColorConversion: 1;
  848. unsigned32 AlphaConversion: 1;
  849. unsigned32 pad: 14;
  850. } __GlintAlphaBlendModeFmat;
  851. #endif
  852. #if BIG_ENDIAN == 1
  853. typedef struct {
  854. unsigned32 pad0: 15;
  855. unsigned32 ColorFormatExtension: 1;
  856. unsigned32 RoundingMode: 1;
  857. unsigned32 AlphaDither: 1;
  858. unsigned32 ForceAlpha: 2;
  859. unsigned32 DitherMethod: 1;
  860. unsigned32 ColorOrder: 1;
  861. unsigned32 YOffset: 2;
  862. unsigned32 XOffset: 2;
  863. unsigned32 ColorFormat: 4;
  864. unsigned32 DitherEnable: 1;
  865. unsigned32 UnitEnable: 1;
  866. } __GlintDitherModeFmat;
  867. #else
  868. typedef struct {
  869. unsigned32 UnitEnable: 1;
  870. unsigned32 DitherEnable: 1;
  871. unsigned32 ColorFormat: 4;
  872. unsigned32 XOffset: 2;
  873. unsigned32 YOffset: 2;
  874. unsigned32 ColorOrder: 1;
  875. unsigned32 DitherMethod: 1;
  876. unsigned32 ForceAlpha: 2;
  877. unsigned32 AlphaDither: 1;
  878. unsigned32 RoundingMode: 1;
  879. unsigned32 ColorFormatExtension: 1;
  880. unsigned32 pad0: 15;
  881. } __GlintDitherModeFmat;
  882. #endif
  883. #if BIG_ENDIAN == 1
  884. typedef struct {
  885. unsigned32 pad: 26;
  886. unsigned32 UseConstantFBWriteData: 1;
  887. unsigned32 LogicalOp: 4;
  888. unsigned32 LogicalOpEnable: 1;
  889. } __GlintLogicalOpModeFmat;
  890. #else
  891. typedef struct {
  892. unsigned32 LogicalOpEnable: 1;
  893. unsigned32 LogicalOp: 4;
  894. unsigned32 UseConstantFBWriteData: 1;
  895. unsigned32 pad: 26;
  896. } __GlintLogicalOpModeFmat;
  897. #endif
  898. #if BIG_ENDIAN == 1
  899. typedef struct {
  900. unsigned32 pad: 10;
  901. unsigned32 ExternalDMA : 1;
  902. unsigned32 RLEHostOut: 1;
  903. unsigned32 Context: 2;
  904. unsigned32 ByteSwapMode: 2;
  905. unsigned32 Remainder: 2;
  906. unsigned32 Statistics: 2;
  907. unsigned32 Synchronization: 2;
  908. unsigned32 Color: 2;
  909. unsigned32 Stencil : 2;
  910. unsigned32 Depth: 2;
  911. unsigned32 Passive: 2;
  912. unsigned32 Active: 2;
  913. } __GlintFilterModeFmat;
  914. #else
  915. typedef struct {
  916. unsigned32 Active: 2;
  917. unsigned32 Passive: 2;
  918. unsigned32 Depth: 2;
  919. unsigned32 Stencil : 2;
  920. unsigned32 Color: 2;
  921. unsigned32 Synchronization: 2;
  922. unsigned32 Statistics: 2;
  923. unsigned32 Remainder: 2;
  924. unsigned32 ByteSwapMode: 2;
  925. unsigned32 Context: 2;
  926. unsigned32 RLEHostOut: 1;
  927. unsigned32 ExternalDMA : 1;
  928. unsigned32 pad: 10;
  929. } __GlintFilterModeFmat;
  930. #endif
  931. #if BIG_ENDIAN == 1
  932. typedef struct {
  933. unsigned32 pad: 26;
  934. unsigned32 Spans: 1;
  935. unsigned32 CompareFunction: 1;
  936. unsigned32 PassiveSteps: 1;
  937. unsigned32 ActiveSteps: 1;
  938. unsigned32 StatType: 1;
  939. unsigned32 Enable: 1;
  940. } __GlintStatisticModeFmat;
  941. #else
  942. typedef struct {
  943. unsigned32 Enable: 1;
  944. unsigned32 StatType: 1;
  945. unsigned32 ActiveSteps: 1;
  946. unsigned32 PassiveSteps: 1;
  947. unsigned32 CompareFunction: 1;
  948. unsigned32 Spans: 1;
  949. unsigned32 pad: 26;
  950. } __GlintStatisticModeFmat;
  951. #endif
  952. typedef __GlintXYFmat __GlintMinRegionFmat;
  953. typedef __GlintXYFmat __GlintMaxRegionFmat;
  954. typedef __GlintXYFmat __GlintMinHitRegionFmat;
  955. typedef __GlintXYFmat __GlintMaxHitRegionFmat;
  956. #if BIG_ENDIAN == 1
  957. typedef struct {
  958. unsigned32 InterruptEnable: 1;
  959. unsigned32 pad: 31;
  960. } __GlintSyncFmat;
  961. #else
  962. typedef struct {
  963. unsigned32 pad: 31;
  964. unsigned32 InterruptEnable: 1;
  965. } __GlintSyncFmat;
  966. #endif
  967. #if BIG_ENDIAN == 1
  968. typedef struct {
  969. unsigned32 Count: 16;
  970. unsigned32 Mode: 2;
  971. unsigned32 unused: 4;
  972. unsigned32 Context: 1;
  973. unsigned32 MajorGroup: 5;
  974. unsigned32 Offset: 4;
  975. } __GlintDMATag;
  976. #else
  977. typedef struct {
  978. unsigned32 Offset: 4;
  979. unsigned32 MajorGroup: 5;
  980. unsigned32 Context: 1;
  981. unsigned32 unused: 4;
  982. unsigned32 Mode: 2;
  983. unsigned32 Count: 16;
  984. } __GlintDMATag;
  985. #endif
  986. #if BIG_ENDIAN == 1
  987. typedef struct {
  988. unsigned32 pad: 20;
  989. unsigned32 ColorLoadMode: 2;
  990. unsigned32 BaseFormat: 3;
  991. unsigned32 KsDDA: 1;
  992. unsigned32 KdDDA: 1;
  993. unsigned32 TextureType: 1;
  994. unsigned32 ApplicationMode: 3;
  995. unsigned32 UnitEnable: 1;
  996. } __GlintTextureColorModeFmat;
  997. #else
  998. typedef struct {
  999. unsigned32 UnitEnable: 1;
  1000. unsigned32 ApplicationMode: 3;
  1001. unsigned32 TextureType: 1;
  1002. unsigned32 KdDDA: 1;
  1003. unsigned32 KsDDA: 1;
  1004. unsigned32 BaseFormat: 3;
  1005. unsigned32 ColorLoadMode: 2;
  1006. unsigned32 pad: 20;
  1007. } __GlintTextureColorModeFmat;
  1008. #endif
  1009. #if BIG_ENDIAN == 1
  1010. typedef struct {
  1011. unsigned32 pad: 28;
  1012. unsigned32 Sense: 1;
  1013. unsigned32 Source: 2;
  1014. unsigned32 UnitEnable: 1;
  1015. } __GlintChromaTestModeFmat;
  1016. #else
  1017. typedef struct {
  1018. unsigned32 UnitEnable: 1;
  1019. unsigned32 Source: 2;
  1020. unsigned32 Sense: 1;
  1021. unsigned32 pad: 25;
  1022. } __GlintChromaTestModeFmat;
  1023. #endif
  1024. #if BIG_ENDIAN == 1
  1025. typedef struct {
  1026. unsigned32 pad: 29;
  1027. unsigned32 Filter: 3;
  1028. } __GlintTextureFilterFmat;
  1029. #else
  1030. typedef struct {
  1031. unsigned32 Filter: 3;
  1032. unsigned32 pad: 29;
  1033. } __GlintTextureFilterFmat;
  1034. #endif
  1035. #if BIG_ENDIAN == 1
  1036. typedef struct {
  1037. unsigned32 Alpha: 8;
  1038. unsigned32 Blue: 8;
  1039. unsigned32 Green: 8;
  1040. unsigned32 Red: 8;
  1041. } __GlintTexelFmat;
  1042. #else
  1043. typedef struct {
  1044. unsigned32 Red: 8;
  1045. unsigned32 Green: 8;
  1046. unsigned32 Blue: 8;
  1047. unsigned32 Alpha: 8;
  1048. } __GlintTexelFmat;
  1049. #endif
  1050. #if BIG_ENDIAN == 1
  1051. typedef struct {
  1052. unsigned32 pad: 30;
  1053. unsigned32 ColorMode: 1;
  1054. unsigned32 UnitEnable: 1;
  1055. } __GlintFogModeFmat;
  1056. #else
  1057. typedef struct {
  1058. unsigned32 UnitEnable: 1;
  1059. unsigned32 ColorMode: 1;
  1060. unsigned32 pad: 30;
  1061. } __GlintFogModeFmat;
  1062. #endif
  1063. #if BIG_ENDIAN == 1
  1064. typedef struct {
  1065. unsigned32 pad: 14;
  1066. unsigned32 TextureMapType: 1;
  1067. unsigned32 Height: 4;
  1068. unsigned32 Width: 4;
  1069. unsigned32 EnableDY: 1;
  1070. unsigned32 EnableLOD: 1;
  1071. unsigned32 InhibitDDA: 1;
  1072. unsigned32 Mode: 1;
  1073. unsigned32 TWrap: 2;
  1074. unsigned32 SWrap: 2;
  1075. unsigned32 UnitEnable: 1;
  1076. } __GlintTextureAddressModeFmat;
  1077. #else
  1078. typedef struct {
  1079. unsigned32 UnitEnable: 1;
  1080. unsigned32 SWrap: 2;
  1081. unsigned32 TWrap: 2;
  1082. unsigned32 Mode: 1;
  1083. unsigned32 InhibitDDA: 1;
  1084. unsigned32 EnableLOD: 1;
  1085. unsigned32 EnableDY: 1;
  1086. unsigned32 Width: 4;
  1087. unsigned32 Height: 4;
  1088. unsigned32 TextureMapType: 1;
  1089. unsigned32 pad: 14;
  1090. } __GlintTextureAddressModeFmat;
  1091. #endif
  1092. typedef signed32 __GlintSStartFmat;
  1093. typedef signed32 __GlintTStartFmat;
  1094. typedef signed32 __GlintQStartFmat;
  1095. typedef signed32 __GlintdSdxFmat;
  1096. typedef signed32 __GlintdTdxFmat;
  1097. typedef signed32 __GlintdQdxFmat;
  1098. typedef signed32 __GlintdSdyDomFmat;
  1099. typedef signed32 __GlintdTdyDomFmat;
  1100. typedef signed32 __GlintdQdyDomFmat;
  1101. #if BIG_ENDIAN == 1
  1102. typedef struct {
  1103. unsigned32 pad0: 12;
  1104. unsigned32 U: 20;
  1105. } __GlintTexelCoordUFmat;
  1106. #else
  1107. typedef struct {
  1108. unsigned32 U: 20;
  1109. unsigned32 pad0: 12;
  1110. } __GlintTexelCoordUFmat;
  1111. #endif
  1112. #if BIG_ENDIAN == 1
  1113. typedef struct {
  1114. unsigned32 pad0: 12;
  1115. unsigned32 V: 20;
  1116. } __GlintTexelCoordVFmat;
  1117. #else
  1118. typedef struct {
  1119. unsigned32 V: 20;
  1120. unsigned32 pad0: 12;
  1121. } __GlintTexelCoordVFmat;
  1122. #endif
  1123. #if BIG_ENDIAN == 1
  1124. typedef struct {
  1125. unsigned32 pad0: 4;
  1126. unsigned32 BorderClamp: 1;
  1127. unsigned32 FBSourceAddr: 2;
  1128. unsigned32 PrimaryCache: 1;
  1129. unsigned32 MipMap: 1;
  1130. unsigned32 Mode: 1;
  1131. unsigned32 VWrap: 2;
  1132. unsigned32 UWrap: 2;
  1133. unsigned32 MinFilter: 3;
  1134. unsigned32 MagFilter: 1;
  1135. unsigned32 Patch: 1;
  1136. unsigned32 Border: 1;
  1137. unsigned32 Depth: 3;
  1138. unsigned32 Height: 4;
  1139. unsigned32 Width: 4;
  1140. unsigned32 UnitEnable: 1;
  1141. } __GlintTextureReadModeFmat;
  1142. #else
  1143. typedef struct {
  1144. unsigned32 UnitEnable: 1;
  1145. unsigned32 Width: 4;
  1146. unsigned32 Height: 4;
  1147. unsigned32 Depth: 3;
  1148. unsigned32 Border: 1;
  1149. unsigned32 Patch: 1;
  1150. unsigned32 MagFilter: 1;
  1151. unsigned32 MinFilter: 3;
  1152. unsigned32 UWrap: 2;
  1153. unsigned32 VWrap: 2;
  1154. unsigned32 Mode: 1;
  1155. unsigned32 MipMap: 1;
  1156. unsigned32 PrimaryCache: 1;
  1157. unsigned32 FBSourceAddr: 2;
  1158. unsigned32 BorderClamp: 1;
  1159. unsigned32 pad0: 4;
  1160. } __GlintTextureReadModeFmat;
  1161. #endif
  1162. #if BIG_ENDIAN == 1
  1163. typedef struct {
  1164. unsigned32 Pad0: 29;
  1165. unsigned32 AlphaMapSense: 1;
  1166. unsigned32 AlphaMapEnable: 1;
  1167. unsigned32 UnitEnable: 1;
  1168. } __GlintTextureFilterModeFmat;
  1169. #else
  1170. typedef struct {
  1171. unsigned32 UnitEnable: 1;
  1172. unsigned32 AlphaMapEnable: 1;
  1173. unsigned32 AlphaMapSense: 1;
  1174. unsigned32 Pad0: 29;
  1175. } __GlintTextureFilterModeFmat;
  1176. #endif
  1177. #if BIG_ENDIAN == 1
  1178. typedef struct {
  1179. unsigned32 pad0: 12;
  1180. unsigned32 OneCompFormat: 2;
  1181. unsigned32 LUTOffset: 8;
  1182. unsigned32 ByteSwapBitMask: 1;
  1183. unsigned32 InvertBitMask: 1;
  1184. unsigned32 MirrorBitMask: 1;
  1185. unsigned32 OutputFormat: 2;
  1186. unsigned32 NumberComps: 2;
  1187. unsigned32 ColorOrder: 1;
  1188. unsigned32 Format: 1;
  1189. unsigned32 Endian: 1;
  1190. } __GlintTextureFormatFmat;
  1191. #else
  1192. typedef struct {
  1193. unsigned32 Endian: 1;
  1194. unsigned32 Format: 1;
  1195. unsigned32 ColorOrder: 1;
  1196. unsigned32 NumberComps: 2;
  1197. unsigned32 OutputFormat: 2;
  1198. unsigned32 MirrorBitMask: 1;
  1199. unsigned32 InvertBitMask: 1;
  1200. unsigned32 ByteSwapBitMask: 1;
  1201. unsigned32 LUTOffset: 8;
  1202. unsigned32 OneCompFormat: 2;
  1203. unsigned32 pad0: 12;
  1204. } __GlintTextureFormatFmat;
  1205. #endif
  1206. #if BIG_ENDIAN == 1
  1207. typedef struct {
  1208. unsigned32 pad: 3;
  1209. unsigned32 Addr: 29;
  1210. } __GlintTextureAddressFmat;
  1211. #else
  1212. typedef struct {
  1213. unsigned32 Addr: 29;
  1214. unsigned32 pad: 3;
  1215. } __GlintTextureAddressFmat;
  1216. #endif
  1217. typedef __GlintTextureAddressFmat __GlintTextureBaseAddressFmat;
  1218. typedef __GlintTextureAddressFmat __GlintTextureBaseAddressLRFmat;
  1219. typedef __GlintTexelFmat __GlintTexelLUTFmat;
  1220. typedef __GlintTexelFmat __GlintBorderColorFmat;
  1221. #if BIG_ENDIAN == 1
  1222. typedef struct {
  1223. unsigned32 pad: 5;
  1224. unsigned32 Blue: 9;
  1225. unsigned32 Green: 9;
  1226. unsigned32 Red: 9;
  1227. } __GlintTextureKFmat;
  1228. #else
  1229. typedef struct {
  1230. unsigned32 Red: 9;
  1231. unsigned32 Green: 9;
  1232. unsigned32 Blue: 9;
  1233. unsigned32 pad: 5;
  1234. } __GlintTextureKFmat;
  1235. #endif
  1236. #if BIG_ENDIAN == 1
  1237. typedef struct {
  1238. unsigned32 pad2: 8;
  1239. signed32 Integer: 2;
  1240. unsigned32 Fraction: 22;
  1241. } __GlintKStartFmat;
  1242. #else
  1243. typedef struct {
  1244. unsigned32 Fraction: 22;
  1245. signed32 Integer: 2;
  1246. unsigned32 pad2: 8;
  1247. } __GlintKStartFmat;
  1248. #endif
  1249. typedef __GlintKStartFmat __GlintKsStartFmat;
  1250. typedef __GlintKStartFmat __GlintKdStartFmat;
  1251. #if BIG_ENDIAN == 1
  1252. typedef struct {
  1253. unsigned32 pad2: 8;
  1254. signed32 Integer: 2;
  1255. unsigned32 Fraction: 22;
  1256. } __GlintdKdxFmat;
  1257. #else
  1258. typedef struct {
  1259. unsigned32 Fraction: 22;
  1260. signed32 Integer: 2;
  1261. unsigned32 pad2: 8;
  1262. } __GlintdKdxFmat;
  1263. #endif
  1264. typedef __GlintdKdxFmat __GlintdKsdxFmat;
  1265. typedef __GlintdKdxFmat __GlintdKddxFmat;
  1266. #if BIG_ENDIAN == 1
  1267. typedef struct {
  1268. unsigned32 pad2: 8;
  1269. signed32 Integer: 2;
  1270. unsigned32 Fraction: 22;
  1271. } __GlintdKdyDomFmat;
  1272. #else
  1273. typedef struct {
  1274. unsigned32 Fraction: 22;
  1275. signed32 Integer: 2;
  1276. unsigned32 pad2: 8;
  1277. } __GlintdKdyDomFmat;
  1278. #endif
  1279. typedef __GlintdKdyDomFmat __GlintdKsdyDomFmat;
  1280. typedef __GlintdKdyDomFmat __GlintdKddyDomFmat;
  1281. #if BIG_ENDIAN == 1
  1282. typedef struct {
  1283. unsigned32 pad: 30;
  1284. unsigned32 Mode: 1;
  1285. unsigned32 Invalidate: 1;
  1286. } __GlintTextureCacheControlFmat;
  1287. #else
  1288. typedef struct {
  1289. unsigned32 Invalidate: 1;
  1290. unsigned32 Mode: 1;
  1291. unsigned32 pad: 30;
  1292. } __GlintTextureCacheControlFmat;
  1293. #endif
  1294. #if BIG_ENDIAN == 1
  1295. typedef struct {
  1296. unsigned32 pad: 18;
  1297. unsigned32 XMask: 5;
  1298. unsigned32 YShift: 3;
  1299. unsigned32 YMask: 5;
  1300. unsigned32 PatternEnable: 1;
  1301. } __GlintPatternRAMModeFmat;
  1302. #else
  1303. typedef struct {
  1304. unsigned32 PatternEnable: 1;
  1305. unsigned32 YMask: 5;
  1306. unsigned32 YShift: 3;
  1307. unsigned32 XMask: 5;
  1308. unsigned32 pad: 18;
  1309. } __GlintPatternRAMModeFmat;
  1310. #endif
  1311. typedef __GlintUnsignedIntFmat __GlintPatternRAMDataFmat;
  1312. #if BIG_ENDIAN == 1
  1313. typedef struct {
  1314. unsigned32 pad: 30;
  1315. unsigned32 Size: 2;
  1316. } __GlintPixelSizeFmat;
  1317. #else
  1318. typedef struct {
  1319. unsigned32 Size: 2;
  1320. unsigned32 pad: 30;
  1321. } __GlintPixelSizeFmat;
  1322. #endif
  1323. #if BIG_ENDIAN == 1
  1324. typedef struct {
  1325. unsigned32 pad: 27;
  1326. unsigned32 Scanline: 3;
  1327. unsigned32 ScanlineInterval: 2;
  1328. } __GlintScanlineOwnershipFmat;
  1329. #else
  1330. typedef struct {
  1331. unsigned32 ScanlineInterval: 2;
  1332. unsigned32 Scanline: 3;
  1333. unsigned32 pad: 27;
  1334. } __GlintScanlineOwnershipFmat;
  1335. #endif
  1336. #if BIG_ENDIAN == 1
  1337. typedef struct {
  1338. signed32 YMax: 16;
  1339. signed32 YMin: 16;
  1340. } __GlintYLimitsFmat;
  1341. #else
  1342. typedef struct {
  1343. signed32 YMin: 16;
  1344. signed32 YMax: 16;
  1345. } __GlintYLimitsFmat;
  1346. #endif
  1347. #if BIG_ENDIAN == 1
  1348. typedef struct {
  1349. signed32 XMax: 16;
  1350. signed32 XMin: 16;
  1351. } __GlintXLimitsFmat;
  1352. #else
  1353. typedef struct {
  1354. signed32 XMin: 16;
  1355. signed32 XMax: 16;
  1356. } __GlintXLimitsFmat;
  1357. #endif
  1358. #if BIG_ENDIAN == 1
  1359. typedef struct {
  1360. unsigned32 pad: 8;
  1361. unsigned32 Offset: 24;
  1362. } __GlintTextureDownloadOffsetFmat;
  1363. #else
  1364. typedef struct {
  1365. unsigned32 Offset: 24;
  1366. unsigned32 pad: 8;
  1367. } __GlintTextureDownloadOffsetFmat;
  1368. #endif
  1369. #if BIG_ENDIAN == 1
  1370. typedef struct {
  1371. unsigned int TargetChip: 2;
  1372. unsigned int DepthFormat: 2;
  1373. unsigned int FogEnable: 1;
  1374. unsigned int TextureEnable: 1;
  1375. unsigned int SmoothShadingEnable: 1;
  1376. unsigned int DepthEnable: 1;
  1377. unsigned int SpecularTextureEnable: 1;
  1378. unsigned int DiffuseTextureEnable: 1;
  1379. unsigned int SubPixelCorrectionEnable: 1;
  1380. unsigned int DiamondExit: 1;
  1381. unsigned int NoDraw: 1;
  1382. unsigned int ClampEnable: 1;
  1383. unsigned int TextureParameterMode: 2;
  1384. unsigned int FillDirection: 1;
  1385. unsigned int pad: 15;
  1386. } __GambitDeltaModeFmat;
  1387. #else
  1388. typedef struct {
  1389. unsigned int TargetChip: 2;
  1390. unsigned int DepthFormat: 2;
  1391. unsigned int FogEnable: 1;
  1392. unsigned int TextureEnable: 1;
  1393. unsigned int SmoothShadingEnable: 1;
  1394. unsigned int DepthEnable: 1;
  1395. unsigned int SpecularTextureEnable: 1;
  1396. unsigned int DiffuseTextureEnable: 1;
  1397. unsigned int SubPixelCorrectionEnable: 1;
  1398. unsigned int DiamondExit: 1;
  1399. unsigned int NoDraw: 1;
  1400. unsigned int ClampEnable: 1;
  1401. unsigned int TextureParameterMode: 2;
  1402. unsigned int FillDirection: 1;
  1403. unsigned int pad: 15;
  1404. } __GambitDeltaModeFmat;
  1405. #endif
  1406. typedef unsigned32 __GlintTextureDataFmat;