sm64

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

model.inc.c (11849B)


      1 // 0x07000800 - 0x07000900
      2 static const Vtx bowser_2_seg7_vertex_07000800[] = {
      3     {{{  1176,    784,  -2837}, 0, {  6612,    678}, {0xff, 0xff, 0xff, 0xff}}},
      4     {{{  2838,   1229,  -1175}, 0, {  7634,    990}, {0xff, 0xff, 0xff, 0xff}}},
      5     {{{  2838,    784,  -1175}, 0, {  7634,    678}, {0xff, 0xff, 0xff, 0xff}}},
      6     {{{  1176,    784,   2838}, 0, {  1502,    678}, {0xff, 0xff, 0xff, 0xff}}},
      7     {{{  1176,   1229,   2838}, 0, {  1502,    990}, {0xff, 0xff, 0xff, 0xff}}},
      8     {{{ -1175,   1229,   2838}, 0, {  2524,    990}, {0xff, 0xff, 0xff, 0xff}}},
      9     {{{  2838,    784,   1176}, 0, {   480,    678}, {0xff, 0xff, 0xff, 0xff}}},
     10     {{{ -1175,    784,   2838}, 0, {  2524,    678}, {0xff, 0xff, 0xff, 0xff}}},
     11     {{{  2838,   1229,   1176}, 0, {   480,    990}, {0xff, 0xff, 0xff, 0xff}}},
     12     {{{ -2837,   1229,   1176}, 0, {  3546,    990}, {0xff, 0xff, 0xff, 0xff}}},
     13     {{{ -2837,    784,   1176}, 0, {  3546,    678}, {0xff, 0xff, 0xff, 0xff}}},
     14     {{{  2838,   1229,   1176}, 0, {  8656,    990}, {0xff, 0xff, 0xff, 0xff}}},
     15     {{{  2838,    784,   1176}, 0, {  8656,    678}, {0xff, 0xff, 0xff, 0xff}}},
     16     {{{     0,   -306,      0}, 0, {  1502,    552}, {0xff, 0xff, 0xff, 0xff}}},
     17     {{{ -1175,    784,   2838}, 0, {  1246,    812}, {0xff, 0xff, 0xff, 0xff}}},
     18     {{{ -2837,    784,   1176}, 0, {  1756,    812}, {0xff, 0xff, 0xff, 0xff}}},
     19 };
     20 
     21 // 0x07000900 - 0x07000A00
     22 static const Vtx bowser_2_seg7_vertex_07000900[] = {
     23     {{{  1176,    784,  -2837}, 0, {  6612,    678}, {0xff, 0xff, 0xff, 0xff}}},
     24     {{{  1176,   1229,  -2837}, 0, {  6612,    990}, {0xff, 0xff, 0xff, 0xff}}},
     25     {{{  2838,   1229,  -1175}, 0, {  7634,    990}, {0xff, 0xff, 0xff, 0xff}}},
     26     {{{ -1175,    784,  -2837}, 0, {  5590,    678}, {0xff, 0xff, 0xff, 0xff}}},
     27     {{{ -1175,   1229,  -2837}, 0, {  5590,    990}, {0xff, 0xff, 0xff, 0xff}}},
     28     {{{ -2837,    784,  -1175}, 0, {  4568,    678}, {0xff, 0xff, 0xff, 0xff}}},
     29     {{{ -2837,   1229,  -1175}, 0, {  4568,    990}, {0xff, 0xff, 0xff, 0xff}}},
     30     {{{ -2837,    784,   1176}, 0, {  3546,    678}, {0xff, 0xff, 0xff, 0xff}}},
     31     {{{ -2837,   1229,   1176}, 0, {  3546,    990}, {0xff, 0xff, 0xff, 0xff}}},
     32     {{{ -2837,    784,   1176}, 0, {  1756,    812}, {0xff, 0xff, 0xff, 0xff}}},
     33     {{{ -2837,    784,  -1175}, 0, {  2268,    812}, {0xff, 0xff, 0xff, 0xff}}},
     34     {{{     0,   -306,      0}, 0, {  2012,    552}, {0xff, 0xff, 0xff, 0xff}}},
     35     {{{ -1175,    784,  -2837}, 0, {  2778,    812}, {0xff, 0xff, 0xff, 0xff}}},
     36     {{{     0,   -306,      0}, 0, {  2524,    552}, {0xff, 0xff, 0xff, 0xff}}},
     37     {{{  1176,    784,  -2837}, 0, {  3290,    812}, {0xff, 0xff, 0xff, 0xff}}},
     38     {{{     0,   -306,      0}, 0, {  3034,    552}, {0xff, 0xff, 0xff, 0xff}}},
     39 };
     40 
     41 // 0x07000A00 - 0x07000AA0
     42 static const Vtx bowser_2_seg7_vertex_07000A00[] = {
     43     {{{  1176,    784,  -2837}, 0, {  3290,    812}, {0xff, 0xff, 0xff, 0xff}}},
     44     {{{  2838,    784,  -1175}, 0, {  3800,    812}, {0xff, 0xff, 0xff, 0xff}}},
     45     {{{     0,   -306,      0}, 0, {  3546,    552}, {0xff, 0xff, 0xff, 0xff}}},
     46     {{{  2838,    784,   1176}, 0, {  4312,    812}, {0xff, 0xff, 0xff, 0xff}}},
     47     {{{     0,   -306,      0}, 0, {  4056,    552}, {0xff, 0xff, 0xff, 0xff}}},
     48     {{{  2838,    784,   1176}, 0, {   224,    812}, {0xff, 0xff, 0xff, 0xff}}},
     49     {{{  1176,    784,   2838}, 0, {   734,    812}, {0xff, 0xff, 0xff, 0xff}}},
     50     {{{     0,   -306,      0}, 0, {   480,    552}, {0xff, 0xff, 0xff, 0xff}}},
     51     {{{ -1175,    784,   2838}, 0, {  1246,    812}, {0xff, 0xff, 0xff, 0xff}}},
     52     {{{     0,   -306,      0}, 0, {   990,    552}, {0xff, 0xff, 0xff, 0xff}}},
     53 };
     54 
     55 // 0x07000AA0 - 0x07000BA0
     56 static const Vtx bowser_2_seg7_vertex_07000AA0[] = {
     57     {{{  2838,   1229,  -1175}, 0, {  5298,  -4574}, {0xad, 0x10, 0x16, 0xff}}},
     58     {{{  1703,   1229,    705}, 0, {  3210,  -1892}, {0xad, 0x10, 0x16, 0xff}}},
     59     {{{  2838,   1229,   1176}, 0, {  4460,  -1222}, {0xad, 0x10, 0x16, 0xff}}},
     60     {{{ -2837,   1229,  -1175}, 0, { -1782,  -4574}, {0xad, 0x10, 0x16, 0xff}}},
     61     {{{  -704,   1229,  -1702}, 0, {  1064,  -5326}, {0xad, 0x10, 0x16, 0xff}}},
     62     {{{ -1175,   1229,  -2837}, 0, {   882,  -6944}, {0xad, 0x10, 0x16, 0xff}}},
     63     {{{ -2837,   1229,   1176}, 0, { -2620,  -1222}, {0xad, 0x10, 0x16, 0xff}}},
     64     {{{ -1702,   1229,   -704}, 0, {  -534,  -3904}, {0xad, 0x10, 0x16, 0xff}}},
     65     {{{ -1702,   1229,    705}, 0, { -1036,  -1892}, {0xad, 0x10, 0x16, 0xff}}},
     66     {{{   705,   1229,  -1702}, 0, {  2824,  -5326}, {0xad, 0x10, 0x16, 0xff}}},
     67     {{{  1176,   1229,  -2837}, 0, {  3816,  -6944}, {0xad, 0x10, 0x16, 0xff}}},
     68     {{{ -1175,   1229,   2838}, 0, { -1138,   1146}, {0xad, 0x10, 0x16, 0xff}}},
     69     {{{  -704,   1229,   1703}, 0, {  -148,   -470}, {0xad, 0x10, 0x16, 0xff}}},
     70     {{{  1176,   1229,   2838}, 0, {  1792,   1146}, {0xad, 0x10, 0x16, 0xff}}},
     71     {{{   705,   1229,   1703}, 0, {  1610,   -470}, {0xad, 0x10, 0x16, 0xff}}},
     72     {{{  1703,   1229,   -704}, 0, {  3714,  -3904}, {0xad, 0x10, 0x16, 0xff}}},
     73 };
     74 
     75 // 0x07000BA0 - 0x07000C30
     76 static const Vtx bowser_2_seg7_vertex_07000BA0[] = {
     77     {{{ -1418,   1229,    588}, 0, {  3034,  -2076}, {0xfd, 0x42, 0x34, 0xff}}},
     78     {{{  -587,   1229,   1419}, 0, {  5202,  -1178}, {0xfd, 0x42, 0x34, 0xff}}},
     79     {{{     0,   1229,      0}, 0, {  3034,    990}, {0xfd, 0x42, 0x34, 0xff}}},
     80     {{{   588,   1229,   1419}, 0, {  6100,    990}, {0xfd, 0x42, 0x34, 0xff}}},
     81     {{{  1419,   1229,    588}, 0, {  5202,   3156}, {0xfd, 0x42, 0x34, 0xff}}},
     82     {{{ -1418,   1229,   -587}, 0, {   866,  -1178}, {0xfd, 0x42, 0x34, 0xff}}},
     83     {{{  1419,   1229,   -587}, 0, {  3034,   4054}, {0xfd, 0x42, 0x34, 0xff}}},
     84     {{{   588,   1229,  -1418}, 0, {   866,   3156}, {0xfd, 0x42, 0x34, 0xff}}},
     85     {{{  -587,   1229,  -1418}, 0, {     0,    990}, {0xfd, 0x42, 0x34, 0xff}}},
     86 };
     87 
     88 // 0x07000C30 - 0x07000D30
     89 static const Vtx bowser_2_seg7_vertex_07000C30[] = {
     90     {{{  -704,   1229,   1703}, 0, {     0,    850}, {0xfd, 0x42, 0x34, 0xff}}},
     91     {{{   705,   1229,   1703}, 0, {  4568,  -1054}, {0xfd, 0x42, 0x34, 0xff}}},
     92     {{{   588,   1229,   1419}, 0, {  3800,  -1820}, {0xfd, 0x42, 0x34, 0xff}}},
     93     {{{ -1702,   1229,    705}, 0, { -4630,  -1054}, {0xfd, 0x42, 0x34, 0xff}}},
     94     {{{ -1418,   1229,   -587}, 0, { -5450,  -5654}, {0xfd, 0x42, 0x34, 0xff}}},
     95     {{{ -1702,   1229,   -704}, 0, { -6534,  -5654}, {0xfd, 0x42, 0x34, 0xff}}},
     96     {{{  -587,   1229,  -1418}, 0, { -3862,  -9486}, {0xfd, 0x42, 0x34, 0xff}}},
     97     {{{  -704,   1229,  -1702}, 0, { -4628, -10252}, {0xfd, 0x42, 0x34, 0xff}}},
     98     {{{ -1418,   1229,    588}, 0, { -3862,  -1820}, {0xfd, 0x42, 0x34, 0xff}}},
     99     {{{   588,   1229,  -1418}, 0, {     0, -11072}, {0xfd, 0x42, 0x34, 0xff}}},
    100     {{{   705,   1229,  -1702}, 0, {     0, -12156}, {0xfd, 0x42, 0x34, 0xff}}},
    101     {{{  -587,   1229,   1419}, 0, {     0,   -234}, {0xfd, 0x42, 0x34, 0xff}}},
    102     {{{  1703,   1229,    705}, 0, {  6472,  -5652}, {0xfd, 0x42, 0x34, 0xff}}},
    103     {{{  1419,   1229,    588}, 0, {  5388,  -5652}, {0xfd, 0x42, 0x34, 0xff}}},
    104     {{{  1703,   1229,   -704}, 0, {  4568, -10252}, {0xfd, 0x42, 0x34, 0xff}}},
    105     {{{  1419,   1229,   -587}, 0, {  3800,  -9486}, {0xfd, 0x42, 0x34, 0xff}}},
    106 };
    107 
    108 // 0x07000D30 - 0x07000E28
    109 const Gfx bowser_2_seg7_dl_07000D30[] = {
    110     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, fire_09009800),
    111     gsDPLoadSync(),
    112     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    113     gsSPVertex(bowser_2_seg7_vertex_07000800, 16, 0),
    114     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    115     gsSP2Triangles( 6,  4,  3, 0x0,  3,  5,  7, 0x0),
    116     gsSP2Triangles( 6,  8,  4, 0x0,  7,  5,  9, 0x0),
    117     gsSP2Triangles( 7,  9, 10, 0x0,  2, 11, 12, 0x0),
    118     gsSP2Triangles( 2,  1, 11, 0x0, 13, 14, 15, 0x0),
    119     gsSPVertex(bowser_2_seg7_vertex_07000900, 16, 0),
    120     gsSP2Triangles( 0,  1,  2, 0x0,  3,  1,  0, 0x0),
    121     gsSP2Triangles( 3,  4,  1, 0x0,  5,  4,  3, 0x0),
    122     gsSP2Triangles( 5,  6,  4, 0x0,  7,  6,  5, 0x0),
    123     gsSP2Triangles( 7,  8,  6, 0x0,  9, 10, 11, 0x0),
    124     gsSP2Triangles(10, 12, 13, 0x0, 12, 14, 15, 0x0),
    125     gsSPVertex(bowser_2_seg7_vertex_07000A00, 10, 0),
    126     gsSP2Triangles( 0,  1,  2, 0x0,  1,  3,  4, 0x0),
    127     gsSP2Triangles( 5,  6,  7, 0x0,  6,  8,  9, 0x0),
    128     gsSPEndDisplayList(),
    129 };
    130 
    131 // 0x07000E28 - 0x07000ED0
    132 static const Gfx bowser_2_seg7_dl_07000E28[] = {
    133     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, fire_09003000),
    134     gsDPLoadSync(),
    135     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    136     gsSPVertex(bowser_2_seg7_vertex_07000AA0, 16, 0),
    137     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    138     gsSP2Triangles( 6,  7,  3, 0x0,  3,  7,  4, 0x0),
    139     gsSP2Triangles( 6,  8,  7, 0x0,  5,  4,  9, 0x0),
    140     gsSP2Triangles( 5,  9, 10, 0x0, 11,  8,  6, 0x0),
    141     gsSP2Triangles(11, 12,  8, 0x0, 11, 13, 14, 0x0),
    142     gsSP2Triangles(11, 14, 12, 0x0, 10,  9, 15, 0x0),
    143     gsSP2Triangles( 2,  1, 14, 0x0,  0, 15,  1, 0x0),
    144     gsSP2Triangles( 2, 14, 13, 0x0, 10, 15,  0, 0x0),
    145     gsSPEndDisplayList(),
    146 };
    147 
    148 // 0x07000ED0 - 0x07000F38
    149 static const Gfx bowser_2_seg7_dl_07000ED0[] = {
    150     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, fire_09005800),
    151     gsDPLoadSync(),
    152     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    153     gsSPVertex(bowser_2_seg7_vertex_07000BA0, 9, 0),
    154     gsSP2Triangles( 0,  1,  2, 0x0,  1,  3,  2, 0x0),
    155     gsSP2Triangles( 3,  4,  2, 0x0,  5,  0,  2, 0x0),
    156     gsSP2Triangles( 6,  7,  2, 0x0,  4,  6,  2, 0x0),
    157     gsSP2Triangles( 8,  5,  2, 0x0,  7,  8,  2, 0x0),
    158     gsSPEndDisplayList(),
    159 };
    160 
    161 // 0x07000F38 - 0x07000FE0
    162 static const Gfx bowser_2_seg7_dl_07000F38[] = {
    163     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, fire_09005000),
    164     gsDPLoadSync(),
    165     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    166     gsSPVertex(bowser_2_seg7_vertex_07000C30, 16, 0),
    167     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    168     gsSP2Triangles( 5,  4,  6, 0x0,  5,  6,  7, 0x0),
    169     gsSP2Triangles( 3,  8,  4, 0x0,  7,  6,  9, 0x0),
    170     gsSP2Triangles( 7,  9, 10, 0x0,  0,  8,  3, 0x0),
    171     gsSP2Triangles( 0, 11,  8, 0x0, 12, 13,  2, 0x0),
    172     gsSP2Triangles(14, 13, 12, 0x0, 12,  2,  1, 0x0),
    173     gsSP2Triangles( 0,  2, 11, 0x0, 10,  9, 15, 0x0),
    174     gsSP2Triangles(14, 15, 13, 0x0, 10, 15, 14, 0x0),
    175     gsSPEndDisplayList(),
    176 };
    177 
    178 // 0x07000FE0 - 0x070010B0
    179 const Gfx bowser_2_seg7_dl_07000FE0[] = {
    180     gsDPPipeSync(),
    181     gsDPSetCycleType(G_CYC_2CYCLE),
    182     gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_OPA_SURF2),
    183     gsDPSetDepthSource(G_ZS_PIXEL),
    184     gsDPSetFogColor(200, 50, 0, 255),
    185     gsSPFogPosition(960, 1000),
    186     gsSPSetGeometryMode(G_FOG),
    187     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_PASS2),
    188     gsSPClearGeometryMode(G_LIGHTING),
    189     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),
    190     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    191     gsDPTileSync(),
    192     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    193     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    194     gsSPDisplayList(bowser_2_seg7_dl_07000D30),
    195     gsSPDisplayList(bowser_2_seg7_dl_07000E28),
    196     gsSPDisplayList(bowser_2_seg7_dl_07000ED0),
    197     gsSPDisplayList(bowser_2_seg7_dl_07000F38),
    198     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    199     gsDPPipeSync(),
    200     gsDPSetCycleType(G_CYC_1CYCLE),
    201     gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_NOOP2),
    202     gsSPClearGeometryMode(G_FOG),
    203     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    204     gsSPSetGeometryMode(G_LIGHTING),
    205     gsSPEndDisplayList(),
    206 };