sm64

A Super Mario 64 decompilation
Log | Files | Refs | README | LICENSE

model.inc.c (12532B)


      1 // Exclamation Box
      2 
      3 // 0x08012E10
      4 static const Lights1 exclamation_box_seg8_lights_08012E10 = gdSPDefLights1(
      5     0x3f, 0x3f, 0x3f,
      6     0xff, 0xff, 0xff, 0x28, 0x28, 0x28
      7 );
      8 
      9 // 0x08012E28
     10 ALIGNED8 static const Texture exclamation_box_seg8_texture_08012E28[] = {
     11 #include "actors/exclamation_box/vanish_cap_box_front.rgba16.inc.c"
     12 };
     13 
     14 // 0x08013628
     15 ALIGNED8 static const Texture exclamation_box_seg8_texture_08013628[] = {
     16 #include "actors/exclamation_box/vanish_cap_box_side.rgba16.inc.c"
     17 };
     18 
     19 // 0x08014628
     20 ALIGNED8 static const Texture exclamation_box_seg8_texture_08014628[] = {
     21 #include "actors/exclamation_box/metal_cap_box_front.rgba16.inc.c"
     22 };
     23 
     24 // 0x08014E28
     25 ALIGNED8 static const Texture exclamation_box_seg8_texture_08014E28[] = {
     26 #include "actors/exclamation_box/metal_cap_box_side.rgba16.inc.c"
     27 };
     28 
     29 // 0x08015E28
     30 ALIGNED8 static const Texture exclamation_box_seg8_texture_08015E28[] = {
     31 #include "actors/exclamation_box/wing_cap_box_front.rgba16.inc.c"
     32 };
     33 
     34 // 0x08016628
     35 ALIGNED8 static const Texture exclamation_box_seg8_texture_08016628[] = {
     36 #include "actors/exclamation_box/wing_cap_box_side.rgba16.inc.c"
     37 };
     38 
     39 // 0x08017628
     40 ALIGNED8 static const Texture exclamation_box_seg8_texture_08017628[] = {
     41 #include "actors/exclamation_box/exclamation_box_front.rgba16.inc.c"
     42 };
     43 
     44 // 0x08017E28
     45 ALIGNED8 static const Texture exclamation_box_seg8_texture_08017E28[] = {
     46 #include "actors/exclamation_box/exclamation_box_side.rgba16.inc.c"
     47 };
     48 
     49 // 0x08018E28
     50 static const Vtx exclamation_box_seg8_vertex_08018E28[] = {
     51     {{{   -25,      1,    -25}, 0, {   992,    992}, {0x00, 0x00, 0x81, 0xff}}},
     52     {{{   -25,     52,    -25}, 0, {   992,      0}, {0x00, 0x00, 0x81, 0xff}}},
     53     {{{    26,     52,    -25}, 0, {     0,      0}, {0x00, 0x00, 0x81, 0xff}}},
     54     {{{   -25,      1,     26}, 0, {     0,    992}, {0x00, 0x00, 0x7f, 0xff}}},
     55     {{{    26,      1,     26}, 0, {   992,    992}, {0x00, 0x00, 0x7f, 0xff}}},
     56     {{{    26,     52,     26}, 0, {   992,      0}, {0x00, 0x00, 0x7f, 0xff}}},
     57     {{{   -25,     52,     26}, 0, {     0,      0}, {0x00, 0x00, 0x7f, 0xff}}},
     58     {{{    26,     52,    -25}, 0, {   992,      0}, {0x7f, 0x00, 0x00, 0xff}}},
     59     {{{    26,      1,     26}, 0, {     0,    992}, {0x7f, 0x00, 0x00, 0xff}}},
     60     {{{    26,      1,    -25}, 0, {   992,    992}, {0x7f, 0x00, 0x00, 0xff}}},
     61     {{{    26,     52,     26}, 0, {     0,      0}, {0x7f, 0x00, 0x00, 0xff}}},
     62     {{{   -25,      1,    -25}, 0, {     0,    992}, {0x81, 0x00, 0x00, 0xff}}},
     63     {{{   -25,      1,     26}, 0, {   992,    992}, {0x81, 0x00, 0x00, 0xff}}},
     64     {{{   -25,     52,     26}, 0, {   992,      0}, {0x81, 0x00, 0x00, 0xff}}},
     65     {{{   -25,     52,    -25}, 0, {     0,      0}, {0x81, 0x00, 0x00, 0xff}}},
     66     {{{    26,      1,    -25}, 0, {     0,    992}, {0x00, 0x00, 0x81, 0xff}}},
     67 };
     68 
     69 // 0x08018F28
     70 static const Vtx exclamation_box_seg8_vertex_08018F28[] = {
     71     {{{    26,      1,    -25}, 0, {   992,   2014}, {0x00, 0x81, 0x00, 0xff}}},
     72     {{{    26,      1,     26}, 0, {   992,      0}, {0x00, 0x81, 0x00, 0xff}}},
     73     {{{   -25,      1,     26}, 0, {     0,      0}, {0x00, 0x81, 0x00, 0xff}}},
     74     {{{   -25,      1,    -25}, 0, {     0,   2014}, {0x00, 0x81, 0x00, 0xff}}},
     75     {{{   -25,     52,    -25}, 0, {     0,      0}, {0x00, 0x7f, 0x00, 0xff}}},
     76     {{{   -25,     52,     26}, 0, {     0,   2014}, {0x00, 0x7f, 0x00, 0xff}}},
     77     {{{    26,     52,     26}, 0, {   992,   2014}, {0x00, 0x7f, 0x00, 0xff}}},
     78     {{{    26,     52,    -25}, 0, {   992,      0}, {0x00, 0x7f, 0x00, 0xff}}},
     79 };
     80 
     81 // 0x08018FA8 - 0x08019008
     82 const Gfx exclamation_box_seg8_dl_08018FA8[] = {
     83     gsSPLight(&exclamation_box_seg8_lights_08012E10.l, 1),
     84     gsSPLight(&exclamation_box_seg8_lights_08012E10.a, 2),
     85     gsSPVertex(exclamation_box_seg8_vertex_08018E28, 16, 0),
     86     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
     87     gsSP2Triangles( 3,  5,  6, 0x0,  7,  8,  9, 0x0),
     88     gsSP2Triangles( 7, 10,  8, 0x0, 11, 12, 13, 0x0),
     89     gsSP2Triangles(11, 13, 14, 0x0,  0,  2, 15, 0x0),
     90     gsSPEndDisplayList(),
     91 };
     92 
     93 // 0x08019008 - 0x08019058
     94 const Gfx exclamation_box_seg8_dl_08019008[] = {
     95     gsSPVertex(exclamation_box_seg8_vertex_08018F28, 8, 0),
     96     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
     97     gsSP2Triangles( 4,  5,  6, 0x0,  4,  6,  7, 0x0),
     98     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
     99     gsDPPipeSync(),
    100     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    101     gsSPSetGeometryMode(G_SHADING_SMOOTH),
    102     gsSPEndDisplayList(),
    103 };
    104 
    105 // 0x08019058 - 0x080190A0
    106 const Gfx exclamation_box_seg8_dl_08019058[] = {
    107     gsDPPipeSync(),
    108     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
    109     gsSPClearGeometryMode(G_SHADING_SMOOTH),
    110     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
    111     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    112     gsDPTileSync(),
    113     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
    114     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    115     gsSPEndDisplayList(),
    116 };
    117 
    118 // 0x080190A0
    119 static const Vtx exclamation_box_seg8_vertex_080190A0[] = {
    120     {{{   -25,      1,     26}, 0, {   992,    992}, {0x81, 0x00, 0x00, 0xff}}},
    121     {{{   -25,     52,     26}, 0, {   992,      0}, {0x81, 0x00, 0x00, 0xff}}},
    122     {{{   -25,     52,    -25}, 0, {     0,      0}, {0x81, 0x00, 0x00, 0xff}}},
    123     {{{    26,      1,     26}, 0, {   992,    992}, {0x00, 0x00, 0x7f, 0xff}}},
    124     {{{    26,     52,     26}, 0, {   992,      0}, {0x00, 0x00, 0x7f, 0xff}}},
    125     {{{   -25,     52,     26}, 0, {     0,      0}, {0x00, 0x00, 0x7f, 0xff}}},
    126     {{{   -25,      1,     26}, 0, {     0,    992}, {0x00, 0x00, 0x7f, 0xff}}},
    127     {{{    26,      1,    -25}, 0, {   992,    992}, {0x7f, 0x00, 0x00, 0xff}}},
    128     {{{    26,     52,    -25}, 0, {   992,      0}, {0x7f, 0x00, 0x00, 0xff}}},
    129     {{{    26,     52,     26}, 0, {     0,      0}, {0x7f, 0x00, 0x00, 0xff}}},
    130     {{{    26,      1,     26}, 0, {     0,    992}, {0x7f, 0x00, 0x00, 0xff}}},
    131     {{{   -25,      1,    -25}, 0, {   992,    992}, {0x00, 0x00, 0x81, 0xff}}},
    132     {{{    26,     52,    -25}, 0, {     0,      0}, {0x00, 0x00, 0x81, 0xff}}},
    133     {{{    26,      1,    -25}, 0, {     0,    992}, {0x00, 0x00, 0x81, 0xff}}},
    134     {{{   -25,     52,    -25}, 0, {   992,      0}, {0x00, 0x00, 0x81, 0xff}}},
    135     {{{   -25,      1,    -25}, 0, {     0,    992}, {0x81, 0x00, 0x00, 0xff}}},
    136 };
    137 
    138 // 0x080191A0
    139 static const Vtx exclamation_box_seg8_vertex_080191A0[] = {
    140     {{{   -25,     52,     26}, 0, {     0,    992}, {0x00, 0x7f, 0x00, 0xff}}},
    141     {{{    26,     52,     26}, 0, {  2014,    992}, {0x00, 0x7f, 0x00, 0xff}}},
    142     {{{    26,     52,    -25}, 0, {  2014,      0}, {0x00, 0x7f, 0x00, 0xff}}},
    143     {{{   -25,     52,    -25}, 0, {     0,      0}, {0x00, 0x7f, 0x00, 0xff}}},
    144     {{{   -25,      1,     26}, 0, {     0,      0}, {0x00, 0x81, 0x00, 0xff}}},
    145     {{{   -25,      1,    -25}, 0, {     0,    992}, {0x00, 0x81, 0x00, 0xff}}},
    146     {{{    26,      1,    -25}, 0, {  2014,    992}, {0x00, 0x81, 0x00, 0xff}}},
    147     {{{    26,      1,     26}, 0, {  2014,      0}, {0x00, 0x81, 0x00, 0xff}}},
    148 };
    149 
    150 // 0x08019220 - 0x08019280
    151 const Gfx exclamation_box_seg8_dl_08019220[] = {
    152     gsSPLight(&exclamation_box_seg8_lights_08012E10.l, 1),
    153     gsSPLight(&exclamation_box_seg8_lights_08012E10.a, 2),
    154     gsSPVertex(exclamation_box_seg8_vertex_080190A0, 16, 0),
    155     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    156     gsSP2Triangles( 3,  5,  6, 0x0,  7,  8,  9, 0x0),
    157     gsSP2Triangles( 7,  9, 10, 0x0, 11, 12, 13, 0x0),
    158     gsSP2Triangles(11, 14, 12, 0x0,  0,  2, 15, 0x0),
    159     gsSPEndDisplayList(),
    160 };
    161 
    162 // 0x08019280 - 0x080192D0
    163 const Gfx exclamation_box_seg8_dl_08019280[] = {
    164     gsSPVertex(exclamation_box_seg8_vertex_080191A0, 8, 0),
    165     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    166     gsSP2Triangles( 4,  5,  6, 0x0,  4,  6,  7, 0x0),
    167     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    168     gsDPPipeSync(),
    169     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    170     gsSPSetGeometryMode(G_SHADING_SMOOTH),
    171     gsSPEndDisplayList(),
    172 };
    173 
    174 // 0x080192D0 - 0x08019318
    175 const Gfx exclamation_box_seg8_dl_080192D0[] = {
    176     gsDPPipeSync(),
    177     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
    178     gsSPClearGeometryMode(G_SHADING_SMOOTH),
    179     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
    180     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    181     gsDPTileSync(),
    182     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
    183     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    184     gsSPEndDisplayList(),
    185 };
    186 
    187 // 0x08019318 - 0x08019378
    188 const Gfx exclamation_box_seg8_dl_08019318[] = {
    189     gsSPDisplayList(exclamation_box_seg8_dl_08019058),
    190     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08015E28),
    191     gsDPLoadSync(),
    192     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    193     gsSPDisplayList(exclamation_box_seg8_dl_08018FA8),
    194     gsDPTileSync(),
    195     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 6, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
    196     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (64 - 1) << G_TEXTURE_IMAGE_FRAC),
    197     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08016628),
    198     gsDPLoadSync(),
    199     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 64 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    200     gsSPBranchList(exclamation_box_seg8_dl_08019008),
    201 };
    202 
    203 // 0x08019378 - 0x080193D8
    204 const Gfx exclamation_box_seg8_dl_08019378[] = {
    205     gsSPDisplayList(exclamation_box_seg8_dl_080192D0),
    206     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08014628),
    207     gsDPLoadSync(),
    208     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    209     gsSPDisplayList(exclamation_box_seg8_dl_08019220),
    210     gsDPTileSync(),
    211     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 6, G_TX_NOLOD),
    212     gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    213     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08014E28),
    214     gsDPLoadSync(),
    215     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 64 * 32 - 1, CALC_DXT(64, G_IM_SIZ_16b_BYTES)),
    216     gsSPBranchList(exclamation_box_seg8_dl_08019280),
    217 };
    218 
    219 // 0x080193D8 - 0x08019438
    220 const Gfx exclamation_box_seg8_dl_080193D8[] = {
    221     gsSPDisplayList(exclamation_box_seg8_dl_08019058),
    222     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08012E28),
    223     gsDPLoadSync(),
    224     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    225     gsSPDisplayList(exclamation_box_seg8_dl_08018FA8),
    226     gsDPTileSync(),
    227     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 6, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
    228     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (64 - 1) << G_TEXTURE_IMAGE_FRAC),
    229     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08013628),
    230     gsDPLoadSync(),
    231     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 64 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    232     gsSPBranchList(exclamation_box_seg8_dl_08019008),
    233 };
    234 
    235 // 0x08019438 - 0x08019498
    236 const Gfx exclamation_box_seg8_dl_08019438[] = {
    237     gsSPDisplayList(exclamation_box_seg8_dl_080192D0),
    238     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08017628),
    239     gsDPLoadSync(),
    240     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    241     gsSPDisplayList(exclamation_box_seg8_dl_08019220),
    242     gsDPTileSync(),
    243     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 6, G_TX_NOLOD),
    244     gsDPSetTileSize(0, 0, 0, (64 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    245     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, exclamation_box_seg8_texture_08017E28),
    246     gsDPLoadSync(),
    247     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 64 * 32 - 1, CALC_DXT(64, G_IM_SIZ_16b_BYTES)),
    248     gsSPBranchList(exclamation_box_seg8_dl_08019280),
    249 };