sm64

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

geo.inc.c (7342B)


      1 // 0x0E001958
      2 const GeoLayout castle_geo_001958[] = {
      3     GEO_NODE_START(),
      4     GEO_OPEN_NODE(),
      5         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0705E088),
      6         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0705E2A0),
      7         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_0705E450),
      8     GEO_CLOSE_NODE(),
      9     GEO_RETURN(),
     10 };
     11 
     12 // 0x0E001980
     13 const GeoLayout castle_geo_001980[] = {
     14     GEO_NODE_START(),
     15     GEO_OPEN_NODE(),
     16         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070616E8),
     17         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07061C20),
     18         GEO_ASM(   0, geo_painting_update),
     19         GEO_ASM( PAINTING_ID(4, 1), geo_painting_draw),
     20         GEO_ASM( PAINTING_ID(5, 1), geo_painting_draw),
     21         GEO_ASM(   0, geo_movtex_pause_control),
     22         GEO_ASM(0x0600, geo_movtex_draw_water_regions),
     23     GEO_CLOSE_NODE(),
     24     GEO_RETURN(),
     25 };
     26 
     27 // 0x0E0019C8
     28 const GeoLayout castle_geo_0019C8[] = {
     29     GEO_NODE_START(),
     30     GEO_OPEN_NODE(),
     31         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07064B78),
     32         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07064D58),
     33         GEO_ASM(0, geo_painting_update),
     34         GEO_ASM(PAINTING_ID(6, 1), geo_painting_draw),
     35     GEO_CLOSE_NODE(),
     36     GEO_RETURN(),
     37 };
     38 
     39 // 0x0E0019F8
     40 const GeoLayout castle_geo_0019F8[] = {
     41     GEO_NODE_START(),
     42     GEO_OPEN_NODE(),
     43         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07066CE0),
     44         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07066E90),
     45         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07066FA0),
     46         GEO_ASM(   0, geo_movtex_pause_control),
     47         GEO_ASM(0x0612, geo_movtex_draw_water_regions),
     48     GEO_CLOSE_NODE(),
     49     GEO_RETURN(),
     50 };
     51 
     52 // 0x0E001A30
     53 const GeoLayout castle_geo_001A30[] = {
     54     GEO_NODE_START(),
     55     GEO_OPEN_NODE(),
     56         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07068850),
     57         GEO_ASM(  0, geo_painting_update),
     58         GEO_ASM(PAINTING_ID(7, 1), geo_painting_draw),
     59     GEO_CLOSE_NODE(),
     60     GEO_RETURN(),
     61 };
     62 
     63 // 0x0E001A58
     64 const GeoLayout castle_geo_001A58[] = {
     65     GEO_NODE_START(),
     66     GEO_OPEN_NODE(),
     67         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0705E088),
     68         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0705E2A0),
     69         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_0705E450),
     70         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070616E8),
     71         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07061C20),
     72         GEO_ASM(   0, geo_painting_update),
     73         GEO_ASM( PAINTING_ID(4, 1), geo_painting_draw),
     74         GEO_ASM( PAINTING_ID(5, 1), geo_painting_draw),
     75         GEO_ASM(   0, geo_movtex_pause_control),
     76         GEO_ASM(0x0600, geo_movtex_draw_water_regions),
     77     GEO_CLOSE_NODE(),
     78     GEO_RETURN(),
     79 };
     80 
     81 // 0x0E001AB8
     82 const GeoLayout castle_geo_001AB8[] = {
     83     GEO_NODE_START(),
     84     GEO_OPEN_NODE(),
     85         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0705E088),
     86         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0705E2A0),
     87         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_0705E450),
     88         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07068850),
     89         GEO_ASM(  0, geo_painting_update),
     90         GEO_ASM(PAINTING_ID(7, 1), geo_painting_draw),
     91     GEO_CLOSE_NODE(),
     92     GEO_RETURN(),
     93 };
     94 
     95 // 0x0E001AF8
     96 const GeoLayout castle_geo_001AF8[] = {
     97     GEO_NODE_START(),
     98     GEO_OPEN_NODE(),
     99         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0705E088),
    100         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0705E2A0),
    101         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_0705E450),
    102         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07066CE0),
    103         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07066E90),
    104         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07066FA0),
    105         GEO_ASM(   0, geo_movtex_pause_control),
    106         GEO_ASM(0x0612, geo_movtex_draw_water_regions),
    107     GEO_CLOSE_NODE(),
    108     GEO_RETURN(),
    109 };
    110 
    111 // 0x0E001B48
    112 const GeoLayout castle_geo_001B48[] = {
    113     GEO_NODE_START(),
    114     GEO_OPEN_NODE(),
    115         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070616E8),
    116         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07061C20),
    117         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07066CE0),
    118         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07066E90),
    119         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07066FA0),
    120         GEO_ASM(   0, geo_painting_update),
    121         GEO_ASM( PAINTING_ID(4, 1), geo_painting_draw),
    122         GEO_ASM( PAINTING_ID(5, 1), geo_painting_draw),
    123         GEO_ASM(   0, geo_movtex_pause_control),
    124         GEO_ASM(0x0600, geo_movtex_draw_water_regions),
    125         GEO_ASM(0x0612, geo_movtex_draw_water_regions),
    126     GEO_CLOSE_NODE(),
    127     GEO_RETURN(),
    128 };
    129 
    130 // 0x0E001BB0
    131 const GeoLayout castle_geo_001BB0[] = {
    132     GEO_NODE_START(),
    133     GEO_OPEN_NODE(),
    134         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070616E8),
    135         GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07061C20),
    136         GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07064B78),
    137         GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07064D58),
    138         GEO_ASM(   0, geo_painting_update),
    139         GEO_ASM( PAINTING_ID(4, 1), geo_painting_draw),
    140         GEO_ASM( PAINTING_ID(5, 1), geo_painting_draw),
    141         GEO_ASM( PAINTING_ID(6, 1), geo_painting_draw),
    142         GEO_ASM(   0, geo_movtex_pause_control),
    143         GEO_ASM(0x0600, geo_movtex_draw_water_regions),
    144     GEO_CLOSE_NODE(),
    145     GEO_RETURN(),
    146 };
    147 
    148 // 0x0E001C10
    149 const GeoLayout castle_geo_001C10[] = {
    150     GEO_NODE_SCREEN_AREA(10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2),
    151     GEO_OPEN_NODE(),
    152         GEO_ZBUFFER(0),
    153         GEO_OPEN_NODE(),
    154             GEO_NODE_ORTHO(100),
    155             GEO_OPEN_NODE(),
    156                 GEO_BACKGROUND_COLOR(0x0001),
    157             GEO_CLOSE_NODE(),
    158         GEO_CLOSE_NODE(),
    159         GEO_ZBUFFER(1),
    160         GEO_OPEN_NODE(),
    161             GEO_CAMERA_FRUSTUM_WITH_FUNC(64, 50, 6400, geo_camera_fov),
    162             GEO_OPEN_NODE(),
    163                 GEO_CAMERA(4, 0, 2000, 6000, 0, 0, 0, geo_camera_main),
    164                 GEO_OPEN_NODE(),
    165                     GEO_SWITCH_CASE(10, geo_switch_area),
    166                     GEO_OPEN_NODE(),
    167                         GEO_BRANCH(1, castle_geo_001958), // 0x0E001958
    168                         GEO_BRANCH(1, castle_geo_001980), // 0x0E001980
    169                         GEO_BRANCH(1, castle_geo_0019C8), // 0x0E0019C8
    170                         GEO_BRANCH(1, castle_geo_0019F8), // 0x0E0019F8
    171                         GEO_BRANCH(1, castle_geo_001A30), // 0x0E001A30
    172                         GEO_BRANCH(1, castle_geo_001A58), // 0x0E001A58
    173                         GEO_BRANCH(1, castle_geo_001AB8), // 0x0E001AB8
    174                         GEO_BRANCH(1, castle_geo_001AF8), // 0x0E001AF8
    175                         GEO_BRANCH(1, castle_geo_001B48), // 0x0E001B48
    176                         GEO_BRANCH(1, castle_geo_001BB0), // 0x0E001BB0
    177                     GEO_CLOSE_NODE(),
    178                     GEO_RENDER_OBJ(),
    179                     GEO_ASM(0, geo_envfx_main),
    180                 GEO_CLOSE_NODE(),
    181             GEO_CLOSE_NODE(),
    182         GEO_CLOSE_NODE(),
    183     GEO_CLOSE_NODE(),
    184     GEO_END(),
    185 };