// 0x0E000F30
const GeoLayout castle_geo_000F30[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E000F70
const GeoLayout castle_geo_000F70[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702E408),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E000F88
const GeoLayout castle_geo_000F88[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702FD30),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07023DB0),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E000FA8
const GeoLayout castle_geo_000FA8[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07031588),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07031720),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07031830),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E000FD0
const GeoLayout castle_geo_000FD0[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07032FC0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07033158),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(0, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001000
const GeoLayout castle_geo_001000[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07034D88),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07035178),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07035288),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(2, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001038
const GeoLayout castle_geo_001038[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07036D88),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07037988),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07037BF8),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07037DE8),
      //GEO_DISPLAY_LIST(LAYER_TRANSPARENT, dl_castle_aquarium_light),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07038350),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(3, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001088
const GeoLayout castle_geo_001088[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0703A6C8),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0703A808),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070234C0),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07023520),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(1, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E0010C8
const GeoLayout castle_geo_0010C8[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0703BA08),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001110
const GeoLayout castle_geo_001110[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702E408),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001158
const GeoLayout castle_geo_001158[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702FD30),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07023DB0),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E0011A8
const GeoLayout castle_geo_0011A8[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07031588),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07031720),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07031830),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001200
const GeoLayout castle_geo_001200[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(  0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07032FC0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07033158),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(256, geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001260
const GeoLayout castle_geo_001260[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(  0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07034D88),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07035178),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07035288),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(258, geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E0012C8
const GeoLayout castle_geo_0012C8[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(  0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07036D88),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07037988),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07037BF8),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT, inside_castle_seg7_dl_07037DE8),
      //GEO_DISPLAY_LIST(LAYER_TRANSPARENT, dl_castle_aquarium_light),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07038350),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(3, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001348
const GeoLayout castle_geo_001348[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(  0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0703A6C8),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0703A808),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_070234C0),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07023520),
      GEO_ASM(  0, geo_painting_update),
      GEO_ASM(PAINTING_ID(1, 1), geo_painting_draw),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E0013B8
const GeoLayout castle_geo_0013B8[] = {
   GEO_NODE_START(),
   GEO_OPEN_NODE(),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_07028FD0),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_07029578),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0702A650),
      GEO_DISPLAY_LIST(LAYER_TRANSPARENT_DECAL, inside_castle_seg7_dl_0702AA10),
      GEO_DISPLAY_LIST(LAYER_ALPHA, inside_castle_seg7_dl_0702AB20),
      GEO_ASM(0, geo_exec_inside_castle_light),
      GEO_DISPLAY_LIST(LAYER_OPAQUE, inside_castle_seg7_dl_0703BA08),
   GEO_CLOSE_NODE(),
   GEO_RETURN(),
};

// 0x0E001400
const GeoLayout castle_geo_001400[] = {
   GEO_NODE_SCREEN_AREA(10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2),
   GEO_OPEN_NODE(),
      GEO_ZBUFFER(0),
      GEO_OPEN_NODE(),
         GEO_NODE_ORTHO(100),
         GEO_OPEN_NODE(),
            GEO_BACKGROUND_COLOR(0x0001),
         GEO_CLOSE_NODE(),
      GEO_CLOSE_NODE(),
      GEO_ZBUFFER(1),
      GEO_OPEN_NODE(),
         GEO_CAMERA_FRUSTUM_WITH_FUNC(64, 50, 7000, geo_camera_fov),
         GEO_OPEN_NODE(),
            GEO_CAMERA(13, 0, 2000, 6000, 0, 0, 0, geo_camera_main),
            GEO_OPEN_NODE(),
               GEO_SWITCH_CASE(17, geo_switch_area),
               GEO_OPEN_NODE(),
                  GEO_BRANCH(1, castle_geo_000F30), // 0x0E000F30      1     MAIN ROOM
                  GEO_BRANCH(1, castle_geo_000F70), // 0x0E000F70      2     HALLWAY
                  GEO_BRANCH(1, castle_geo_000F88), // 0x0E000F88      3     KUPPAROOM
                  GEO_BRANCH(1, castle_geo_000FA8), // 0x0E000FA8      4     SECRETROOM
                  GEO_BRANCH(1, castle_geo_000FD0), // 0x0E000FD0      5     SELROOM01
                  GEO_BRANCH(1, castle_geo_001000), // 0x0E001000      6     SELROOM03
                  GEO_BRANCH(1, castle_geo_001038), // 0x0E001038      7     SELROOM04
                  GEO_BRANCH(1, castle_geo_001088), // 0x0E001088      8     SELROOM02
                  GEO_BRANCH(1, castle_geo_0010C8), // 0x0E0010C8      9     UPSTAIRS WARP
                  GEO_BRANCH(1, castle_geo_001110), // 0x0E001110      10    MAIN ROOM + HALLWAY
                  GEO_BRANCH(1, castle_geo_001158), // 0x0E001158      11    MAIN ROOM + KUPPAROOM
                  GEO_BRANCH(1, castle_geo_0011A8), // 0x0E0011A8      12    MAIN ROOM + SECRETROOM
                  GEO_BRANCH(1, castle_geo_001200), // 0x0E001200      13    MAIN ROOM + SELROOM01
                  GEO_BRANCH(1, castle_geo_001260), // 0x0E001260      14    MAIN ROOM + SELROOM03
                  GEO_BRANCH(1, castle_geo_0012C8), // 0x0E0012C8      15    MAIN ROOM + SELROOM04
                  GEO_BRANCH(1, castle_geo_001348), // 0x0E001348      16    MAIN ROOM + SELROOM02
                  GEO_BRANCH(1, castle_geo_0013B8), // 0x0E0013B8      17    MAIN ROOM + UPSTAIRS WARP
               GEO_CLOSE_NODE(),
               GEO_RENDER_OBJ(),
               GEO_ASM(0, geo_envfx_main),
            GEO_CLOSE_NODE(),
         GEO_CLOSE_NODE(),
      GEO_CLOSE_NODE(),
   GEO_CLOSE_NODE(),
   GEO_END(),
};
