sm64

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

model.inc.c (13591B)


      1 // 0x07006898 - 0x07006988
      2 static const Vtx wf_seg7_vertex_07006898[] = {
      3     {{{ -2508,   1024,   4096}, 0, {  1500,    480}, {0xff, 0xff, 0xff, 0xff}}},
      4     {{{ -2508,   1152,   4096}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
      5     {{{ -1023,   1152,   4096}, 0, { -5140,   6098}, {0xff, 0xff, 0xff, 0xff}}},
      6     {{{ -1023,   1024,   4096}, 0, { -4630,   6610}, {0xff, 0xff, 0xff, 0xff}}},
      7     {{{ -1535,   2560,   1536}, 0, { -5304,  -4284}, {0xff, 0xff, 0xff, 0xff}}},
      8     {{{ -2047,   2662,    512}, 0, {   918,    918}, {0xff, 0xff, 0xff, 0xff}}},
      9     {{{ -1535,   2662,   1536}, 0, { -4792,  -4794}, {0xff, 0xff, 0xff, 0xff}}},
     10     {{{ -2047,   2560,    512}, 0, {   408,   1428}, {0xff, 0xff, 0xff, 0xff}}},
     11     {{{  -273,   2560,  -2833}, 0, {   480,   1500}, {0xff, 0xff, 0xff, 0xff}}},
     12     {{{  1536,   2560,  -1023}, 0, { 13254, -11274}, {0xff, 0xff, 0xff, 0xff}}},
     13     {{{  1536,   2662,  -1023}, 0, { 12744, -11786}, {0xff, 0xff, 0xff, 0xff}}},
     14     {{{  -273,   2662,  -2833}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     15     {{{  3120,   4096,    330}, 0, {  2524,    994}, {0xff, 0xff, 0xff, 0xff}}},
     16     {{{  2881,   4352,    468}, 0, {  1502,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     17     {{{  2881,   4096,    468}, 0, {  1502,    994}, {0xff, 0xff, 0xff, 0xff}}},
     18 };
     19 
     20 // 0x07006988 - 0x07006A68
     21 static const Vtx wf_seg7_vertex_07006988[] = {
     22     {{{  3226,   2432,      0}, 0, {  -132,   1090}, {0xff, 0xff, 0xff, 0xff}}},
     23     {{{  2560,   2304,      0}, 0, {  3034,  -1054}, {0xff, 0xff, 0xff, 0xff}}},
     24     {{{  3226,   2304,      0}, 0, {   376,   1602}, {0xff, 0xff, 0xff, 0xff}}},
     25     {{{  2560,   2432,      0}, 0, {  2524,  -1566}, {0xff, 0xff, 0xff, 0xff}}},
     26     {{{  2048,   2688,      0}, 0, {  3546,  -4632}, {0xff, 0xff, 0xff, 0xff}}},
     27     {{{  2048,   2560,      0}, 0, {  4056,  -4120}, {0xff, 0xff, 0xff, 0xff}}},
     28     {{{  2048,   2560,   1024}, 0, { -3096,   5076}, {0xff, 0xff, 0xff, 0xff}}},
     29     {{{  2048,   2560,      0}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     30     {{{  2048,   2688,      0}, 0, {   478,    478}, {0xff, 0xff, 0xff, 0xff}}},
     31     {{{  2048,   2688,   1024}, 0, { -3606,   4566}, {0xff, 0xff, 0xff, 0xff}}},
     32     {{{  2881,   4096,    468}, 0, {  1502,    994}, {0xff, 0xff, 0xff, 0xff}}},
     33     {{{  2641,   4352,    330}, 0, {   480,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     34     {{{  2641,   4096,    330}, 0, {   480,    994}, {0xff, 0xff, 0xff, 0xff}}},
     35     {{{  2881,   4352,    468}, 0, {  1502,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     36 };
     37 
     38 // 0x07006A68 - 0x07006B58
     39 static const Vtx wf_seg7_vertex_07006A68[] = {
     40     {{{ -2047,   2662,  -2409}, 0, {   478,    480}, {0xff, 0xff, 0xff, 0xff}}},
     41     {{{ -2047,   2560,  -1023}, 0, { -5966,   7946}, {0xff, 0xff, 0xff, 0xff}}},
     42     {{{ -2047,   2560,  -2409}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     43     {{{  2641,   4096,    330}, 0, {  6612,    994}, {0xff, 0xff, 0xff, 0xff}}},
     44     {{{  2641,   4352,    330}, 0, {  6612,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     45     {{{  2641,   4352,     54}, 0, {  5590,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     46     {{{  2641,   4096,     54}, 0, {  5590,    994}, {0xff, 0xff, 0xff, 0xff}}},
     47     {{{  2881,   4352,    -83}, 0, {  4568,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     48     {{{  2881,   4096,    -83}, 0, {  4568,    994}, {0xff, 0xff, 0xff, 0xff}}},
     49     {{{  3120,   4352,     54}, 0, {  3546,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     50     {{{  3120,   4096,     54}, 0, {  3546,    994}, {0xff, 0xff, 0xff, 0xff}}},
     51     {{{  3120,   4352,    330}, 0, {  2524,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     52     {{{  3120,   4096,    330}, 0, {  2524,    994}, {0xff, 0xff, 0xff, 0xff}}},
     53     {{{  2881,   4352,    468}, 0, {  1502,    -66}, {0xff, 0xff, 0xff, 0xff}}},
     54     {{{ -2047,   2662,  -1023}, 0, { -6476,   7434}, {0xff, 0xff, 0xff, 0xff}}},
     55 };
     56 
     57 // 0x07006B58 - 0x07006C48
     58 static const Vtx wf_seg7_vertex_07006B58[] = {
     59     {{{ -3276,    384,  -1535}, 0, {  5078,  -3098}, {0xff, 0xff, 0xff, 0xff}}},
     60     {{{ -2047,    512,  -1535}, 0, {  -336,   1294}, {0xff, 0xff, 0xff, 0xff}}},
     61     {{{ -3276,    512,  -1535}, 0, {  4566,  -3608}, {0xff, 0xff, 0xff, 0xff}}},
     62     {{{ -2047,   2560,  -2409}, 0, {   478,   1500}, {0xff, 0xff, 0xff, 0xff}}},
     63     {{{  -273,   2662,  -2833}, 0, {  8344,  -7386}, {0xff, 0xff, 0xff, 0xff}}},
     64     {{{ -2047,   2662,  -2409}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     65     {{{  -273,   2560,  -2833}, 0, {  8854,  -6874}, {0xff, 0xff, 0xff, 0xff}}},
     66     {{{  4096,   1075,  -4095}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     67     {{{  4096,   1203,  -4095}, 0, {   478,    478}, {0xff, 0xff, 0xff, 0xff}}},
     68     {{{  2458,   1203,  -4095}, 0, { -6060,   7018}, {0xff, 0xff, 0xff, 0xff}}},
     69     {{{  2458,   1075,  -4095}, 0, { -5548,   7528}, {0xff, 0xff, 0xff, 0xff}}},
     70     {{{ -2047,   2560,    512}, 0, { -6736,   8716}, {0xff, 0xff, 0xff, 0xff}}},
     71     {{{ -2047,   2560,  -1023}, 0, {   926,   1052}, {0xff, 0xff, 0xff, 0xff}}},
     72     {{{ -2047,   2662,  -1023}, 0, {   416,    542}, {0xff, 0xff, 0xff, 0xff}}},
     73     {{{ -2047,   2662,    512}, 0, { -7248,   8206}, {0xff, 0xff, 0xff, 0xff}}},
     74 };
     75 
     76 // 0x07006C48 - 0x07006D38
     77 static const Vtx wf_seg7_vertex_07006C48[] = {
     78     {{{  4096,   1075,  -4095}, 0, {   478,   1498}, {0xff, 0xff, 0xff, 0xff}}},
     79     {{{  4096,   1203,  -3071}, 0, {  4056,  -3098}, {0xff, 0xff, 0xff, 0xff}}},
     80     {{{  4096,   1203,  -4095}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     81     {{{ -3276,    384,  -1535}, 0, {  5078,  -3098}, {0xff, 0xff, 0xff, 0xff}}},
     82     {{{ -2047,    384,  -1535}, 0, {   172,   1806}, {0xff, 0xff, 0xff, 0xff}}},
     83     {{{ -2047,    512,  -1535}, 0, {  -336,   1294}, {0xff, 0xff, 0xff, 0xff}}},
     84     {{{ -3276,    384,    640}, 0, {   480,   1498}, {0xff, 0xff, 0xff, 0xff}}},
     85     {{{ -3276,    512,  -1535}, 0, {  7122,  -6164}, {0xff, 0xff, 0xff, 0xff}}},
     86     {{{ -3276,    512,    640}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     87     {{{ -3276,    384,  -1535}, 0, {  7634,  -5654}, {0xff, 0xff, 0xff, 0xff}}},
     88     {{{ -3276,    384,    640}, 0, {  3544,  -1564}, {0xff, 0xff, 0xff, 0xff}}},
     89     {{{ -2508,    512,    640}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     90     {{{ -2508,    384,    640}, 0, {   478,   1500}, {0xff, 0xff, 0xff, 0xff}}},
     91     {{{ -3276,    512,    640}, 0, {  3034,  -2076}, {0xff, 0xff, 0xff, 0xff}}},
     92     {{{  4096,   1075,  -3071}, 0, {  4566,  -2588}, {0xff, 0xff, 0xff, 0xff}}},
     93 };
     94 
     95 // 0x07006D38 - 0x07006D98
     96 static const Vtx wf_seg7_vertex_07006D38[] = {
     97     {{{ -2508,    384,    640}, 0, { 17342, -10252}, {0xff, 0xff, 0xff, 0xff}}},
     98     {{{ -2508,   1152,   3072}, 0, {  4786,  -2368}, {0xff, 0xff, 0xff, 0xff}}},
     99     {{{ -2508,   1024,   3072}, 0, {  5298,  -1856}, {0xff, 0xff, 0xff, 0xff}}},
    100     {{{ -2508,    512,    640}, 0, { 16832, -10762}, {0xff, 0xff, 0xff, 0xff}}},
    101     {{{ -2508,   1024,   4096}, 0, {   478,   1500}, {0xff, 0xff, 0xff, 0xff}}},
    102     {{{ -2508,   1152,   4096}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
    103 };
    104 
    105 // 0x07006D98 - 0x07006E88
    106 static const Vtx wf_seg7_vertex_07006D98[] = {
    107     {{{  5120,    384,   2816}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
    108     {{{  5120,    384,      0}, 0, {-21492,      0}, {0xff, 0xff, 0xff, 0xff}}},
    109     {{{  5120,    256,      0}, 0, {-21492,    990}, {0xff, 0xff, 0xff, 0xff}}},
    110     {{{  4608,    256,   5632}, 0, {  1662,    990}, {0xff, 0xff, 0xff, 0xff}}},
    111     {{{  5120,    384,   5120}, 0, { -4118,      0}, {0xff, 0xff, 0xff, 0xff}}},
    112     {{{  5120,    256,   5120}, 0, { -4118,    990}, {0xff, 0xff, 0xff, 0xff}}},
    113     {{{  4608,    384,   5632}, 0, {  1662,      0}, {0xff, 0xff, 0xff, 0xff}}},
    114     {{{  4608,    256,   -511}, 0, {   876,    988}, {0xff, 0xff, 0xff, 0xff}}},
    115     {{{  4096,    384,   -511}, 0, { -3210,    -34}, {0xff, 0xff, 0xff, 0xff}}},
    116     {{{  4096,    256,   -511}, 0, { -3210,    988}, {0xff, 0xff, 0xff, 0xff}}},
    117     {{{  4608,    384,   -511}, 0, {   876,    -34}, {0xff, 0xff, 0xff, 0xff}}},
    118     {{{  5120,    256,      0}, 0, {  5612,    986}, {0xff, 0xff, 0xff, 0xff}}},
    119     {{{  4608,    384,   -511}, 0, {  -168,    -36}, {0xff, 0xff, 0xff, 0xff}}},
    120     {{{  4608,    256,   -511}, 0, {  -168,    986}, {0xff, 0xff, 0xff, 0xff}}},
    121     {{{  5120,    384,      0}, 0, {  5612,    -36}, {0xff, 0xff, 0xff, 0xff}}},
    122 };
    123 
    124 // 0x07006E88 - 0x07006F78
    125 static const Vtx wf_seg7_vertex_07006E88[] = {
    126     {{{  2048,    256,   5120}, 0, {  5078,    990}, {0xff, 0xff, 0xff, 0xff}}},
    127     {{{  2048,    384,   5120}, 0, {  5078,      0}, {0xff, 0xff, 0xff, 0xff}}},
    128     {{{  2560,    384,   5632}, 0, {  -702,      0}, {0xff, 0xff, 0xff, 0xff}}},
    129     {{{  5120,    384,   2816}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
    130     {{{  5120,    256,      0}, 0, {-21492,    990}, {0xff, 0xff, 0xff, 0xff}}},
    131     {{{  5120,    256,   2816}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
    132     {{{  5120,    256,   5120}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
    133     {{{  5120,    384,   2816}, 0, {-21492,      0}, {0xff, 0xff, 0xff, 0xff}}},
    134     {{{  5120,    256,   2816}, 0, {-21492,    990}, {0xff, 0xff, 0xff, 0xff}}},
    135     {{{  5120,    384,   5120}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
    136     {{{  2560,    256,   5632}, 0, { 20408,    990}, {0xff, 0xff, 0xff, 0xff}}},
    137     {{{  4608,    384,   5632}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
    138     {{{  4608,    256,   5632}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
    139     {{{  2560,    384,   5632}, 0, { 20408,      0}, {0xff, 0xff, 0xff, 0xff}}},
    140     {{{  2560,    256,   5632}, 0, {  -702,    990}, {0xff, 0xff, 0xff, 0xff}}},
    141 };
    142 
    143 // 0x07006F78 - 0x07006FB8
    144 static const Vtx wf_seg7_vertex_07006F78[] = {
    145     {{{  2048,    256,   4096}, 0, { 12232,    990}, {0xff, 0xff, 0xff, 0xff}}},
    146     {{{  2048,    384,   4096}, 0, { 12232,      0}, {0xff, 0xff, 0xff, 0xff}}},
    147     {{{  2048,    384,   5120}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
    148     {{{  2048,    256,   5120}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
    149 };
    150 
    151 // 0x07006FB8 - 0x07007168
    152 static const Gfx wf_seg7_dl_07006FB8[] = {
    153     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, grass_09000000),
    154     gsDPLoadSync(),
    155     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    156     gsSPVertex(wf_seg7_vertex_07006898, 15, 0),
    157     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    158     gsSP2Triangles( 4,  5,  6, 0x0,  4,  7,  5, 0x0),
    159     gsSP2Triangles( 8,  9, 10, 0x0,  8, 10, 11, 0x0),
    160     gsSP1Triangle(12, 13, 14, 0x0),
    161     gsSPVertex(wf_seg7_vertex_07006988, 14, 0),
    162     gsSP2Triangles( 0,  1,  2, 0x0,  1,  3,  4, 0x0),
    163     gsSP2Triangles( 1,  4,  5, 0x0,  0,  3,  1, 0x0),
    164     gsSP2Triangles( 6,  7,  8, 0x0,  6,  8,  9, 0x0),
    165     gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 11, 0x0),
    166     gsSPVertex(wf_seg7_vertex_07006A68, 15, 0),
    167     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    168     gsSP2Triangles( 3,  5,  6, 0x0,  6,  5,  7, 0x0),
    169     gsSP2Triangles( 6,  7,  8, 0x0,  8,  7,  9, 0x0),
    170     gsSP2Triangles( 8,  9, 10, 0x0, 10,  9, 11, 0x0),
    171     gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
    172     gsSP1Triangle( 0, 14,  1, 0x0),
    173     gsSPVertex(wf_seg7_vertex_07006B58, 15, 0),
    174     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    175     gsSP2Triangles( 3,  6,  4, 0x0,  7,  8,  9, 0x0),
    176     gsSP2Triangles( 7,  9, 10, 0x0, 11, 12, 13, 0x0),
    177     gsSP1Triangle(11, 13, 14, 0x0),
    178     gsSPVertex(wf_seg7_vertex_07006C48, 15, 0),
    179     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    180     gsSP2Triangles( 6,  7,  8, 0x0,  6,  9,  7, 0x0),
    181     gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 11, 0x0),
    182     gsSP1Triangle( 0, 14,  1, 0x0),
    183     gsSPVertex(wf_seg7_vertex_07006D38, 6, 0),
    184     gsSP2Triangles( 0,  1,  2, 0x0,  0,  3,  1, 0x0),
    185     gsSP2Triangles( 1,  4,  2, 0x0,  1,  5,  4, 0x0),
    186     gsSPEndDisplayList(),
    187 };
    188 
    189 // 0x07007168 - 0x07007220
    190 static const Gfx wf_seg7_dl_07007168[] = {
    191     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, grass_0900A000),
    192     gsDPLoadSync(),
    193     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    194     gsSPVertex(wf_seg7_vertex_07006D98, 15, 0),
    195     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    196     gsSP2Triangles( 3,  6,  4, 0x0,  7,  8,  9, 0x0),
    197     gsSP2Triangles( 7, 10,  8, 0x0, 11, 12, 13, 0x0),
    198     gsSP1Triangle(11, 14, 12, 0x0),
    199     gsSPVertex(wf_seg7_vertex_07006E88, 15, 0),
    200     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    201     gsSP2Triangles( 6,  7,  8, 0x0,  6,  9,  7, 0x0),
    202     gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 11, 0x0),
    203     gsSP1Triangle( 0,  2, 14, 0x0),
    204     gsSPVertex(wf_seg7_vertex_07006F78, 4, 0),
    205     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    206     gsSPEndDisplayList(),
    207 };
    208 
    209 // 0x07007220 - 0x07007298
    210 const Gfx wf_seg7_dl_07007220[] = {
    211     gsDPPipeSync(),
    212     gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
    213     gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
    214     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),
    215     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    216     gsDPTileSync(),
    217     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),
    218     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    219     gsSPDisplayList(wf_seg7_dl_07006FB8),
    220     gsSPDisplayList(wf_seg7_dl_07007168),
    221     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    222     gsDPPipeSync(),
    223     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    224     gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK),
    225     gsSPEndDisplayList(),
    226 };