Reality Display Processor/Commands
Jump to navigation
Jump to search
Sync_Load 0x26
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x26[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
15:0 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
bit 61:56 | command[5:0]: 0x26 |
Sync_Pipe 0x27
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x27[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
15:0 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
bit 61:56 | command[5:0]: 0x27 |
Sync_Tile 0x28
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x28[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
15:0 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
bit 61:56 | command[5:0]: 0x28 |
Sync_Full 0x29
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x29[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
15:0 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
bit 61:56 | command[5:0]: 0x29 |
Set_Key_GB 0x2a
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2a[5:0] | key.g.width[11:4] | ||||||||||||
47:32 | key.g.width[3:0] | key.b.width[11:0] | ||||||||||||||
31:16 | key.g.center[7:0] | key.g.scale[7:0] | ||||||||||||||
15:0 | key.b.center[7:0] | key.b.scale[7:0] |
bit 61:56 | command[5:0]: 0x2a |
bit 55:44 | key.g.width[11:0]: - |
bit 43:32 | key.b.width[11:0]: - |
bit 31:24 | key.g.center[7:0]: - |
bit 23:16 | key.g.scale[7:0]: - |
bit 15:8 | key.b.center[7:0]: - |
bit 7:0 | key.b.scale[7:0]: - |
Set_Key_R 0x2b
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2b[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | key.r.width[11:0] | |||||||||||
15:0 | key.r.center[7:0] | key.r.scale[7:0] |
bit 61:56 | command[5:0]: 0x2b |
bit 27:16 | key.r.width[11:0]: - |
bit 15:8 | key.r.center[7:0]: - |
bit 7:0 | key.r.scale[7:0]: - |
Set_Convert 0x2c
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2c[5:0] | — | — | convert.k[0][8:3] | ||||||||||
47:32 | convert.k[0][2:0] | convert.k[1][8:0] | convert.k[2][8:5] | |||||||||||||
31:16 | convert.k[2][4:0] | convert.k[3][8:0] | convert.k[4][8:7] | |||||||||||||
15:0 | convert.k[4][6:0] | — | convert.k[5][7:0] |
bit 61:56 | command[5:0]: 0x2c |
bit 53:45 | convert.k[0][8:0]: - |
bit 44:36 | convert.k[1][8:0]: - |
bit 35:27 | convert.k[2][8:0]: - |
bit 26:18 | convert.k[3][8:0]: - |
bit 17:9 | convert.k[4][8:0]: - |
bit 7:0 | convert.k[5][7:0]: - |
Set_Scissor 0x2d
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2d[5:0] | scissor.x.hi[11:4] | ||||||||||||
47:32 | scissor.x.hi[3:0] | scissor.y.hi[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | — | scissor.field | scissor.odd | scissor.x.lo[11:4] | |||||||
15:0 | scissor.x.lo[3:0] | scissor.y.lo[11:0] |
bit 61:56 | command[5:0]: 0x2d |
bit 55:44 | scissor.x.hi[11:0]: - |
bit 43:32 | scissor.y.hi[11:0]: - |
bit 25 | scissor.field: ? |
bit 24 | scissor.odd: ? |
bit 23:12 | scissor.x.lo[11:0]: - |
bit 11:0 | scissor.y.lo[11:0]: - |
Set_Primitive_Depth 0x2e
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2e[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | primitiveDepth.z[15:0] | |||||||||||||||
15:0 | primitiveDepth.deltaZ[15:0] |
bit 61:56 | command[5:0]: 0x2e |
bit 31:16 | primitiveDepth.z[15:0]: - |
bit 15:0 | primitiveDepth.deltaZ[15:0]: - |
Set_Other_Modes 0x2f
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x2f[5:0] | other.atomicPrimitive | other.reserved1 | other.cycleType[1:0] | other.perspective | other.detailTexture | other.sharpenTexture | other.lodTexture | ||||||
47:32 | other.tlut | other.tlutType | other.sampleType | other.midTexel | other.bilerp[0] | other.bilerp[1] | other.convertOne | other.colorKey | other.colorDitherMode[1:0] | other.alphaDitherMode[1:0] | other.reserved2[3:0] | |||||
31:16 | other.blend1a[0][1:0] | other.blend1a[1][1:0] | other.blend1b[0][1:0] | other.blend1b[1][1:0] | other.blend2a[0][1:0] | other.blend2a[1][1:0] | other.blend2b[0][1:0] | other.blend2b[1][1:0] | ||||||||
15:0 | other.reserved3 | other.forceBlend | other.alphaCoverage | other.coverageXalpha | other.zMode[1:0] | other.coverageMode[1:0] | other.colorOnCoverage | other.imageRead | other.zUpdate | other.zCompare | other.antialias | other.zSource | other.ditherAlpha | other.alphaCompare |
bit 61:56 | command[5:0]: 0x2f |
bit 55 | other.atomicPrimitive: ? |
bit 54 | other.reserved1: ? |
bit 53:52 | other.cycleType[1:0]: - |
bit 51 | other.perspective: ? |
bit 50 | other.detailTexture: ? |
bit 49 | other.sharpenTexture: ? |
bit 48 | other.lodTexture: ? |
bit 47 | other.tlut: ? |
bit 46 | other.tlutType: ? |
bit 45 | other.sampleType: ? |
bit 44 | other.midTexel: ? |
bit 43 | other.bilerp[0]: ? |
bit 42 | other.bilerp[1]: ? |
bit 41 | other.convertOne: ? |
bit 40 | other.colorKey: ? |
bit 39:38 | other.colorDitherMode[1:0]: - |
bit 37:36 | other.alphaDitherMode[1:0]: - |
bit 35:32 | other.reserved2[3:0]: - |
bit 31:30 | other.blend1a[0][1:0]: - |
bit 29:28 | other.blend1a[1][1:0]: - |
bit 27:26 | other.blend1b[0][1:0]: - |
bit 25:24 | other.blend1b[1][1:0]: - |
bit 23:22 | other.blend2a[0][1:0]: - |
bit 21:20 | other.blend2a[1][1:0]: - |
bit 19:18 | other.blend2b[0][1:0]: - |
bit 17:16 | other.blend2b[1][1:0]: - |
bit 15 | other.reserved3: ? |
bit 14 | other.forceBlend: ? |
bit 13 | other.alphaCoverage: ? |
bit 12 | other.coverageXalpha: ? |
bit 11:10 | other.zMode[1:0]: - |
bit 9:8 | other.coverageMode[1:0]: - |
bit 7 | other.colorOnCoverage: ? |
bit 6 | other.imageRead: ? |
bit 5 | other.zUpdate: ? |
bit 4 | other.zCompare: ? |
bit 3 | other.antialias: ? |
bit 2 | other.zSource: ? |
bit 1 | other.ditherAlpha: ? |
bit 0 | other.alphaCompare: ? |
Load_Texture_LUT 0x30
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x30[5:0] | tlut.s.lo[11:4] | ||||||||||||
47:32 | tlut.s.lo[3:0] | tlut.t.lo[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | tlut.index[2:0] | tlut.s.hi[11:4] | |||||||||
15:0 | tlut.s.hi[3:0] | tlut.t.hi[11:0] |
bit 61:56 | command[5:0]: 0x30 |
bit 55:44 | tlut.s.lo[11:0]: - |
bit 43:32 | tlut.t.lo[11:0]: - |
bit 26:24 | tlut.index[2:0]: - |
bit 23:12 | tlut.s.hi[11:0]: - |
bit 11:0 | tlut.t.hi[11:0]: - |
Invalid_31 0x31
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x31[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
15:0 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
bit 61:56 | command[5:0]: 0x31 |
Set_Tile_Size 0x32
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x32[5:0] | tileSize.s.lo[11:4] | ||||||||||||
47:32 | tileSize.s.lo[3:0] | tileSize.t.lo[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | tileSize.index[2:0] | tileSize.s.hi[11:4] | |||||||||
15:0 | tileSize.s.hi[3:0] | tileSize.t.hi[11:0] |
bit 61:56 | command[5:0]: 0x32 |
bit 55:44 | tileSize.s.lo[11:0]: - |
bit 43:32 | tileSize.t.lo[11:0]: - |
bit 26:24 | tileSize.index[2:0]: - |
bit 23:12 | tileSize.s.hi[11:0]: - |
bit 11:0 | tileSize.t.hi[11:0]: - |
Load_Block 0x33
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x33[5:0] | load_.block.s.lo[11:4] | ||||||||||||
47:32 | load_.block.s.lo[3:0] | load_.block.t.lo[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | load_.block.index[2:0] | load_.block.s.hi[11:4] | |||||||||
15:0 | load_.block.s.hi[3:0] | load_.block.t.hi[11:0] |
bit 61:56 | command[5:0]: 0x33 |
bit 55:44 | load_.block.s.lo[11:0]: - |
bit 43:32 | load_.block.t.lo[11:0]: - |
bit 26:24 | load_.block.index[2:0]: - |
bit 23:12 | load_.block.s.hi[11:0]: - |
bit 11:0 | load_.block.t.hi[11:0]: - |
Load_Tile 0x34
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x34[5:0] | load_.tile.s.lo[11:4] | ||||||||||||
47:32 | load_.tile.s.lo[3:0] | load_.tile.t.lo[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | load_.tile.index[2:0] | load_.tile.s.hi[11:4] | |||||||||
15:0 | load_.tile.s.hi[3:0] | load_.tile.t.hi[11:0] |
bit 61:56 | command[5:0]: 0x34 |
bit 55:44 | load_.tile.s.lo[11:0]: - |
bit 43:32 | load_.tile.t.lo[11:0]: - |
bit 26:24 | load_.tile.index[2:0]: - |
bit 23:12 | load_.tile.s.hi[11:0]: - |
bit 11:0 | load_.tile.t.hi[11:0]: - |
Set_Tile 0x35
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x35[5:0] | tile.format[2:0] | tile.size[1:0] | — | tile.line[8:7] | |||||||||
47:32 | tile.line[6:0] | tile.address[8:0] | ||||||||||||||
31:16 | — | — | — | — | — | tile.index[2:0] | tile.palette[3:0] | tile.t.clamp | tile.t.mirror | tile.t.mask[3:2] | ||||||
15:0 | tile.t.mask[1:0] | tile.t.shift[3:0] | tile.s.clamp | tile.s.mirror | tile.s.mask[3:0] | tile.s.shift[3:0] |
bit 61:56 | command[5:0]: 0x35 |
bit 55:53 | tile.format[2:0]: - |
bit 52:51 | tile.size[1:0]: - |
bit 49:41 | tile.line[8:0]: - |
bit 40:32 | tile.address[8:0]: - |
bit 26:24 | tile.index[2:0]: - |
bit 23:20 | tile.palette[3:0]: - |
bit 19 | tile.t.clamp: ? |
bit 18 | tile.t.mirror: ? |
bit 17:14 | tile.t.mask[3:0]: - |
bit 13:10 | tile.t.shift[3:0]: - |
bit 9 | tile.s.clamp: ? |
bit 8 | tile.s.mirror: ? |
bit 7:4 | tile.s.mask[3:0]: - |
bit 3:0 | tile.s.shift[3:0]: - |
Fill_Rectangle 0x36
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x36[5:0] | fillRectangle_.x.lo[11:4] | ||||||||||||
47:32 | fillRectangle_.x.lo[3:0] | fillRectangle_.y.lo[11:0] | ||||||||||||||
31:16 | — | — | — | — | — | — | — | — | fillRectangle_.x.hi[11:4] | |||||||
15:0 | fillRectangle_.x.hi[3:0] | fillRectangle_.y.hi[11:0] |
bit 61:56 | command[5:0]: 0x36 |
bit 55:44 | fillRectangle_.x.lo[11:0]: - |
bit 43:32 | fillRectangle_.y.lo[11:0]: - |
bit 23:12 | fillRectangle_.x.hi[11:0]: - |
bit 11:0 | fillRectangle_.y.hi[11:0]: - |
Set_Fill_Color 0x37
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x37[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | set.fill.color[31:16] | |||||||||||||||
15:0 | set.fill.color[15:0] |
bit 61:56 | command[5:0]: 0x37 |
bit 31:0 | set.fill.color[31:0]: - |
Set_Fog_Color 0x38
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x38[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | fog.red[7:0] | fog.green[7:0] | ||||||||||||||
15:0 | fog.blue[7:0] | fog.alpha[7:0] |
bit 61:56 | command[5:0]: 0x38 |
bit 31:24 | fog.red[7:0]: - |
bit 23:16 | fog.green[7:0]: - |
bit 15:8 | fog.blue[7:0]: - |
bit 7:0 | fog.alpha[7:0]: - |
Set_Blend_Color 0x39
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x39[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | blend.red[7:0] | blend.green[7:0] | ||||||||||||||
15:0 | blend.blue[7:0] | blend.alpha[7:0] |
bit 61:56 | command[5:0]: 0x39 |
bit 31:24 | blend.red[7:0]: - |
bit 23:16 | blend.green[7:0]: - |
bit 15:8 | blend.blue[7:0]: - |
bit 7:0 | blend.alpha[7:0]: - |
Set_Primitive_Color 0x3a
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3a[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | primitive.minimum[3:0] | primitive.fraction[7:0] | ||||||||||
31:16 | primitive.red[7:0] | primitive.green[7:0] | ||||||||||||||
15:0 | primitive.blue[7:0] | primitive.alpha[7:0] |
bit 61:56 | command[5:0]: 0x3a |
bit 43:40 | primitive.minimum[3:0]: - |
bit 39:32 | primitive.fraction[7:0]: - |
bit 31:24 | primitive.red[7:0]: - |
bit 23:16 | primitive.green[7:0]: - |
bit 15:8 | primitive.blue[7:0]: - |
bit 7:0 | primitive.alpha[7:0]: - |
Set_Environment_Color 0x3b
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3b[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | environment.red[7:0] | environment.green[7:0] | ||||||||||||||
15:0 | environment.blue[7:0] | environment.alpha[7:0] |
bit 61:56 | command[5:0]: 0x3b |
bit 31:24 | environment.red[7:0]: - |
bit 23:16 | environment.green[7:0]: - |
bit 15:8 | environment.blue[7:0]: - |
bit 7:0 | environment.alpha[7:0]: - |
Set_Combine_Mode 0x3c
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3c[5:0] | combine.sba.color[0][3:0] | combine.mul.color[0][4:1] | |||||||||||
47:32 | combine.mul.color[0] | combine.sba.alpha[0][2:0] | combine.mul.alpha[0][2:0] | combine.sba.color[1][3:0] | combine.mul.color[1][4:0] | |||||||||||
31:16 | combine.sbb.color[0][3:0] | combine.sbb.color[1][3:0] | combine.sba.alpha[1][2:0] | combine.mul.alpha[1][2:0] | combine.add.color[0][2:1] | |||||||||||
15:0 | combine.add.color[0] | combine.sbb.alpha[0][2:0] | combine.add.alpha[0][2:0] | combine.add.color[1][2:0] | combine.sbb.alpha[1][2:0] | combine.add.alpha[1][2:0] |
bit 61:56 | command[5:0]: 0x3c |
bit 55:52 | combine.sba.color[0][3:0]: - |
bit 51:47 | combine.mul.color[0][4:0]: - |
bit 46:44 | combine.sba.alpha[0][2:0]: - |
bit 43:41 | combine.mul.alpha[0][2:0]: - |
bit 40:37 | combine.sba.color[1][3:0]: - |
bit 36:32 | combine.mul.color[1][4:0]: - |
bit 31:28 | combine.sbb.color[0][3:0]: - |
bit 27:24 | combine.sbb.color[1][3:0]: - |
bit 23:21 | combine.sba.alpha[1][2:0]: - |
bit 20:18 | combine.mul.alpha[1][2:0]: - |
bit 17:15 | combine.add.color[0][2:0]: - |
bit 14:12 | combine.sbb.alpha[0][2:0]: - |
bit 11:9 | combine.add.alpha[0][2:0]: - |
bit 8:6 | combine.add.color[1][2:0]: - |
bit 5:3 | combine.sbb.alpha[1][2:0]: - |
bit 2:0 | combine.add.alpha[1][2:0]: - |
Set_Texture_Image 0x3d
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3d[5:0] | set.texture.format[2:0] | set.texture.size[1:0] | — | — | — | ||||||||
47:32 | — | — | — | — | — | — | set.texture.width[9:0] | |||||||||
31:16 | — | — | — | — | — | — | set.texture.dramAddress[25:16] | |||||||||
15:0 | set.texture.dramAddress[15:0] |
bit 61:56 | command[5:0]: 0x3d |
bit 55:53 | set.texture.format[2:0]: - |
bit 52:51 | set.texture.size[1:0]: - |
bit 41:32 | set.texture.width[9:0]: - |
bit 25:0 | set.texture.dramAddress[25:0]: - |
Set_Mask_Image 0x3e
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3e[5:0] | — | — | — | — | — | — | — | — | |||||
47:32 | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
31:16 | — | — | — | — | — | — | set.mask.dramAddress[25:16] | |||||||||
15:0 | set.mask.dramAddress[15:0] |
bit 61:56 | command[5:0]: 0x3e |
bit 25:0 | set.mask.dramAddress[25:0]: - |
Set_Color_Image 0x3f
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
63:48 | — | — | command = 0x3f[5:0] | set.color.format[2:0] | set.color.size[1:0] | — | — | — | ||||||||
47:32 | — | — | — | — | — | — | set.color.width[9:0] | |||||||||
31:16 | — | — | — | — | — | — | set.color.dramAddress[25:16] | |||||||||
15:0 | set.color.dramAddress[15:0] |
bit 61:56 | command[5:0]: 0x3f |
bit 55:53 | set.color.format[2:0]: - |
bit 52:51 | set.color.size[1:0]: - |
bit 41:32 | set.color.width[9:0]: - |
bit 25:0 | set.color.dramAddress[25:0]: - |