Changes

2,097 bytes added ,  19:38, 25 August 2015
m
Line 4: Line 4:  
== Description ==
 
== Description ==
   −
The PICA200 is an opengl ES 1.1 compliant GPU manufactured by DMP. It comes loaded with a number of extensions that make it similar to an openGL ES 2.0 compliant GPU (ability to run programmable vertex/geometry shaders, for instance). Because of this, Nintendo wrapped GPU access into an openGL ES 2.0 implementation with some limitations. As the fragment stage of the pipeline is non-programmable, Nintendo instead gives developers the ability to configure a number of fragment-related values through glGetUniformLocation and glUniformXX. See below for the full list.
+
The PICA200 is an OpenGL ES 1.1 compliant GPU manufactured by DMP. It comes loaded with a number of extensions that make it similar to an OpenGL ES 2.0 compliant GPU (ability to run programmable vertex/geometry shaders, for instance). Because of this, Nintendo wrapped GPU access into an OpenGL ES 2.0 implementation with some limitations. As the fragment stage of the pipeline is non-programmable, Nintendo instead gives developers the ability to configure a number of fragment-related values through glGetUniformLocation and glUniformXX. See below for the full list.
    
== Shader program structure ==
 
== Shader program structure ==
Line 108: Line 108:  
|}
 
|}
   −
vertex shader object:
+
vertex/geometry shader struct:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
! Offset
 
! Offset
Line 121: Line 121:  
| 0x4
 
| 0x4
 
| Size of shader code (in words)
 
| Size of shader code (in words)
 +
|-
 +
| 0x8
 +
| 0x4
 +
| Pointer to shader opdesc data
 +
|-
 +
| 0xC
 +
| 0x4
 +
| Size of shader opdescs (in words)
 
|}
 
|}
   Line 152: Line 160:  
| 0x0012A504
 
| 0x0012A504
 
| ?
 
| ?
| ?
+
| 0x008B bit0 (0 = enable??)
 
|-  
 
|-  
 
| 0x1
 
| 0x1
Line 194: Line 202:  
| 0x0012A7F0
 
| 0x0012A7F0
 
| ?
 
| ?
| ?
+
| 0x0080 bit10 (?)
 
|-  
 
|-  
 
| 0x7
 
| 0x7
Line 201: Line 209:  
| 0x0012A8B4
 
| 0x0012A8B4
 
| ?
 
| ?
| ?
+
| 0x0080 bit13 (1 = use texcoords from texture unit 1)
 
|-  
 
|-  
 
| 0x8
 
| 0x8
Line 208: Line 216:  
| 0x0012A97C
 
| 0x0012A97C
 
| ?
 
| ?
| ?
+
| 0x0080 bit8-9 (0-2 = use texcoords from texture unit 0-2 resp., 3 = forbidden?)
 
|-  
 
|-  
 
| 0x9
 
| 0x9
Line 215: Line 223:  
| 0x0012AA54
 
| 0x0012AA54
 
| ?
 
| ?
| ?
+
| 0x00A8 bit6-9
 
|-  
 
|-  
 
| 0xA
 
| 0xA
Line 222: Line 230:  
| 0x0012AB94
 
| 0x0012AB94
 
| ?
 
| ?
| ?
+
| 0x00A8 bit10-13
 
|-  
 
|-  
 
| 0xB
 
| 0xB
Line 229: Line 237:  
| 0x0012ACD4
 
| 0x0012ACD4
 
| ?
 
| ?
| ?
+
| 0x00A8 bit14
 
|-  
 
|-  
 
| 0xC
 
| 0xC
Line 236: Line 244:  
| 0x0012ADB8
 
| 0x0012ADB8
 
| ?
 
| ?
| ?
+
| 0x00A8 bit0-2
 
|-  
 
|-  
 
| 0xD
 
| 0xD
Line 243: Line 251:  
| 0x0012AEC0
 
| 0x0012AEC0
 
| ?
 
| ?
| ?
+
| 0x00A8 bit3-5
 
|-  
 
|-  
 
| 0xE
 
| 0xE
Line 250: Line 258:  
| 0x0012AFD0
 
| 0x0012AFD0
 
| ?
 
| ?
| ?
+
| 0x00A8 bit16-17
 
|-  
 
|-  
 
| 0xF
 
| 0xF
Line 257: Line 265:  
| 0x0012B0A0
 
| 0x0012B0A0
 
| ?
 
| ?
| ?
+
| 0x00A8 bit18-19
 
|-  
 
|-  
 
| 0x10
 
| 0x10
Line 264: Line 272:  
| 0x0012B168
 
| 0x0012B168
 
| ?
 
| ?
| ?
+
| 0x00AC bit0-2
 
|-  
 
|-  
 
| 0x11
 
| 0x11
Line 271: Line 279:  
| 0x0012B270
 
| 0x0012B270
 
| ?
 
| ?
| ?
+
| 0x00AC bit11-18
 
|-  
 
|-  
 
| 0x12
 
| 0x12
Line 278: Line 286:  
| 0x0012B334
 
| 0x0012B334
 
| ?
 
| ?
| ?
+
| 0x00AD bit0-7
 
|-  
 
|-  
 
| 0x13
 
| 0x13
Line 285: Line 293:  
| 0x001556B4
 
| 0x001556B4
 
| 0xE10
 
| 0xE10
| ?
+
| 0x00A8 bit20-27
 
|-  
 
|-  
 
| 0x14
 
| 0x14
Line 292: Line 300:  
| 0x0012B3E0
 
| 0x0012B3E0
 
| ?
 
| ?
| ?
+
| 0x00A8 bit15
 
|-  
 
|-  
 
| 0x15
 
| 0x15
Line 299: Line 307:  
| 0x00155878
 
| 0x00155878
 
| 0xE14
 
| 0xE14
| ?
+
| 0x00A9, 0x00AB
 
|-  
 
|-  
 
| 0x16
 
| 0x16
Line 306: Line 314:  
| 0x00155A7C
 
| 0x00155A7C
 
| 0xE20
 
| 0xE20
| ?
+
| 0x00AA, 0x00AB
 
|-  
 
|-  
 
| 0x17
 
| 0x17
Line 390: Line 398:  
| 0x0012EAEC
 
| 0x0012EAEC
 
| 0x568
 
| 0x568
| ?
+
| 0x0047 bit0
 
|-  
 
|-  
 
| 0x23
 
| 0x23
Line 425: Line 433:  
| 0x001560EC
 
| 0x001560EC
 
| 0xE84
 
| 0xE84
| ?
+
| 0x0120 (vec[0] -> bit0-7, vec[1] -> bit8-15, vec[2] -> bit16-23)
 
|-  
 
|-  
 
| 0x28
 
| 0x28
Line 432: Line 440:  
| 0x00156268
 
| 0x00156268
 
| 0xE90
 
| 0xE90
| ?
+
| 0x0121 (vec[0] -> bit0-7, vec[1] -> bit8-15, vec[2] -> bit16-23), 0x0122 (vec[3] -> bit 0-7)
 
|-  
 
|-  
 
| 0x29
 
| 0x29
Line 439: Line 447:  
| 0x001564D4
 
| 0x001564D4
 
| 0xEA0
 
| 0xEA0
| ?
+
| 0x0126 bit0-23
 
|-  
 
|-  
 
| 0x2A
 
| 0x2A
Line 446: Line 454:  
| 0x001565C0
 
| 0x001565C0
 
| 0xEA4
 
| 0xEA4
| ?
+
| 0x00E5
 
|-  
 
|-  
 
| 0x2B
 
| 0x2B
Line 460: Line 468:  
| 0x00156684
 
| 0x00156684
 
| 0xEA8
 
| 0xEA8
| ?
+
| 0x00E4
 
|-  
 
|-  
 
| 0x2D
 
| 0x2D
Line 467: Line 475:  
| 0x0012B7A4
 
| 0x0012B7A4
 
| 0x640
 
| 0x640
| ?
+
| 0x0122 bit8 (0x6060/0x6061 -> 0/1)
 
|-  
 
|-  
 
| 0x2E
 
| 0x2E
Line 474: Line 482:  
| 0x0012B854
 
| 0x0012B854
 
| 0x624
 
| 0x624
| ?
+
| 0x00E0 bit3 (0x605E/0x605F -> 0/1)
 
|-  
 
|-  
 
| 0x2F
 
| 0x2F
Line 502: Line 510:  
| 0x0012B9F4
 
| 0x0012B9F4
 
| 0x590
 
| 0x590
| ?
+
| 0x00A8 bit0, 0x01C6 (0 = enabled)
 
|-  
 
|-  
 
| 0x33
 
| 0x33
Line 509: Line 517:  
| 0x00156744
 
| 0x00156744
 
| 0xA10
 
| 0xA10
| ?
+
| 0x01C0?
 
|-  
 
|-  
 
| 0x34
 
| 0x34
Line 516: Line 524:  
| 0x00156E1C
 
| 0x00156E1C
 
| 0xDE0
 
| 0xDE0
| ?
+
| 0x01C0?
 
|-  
 
|-  
 
| 0x35
 
| 0x35
Line 523: Line 531:  
| 0x0015696C
 
| 0x0015696C
 
| 0xDA0
 
| 0xDA0
| ?
+
| 0x01C0
 
|-  
 
|-  
 
| 0x36
 
| 0x36
Line 607: Line 615:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+0*0x70+0x04
 
| 0xA20+0*0x70+0x04
| 0x01C8 ?
+
| 0x0143
 
|-  
 
|-  
 
| 0x42
 
| 0x42
Line 614: Line 622:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+1*0x70+0x04
 
| 0xA20+1*0x70+0x04
| 0x01C8 ?
+
| 0x0153
 
|-  
 
|-  
 
| 0x43
 
| 0x43
Line 621: Line 629:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+2*0x70+0x04
 
| 0xA20+2*0x70+0x04
| 0x01C8 ?
+
| 0x0163
 
|-  
 
|-  
 
| 0x44
 
| 0x44
Line 628: Line 636:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+3*0x70+0x04
 
| 0xA20+3*0x70+0x04
| 0x01C8 ?
+
| 0x0173
 
|-  
 
|-  
 
| 0x45
 
| 0x45
Line 635: Line 643:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+4*0x70+0x04
 
| 0xA20+4*0x70+0x04
| 0x01C8 ?
+
| 0x0183
 
|-  
 
|-  
 
| 0x46
 
| 0x46
Line 642: Line 650:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+5*0x70+0x04
 
| 0xA20+5*0x70+0x04
| 0x01C8 ?
+
| 0x0193
 
|-  
 
|-  
 
| 0x47
 
| 0x47
Line 649: Line 657:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+6*0x70+0x04
 
| 0xA20+6*0x70+0x04
| 0x01C8 ?
+
| 0x01A3
 
|-  
 
|-  
 
| 0x48
 
| 0x48
Line 656: Line 664:  
| 0x001579CC
 
| 0x001579CC
 
| 0xA20+7*0x70+0x04
 
| 0xA20+7*0x70+0x04
| 0x01C8 ?
+
| 0x01B3
 
|-  
 
|-  
 
| 0x49
 
| 0x49
Line 663: Line 671:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+0*0x70+0x14
 
| 0xA20+0*0x70+0x14
| 0x01C8 ?
+
| 0x0142
 
|-  
 
|-  
 
| 0x4A
 
| 0x4A
Line 670: Line 678:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+1*0x70+0x14
 
| 0xA20+1*0x70+0x14
| 0x01C8 ?
+
| 0x0152
 
|-  
 
|-  
 
| 0x4B
 
| 0x4B
Line 677: Line 685:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+2*0x70+0x14
 
| 0xA20+2*0x70+0x14
| 0x01C8 ?
+
| 0x0162
 
|-  
 
|-  
 
| 0x4C
 
| 0x4C
Line 684: Line 692:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+3*0x70+0x14
 
| 0xA20+3*0x70+0x14
| 0x01C8 ?
+
| 0x0172
 
|-  
 
|-  
 
| 0x4D
 
| 0x4D
Line 691: Line 699:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+4*0x70+0x14
 
| 0xA20+4*0x70+0x14
| 0x01C8 ?
+
| 0x0182
 
|-  
 
|-  
 
| 0x4E
 
| 0x4E
Line 698: Line 706:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+5*0x70+0x14
 
| 0xA20+5*0x70+0x14
| 0x01C8 ?
+
| 0x0192
 
|-  
 
|-  
 
| 0x4F
 
| 0x4F
Line 705: Line 713:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+6*0x70+0x14
 
| 0xA20+6*0x70+0x14
| 0x01C8 ?
+
| 0x01A2
 
|-  
 
|-  
 
| 0x50
 
| 0x50
Line 712: Line 720:  
| 0x00157C10
 
| 0x00157C10
 
| 0xA20+7*0x70+0x14
 
| 0xA20+7*0x70+0x14
| 0x01C8 ?
+
| 0x01B2
 
|-  
 
|-  
 
| 0x51
 
| 0x51
Line 999: Line 1,007:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0149 bit2
 
|-  
 
|-  
 
| 0x7A
 
| 0x7A
Line 1,006: Line 1,014:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0159 bit2
 
|-  
 
|-  
 
| 0x7B
 
| 0x7B
Line 1,013: Line 1,021:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0169 bit2
 
|-  
 
|-  
 
| 0x7C
 
| 0x7C
Line 1,020: Line 1,028:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0179 bit2
 
|-  
 
|-  
 
| 0x7D
 
| 0x7D
Line 1,027: Line 1,035:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0189 bit2
 
|-  
 
|-  
 
| 0x7E
 
| 0x7E
Line 1,034: Line 1,042:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0199 bit2
 
|-  
 
|-  
 
| 0x7F
 
| 0x7F
Line 1,041: Line 1,049:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01A9 bit2
 
|-  
 
|-  
 
| 0x80
 
| 0x80
Line 1,048: Line 1,056:  
| 0x0012C018
 
| 0x0012C018
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01B9 bit2
 
|-  
 
|-  
 
| 0x81
 
| 0x81
Line 1,055: Line 1,063:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0149 bit3
 
|-  
 
|-  
 
| 0x82
 
| 0x82
Line 1,062: Line 1,070:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0159 bit3
 
|-  
 
|-  
 
| 0x83
 
| 0x83
Line 1,069: Line 1,077:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0169 bit3
 
|-  
 
|-  
 
| 0x84
 
| 0x84
Line 1,076: Line 1,084:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0179 bit3
 
|-  
 
|-  
 
| 0x85
 
| 0x85
Line 1,083: Line 1,091:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0189 bit3
 
|-  
 
|-  
 
| 0x86
 
| 0x86
Line 1,090: Line 1,098:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0199 bit3
 
|-  
 
|-  
 
| 0x87
 
| 0x87
Line 1,097: Line 1,105:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01A9 bit3
 
|-  
 
|-  
 
| 0x88
 
| 0x88
Line 1,104: Line 1,112:  
| 0x0012C114
 
| 0x0012C114
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01B9 bit3
 
|-  
 
|-  
 
| 0x89
 
| 0x89
Line 1,111: Line 1,119:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0149 bit1
 
|-  
 
|-  
 
| 0x8A
 
| 0x8A
Line 1,118: Line 1,126:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0159 bit1
 
|-  
 
|-  
 
| 0x8B
 
| 0x8B
Line 1,125: Line 1,133:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0169 bit1
 
|-  
 
|-  
 
| 0x8C
 
| 0x8C
Line 1,132: Line 1,140:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0179 bit1
 
|-  
 
|-  
 
| 0x8D
 
| 0x8D
Line 1,139: Line 1,147:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0189 bit1
 
|-  
 
|-  
 
| 0x8E
 
| 0x8E
Line 1,146: Line 1,154:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x0199 bit1
 
|-  
 
|-  
 
| 0x8F
 
| 0x8F
Line 1,153: Line 1,161:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01A9 bit1
 
|-  
 
|-  
 
| 0x90
 
| 0x90
Line 1,160: Line 1,168:  
| 0x0012BF10
 
| 0x0012BF10
 
| 0x7D8
 
| 0x7D8
| 0x01C8 ?
+
| 0x01B9 bit1
 
|-  
 
|-  
 
| 0x91
 
| 0x91
Line 1,223: Line 1,231:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit3 (1 = disable?)
 
|-  
 
|-  
 
| 0x9A
 
| 0x9A
Line 1,230: Line 1,238:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit4 (1 = disable?)
 
|-  
 
|-  
 
| 0x9B
 
| 0x9B
Line 1,237: Line 1,245:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit5 (1 = disable?)
 
|-  
 
|-  
 
| 0x9C
 
| 0x9C
Line 1,244: Line 1,252:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit6 (1 = disable?)
 
|-  
 
|-  
 
| 0x9D
 
| 0x9D
Line 1,251: Line 1,259:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit7 (1 = disable?)
 
|-  
 
|-  
 
| 0x9E
 
| 0x9E
Line 1,258: Line 1,266:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit8 (1 = disable?)
 
|-  
 
|-  
 
| 0x9F
 
| 0x9F
Line 1,265: Line 1,273:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit9 (1 = disable?)
 
|-  
 
|-  
 
| 0xA0
 
| 0xA0
Line 1,272: Line 1,280:  
| 0x0012C380
 
| 0x0012C380
 
| ?
 
| ?
| 0x01C8 ?
+
| 0x01C4 bit10 (1 = disable?)
 
|-  
 
|-  
 
| 0xA1
 
| 0xA1
Line 1,503: Line 1,511:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit12 (1 = disable?)
 
|-  
 
|-  
 
| 0xC2
 
| 0xC2
Line 1,510: Line 1,518:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit13 (1 = disable?)
 
|-  
 
|-  
 
| 0xC3
 
| 0xC3
Line 1,517: Line 1,525:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit14 (1 = disable?)
 
|-  
 
|-  
 
| 0xC4
 
| 0xC4
Line 1,524: Line 1,532:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit15 (1 = disable?)
 
|-  
 
|-  
 
| 0xC5
 
| 0xC5
Line 1,531: Line 1,539:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit16 (1 = disable?)
 
|-  
 
|-  
 
| 0xC6
 
| 0xC6
Line 1,538: Line 1,546:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit17 (1 = disable?)
 
|-  
 
|-  
 
| 0xC7
 
| 0xC7
Line 1,545: Line 1,553:  
| 0x0012C5D8
 
| 0x0012C5D8
 
| ?
 
| ?
| ?
+
| 0x01D0 bit18 (1 = disable?)
 
|-  
 
|-  
 
| 0xC8
 
| 0xC8
Line 1,552: Line 1,560:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit0-2
 
|-  
 
|-  
 
| 0xC9
 
| 0xC9
Line 1,559: Line 1,567:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit4-6
 
|-  
 
|-  
 
| 0xCA
 
| 0xCA
Line 1,566: Line 1,574:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit8-10
 
|-  
 
|-  
 
| 0xCB
 
| 0xCB
Line 1,573: Line 1,581:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit12-14
 
|-  
 
|-  
 
| 0xCC
 
| 0xCC
Line 1,580: Line 1,588:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit16-18
 
|-  
 
|-  
 
| 0xCD
 
| 0xCD
Line 1,587: Line 1,595:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit20-22
 
|-  
 
|-  
 
| 0xCE
 
| 0xCE
Line 1,594: Line 1,602:  
| 0x0012C6E8
 
| 0x0012C6E8
 
| ?
 
| ?
| ?
+
| 0x01D1 bit24-26
 
|-  
 
|-  
 
| 0xCF
 
| 0xCF
Line 1,601: Line 1,609:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit0-3
 
|-  
 
|-  
 
| 0xD0
 
| 0xD0
Line 1,608: Line 1,616:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit4-7
 
|-  
 
|-  
 
| 0xD1
 
| 0xD1
Line 1,615: Line 1,623:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit8-11
 
|-  
 
|-  
 
| 0xD2
 
| 0xD2
Line 1,622: Line 1,630:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit12-15
 
|-  
 
|-  
 
| 0xD3
 
| 0xD3
Line 1,629: Line 1,637:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
|0x01D2 bit16-19
 
|-  
 
|-  
 
| 0xD4
 
| 0xD4
Line 1,636: Line 1,644:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit20-23
 
|-  
 
|-  
 
| 0xD5
 
| 0xD5
Line 1,643: Line 1,651:  
| 0x00155404
 
| 0x00155404
 
| ?
 
| ?
| ?
+
| 0x01D2 bit24-27
 
|-  
 
|-  
 
| 0xD6
 
| 0xD6
Line 1,692: Line 1,700:  
| 0x0012CE44
 
| 0x0012CE44
 
| ?
 
| ?
| ?
+
| 0x01C3 bit24-25
 
|-  
 
|-  
 
| 0xDD
 
| 0xDD
Line 1,699: Line 1,707:  
| 0x0012CD88
 
| 0x0012CD88
 
| ?
 
| ?
| ?
+
| 0x01C3 bit22-23
 
|-  
 
|-  
 
| 0xDE
 
| 0xDE
Line 2,203: Line 2,211:  
| 0x0012E7F8
 
| 0x0012E7F8
 
| ?
 
| ?
| ?
+
| 0x00E0 bit0-2 (5 -> fog (0x0B60), 7 -> gas (0x6050))
 
|-  
 
|-  
 
| 0x126
 
| 0x126
Line 2,217: Line 2,225:  
| 0x0012E9DC
 
| 0x0012E9DC
 
| ?
 
| ?
| ?
+
| 0x00E0 bit16
 
|-  
 
|-  
 
| 0x128
 
| 0x128
Line 2,228: Line 2,236:     
On steeldiver's uniform handlers : R1 is a pointer to the current shader program object, R12 is a pointer to the data the uniform is being set to.
 
On steeldiver's uniform handlers : R1 is a pointer to the current shader program object, R12 is a pointer to the data the uniform is being set to.
 +
 +
== Other Symbols ==
 +
 +
The list above is not exhaustive. A number of other strings specific to Nintendo's rendering framework have been found. Below is a table listing those strings including the location they were found in.
 +
 +
{| class="wikitable" border="1"
 +
! Name
 +
!  Context
 +
!  Occurrence
 +
|-
 +
| dmp_Point.viewport.xy
 +
| Name of a shader uniform
 +
| CTRAging's romfs:/gpu/GasCessna/shader.shbin
 +
|-
 +
| dmp_Point.distanceAttenuation
 +
| Name of a shader uniform
 +
| CTRAging's romfs:/gpu/GasCessna/shader.shbin
 +
|-
 +
| dmp_Point.Position
 +
| Name of a shader uniform
 +
| CTRAging's romfs:/gpu/GasCessna/shader.shbin
 +
|-
 +
| dmp_Point.PointSize
 +
| Name of a shader uniform
 +
| CTRAging's romfs:/gpu/GasCessna/shader.shbin
 +
|}
549

edits