sm64coopdx/levels/rr/areas/1/14/model.inc.c
Isaac0-dev 663e4549d8
extract assets from rom at runtime (#4)
* Proof of concept for loading rom assets at runtime

* Added skybox textures

* Adjusted format

* Load all texture assets from rom

* Adjusted rom asset loading

* Load all Vtx lists from rom

* clean up toad, wario and his cap conflicts

* Load sound samples from rom

* fix toad sounds

* Loaded sequences from rom

* Load collisions from rom

* Object animations are now loaded from the rom

* Load player animations from rom

* Load goddard anims from rom

* whoops

* fix some compile errors

* drag and drop rom checker, everything works now.

* fix errors due to merge conflicts

* fix compile errors on windows, switch to md5

* fix vertex colors during load

Co-Authored-By: Agent X <44549182+agent-11@users.noreply.github.com>

* Load dialogs from rom

* Loaded course/act names from rom

* Loaded ingame text from rom

* rerun autogen & blacklist smlua_text_utils_init

* fix ttc_seg7_vertex_0700B238 colors

---------

Co-authored-by: MysterD <myster@d>
Co-authored-by: Agent X <44549182+agent-11@users.noreply.github.com>
2024-03-23 16:11:30 -04:00

476 lines
21 KiB
C

#include "pc/rom_assets.h"
// 0x0700E8B0 - 0x0700E930
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700E8B0, 0x00437870, 75979, 0x0000e8b0, 128);
// 0x0700E930 - 0x0700EA20
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700E930, 0x00437870, 75979, 0x0000e930, 240);
// 0x0700EA20 - 0x0700EB10
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EA20, 0x00437870, 75979, 0x0000ea20, 240);
// 0x0700EB10 - 0x0700EBF0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EB10, 0x00437870, 75979, 0x0000eb10, 224);
// 0x0700EBF0 - 0x0700ECE0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EBF0, 0x00437870, 75979, 0x0000ebf0, 240);
// 0x0700ECE0 - 0x0700EDC0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700ECE0, 0x00437870, 75979, 0x0000ece0, 224);
// 0x0700EDC0 - 0x0700EEA0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EDC0, 0x00437870, 75979, 0x0000edc0, 224);
// 0x0700EEA0 - 0x0700EFA0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EEA0, 0x00437870, 75979, 0x0000eea0, 256);
// 0x0700EFA0 - 0x0700F080
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700EFA0, 0x00437870, 75979, 0x0000efa0, 224);
// 0x0700F080 - 0x0700F170
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F080, 0x00437870, 75979, 0x0000f080, 240);
// 0x0700F170 - 0x0700F260
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F170, 0x00437870, 75979, 0x0000f170, 240);
// 0x0700F260 - 0x0700F340
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F260, 0x00437870, 75979, 0x0000f260, 224);
// 0x0700F340 - 0x0700F430
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F340, 0x00437870, 75979, 0x0000f340, 240);
// 0x0700F430 - 0x0700F510
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F430, 0x00437870, 75979, 0x0000f430, 224);
// 0x0700F510 - 0x0700F600
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F510, 0x00437870, 75979, 0x0000f510, 240);
// 0x0700F600 - 0x0700F700
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F600, 0x00437870, 75979, 0x0000f600, 256);
// 0x0700F700 - 0x0700F7F0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F700, 0x00437870, 75979, 0x0000f700, 240);
// 0x0700F7F0 - 0x0700F8E0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F7F0, 0x00437870, 75979, 0x0000f7f0, 240);
// 0x0700F8E0 - 0x0700F9E0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F8E0, 0x00437870, 75979, 0x0000f8e0, 256);
// 0x0700F9E0 - 0x0700FAE0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700F9E0, 0x00437870, 75979, 0x0000f9e0, 256);
// 0x0700FAE0 - 0x0700FBD0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FAE0, 0x00437870, 75979, 0x0000fae0, 240);
// 0x0700FBD0 - 0x0700FCD0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FBD0, 0x00437870, 75979, 0x0000fbd0, 256);
// 0x0700FCD0 - 0x0700FDB0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FCD0, 0x00437870, 75979, 0x0000fcd0, 224);
// 0x0700FDB0 - 0x0700FEA0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FDB0, 0x00437870, 75979, 0x0000fdb0, 240);
// 0x0700FEA0 - 0x0700FF80
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FEA0, 0x00437870, 75979, 0x0000fea0, 224);
// 0x0700FF80 - 0x07010070
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_0700FF80, 0x00437870, 75979, 0x0000ff80, 240);
// 0x07010070 - 0x07010150
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010070, 0x00437870, 75979, 0x00010070, 224);
// 0x07010150 - 0x07010250
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010150, 0x00437870, 75979, 0x00010150, 256);
// 0x07010250 - 0x07010340
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010250, 0x00437870, 75979, 0x00010250, 240);
// 0x07010340 - 0x07010440
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010340, 0x00437870, 75979, 0x00010340, 256);
// 0x07010440 - 0x07010540
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010440, 0x00437870, 75979, 0x00010440, 256);
// 0x07010540 - 0x07010630
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010540, 0x00437870, 75979, 0x00010540, 240);
// 0x07010630 - 0x07010730
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010630, 0x00437870, 75979, 0x00010630, 256);
// 0x07010730 - 0x07010820
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010730, 0x00437870, 75979, 0x00010730, 240);
// 0x07010820 - 0x07010920
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010820, 0x00437870, 75979, 0x00010820, 256);
// 0x07010920 - 0x07010A10
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010920, 0x00437870, 75979, 0x00010920, 240);
// 0x07010A10 - 0x07010B00
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010A10, 0x00437870, 75979, 0x00010a10, 240);
// 0x07010B00 - 0x07010BE0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010B00, 0x00437870, 75979, 0x00010b00, 224);
// 0x07010BE0 - 0x07010CD0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010BE0, 0x00437870, 75979, 0x00010be0, 240);
// 0x07010CD0 - 0x07010DC0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010CD0, 0x00437870, 75979, 0x00010cd0, 240);
// 0x07010DC0 - 0x07010EA0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010DC0, 0x00437870, 75979, 0x00010dc0, 224);
// 0x07010EA0 - 0x07010FA0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010EA0, 0x00437870, 75979, 0x00010ea0, 256);
// 0x07010FA0 - 0x07011020
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07010FA0, 0x00437870, 75979, 0x00010fa0, 128);
// 0x07011020 - 0x07011120
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07011020, 0x00437870, 75979, 0x00011020, 256);
// 0x07011120 - 0x07011220
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07011120, 0x00437870, 75979, 0x00011120, 256);
// 0x07011220 - 0x07011310
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07011220, 0x00437870, 75979, 0x00011220, 240);
// 0x07011310 - 0x07011410
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07011310, 0x00437870, 75979, 0x00011310, 256);
// 0x07011410 - 0x070114F0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_07011410, 0x00437870, 75979, 0x00011410, 224);
// 0x070114F0 - 0x070115D0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_070114F0, 0x00437870, 75979, 0x000114f0, 224);
// 0x070115D0 - 0x070116B0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_070115D0, 0x00437870, 75979, 0x000115d0, 224);
// 0x070116B0 - 0x070117A0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_070116B0, 0x00437870, 75979, 0x000116b0, 240);
// 0x070117A0 - 0x070118A0
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_070117A0, 0x00437870, 75979, 0x000117a0, 256);
// 0x070118A0 - 0x07011920
ROM_ASSET_LOAD_VTX(rr_seg7_vertex_070118A0, 0x00437870, 75979, 0x000118a0, 128);
// 0x07011920 - 0x07011978
static const Gfx rr_seg7_dl_07011920[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, sky_09008000),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(rr_seg7_vertex_0700E8B0, 8, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 0, 4, 3, 0x0, 0, 5, 4, 0x0),
gsSP2Triangles( 0, 6, 5, 0x0, 0, 2, 7, 0x0),
gsSPEndDisplayList(),
};
// 0x07011978 - 0x07012128
static const Gfx rr_seg7_dl_07011978[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, sky_09007000),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(rr_seg7_vertex_0700E930, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 9, 11, 10, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700EA20, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 7, 6, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 8, 11, 9, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700EB10, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 4, 6, 5, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700EBF0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 7, 5, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(12, 14, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700ECE0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700EDC0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 7, 6, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700EEA0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP2Triangles( 9, 12, 10, 0x0, 13, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_0700EFA0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 4, 0x0),
gsSP2Triangles( 0, 4, 5, 0x0, 5, 6, 7, 0x0),
gsSP2Triangles( 5, 7, 8, 0x0, 8, 7, 9, 0x0),
gsSP2Triangles( 1, 8, 9, 0x0, 1, 10, 2, 0x0),
gsSP2Triangles( 1, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700F080, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 7, 5, 4, 0x0),
gsSP2Triangles( 4, 6, 8, 0x0, 7, 9, 5, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700F170, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 6, 8, 9, 0x0),
gsSP2Triangles( 0, 10, 1, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(11, 14, 12, 0x0),
gsSPVertex(rr_seg7_vertex_0700F260, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700F340, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(12, 14, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700F430, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 7, 5, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700F510, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700F600, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 0, 3, 4, 0x0, 1, 5, 6, 0x0),
gsSP2Triangles( 1, 7, 2, 0x0, 1, 6, 7, 0x0),
gsSP2Triangles( 1, 8, 5, 0x0, 8, 9, 5, 0x0),
gsSP2Triangles( 3, 9, 8, 0x0, 4, 3, 8, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 11, 13, 12, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 13, 15, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700F700, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 6, 4, 0x0, 7, 0, 2, 0x0),
gsSP2Triangles( 4, 7, 2, 0x0, 4, 2, 5, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 8, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700F7F0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 4, 7, 8, 0x0, 4, 8, 9, 0x0),
gsSP2Triangles( 4, 10, 5, 0x0, 9, 11, 4, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700F8E0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 0, 3, 4, 0x0, 0, 5, 6, 0x0),
gsSP2Triangles( 7, 8, 9, 0x0, 7, 10, 8, 0x0),
gsSP2Triangles( 8, 11, 12, 0x0, 10, 11, 8, 0x0),
gsSP2Triangles( 8, 12, 13, 0x0, 13, 12, 14, 0x0),
gsSP1Triangle(13, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_0700F9E0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 2, 4, 0x0),
gsSP2Triangles( 3, 0, 2, 0x0, 5, 6, 7, 0x0),
gsSP2Triangles( 5, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP2Triangles( 9, 12, 10, 0x0, 13, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_0700FAE0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 6, 4, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 14, 0x0),
gsSP1Triangle(10, 14, 11, 0x0),
gsSPVertex(rr_seg7_vertex_0700FBD0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 0, 4, 5, 0x0, 6, 7, 8, 0x0),
gsSP2Triangles( 7, 9, 8, 0x0, 10, 11, 12, 0x0),
gsSP1Triangle(13, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_0700FCD0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 6, 7, 0x0, 3, 7, 8, 0x0),
gsSP2Triangles( 3, 5, 6, 0x0, 3, 8, 9, 0x0),
gsSP2Triangles( 3, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700FDB0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_0700FEA0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 4, 6, 5, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles( 8, 10, 9, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_0700FF80, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles( 7, 10, 8, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(11, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010070, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 6, 8, 9, 0x0),
gsSP2Triangles( 0, 10, 1, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_07010150, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 1, 3, 2, 0x0),
gsSP2Triangles( 2, 3, 4, 0x0, 2, 4, 5, 0x0),
gsSP2Triangles( 0, 2, 6, 0x0, 7, 0, 6, 0x0),
gsSP2Triangles( 8, 6, 9, 0x0, 8, 7, 6, 0x0),
gsSP2Triangles( 4, 8, 9, 0x0, 5, 4, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
gsSP2Triangles(14, 15, 10, 0x0, 10, 15, 11, 0x0),
gsSPVertex(rr_seg7_vertex_07010250, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 0, 4, 0x0),
gsSP2Triangles( 0, 2, 4, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 3, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles( 7, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(11, 14, 12, 0x0),
gsSPEndDisplayList(),
};
// 0x07012128 - 0x07012418
static const Gfx rr_seg7_dl_07012128[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, sky_09001000),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(rr_seg7_vertex_07010340, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 12, 15, 13, 0x0),
gsSPVertex(rr_seg7_vertex_07010440, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 7, 5, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 9, 11, 10, 0x0),
gsSP2Triangles(12, 10, 11, 0x0, 12, 13, 10, 0x0),
gsSP2Triangles(13, 12, 14, 0x0, 12, 15, 14, 0x0),
gsSP2Triangles( 9, 14, 15, 0x0, 9, 8, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010540, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010630, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 0, 2, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 13, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_07010730, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010820, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 12, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_07010920, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 4, 7, 0x0),
gsSP2Triangles( 4, 8, 7, 0x0, 4, 6, 9, 0x0),
gsSP2Triangles(10, 9, 6, 0x0, 10, 11, 9, 0x0),
gsSP2Triangles(11, 10, 7, 0x0, 11, 7, 8, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010A10, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010B00, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 7, 9, 8, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 11, 0x0),
gsSPVertex(rr_seg7_vertex_07010BE0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010CD0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 9, 10, 11, 0x0),
gsSP1Triangle(12, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07010DC0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
gsSP2Triangles( 6, 7, 8, 0x0, 6, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 12, 13, 0x0),
gsSPEndDisplayList(),
};
// 0x07012418 - 0x070124A8
static const Gfx rr_seg7_dl_07012418[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, sky_09004800),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(rr_seg7_vertex_07010EA0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 8, 10, 11, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 12, 15, 13, 0x0),
gsSPVertex(rr_seg7_vertex_07010FA0, 8, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSPEndDisplayList(),
};
// 0x070124A8 - 0x07012758
static const Gfx rr_seg7_dl_070124A8[] = {
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, sky_09001800),
gsDPLoadSync(),
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
gsSPVertex(rr_seg7_vertex_07011020, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 7, 5, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 8, 11, 9, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 12, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_07011120, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 7, 8, 0x0),
gsSP2Triangles( 5, 8, 6, 0x0, 8, 9, 10, 0x0),
gsSP2Triangles( 8, 7, 9, 0x0, 11, 4, 6, 0x0),
gsSP2Triangles(12, 13, 4, 0x0, 12, 4, 11, 0x0),
gsSP2Triangles(10, 9, 14, 0x0, 10, 14, 15, 0x0),
gsSPVertex(rr_seg7_vertex_07011220, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle(11, 13, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07011310, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP2Triangles( 8, 14, 15, 0x0, 8, 10, 14, 0x0),
gsSPVertex(rr_seg7_vertex_07011410, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 11, 13, 12, 0x0),
gsSPVertex(rr_seg7_vertex_070114F0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_070115D0, 14, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 7, 8, 9, 0x0),
gsSP2Triangles(10, 11, 12, 0x0, 10, 12, 13, 0x0),
gsSPVertex(rr_seg7_vertex_070116B0, 15, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 1, 3, 2, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 5, 7, 6, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 11, 12, 13, 0x0),
gsSP1Triangle( 8, 14, 9, 0x0),
gsSPVertex(rr_seg7_vertex_070117A0, 16, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSP2Triangles( 8, 9, 10, 0x0, 8, 11, 9, 0x0),
gsSP2Triangles(12, 13, 14, 0x0, 12, 15, 13, 0x0),
gsSPVertex(rr_seg7_vertex_070118A0, 8, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
gsSP2Triangles( 4, 5, 6, 0x0, 4, 6, 7, 0x0),
gsSPEndDisplayList(),
};
// 0x07012758 - 0x070127E8
const Gfx rr_seg7_dl_07012758[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
gsSPClearGeometryMode(G_LIGHTING),
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),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
gsDPTileSync(),
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),
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
gsSPDisplayList(rr_seg7_dl_07011920),
gsSPDisplayList(rr_seg7_dl_07011978),
gsSPDisplayList(rr_seg7_dl_07012128),
gsSPDisplayList(rr_seg7_dl_07012418),
gsSPDisplayList(rr_seg7_dl_070124A8),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPSetGeometryMode(G_LIGHTING),
gsSPEndDisplayList(),
};