typedef struct { int cmd:8; int pad0:8; int sft:8; int len:8; unsigned int data:32; } GsetothermodeH; =zoinkity Orig And SDK names===== upper word: 0000FF00 shift (PD only: 32-shift-length) 000000FF length (PD only: length-1) here are lengths and shift for each of the various segments: 4 0 BLENDMASK blend mask /* unsupported */ 2 4 ALPHADITHER alpha dither 2 6 RGBDITHER RGB dither 1 8 COMBKEY combine key 3 9 TEXTCONV texture convertion 2 12 C TEXTFILT texture filter 2 14 E TEXTLUT texture LUT 1 16 10 TEXTLOD texture LOD 2 17 11 TEXTDETAIL texture detail 1 19 13 TEXTPERSP texture persepective 2 20 14 CYCLETYPE cycle type 1 22 16 COLORDITHER colour dither /* unsupported in HW 2.0 */ 1 23 17 PIPELINE pipeline mode can also signify type of image data Zoinks Note... Do Idea... 0 4bit 1 8bit 2 16bit 3 32bit EG. BA001402 = SetOtherMode_H, CycleType, 2(lowerword) lower word: 0x0 blendmask /* unsupported */ 0x0000000F 0x4 alpha dither SetAlphaDither (2bit) 0x00000000 pattern (0 << 4) 0x00000010 no pattern (1 << 4) 0x00000020 noise (2 << 4) 0x00000030 disable (3 << 4) 0x6 rgb dither SetColorDither (2bit) 0x00000000 magic square (0 << 6) 0x00000040 bayer (1 << 6) 0x00000080 noise (2 << 6 )(enable in Perfect Dark) 0x000000C0 disable (3 << 6) 0x8 combine key SetCombineKey (1bit) 0x00000000 none (0 << 8) 0x00000100 key (1 << 8) 0x9 texture convert SetTextureConvert (2bit) 0x00000000 convert (0 << 9) 0x00000A00 filter convert (5 << 9) 0x00000C00 filter (6 << 9) 0xC texture filter SetTextureFilter (2bit) 0x00000000 point (0 << 12) 0x00002000 bilinear interpolation (2 << 12) 0x00003000 average (3 << 12) 0xE texture look-up table (lut) SetTextureLUT (2bit) 0x00000000 none (0 << 14) 0x00008000 rgba16 (2 << 14) 0x0000C000 ia16 (3 << 14) 0x10 texture lod SetTextureLOD (1bit) 0x00000000 tile (0 << 16) 0x00010000 lod (1 << 16) 0x11 texture detail SetTextureDetail (2bit) 0x00000000 clamp (0 << 17) 0x00020000 sharpen (1 << 17) 0x00040000 detail (2 << 17) 0x13 texture perspective SetTexturePersp (1bit) 0x00000000 none (0 << 19) 0x00080000 perspective (1 << 19) 0x14 cycle type SetCycleType (2bit) 0x00000000 1cycle (0 << 20) 0x00100000 2cycle (1 << 20) 0x00200000 copy (2 << 20) 0x00300000 fill (3 << 20) 0x16 colour dither SetColorDither /* unsupported in HW 2.0 */ 0x00000000 disable (note: Perfect Dark does not use this flag!) 0x00400000 enable 0x17 pipeline mode PipelineMode Span Buffer Coherency. (1bit) 0x00000000 n primitive (0 << 23) Not-Coherent draw primitives as they are requested. 0x00800000 1 primitive (1 << 23) Coherent, wait for first primitive to finish before starting next.