sm64

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

model.inc.c (8631B)


      1 // 0x0700F458 - 0x0700F548
      2 static const Vtx hmc_seg7_vertex_0700F458[] = {
      3     {{{   743,    512,   3410}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
      4     {{{   670,    512,   3483}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
      5     {{{   670,    410,   3483}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
      6     {{{   670,    512,   3338}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
      7     {{{   743,    410,   3410}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
      8     {{{   670,    410,   3338}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
      9     {{{   670,    410,   3483}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     10     {{{   598,    410,   3410}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     11     {{{   598,    410,   3410}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     12     {{{   670,    512,   3483}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     13     {{{   598,    512,   3410}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     14     {{{   670,    410,   3483}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     15     {{{   736,    410,   2203}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     16     {{{   663,    512,   2276}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     17     {{{   736,    512,   2203}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     18 };
     19 
     20 // 0x0700F548 - 0x0700F628
     21 static const Vtx hmc_seg7_vertex_0700F548[] = {
     22     {{{   808,    512,   2276}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     23     {{{   736,    512,   2348}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     24     {{{   736,    410,   2348}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     25     {{{   808,    410,   2276}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     26     {{{   663,    410,   2276}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     27     {{{   736,    410,   2203}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     28     {{{   736,    410,   2203}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     29     {{{   663,    410,   2276}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     30     {{{   663,    512,   2276}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     31     {{{   388,    410,   2696}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     32     {{{   461,    512,   2623}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     33     {{{   388,    512,   2696}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     34     {{{   663,    410,   2276}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     35     {{{   663,    512,   2276}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     36 };
     37 
     38 // 0x0700F628 - 0x0700F728
     39 static const Vtx hmc_seg7_vertex_0700F628[] = {
     40     {{{   316,    512,   2623}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     41     {{{   388,    512,   2551}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     42     {{{   388,    410,   2551}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     43     {{{   316,    410,   2623}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     44     {{{   461,    410,   2623}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     45     {{{   388,    410,   2696}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     46     {{{ -1423,    410,   1338}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     47     {{{ -1294,    410,   1274}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     48     {{{ -1326,    410,   1371}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     49     {{{   388,    410,   2696}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     50     {{{   461,    410,   2623}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     51     {{{   461,    512,   2623}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     52     {{{   461,    512,   2623}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     53     {{{   461,    410,   2623}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     54     {{{ -1423,    512,   1338}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     55     {{{ -1391,    410,   1241}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     56 };
     57 
     58 // 0x0700F728 - 0x0700F808
     59 static const Vtx hmc_seg7_vertex_0700F728[] = {
     60     {{{ -1423,    512,   1338}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     61     {{{ -1391,    512,   1241}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     62     {{{ -1391,    410,   1241}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     63     {{{ -1423,    410,   1338}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     64     {{{ -1294,    410,   1274}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     65     {{{ -1138,    410,    807}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     66     {{{ -1268,    410,    872}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     67     {{{ -1235,    410,    775}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     68     {{{ -1326,    410,   1371}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     69     {{{ -1294,    410,   1274}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     70     {{{ -1294,    512,   1274}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     71     {{{ -1326,    512,   1371}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     72     {{{ -1294,    512,   1274}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     73     {{{ -1294,    410,   1274}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     74 };
     75 
     76 // 0x0700F808 - 0x0700F8B8
     77 static const Vtx hmc_seg7_vertex_0700F808[] = {
     78     {{{ -1170,    512,    904}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     79     {{{ -1170,    410,    904}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     80     {{{ -1138,    410,    807}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     81     {{{ -1138,    512,    807}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     82     {{{ -1268,    410,    872}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     83     {{{ -1138,    410,    807}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     84     {{{ -1235,    410,    775}, 0, {     0,    990}, {0xff, 0xff, 0xff, 0xff}}},
     85     {{{ -1268,    410,    872}, 0, {   990,    990}, {0xff, 0xff, 0xff, 0xff}}},
     86     {{{ -1268,    512,    872}, 0, {   990,      0}, {0xff, 0xff, 0xff, 0xff}}},
     87     {{{ -1235,    512,    775}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     88     {{{ -1268,    512,    872}, 0, {     0,      0}, {0xff, 0xff, 0xff, 0xff}}},
     89 };
     90 
     91 // 0x0700F8B8 - 0x0700FA40
     92 static const Gfx hmc_seg7_dl_0700F8B8[] = {
     93     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, cave_0900A000),
     94     gsDPLoadSync(),
     95     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
     96     gsSPVertex(hmc_seg7_vertex_0700F458, 15, 0),
     97     gsSP2Triangles( 0,  1,  2, 0x0,  3,  0,  4, 0x0),
     98     gsSP2Triangles( 3,  4,  5, 0x0,  5,  4,  6, 0x0),
     99     gsSP2Triangles( 5,  6,  7, 0x0,  8,  9, 10, 0x0),
    100     gsSP2Triangles( 8, 11,  9, 0x0, 12, 13, 14, 0x0),
    101     gsSP1Triangle( 0,  2,  4, 0x0),
    102     gsSPVertex(hmc_seg7_vertex_0700F548, 14, 0),
    103     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    104     gsSP2Triangles( 3,  2,  4, 0x0,  3,  4,  5, 0x0),
    105     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    106     gsSP2Triangles( 1, 12,  2, 0x0,  1, 13, 12, 0x0),
    107     gsSPVertex(hmc_seg7_vertex_0700F628, 16, 0),
    108     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    109     gsSP2Triangles( 3,  2,  4, 0x0,  3,  4,  5, 0x0),
    110     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    111     gsSP2Triangles( 1, 12, 13, 0x0,  1, 13,  2, 0x0),
    112     gsSP1Triangle(14, 15,  6, 0x0),
    113     gsSPVertex(hmc_seg7_vertex_0700F728, 14, 0),
    114     gsSP2Triangles( 0,  1,  2, 0x0,  3,  2,  4, 0x0),
    115     gsSP2Triangles( 5,  6,  7, 0x0,  8,  9, 10, 0x0),
    116     gsSP2Triangles( 8, 10, 11, 0x0,  1, 12, 13, 0x0),
    117     gsSP1Triangle( 1, 13,  2, 0x0),
    118     gsSPVertex(hmc_seg7_vertex_0700F808, 11, 0),
    119     gsSP2Triangles( 0,  1,  2, 0x0,  3,  0,  2, 0x0),
    120     gsSP2Triangles( 0,  4,  1, 0x0,  5,  1,  4, 0x0),
    121     gsSP2Triangles( 6,  7,  8, 0x0,  6,  8,  9, 0x0),
    122     gsSP1Triangle( 0, 10,  4, 0x0),
    123     gsSPEndDisplayList(),
    124 };
    125 
    126 // 0x0700FA40 - 0x0700FAB0
    127 const Gfx hmc_seg7_dl_0700FA40[] = {
    128     gsDPPipeSync(),
    129     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
    130     gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
    131     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),
    132     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    133     gsDPTileSync(),
    134     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),
    135     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    136     gsSPDisplayList(hmc_seg7_dl_0700F8B8),
    137     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    138     gsDPPipeSync(),
    139     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    140     gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK),
    141     gsSPEndDisplayList(),
    142 };