Made kirby model const; some ovl1_3 animation decomp

This commit is contained in:
farisawan-2000 2020-08-04 03:11:08 -04:00
parent 5a9e414d09
commit 743432ca30
16 changed files with 1999 additions and 38 deletions

View File

@ -53,7 +53,7 @@ LOADER_FLAGS = -vwf
FixPath = $(subst /,/,$1)
ASM_DIRS := asm data $(wildcard asm/ovl*) asm/ovl0/lib
SRC_DIRS := src $(wildcard src/ovl*) data
SRC_DIRS := src $(wildcard src/ovl*) data wildcard actors
TEXTURES_DIR = textures
MIPSISET := -mips2 -32

4
actors/kirby.c Normal file
View File

@ -0,0 +1,4 @@
#include <ultra64.h>
#include "kirby/model.inc.c"

3
actors/kirby/kirby.c Normal file
View File

@ -0,0 +1,3 @@
#include <ultra64.h>
#include "model.inc.c"

View File

@ -1,6 +1,662 @@
#include <ultra64.h>
Gfx kirby_dl_7E1A20[] = {
const Vtx kirby_vt_04000110[] = {
{{{ -8, -15, 45}, 0, { 0, 0}, {0xe1, 0xae, 0x5c, 0x00}}},
{{{ -5, -22, 34}, 0, { 0, 0}, {0xf3, 0x87, 0x26, 0x00}}},
};
const Vtx kirby_vt_04000130[] = {
{{{ 7, -15, 47}, 0, { 0, 0}, {0x0e, 0xac, 0x5f, 0x00}}},
{{{ 20, -15, 39}, 0, { 0, 0}, {0x50, 0xc0, 0x4b, 0x00}}},
{{{ 16, -22, 28}, 0, { 0, 0}, {0x16, 0x86, 0x1b, 0x00}}},
{{{ -23, 12, -8}, 0, { 0, 0}, {0xa6, 0x56, 0xe7, 0x00}}},
{{{ -21, -15, 37}, 0, { 0, 0}, {0xbd, 0xad, 0x45, 0x00}}},
{{{ -18, -22, 17}, 0, { 0, 0}, {0xde, 0x86, 0x0b, 0x00}}},
{{{ -28, -15, 24}, 0, { 0, 0}, {0x95, 0xbf, 0x16, 0x00}}},
{{{ -18, -22, -8}, 0, { 0, 0}, {0xdd, 0x87, 0xef, 0x00}}},
{{{ -26, -15, -10}, 0, { 0, 0}, {0x9b, 0xbe, 0xd9, 0x00}}},
{{{ -4, 15, -33}, 0, { 0, 0}, {0xc6, 0x59, 0xba, 0x00}}},
{{{ -7, 0, -41}, 0, { 0, 0}, {0xc2, 0x13, 0x93, 0x00}}},
{{{ -2, -20, -28}, 0, { 0, 0}, {0xec, 0x88, 0xdc, 0x00}}},
{{{ -6, -13, -38}, 0, { 0, 0}, {0xc2, 0xc0, 0xa5, 0x00}}},
{{{ 29, -22, 5}, 0, { 0, 0}, {0x26, 0x87, 0x05, 0x00}}},
};
const Vtx kirby_vt_04000210[] = {
{{{ 37, -15, 8}, 0, { 0, 0}, {0x69, 0xbc, 0x17, 0x00}}},
};
const Vtx kirby_vt_04000220[] = {
{{{ 28, -20, -21}, 0, { 0, 0}, {0x21, 0x87, 0xec, 0x00}}},
};
const Vtx kirby_vt_04000230[] = {
{{{ 14, -20, -32}, 0, { 0, 0}, {0x0a, 0x8b, 0xd0, 0x00}}},
{{{ 18, -11, -45}, 0, { 0, 0}, {0x19, 0xbd, 0x97, 0x00}}},
};
const Vtx kirby_vt_04000250[] = {
{{{ 43, -3, -9}, 0, { 0, 0}, {0x7f, 0x0c, 0x04, 0x00}}},
{{{ 37, -13, -29}, 0, { 0, 0}, {0x67, 0xc7, 0xd1, 0x00}}},
};
const Vtx kirby_vt_04000270[] = {
{{{ 18, 2, -46}, 0, { 0, 0}, {0x1d, 0x1c, 0x87, 0x00}}},
};
const Vtx kirby_vt_04000280[] = {
{{{ 17, 15, -39}, 0, { 0, 0}, {0x17, 0x60, 0xb0, 0x00}}},
{{{ 36, 9, -28}, 0, { 0, 0}, {0x63, 0x40, 0xd1, 0x00}}},
{{{ -24, 10, 22}, 0, { 0, 0}, {0xa9, 0x57, 0x20, 0x00}}},
{{{ -6, 7, 41}, 0, { 0, 0}, {0xeb, 0x5e, 0x53, 0x00}}},
{{{ 9, 30, -3}, 0, { 0, 0}, {0x08, 0x7f, 0x05, 0x00}}},
{{{ 19, 7, 36}, 0, { 0, 0}, {0x43, 0x51, 0x47, 0x00}}},
{{{ 36, 8, 0}, 0, { 0, 0}, {0x62, 0x4e, 0x19, 0x00}}},
{{{ 34, -5, 22}, 0, { 0, 0}, {0x73, 0x0c, 0x34, 0x00}}},
{{{ -21, -1, -27}, 0, { 0, 0}, {0x97, 0x10, 0xbb, 0x00}}},
};
const Vtx kirby_vt_04000310[] = {
{{{ 26, -6, 36}, 0, { 0, 0}, {0x5d, 0x09, 0x56, 0x00}}},
{{{ 8, -6, 50}, 0, { 0, 0}, {0x28, 0x16, 0x77, 0x00}}},
{{{ -32, -3, 3}, 0, { 0, 0}, {0x82, 0x0d, 0xf2, 0x00}}},
{{{ -32, -4, 18}, 0, { 0, 0}, {0x84, 0x0d, 0x1b, 0x00}}},
};
const Vtx kirby_vt_04000350[] = {
{{{ -23, -5, 39}, 0, { 0, 0}, {0x9e, 0x16, 0x4e, 0x00}}},
{{{ -9, -5, 48}, 0, { 0, 0}, {0xd8, 0x00, 0x79, 0x00}}},
{{{ 33, -51, 67}, 0, { 8632, 2404}, {0x2a, 0xb0, 0x59, 0x00}}},
{{{ 0, -43, 81}, 0, { 8000, 3029}, {0x00, 0xbf, 0x6d, 0x00}}},
};
const Vtx kirby_vt_04000390[] = {
{{{ 0, -7, 94}, 0, { 7999, 5873}, {0x00, 0xee, 0x7e, 0x00}}},
{{{ 44, 20, 84}, 0, { 8606, 8266}, {0x39, 0x0a, 0x71, 0x00}}},
{{{ 77, 26, 56}, 0, { 9186, 8984}, {0x69, 0x1c, 0x42, 0x00}}},
{{{ 42, -27, 80}, 0, { 8650, 4343}, {0x36, 0xd5, 0x6b, 0x00}}},
{{{ 77, -7, 56}, 0, { 9216, 6206}, {0x69, 0xe9, 0x44, 0x00}}},
{{{ 95, 8, 0}, 0, { 10002, 8000}, {0x7f, 0x00, 0x00, 0x00}}},
{{{ -29, 23, -93}, 0, { 12390, 10062}, {0xcf, 0x10, 0x8c, 0x00}}},
{{{ 29, 23, -93}, 0, { 11609, 10062}, {0x31, 0x10, 0x8c, 0x00}}},
{{{ 77, -9, -54}, 0, { 10795, 7003}, {0x68, 0xeb, 0xba, 0x00}}},
{{{ 83, -39, 0}, 0, { 10077, 4007}, {0x72, 0xc7, 0x03, 0x00}}},
{{{ 64, -43, 48}, 0, { 9258, 3282}, {0x56, 0xbc, 0x40, 0x00}}},
{{{ 57, -64, 26}, 0, { 9597, 1706}, {0x4f, 0xa1, 0x1f, 0x00}}},
{{{ 61, -65, -10}, 0, { 10362, 1972}, {0x4e, 0x9d, 0xf1, 0x00}}},
{{{ 0, -67, 60}, 0, { 8000, 1140}, {0x00, 0x9d, 0x50, 0x00}}},
};
const Vtx kirby_vt_04000470[] = {
{{{ 37, -65, 49}, 0, { 8931, 1393}, {0x2e, 0x9a, 0x3c, 0x00}}},
};
const Vtx kirby_vt_04000480[] = {
{{{ -31, -81, 12}, 0, { 14087, 410}, {0xd7, 0x89, 0x10, 0x00}}},
};
const Vtx kirby_vt_04000490[] = {
{{{ 0, -82, 32}, 0, { 8000, 141}, {0x00, 0x88, 0x2a, 0x00}}},
{{{ 31, -81, 12}, 0, { 9912, 410}, {0x29, 0x89, 0x10, 0x00}}},
{{{ 68, -40, -47}, 0, { 10830, 4345}, {0x59, 0xc0, 0xbf, 0x00}}},
};
const Vtx kirby_vt_040004C0[] = {
{{{ -29, -10, -92}, 0, { 12380, 7284}, {0xd0, 0xe3, 0x8e, 0x00}}},
};
const Vtx kirby_vt_040004D0[] = {
{{{ 29, -10, -92}, 0, { 11619, 7284}, {0x30, 0xe3, 0x8e, 0x00}}},
};
const Vtx kirby_vt_040004E0[] = {
{{{ -25, -41, -80}, 0, { 12368, 4592}, {0xd7, 0xbb, 0x9d, 0x00}}},
};
const Vtx kirby_vt_040004F0[] = {
{{{ -19, -67, -59}, 0, { 12350, 2200}, {0xe6, 0x9b, 0xb7, 0x00}}},
};
const Vtx kirby_vt_04000500[] = {
{{{ 25, -41, -80}, 0, { 11631, 4592}, {0x29, 0xbb, 0x9d, 0x00}}},
};
const Vtx kirby_vt_04000510[] = {
{{{ 45, -65, -41}, 0, { 11050, 2188}, {0x3e, 0xa1, 0xc7, 0x00}}},
};
const Vtx kirby_vt_04000520[] = {
{{{ 19, -67, -59}, 0, { 11649, 2200}, {0x1a, 0x9b, 0xb7, 0x00}}},
};
const Vtx kirby_vt_04000530[] = {
{{{ 0, -87, 2}, 0, { 11999, 0}, {0x00, 0x81, 0x03, 0x00}}},
{{{ 19, -83, -24}, 0, { 11343, 559}, {0x1e, 0x87, 0xe4, 0x00}}},
{{{ -19, -83, -24}, 0, { 12656, 559}, {0xe2, 0x87, 0xe4, 0x00}}},
{{{ -68, 55, -49}, 0, { 5271, 12345}, {0xa8, 0x45, 0xc3, 0x00}}},
};
const Vtx kirby_vt_04000570[] = {
{{{ 18, 99, -28}, 0, { 3008, 15837}, {0x1a, 0x79, 0xe1, 0x00}}},
{{{ 19, 82, -62}, 0, { 3573, 14702}, {0x23, 0x5e, 0xb2, 0x00}}},
};
const Vtx kirby_vt_04000590[] = {
{{{ -19, 82, -62}, 0, { 4426, 14702}, {0xdd, 0x5e, 0xb2, 0x00}}},
{{{ -49, 80, -39}, 0, { 5257, 14407}, {0xc0, 0x66, 0xd7, 0x00}}},
{{{ -61, 81, -4}, 0, { 6058, 14156}, {0xad, 0x60, 0xfc, 0x00}}},
{{{ -44, 85, 39}, 0, { 7028, 14090}, {0xcb, 0x69, 0x30, 0x00}}},
};
const Vtx kirby_vt_040005D0[] = {
{{{ 0, 83, 63}, 0, { 8000, 13705}, {0x00, 0x63, 0x4f, 0x00}}},
{{{ -25, 54, -82}, 0, { 12404, 12592}, {0xd4, 0x3a, 0x98, 0x00}}},
{{{ 77, 24, -55}, 0, { 10765, 9782}, {0x67, 0x1a, 0xbb, 0x00}}},
};
const Vtx kirby_vt_04000600[] = {
{{{ -19, 82, -62}, 0, { 12426, 14702}, {0xdd, 0x5e, 0xb2, 0x00}}},
};
const Vtx kirby_vt_04000610[] = {
{{{ 25, 54, -82}, 0, { 11595, 12592}, {0x2c, 0x3a, 0x98, 0x00}}},
};
const Vtx kirby_vt_04000620[] = {
{{{ 68, 55, -49}, 0, { 10728, 12345}, {0x58, 0x45, 0xc3, 0x00}}},
{{{ 19, 82, -62}, 0, { 11573, 14702}, {0x23, 0x5e, 0xb2, 0x00}}},
};
const Vtx kirby_vt_04000640[] = {
{{{ 49, 80, -39}, 0, { 10742, 14407}, {0x40, 0x66, 0xd7, 0x00}}},
{{{ -19, 99, -27}, 0, { 13046, 15831}, {0xe5, 0x79, 0xe1, 0x00}}},
{{{ 18, 99, -28}, 0, { 11008, 15837}, {0x1a, 0x79, 0xe1, 0x00}}},
};
const Vtx kirby_vt_04000670[] = {
{{{ -19, 99, -27}, 0, { 5046, 15831}, {0xe5, 0x79, 0xe1, 0x00}}},
{{{ -29, 98, 8}, 0, { 6677, 15445}, {0xd6, 0x78, 0x05, 0x00}}},
{{{ 0, 103, -2}, 0, { 8000, 16000}, {0x00, 0x7f, 0x01, 0x00}}},
{{{ 0, 98, 31}, 0, { 8000, 15283}, {0x00, 0x7a, 0x25, 0x00}}},
};
const Vtx kirby_vt_040006B0[] = {
{{{ 29, 98, 8}, 0, { 9322, 15445}, {0x2a, 0x78, 0x05, 0x00}}},
{{{ 61, 81, -4}, 0, { 9941, 14156}, {0x53, 0x60, 0xfc, 0x00}}},
};
const Vtx kirby_vt_040006D0[] = {
{{{ 44, 85, 39}, 0, { 8971, 14090}, {0x35, 0x69, 0x30, 0x00}}},
{{{ 38, 59, 73}, 0, { 8587, 11678}, {0x33, 0x3f, 0x62, 0x00}}},
{{{ 69, 61, 43}, 0, { 9230, 12069}, {0x5e, 0x47, 0x30, 0x00}}},
};
const Vtx kirby_vt_04000700[] = {
{{{ 82, 56, -1}, 0, { 9940, 12000}, {0x74, 0x35, 0xfe, 0x00}}},
};
const Vtx kirby_vt_04000710[] = {
{{{ 0, 32, 93}, 0, { 7999, 9192}, {0x00, 0x1e, 0x7c, 0x00}}},
};
const Vtx kirby_vt_04000720[] = {
{{{ 0, 57, 83}, 0, { 8000, 11384}, {0x00, 0x40, 0x6e, 0x00}}},
};
const Vtx kirby_vt_04000730[] = {
{{{ -38, 59, 73}, 0, { 7412, 11678}, {0xcd, 0x3f, 0x62, 0x00}}},
};
const Vtx kirby_vt_04000740[] = {
{{{ -44, 20, 84}, 0, { 7393, 8266}, {0xc7, 0x0a, 0x71, 0x00}}},
{{{ -33, -51, 67}, 0, { 7367, 2404}, {0xd6, 0xb0, 0x59, 0x00}}},
};
const Vtx kirby_vt_04000760[] = {
{{{ -42, -27, 80}, 0, { 7349, 4343}, {0xca, 0xd5, 0x6b, 0x00}}},
{{{ 0, -87, 2}, 0, { 3999, 0}, {0x00, 0x81, 0x03, 0x00}}},
};
const Vtx kirby_vt_04000780[] = {
{{{ -19, -83, -24}, 0, { 4656, 559}, {0xe2, 0x87, 0xe4, 0x00}}},
{{{ -31, -81, 12}, 0, { 6087, 410}, {0xd7, 0x89, 0x10, 0x00}}},
{{{ -61, -65, -10}, 0, { 5637, 1972}, {0xb2, 0x9d, 0xf1, 0x00}}},
{{{ 29, -10, -92}, 0, { 3619, 7284}, {0x30, 0xe3, 0x8e, 0x00}}},
{{{ -29, -10, -92}, 0, { 4380, 7284}, {0xd0, 0xe3, 0x8e, 0x00}}},
{{{ -68, -40, -47}, 0, { 5169, 4345}, {0xa7, 0xc0, 0xbf, 0x00}}},
};
const Vtx kirby_vt_040007E0[] = {
{{{ -69, 61, 43}, 0, { 6769, 12069}, {0xa2, 0x47, 0x30, 0x00}}},
{{{ -77, 26, 56}, 0, { 6813, 8984}, {0x97, 0x1c, 0x42, 0x00}}},
{{{ -57, -64, 26}, 0, { 6402, 1706}, {0xb1, 0xa1, 0x1f, 0x00}}},
};
const Vtx kirby_vt_04000810[] = {
{{{ -64, -43, 48}, 0, { 6741, 3282}, {0xaa, 0xbc, 0x40, 0x00}}},
{{{ -77, -7, 56}, 0, { 6783, 6206}, {0x97, 0xe9, 0x44, 0x00}}},
{{{ -83, -39, 0}, 0, { 5922, 4007}, {0x8e, 0xc7, 0x03, 0x00}}},
{{{ 29, 23, -93}, 0, { 3609, 10062}, {0x31, 0x10, 0x8c, 0x00}}},
};
const Vtx kirby_vt_04000850[] = {
{{{ -29, 23, -93}, 0, { 4390, 10062}, {0xcf, 0x10, 0x8c, 0x00}}},
};
const Vtx kirby_vt_04000860[] = {
{{{ -77, -9, -54}, 0, { 5204, 7003}, {0x98, 0xeb, 0xba, 0x00}}},
{{{ -95, 8, 0}, 0, { 5997, 8000}, {0x81, 0x00, 0x00, 0x00}}},
};
const Vtx kirby_vt_04000880[] = {
{{{ -25, 54, -82}, 0, { 4404, 12592}, {0xd4, 0x3a, 0x98, 0x00}}},
{{{ -77, 24, -55}, 0, { 5234, 9782}, {0x99, 0x1a, 0xbb, 0x00}}},
{{{ -82, 56, -1}, 0, { 6059, 12000}, {0x8c, 0x35, 0xfe, 0x00}}},
{{{ -25, -41, -80}, 0, { 4368, 4592}, {0xd7, 0xbb, 0x9d, 0x00}}},
{{{ 19, -67, -59}, 0, { 3649, 2200}, {0x1a, 0x9b, 0xb7, 0x00}}},
{{{ -19, -67, -59}, 0, { 4350, 2200}, {0xe6, 0x9b, 0xb7, 0x00}}},
{{{ -45, -65, -41}, 0, { 4949, 2188}, {0xc2, 0xa1, 0xc7, 0x00}}},
{{{ -37, -65, 49}, 0, { 7068, 1393}, {0xd2, 0x9a, 0x3c, 0x00}}},
{{{ 25, 54, -82}, 0, { 3595, 12592}, {0x2c, 0x3a, 0x98, 0x00}}},
{{{ 31, -64, 10}, 0, { 0, 0}, {0x4b, 0x9f, 0x20, 0x00}}},
{{{ 19, 26, 0}, 0, { 0, 0}, {0x35, 0x74, 0x00, 0x00}}},
};
const Vtx kirby_vt_04000930[] = {
{{{ 37, 9, 0}, 0, { 0, 0}, {0x6c, 0x44, 0x00, 0x00}}},
{{{ 48, -24, 0}, 0, { 0, 0}, {0x7f, 0x0b, 0x00, 0x00}}},
{{{ 45, -49, 0}, 0, { 0, 0}, {0x74, 0xcb, 0x00, 0x00}}},
{{{ 6, -68, 10}, 0, { 0, 0}, {0xbb, 0x9d, 0x29, 0x00}}},
{{{ -1, 31, 0}, 0, { 0, 0}, {0x0b, 0x7f, 0x00, 0x00}}},
{{{ 13, 23, -20}, 0, { 0, 0}, {0x21, 0x68, 0xbf, 0x00}}},
{{{ 29, 6, -24}, 0, { 0, 0}, {0x4d, 0x37, 0xab, 0x00}}},
{{{ 40, -26, -24}, 0, { 0, 0}, {0x5f, 0x03, 0xab, 0x00}}},
{{{ 38, -50, -20}, 0, { 0, 0}, {0x5c, 0xcc, 0xb9, 0x00}}},
};
const Vtx kirby_vt_040009C0[] = {
{{{ 31, -64, -10}, 0, { 0, 0}, {0x4b, 0x9f, 0xe0, 0x00}}},
{{{ -2, 16, -28}, 0, { 0, 0}, {0xed, 0x42, 0x95, 0x00}}},
{{{ 9, -2, -34}, 0, { 0, 0}, {0xf9, 0x11, 0x82, 0x00}}},
};
const Vtx kirby_vt_040009F0[] = {
{{{ 20, -32, -34}, 0, { 0, 0}, {0x04, 0xee, 0x82, 0x00}}},
{{{ 15, -73, 0}, 0, { 0, 0}, {0x07, 0x81, 0x00, 0x00}}},
{{{ 19, -66, -17}, 0, { 0, 0}, {0x0c, 0x97, 0xb9, 0x00}}},
};
const Vtx kirby_vt_04000A20[] = {
{{{ 21, -53, -28}, 0, { 0, 0}, {0x0a, 0xc1, 0x92, 0x00}}},
{{{ -11, -9, -24}, 0, { 0, 0}, {0xa5, 0xe8, 0xab, 0x00}}},
{{{ -1, -38, -24}, 0, { 0, 0}, {0xa9, 0xdc, 0xab, 0x00}}},
{{{ 6, -68, -10}, 0, { 0, 0}, {0xbb, 0x9d, 0xd7, 0x00}}},
{{{ 4, -57, -20}, 0, { 0, 0}, {0xaf, 0xc5, 0xb1, 0x00}}},
};
const Vtx kirby_vt_04000A70[] = {
{{{ -3, -58, 0}, 0, { 0, 0}, {0x90, 0xc3, 0x00, 0x00}}},
};
const Vtx kirby_vt_04000A80[] = {
{{{ -9, -41, 0}, 0, { 0, 0}, {0x88, 0xd7, 0x00, 0x00}}},
{{{ 21, -53, 28}, 0, { 0, 0}, {0x0a, 0xc1, 0x6e, 0x00}}},
{{{ 4, -57, 20}, 0, { 0, 0}, {0xaf, 0xc5, 0x4f, 0x00}}},
{{{ -2, 16, 28}, 0, { 0, 0}, {0xed, 0x42, 0x6b, 0x00}}},
{{{ 20, -32, 34}, 0, { 0, 0}, {0x04, 0xee, 0x7e, 0x00}}},
{{{ -1, -38, 24}, 0, { 0, 0}, {0xa9, 0xdc, 0x55, 0x00}}},
{{{ -11, -9, 24}, 0, { 0, 0}, {0xa5, 0xe8, 0x55, 0x00}}},
{{{ 9, -2, 34}, 0, { 0, 0}, {0xf9, 0x11, 0x7e, 0x00}}},
{{{ 19, -66, 17}, 0, { 0, 0}, {0x0c, 0x97, 0x47, 0x00}}},
{{{ 13, 23, 20}, 0, { 0, 0}, {0x21, 0x68, 0x41, 0x00}}},
{{{ 29, 6, 24}, 0, { 0, 0}, {0x4d, 0x37, 0x55, 0x00}}},
{{{ 40, -26, 24}, 0, { 0, 0}, {0x5f, 0x03, 0x55, 0x00}}},
{{{ 38, -50, 20}, 0, { 0, 0}, {0x5c, 0xcc, 0x47, 0x00}}},
{{{ -37, 9, 0}, 0, { 0, 0}, {0x94, 0x44, 0x00, 0x00}}},
{{{ -6, -67, 10}, 0, { 0, 0}, {0x45, 0x9d, 0x29, 0x00}}},
{{{ -13, 24, 20}, 0, { 0, 0}, {0xdf, 0x68, 0x41, 0x00}}},
{{{ 1, 31, 0}, 0, { 0, 0}, {0xf5, 0x7f, 0x00, 0x00}}},
{{{ -13, 24, -20}, 0, { 0, 0}, {0xdf, 0x68, 0xbf, 0x00}}},
{{{ -29, 6, -24}, 0, { 0, 0}, {0xb3, 0x37, 0xab, 0x00}}},
{{{ -32, -64, -10}, 0, { 0, 0}, {0xb5, 0x9f, 0xe0, 0x00}}},
{{{ -4, -57, 20}, 0, { 0, 0}, {0x51, 0xc5, 0x4f, 0x00}}},
{{{ 2, 16, -28}, 0, { 0, 0}, {0x13, 0x42, 0x95, 0x00}}},
{{{ -9, -2, -34}, 0, { 0, 0}, {0x07, 0x11, 0x82, 0x00}}},
{{{ -15, -73, 0}, 0, { 0, 0}, {0xf9, 0x81, 0x00, 0x00}}},
{{{ 11, -9, -24}, 0, { 0, 0}, {0x5b, 0xe8, 0xab, 0x00}}},
{{{ 1, -38, -24}, 0, { 0, 0}, {0x57, 0xdc, 0xab, 0x00}}},
{{{ 9, -40, 0}, 0, { 0, 0}, {0x78, 0xd7, 0x00, 0x00}}},
{{{ 3, -58, 0}, 0, { 0, 0}, {0x70, 0xc3, 0x00, 0x00}}},
{{{ -6, -67, -10}, 0, { 0, 0}, {0x45, 0x9d, 0xd7, 0x00}}},
{{{ -19, -66, -17}, 0, { 0, 0}, {0xf4, 0x97, 0xb9, 0x00}}},
{{{ -4, -57, -20}, 0, { 0, 0}, {0x51, 0xc5, 0xb1, 0x00}}},
};
const Vtx kirby_vt_04000C70[] = {
{{{ -21, -53, -28}, 0, { 0, 0}, {0xf6, 0xc1, 0x92, 0x00}}},
{{{ -20, -32, -34}, 0, { 0, 0}, {0xfc, 0xee, 0x82, 0x00}}},
{{{ -38, -50, -20}, 0, { 0, 0}, {0xa4, 0xcc, 0xb9, 0x00}}},
{{{ -40, -26, -24}, 0, { 0, 0}, {0xa1, 0x03, 0xab, 0x00}}},
};
const Vtx kirby_vt_04000CB0[] = {
{{{ -45, -48, 0}, 0, { 0, 0}, {0x8c, 0xcb, 0x00, 0x00}}},
};
const Vtx kirby_vt_04000CC0[] = {
{{{ -48, -23, 0}, 0, { 0, 0}, {0x81, 0x0b, 0x00, 0x00}}},
{{{ -40, -26, 24}, 0, { 0, 0}, {0xa1, 0x03, 0x55, 0x00}}},
{{{ -29, 6, 24}, 0, { 0, 0}, {0xb3, 0x37, 0x55, 0x00}}},
{{{ -20, -32, 34}, 0, { 0, 0}, {0xfc, 0xee, 0x7e, 0x00}}},
{{{ 1, -38, 24}, 0, { 0, 0}, {0x57, 0xdc, 0x55, 0x00}}},
{{{ 11, -9, 24}, 0, { 0, 0}, {0x5b, 0xe8, 0x55, 0x00}}},
{{{ -9, -2, 34}, 0, { 0, 0}, {0x07, 0x11, 0x7e, 0x00}}},
{{{ 2, 16, 28}, 0, { 0, 0}, {0x13, 0x42, 0x6b, 0x00}}},
{{{ -21, -53, 28}, 0, { 0, 0}, {0xf6, 0xc1, 0x6e, 0x00}}},
{{{ -38, -50, 20}, 0, { 0, 0}, {0xa4, 0xcc, 0x47, 0x00}}},
{{{ -32, -64, 10}, 0, { 0, 0}, {0xb5, 0x9f, 0x20, 0x00}}},
{{{ -19, -66, 17}, 0, { 0, 0}, {0xf4, 0x97, 0x47, 0x00}}},
{{{ -19, 27, 0}, 0, { 0, 0}, {0xcb, 0x74, 0x00, 0x00}}},
{{{ -36, 9, -28}, 0, { 0, 0}, {0x9c, 0x36, 0xc7, 0x00}}},
{{{ 18, -11, 42}, 0, { 0, 0}, {0x55, 0x28, 0x56, 0x00}}},
{{{ 6, 7, 41}, 0, { 0, 0}, {0x20, 0x55, 0x59, 0x00}}},
{{{ 28, 4, 18}, 0, { 0, 0}, {0x71, 0x36, 0x1a, 0x00}}},
{{{ 23, 12, -8}, 0, { 0, 0}, {0x5b, 0x56, 0xe9, 0x00}}},
{{{ -9, 30, -3}, 0, { 0, 0}, {0xfa, 0x7f, 0x04, 0x00}}},
{{{ 4, 15, -33}, 0, { 0, 0}, {0x3d, 0x58, 0xba, 0x00}}},
{{{ -17, 12, -41}, 0, { 0, 0}, {0xf1, 0x4f, 0x9d, 0x00}}},
{{{ 7, 0, -41}, 0, { 0, 0}, {0x3b, 0x11, 0x90, 0x00}}},
{{{ 25, -1, -18}, 0, { 0, 0}, {0x71, 0x0e, 0xc7, 0x00}}},
{{{ 26, -15, -10}, 0, { 0, 0}, {0x6c, 0xc8, 0xdb, 0x00}}},
{{{ 28, -15, 24}, 0, { 0, 0}, {0x62, 0xb6, 0x21, 0x00}}},
{{{ 18, -11, 42}, 0, { 0, 0}, {0x27, 0x9a, 0x40, 0x00}}},
{{{ -2, -11, 50}, 0, { 0, 0}, {0xf2, 0x27, 0x78, 0x00}}},
{{{ -2, -11, 50}, 0, { 0, 0}, {0x08, 0x98, 0x48, 0x00}}},
{{{ 5, -22, 34}, 0, { 0, 0}, {0x10, 0x8c, 0x32, 0x00}}},
{{{ -20, -15, 39}, 0, { 0, 0}, {0xc1, 0xb1, 0x4d, 0x00}}},
{{{ -23, 5, 36}, 0, { 0, 0}, {0xb0, 0x37, 0x52, 0x00}}},
};
const Vtx kirby_vt_04000EB0[] = {
{{{ 18, -22, 17}, 0, { 0, 0}, {0x23, 0x86, 0x05, 0x00}}},
};
const Vtx kirby_vt_04000EC0[] = {
{{{ -16, -22, 28}, 0, { 0, 0}, {0xed, 0x84, 0x15, 0x00}}},
{{{ -39, 4, -2}, 0, { 0, 0}, {0x88, 0x28, 0x0d, 0x00}}},
};
const Vtx kirby_vt_04000EE0[] = {
{{{ 10, -22, -25}, 0, { 0, 0}, {0x22, 0x8c, 0xd9, 0x00}}},
{{{ -37, -15, 8}, 0, { 0, 0}, {0x8c, 0xd1, 0x18, 0x00}}},
};
const Vtx kirby_vt_04000F00[] = {
{{{ 0, -13, -40}, 0, { 0, 0}, {0x39, 0xc4, 0xa0, 0x00}}},
{{{ -29, -22, -6}, 0, { 0, 0}, {0xd6, 0x88, 0xfa, 0x00}}},
{{{ -14, -20, -32}, 0, { 0, 0}, {0xf0, 0x92, 0xc2, 0x00}}},
{{{ -18, -6, -45}, 0, { 0, 0}, {0xe1, 0xe7, 0x87, 0x00}}},
{{{ -34, -13, -31}, 0, { 0, 0}, {0x9b, 0xc4, 0xcf, 0x00}}},
{{{ 23, 5, 36}, 0, { 0, 0}, {0x50, 0x37, 0x52, 0x00}}},
{{{ 2, -11, 50}, 0, { 0, 0}, {0x0e, 0x27, 0x78, 0x00}}},
{{{ 20, -15, 39}, 0, { 0, 0}, {0x3f, 0xb1, 0x4d, 0x00}}},
{{{ 2, -11, 50}, 0, { 0, 0}, {0xf8, 0x98, 0x48, 0x00}}},
{{{ 39, 4, -2}, 0, { 0, 0}, {0x78, 0x28, 0x0d, 0x00}}},
{{{ -6, 7, 41}, 0, { 0, 0}, {0xe0, 0x55, 0x59, 0x00}}},
{{{ 37, -15, 8}, 0, { 0, 0}, {0x74, 0xd1, 0x18, 0x00}}},
{{{ -18, -11, 42}, 0, { 0, 0}, {0xd9, 0x9a, 0x40, 0x00}}},
{{{ 16, -22, 28}, 0, { 0, 0}, {0x13, 0x84, 0x15, 0x00}}},
{{{ 9, 30, -3}, 0, { 0, 0}, {0x06, 0x7f, 0x04, 0x00}}},
{{{ -18, -11, 42}, 0, { 0, 0}, {0xab, 0x28, 0x56, 0x00}}},
{{{ 36, 9, -28}, 0, { 0, 0}, {0x64, 0x36, 0xc7, 0x00}}},
{{{ -5, -22, 34}, 0, { 0, 0}, {0xf0, 0x8c, 0x32, 0x00}}},
{{{ 34, -13, -31}, 0, { 0, 0}, {0x65, 0xc4, 0xcf, 0x00}}},
{{{ -23, 12, -8}, 0, { 0, 0}, {0xa5, 0x56, 0xe9, 0x00}}},
{{{ -28, -15, 24}, 0, { 0, 0}, {0x9e, 0xb6, 0x21, 0x00}}},
{{{ 17, 12, -41}, 0, { 0, 0}, {0x0f, 0x4f, 0x9d, 0x00}}},
{{{ 29, -22, -6}, 0, { 0, 0}, {0x2a, 0x88, 0xfa, 0x00}}},
{{{ -28, 4, 18}, 0, { 0, 0}, {0x8f, 0x36, 0x1a, 0x00}}},
{{{ -4, 15, -33}, 0, { 0, 0}, {0xc3, 0x58, 0xba, 0x00}}},
{{{ -18, -22, 17}, 0, { 0, 0}, {0xdd, 0x86, 0x05, 0x00}}},
{{{ 18, -6, -45}, 0, { 0, 0}, {0x1f, 0xe7, 0x87, 0x00}}},
{{{ -7, 0, -41}, 0, { 0, 0}, {0xc5, 0x11, 0x90, 0x00}}},
};
const Vtx kirby_vt_040010C0[] = {
{{{ -25, -1, -18}, 0, { 0, 0}, {0x8f, 0x0e, 0xc7, 0x00}}},
{{{ 14, -20, -32}, 0, { 0, 0}, {0x10, 0x92, 0xc2, 0x00}}},
{{{ 0, -13, -40}, 0, { 0, 0}, {0xc7, 0xc4, 0xa0, 0x00}}},
{{{ -26, -15, -10}, 0, { 0, 0}, {0x94, 0xc8, 0xdb, 0x00}}},
{{{ -10, -22, -25}, 0, { 0, 0}, {0xde, 0x8c, 0xd9, 0x00}}},
{{{ -66, 62, 46}, 0, { 6829, 12145}, {0xa4, 0x47, 0x33, 0x00}}},
{{{ -78, -12, 52}, 0, { 6722, 5927}, {0x98, 0xea, 0x46, 0x00}}},
{{{ -76, 26, 56}, 0, { 6829, 9049}, {0x97, 0x1b, 0x43, 0x00}}},
{{{ 0, 103, -2}, 0, { 8000, 16000}, {0x00, 0x7f, 0x00, 0x00}}},
{{{ 0, 93, -44}, 0, { 4000, 15549}, {0x00, 0x74, 0xcb, 0x00}}},
{{{ -28, 97, -15}, 0, { 5724, 15633}, {0xdd, 0x7a, 0xf3, 0x00}}},
{{{ -61, 82, -1}, 0, { 6126, 14248}, {0xb0, 0x63, 0x01, 0x00}}},
{{{ -45, 84, -44}, 0, { 5125, 14843}, {0xc8, 0x67, 0xce, 0x00}}},
{{{ 29, 23, -92}, 0, { 3605, 10123}, {0x30, 0x0f, 0x8b, 0x00}}},
{{{ -25, 65, -77}, 0, { 4435, 13480}, {0xd7, 0x46, 0x9e, 0x00}}},
{{{ -66, 55, -51}, 0, { 5232, 12459}, {0xa4, 0x3c, 0xc0, 0x00}}},
{{{ 0, -45, 79}, 0, { 8000, 2890}, {0x00, 0xc3, 0x6f, 0x00}}},
{{{ 29, -63, 61}, 0, { 8635, 1513}, {0x25, 0xa3, 0x4e, 0x00}}},
{{{ 0, -80, 36}, 0, { 8000, 347}, {0x00, 0x86, 0x23, 0x00}}},
{{{ -29, -63, 61}, 0, { 7364, 1513}, {0xdb, 0xa3, 0x4e, 0x00}}},
{{{ -82, 56, -1}, 0, { 6060, 12098}, {0x8c, 0x34, 0xfe, 0x00}}},
{{{ 29, -16, -91}, 0, { 3618, 6805}, {0x25, 0xdb, 0x8c, 0x00}}},
{{{ -29, 23, -92}, 0, { 4394, 10123}, {0xd0, 0x0f, 0x8b, 0x00}}},
{{{ -76, 24, -57}, 0, { 5196, 9870}, {0x9a, 0x19, 0xb8, 0x00}}},
{{{ -29, -16, -91}, 0, { 4381, 6805}, {0xdb, 0xdb, 0x8c, 0x00}}},
{{{ -74, -23, -56}, 0, { 5135, 5890}, {0x9e, 0xdf, 0xb7, 0x00}}},
{{{ -94, 8, 0}, 0, { 5997, 8055}, {0x81, 0xfb, 0x00, 0x00}}},
{{{ -73, -43, 34}, 0, { 6468, 3418}, {0x9c, 0xbd, 0x2a, 0x00}}},
};
const Vtx kirby_vt_04001280[] = {
{{{ -80, -40, -20}, 0, { 5621, 4190}, {0x90, 0xc4, 0xf2, 0x00}}},
{{{ -45, -69, 33}, 0, { 6626, 1257}, {0xc8, 0x92, 0x21, 0x00}}},
{{{ -61, -65, 1}, 0, { 5865, 1862}, {0xae, 0x9e, 0x04, 0x00}}},
};
const Vtx kirby_vt_040012B0[] = {
{{{ -56, -64, -34}, 0, { 5189, 2258}, {0xb1, 0xa5, 0xd8, 0x00}}},
};
const Vtx kirby_vt_040012C0[] = {
{{{ -44, -54, -62}, 0, { 4733, 3376}, {0xcf, 0xaa, 0xb0, 0x00}}},
};
const Vtx kirby_vt_040012D0[] = {
{{{ 0, -76, -48}, 0, { 4000, 1350}, {0x00, 0x8f, 0xc4, 0x00}}},
{{{ -30, -81, -24}, 0, { 4932, 777}, {0xd7, 0x88, 0xf0, 0x00}}},
};
const Vtx kirby_vt_040012F0[] = {
{{{ 0, -88, -2}, 0, { 3999, 0}, {0x00, 0x81, 0xfe, 0x00}}},
{{{ -44, 20, 83}, 0, { 7388, 8340}, {0xc6, 0x08, 0x71, 0x00}}},
};
const Vtx kirby_vt_04001310[] = {
{{{ -48, -30, 75}, 0, { 7243, 4185}, {0xc5, 0xd2, 0x67, 0x00}}},
{{{ 0, -7, 93}, 0, { 7999, 5923}, {0x00, 0xed, 0x7e, 0x00}}},
{{{ 48, -30, 75}, 0, { 8756, 4185}, {0x3b, 0xd2, 0x67, 0x00}}},
};
const Vtx kirby_vt_04001340[] = {
{{{ 73, -43, 34}, 0, { 9531, 3418}, {0x64, 0xbd, 0x2a, 0x00}}},
};
const Vtx kirby_vt_04001350[] = {
{{{ 80, -40, -20}, 0, { 10378, 4190}, {0x70, 0xc4, 0xf2, 0x00}}},
};
const Vtx kirby_vt_04001360[] = {
{{{ 74, -23, -56}, 0, { 10864, 5890}, {0x62, 0xdf, 0xb7, 0x00}}},
};
const Vtx kirby_vt_04001370[] = {
{{{ 76, 24, -57}, 0, { 10803, 9870}, {0x66, 0x19, 0xb8, 0x00}}},
{{{ 66, 55, -51}, 0, { 10767, 12459}, {0x5c, 0x3c, 0xc0, 0x00}}},
};
const Vtx kirby_vt_04001390[] = {
{{{ 45, 84, -44}, 0, { 10874, 14843}, {0x38, 0x67, 0xce, 0x00}}},
{{{ 61, 82, -1}, 0, { 9873, 14248}, {0x50, 0x63, 0x01, 0x00}}},
{{{ 0, 32, 92}, 0, { 7999, 9276}, {0x00, 0x1e, 0x7c, 0x00}}},
{{{ 44, 20, 83}, 0, { 8611, 8340}, {0x3a, 0x08, 0x71, 0x00}}},
};
const Vtx kirby_vt_040013D0[] = {
{{{ 78, -12, 52}, 0, { 9277, 5927}, {0x68, 0xea, 0x46, 0x00}}},
};
const Vtx kirby_vt_040013E0[] = {
{{{ 94, 8, 0}, 0, { 10002, 8055}, {0x7f, 0xfb, 0x00, 0x00}}},
{{{ 82, 56, -1}, 0, { 9939, 12098}, {0x74, 0x34, 0xfe, 0x00}}},
{{{ 76, 26, 56}, 0, { 9170, 9049}, {0x69, 0x1b, 0x43, 0x00}}},
{{{ 66, 62, 46}, 0, { 9170, 12145}, {0x5c, 0x47, 0x33, 0x00}}},
{{{ 42, 89, 36}, 0, { 8969, 14516}, {0x2e, 0x70, 0x27, 0x00}}},
{{{ 38, 60, 72}, 0, { 8591, 11785}, {0x32, 0x3e, 0x63, 0x00}}},
{{{ 0, 58, 82}, 0, { 8000, 11490}, {0x00, 0x3f, 0x6f, 0x00}}},
{{{ 0, 98, 30}, 0, { 8000, 15322}, {0x00, 0x7a, 0x24, 0x00}}},
{{{ 0, 83, 62}, 0, { 8000, 13832}, {0x00, 0x64, 0x4f, 0x00}}},
};
const Vtx kirby_vt_04001470[] = {
{{{ -38, 60, 72}, 0, { 7408, 11785}, {0xce, 0x3e, 0x63, 0x00}}},
{{{ -42, 89, 36}, 0, { 7030, 14516}, {0xd2, 0x70, 0x27, 0x00}}},
};
const Vtx kirby_vt_04001490[] = {
{{{ 56, -64, -34}, 0, { 10810, 2258}, {0x4f, 0xa5, 0xd8, 0x00}}},
{{{ -30, -81, -24}, 0, { 12932, 777}, {0xd7, 0x88, 0xf0, 0x00}}},
};
const Vtx kirby_vt_040014B0[] = {
{{{ 0, -88, -2}, 0, { 11999, 0}, {0x00, 0x81, 0xfe, 0x00}}},
{{{ 30, -81, -24}, 0, { 11067, 777}, {0x29, 0x88, 0xf0, 0x00}}},
};
const Vtx kirby_vt_040014D0[] = {
{{{ 61, -65, 1}, 0, { 10134, 1862}, {0x52, 0x9e, 0x04, 0x00}}},
{{{ 45, -69, 33}, 0, { 9373, 1257}, {0x38, 0x92, 0x21, 0x00}}},
{{{ 28, 97, -15}, 0, { 10275, 15633}, {0x23, 0x7a, 0xf3, 0x00}}},
{{{ 0, 93, -44}, 0, { 12000, 15549}, {0x00, 0x74, 0xcb, 0x00}}},
{{{ -25, 65, -77}, 0, { 12435, 13480}, {0xd7, 0x46, 0x9e, 0x00}}},
{{{ 25, 65, -77}, 0, { 11564, 13480}, {0x29, 0x46, 0x9e, 0x00}}},
{{{ -29, 23, -92}, 0, { 12394, 10123}, {0xd0, 0x0f, 0x8b, 0x00}}},
};
const Vtx kirby_vt_04001540[] = {
{{{ 29, 23, -92}, 0, { 11605, 10123}, {0x30, 0x0f, 0x8b, 0x00}}},
{{{ -29, -16, -91}, 0, { 12381, 6805}, {0xdb, 0xdb, 0x8c, 0x00}}},
{{{ 29, -16, -91}, 0, { 11618, 6805}, {0x25, 0xdb, 0x8c, 0x00}}},
{{{ 0, -55, -73}, 0, { 12000, 3385}, {0x00, 0xb2, 0x9c, 0x00}}},
};
const Vtx kirby_vt_04001580[] = {
{{{ 44, -54, -62}, 0, { 11266, 3376}, {0x31, 0xaa, 0xb0, 0x00}}},
{{{ 0, -76, -48}, 0, { 12000, 1350}, {0x00, 0x8f, 0xc4, 0x00}}},
{{{ 0, -55, -73}, 0, { 4000, 3385}, {0x00, 0xb2, 0x9c, 0x00}}},
{{{ 20, 24, 13}, 0, { 0, 0}, {0x3e, 0x65, 0x2e, 0x00}}},
{{{ -1, 31, 0}, 0, { 0, 0}, {0x09, 0x7f, 0x00, 0x00}}},
{{{ 20, 24, -13}, 0, { 0, 0}, {0x3e, 0x65, 0xd2, 0x00}}},
{{{ -2, 16, 25}, 0, { 0, 0}, {0xff, 0x49, 0x68, 0x00}}},
};
const Vtx kirby_vt_040015F0[] = {
{{{ 41, -3, 0}, 0, { 0, 0}, {0x77, 0x2c, 0x00, 0x00}}},
};
const Vtx kirby_vt_04001600[] = {
{{{ 30, 2, 24}, 0, { 0, 0}, {0x4b, 0x2f, 0x5c, 0x00}}},
{{{ 9, -3, 34}, 0, { 0, 0}, {0xef, 0x11, 0x7d, 0x00}}},
};
const Vtx kirby_vt_04001620[] = {
{{{ 46, -37, 0}, 0, { 0, 0}, {0x7e, 0xef, 0x00, 0x00}}},
{{{ 40, -36, 21}, 0, { 0, 0}, {0x67, 0xf6, 0x4b, 0x00}}},
};
const Vtx kirby_vt_04001640[] = {
{{{ 20, -32, 34}, 0, { 0, 0}, {0x18, 0xf4, 0x7d, 0x00}}},
};
const Vtx kirby_vt_04001650[] = {
{{{ 21, -53, 28}, 0, { 0, 0}, {0x18, 0xc4, 0x6e, 0x00}}},
};
const Vtx kirby_vt_04001660[] = {
{{{ 30, 2, -24}, 0, { 0, 0}, {0x4b, 0x2f, 0xa4, 0x00}}},
{{{ -2, 16, -25}, 0, { 0, 0}, {0xff, 0x49, 0x98, 0x00}}},
{{{ -11, -9, 24}, 0, { 0, 0}, {0x99, 0xf5, 0x4a, 0x00}}},
{{{ 35, -64, 10}, 0, { 0, 0}, {0x55, 0xaf, 0x31, 0x00}}},
{{{ 40, -36, -21}, 0, { 0, 0}, {0x67, 0xf6, 0xb5, 0x00}}},
{{{ -1, -46, 24}, 0, { 0, 0}, {0xb6, 0xcd, 0x5a, 0x00}}},
{{{ 9, -3, -34}, 0, { 0, 0}, {0xef, 0x11, 0x83, 0x00}}},
{{{ 17, -66, 17}, 0, { 0, 0}, {0xed, 0x99, 0x49, 0x00}}},
{{{ 35, -64, -10}, 0, { 0, 0}, {0x55, 0xaf, 0xcf, 0x00}}},
{{{ -11, -9, -24}, 0, { 0, 0}, {0x99, 0xf5, 0xb6, 0x00}}},
{{{ 20, -32, -34}, 0, { 0, 0}, {0x18, 0xf4, 0x83, 0x00}}},
};
const Vtx kirby_vt_04001710[] = {
{{{ 21, -73, 0}, 0, { 0, 0}, {0x0a, 0x81, 0x00, 0x00}}},
};
const Vtx kirby_vt_04001720[] = {
{{{ -8, -48, 0}, 0, { 0, 0}, {0x89, 0xd3, 0x00, 0x00}}},
{{{ 21, -53, -28}, 0, { 0, 0}, {0x18, 0xc4, 0x92, 0x00}}},
{{{ -1, -46, -24}, 0, { 0, 0}, {0xb6, 0xcd, 0xa6, 0x00}}},
{{{ 6, -68, 0}, 0, { 0, 0}, {0xb0, 0x9d, 0x00, 0x00}}},
{{{ 17, -66, -17}, 0, { 0, 0}, {0xed, 0x99, 0xb7, 0x00}}},
{{{ 2, 16, 25}, 0, { 0, 0}, {0x01, 0x49, 0x68, 0x00}}},
{{{ 1, 31, 0}, 0, { 0, 0}, {0xf7, 0x7f, 0x00, 0x00}}},
{{{ -9, -2, 34}, 0, { 0, 0}, {0x11, 0x11, 0x7d, 0x00}}},
{{{ -20, 25, 13}, 0, { 0, 0}, {0xc2, 0x65, 0x2e, 0x00}}},
{{{ 11, -9, 24}, 0, { 0, 0}, {0x67, 0xf5, 0x4a, 0x00}}},
{{{ -30, 2, 24}, 0, { 0, 0}, {0xb5, 0x2f, 0x5b, 0x00}}},
{{{ 2, 16, -25}, 0, { 0, 0}, {0x01, 0x49, 0x98, 0x00}}},
{{{ -20, 25, -13}, 0, { 0, 0}, {0xc2, 0x65, 0xd2, 0x00}}},
{{{ -20, -32, 34}, 0, { 0, 0}, {0xe8, 0xf4, 0x7d, 0x00}}},
{{{ 11, -9, -24}, 0, { 0, 0}, {0x67, 0xf5, 0xb6, 0x00}}},
{{{ 1, -45, 24}, 0, { 0, 0}, {0x4a, 0xcd, 0x5a, 0x00}}},
{{{ 8, -48, 0}, 0, { 0, 0}, {0x77, 0xd3, 0x00, 0x00}}},
{{{ -9, -2, -34}, 0, { 0, 0}, {0x11, 0x11, 0x83, 0x00}}},
{{{ -21, -53, 28}, 0, { 0, 0}, {0xe8, 0xc5, 0x6e, 0x00}}},
{{{ -41, -4, 0}, 0, { 0, 0}, {0x88, 0x2c, 0x00, 0x00}}},
{{{ -40, -35, 21}, 0, { 0, 0}, {0x99, 0xf6, 0x4b, 0x00}}},
{{{ -30, 2, -24}, 0, { 0, 0}, {0xb5, 0x2f, 0xa5, 0x00}}},
{{{ -17, -66, 17}, 0, { 0, 0}, {0x13, 0x99, 0x49, 0x00}}},
{{{ -6, -67, 0}, 0, { 0, 0}, {0x51, 0x9d, 0x00, 0x00}}},
{{{ 1, -45, -24}, 0, { 0, 0}, {0x4a, 0xcd, 0xa6, 0x00}}},
{{{ -20, -32, -34}, 0, { 0, 0}, {0xe8, 0xf4, 0x83, 0x00}}},
{{{ -46, -37, 0}, 0, { 0, 0}, {0x82, 0xef, 0x00, 0x00}}},
{{{ -35, -64, 10}, 0, { 0, 0}, {0xab, 0xaf, 0x31, 0x00}}},
};
const Vtx kirby_vt_040018E0[] = {
{{{ -21, -73, 0}, 0, { 0, 0}, {0xf6, 0x81, 0x00, 0x00}}},
{{{ -40, -35, -21}, 0, { 0, 0}, {0x99, 0xf6, 0xb5, 0x00}}},
{{{ -35, -64, -10}, 0, { 0, 0}, {0xab, 0xaf, 0xcf, 0x00}}},
{{{ -17, -66, -17}, 0, { 0, 0}, {0x13, 0x99, 0xb7, 0x00}}},
{{{ -21, -53, -28}, 0, { 0, 0}, {0xe8, 0xc5, 0x92, 0x00}}},
{{{ 0, 0, 0}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0x00}}},
{{{ -43, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, -87, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, -87, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, 103, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, 103, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, -87, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, -87, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, 103, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001AB0[] = {
{{{ 95, 103, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001B30[] = {
{{{ 48, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001BB0[] = {
{{{ 11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001C30[] = {
{{{ 28, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001CB0[] = {
{{{ 39, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, -88, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, -88, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, 103, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, 103, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, -88, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, -88, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, 103, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001D30[] = {
{{{ 94, 103, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001DB0[] = {
{{{ 46, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Vtx kirby_vt_04001E30[] = {
{{{ 11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
const Gfx kirby_dl_7E1A20[] = {
gsDPPipeSync(),
gsDPTileSync(),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_4b, 0, 0x0100, 5, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD),
@ -8,7 +664,7 @@ Gfx kirby_dl_7E1A20[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E1A48[] = {
const Gfx kirby_dl_7E1A48[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001AB0, 8, 0),
@ -67,7 +723,7 @@ Gfx kirby_dl_7E1A48[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E1C08[] = {
const Gfx kirby_dl_7E1C08[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001D30, 8, 0),
@ -105,7 +761,14 @@ Gfx kirby_dl_7E1C08[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E1D50[] = {
const Gfx pad[] = {
gsSPVertex(0x04001AA0, 1, 31),
gsSPBranchLessZ(0x04001FD8, 31, 9.94827, 1, 1023, G_BZ_PERSP),
gsSPBranchLessZ(0x04002198, 31, 1023, 1, 1023, G_BZ_PERSP),
gsSPEndDisplayList(),
};
const Gfx kirby_dl_7E1D50[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001B30, 8, 0),
@ -164,7 +827,7 @@ Gfx kirby_dl_7E1D50[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E1F10[] = {
const Gfx kirby_dl_7E1F10[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001DB0, 8, 0),
@ -202,7 +865,13 @@ Gfx kirby_dl_7E1F10[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2050[] = {
const Gfx pad2[] = {
gsSPBranchLessZ(0x040022E0, 31, 9.94827, 1, 1023, G_BZ_PERSP),
gsSPBranchLessZ(0x040024A0, 31, 1023, 1, 1023, G_BZ_PERSP),
gsSPEndDisplayList(),
};
const Gfx kirby_dl_7E2050[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001BB0, 8, 0),
@ -337,7 +1006,7 @@ Gfx kirby_dl_7E2050[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2470[] = {
const Gfx kirby_dl_7E2470[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001E30, 8, 0),
@ -453,7 +1122,13 @@ Gfx kirby_dl_7E2470[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2820[] = {
const Gfx kirby_dl_7E27F8[] = {
gsSPBranchLessZ(0x040025E0, 31, 9.94827, 1, 1023, G_BZ_PERSP),
gsSPBranchLessZ(0x04002A00, 31, 1023, 1, 1023, G_BZ_PERSP),
gsSPEndDisplayList(),
};
const Gfx kirby_dl_7E2820[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001C30, 8, 0),
@ -502,7 +1177,7 @@ Gfx kirby_dl_7E2820[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2990[]= {
const Gfx kirby_dl_7E2990[]= {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001EB0, 8, 0),
@ -541,13 +1216,13 @@ Gfx kirby_dl_7E2990[]= {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2AB0[] = {
const Gfx kirby_dl_7E2AB0[] = {
gsSPBranchLessZ(0x04002DB0, 31, 9.94827, 1, 1023, G_BZ_PERSP),
gsSPBranchLessZ(0x04002F20, 31, 1023, 1, 1023, G_BZ_PERSP),
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2AD8[] = {
const Gfx kirby_dl_7E2AD8[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001CB0, 8, 0),
@ -597,7 +1272,7 @@ Gfx kirby_dl_7E2AD8[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2C50[] = {
const Gfx kirby_dl_7E2C50[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsSPVertex(0x04001F30, 8, 0),
@ -636,8 +1311,8 @@ Gfx kirby_dl_7E2C50[] = {
gsSPEndDisplayList(),
};
Gfx kirby_dl_7E2D70[] = {
gsSPBranchLessZ(0x04003068, 31, 9.94827, 1, 1023, G_BZ_PERSP),
gsSPBranchLessZ(0x040031E0, 31, 1023, 1, 1023, G_BZ_PERSP),
gsSPEndDisplayList(),
};
// const Gfx kirby_dl_7E2D70[] = {
// gsSPBranchLessZ(0x04003068, 31, 9.94827, 1, 1023, G_BZ_PERSP),
// gsSPBranchLessZ(0x040031E0, 31, 1023, 1, 1023, G_BZ_PERSP),
// gsSPEndDisplayList(),
// };

657
actors/kirby/verts.inc.c Normal file
View File

@ -0,0 +1,657 @@
#include <ultra64.h>
Vtx kirby_vt_04000110[] = {
{{{ -8, -15, 45}, 0, { 0, 0}, {0xe1, 0xae, 0x5c, 0x00}}},
{{{ -5, -22, 34}, 0, { 0, 0}, {0xf3, 0x87, 0x26, 0x00}}},
};
Vtx kirby_vt_04000130[] = {
{{{ 7, -15, 47}, 0, { 0, 0}, {0x0e, 0xac, 0x5f, 0x00}}},
{{{ 20, -15, 39}, 0, { 0, 0}, {0x50, 0xc0, 0x4b, 0x00}}},
{{{ 16, -22, 28}, 0, { 0, 0}, {0x16, 0x86, 0x1b, 0x00}}},
{{{ -23, 12, -8}, 0, { 0, 0}, {0xa6, 0x56, 0xe7, 0x00}}},
{{{ -21, -15, 37}, 0, { 0, 0}, {0xbd, 0xad, 0x45, 0x00}}},
{{{ -18, -22, 17}, 0, { 0, 0}, {0xde, 0x86, 0x0b, 0x00}}},
{{{ -28, -15, 24}, 0, { 0, 0}, {0x95, 0xbf, 0x16, 0x00}}},
{{{ -18, -22, -8}, 0, { 0, 0}, {0xdd, 0x87, 0xef, 0x00}}},
{{{ -26, -15, -10}, 0, { 0, 0}, {0x9b, 0xbe, 0xd9, 0x00}}},
{{{ -4, 15, -33}, 0, { 0, 0}, {0xc6, 0x59, 0xba, 0x00}}},
{{{ -7, 0, -41}, 0, { 0, 0}, {0xc2, 0x13, 0x93, 0x00}}},
{{{ -2, -20, -28}, 0, { 0, 0}, {0xec, 0x88, 0xdc, 0x00}}},
{{{ -6, -13, -38}, 0, { 0, 0}, {0xc2, 0xc0, 0xa5, 0x00}}},
{{{ 29, -22, 5}, 0, { 0, 0}, {0x26, 0x87, 0x05, 0x00}}},
};
Vtx kirby_vt_04000210[] = {
{{{ 37, -15, 8}, 0, { 0, 0}, {0x69, 0xbc, 0x17, 0x00}}},
};
Vtx kirby_vt_04000220[] = {
{{{ 28, -20, -21}, 0, { 0, 0}, {0x21, 0x87, 0xec, 0x00}}},
};
Vtx kirby_vt_04000230[] = {
{{{ 14, -20, -32}, 0, { 0, 0}, {0x0a, 0x8b, 0xd0, 0x00}}},
{{{ 18, -11, -45}, 0, { 0, 0}, {0x19, 0xbd, 0x97, 0x00}}},
};
Vtx kirby_vt_04000250[] = {
{{{ 43, -3, -9}, 0, { 0, 0}, {0x7f, 0x0c, 0x04, 0x00}}},
{{{ 37, -13, -29}, 0, { 0, 0}, {0x67, 0xc7, 0xd1, 0x00}}},
};
Vtx kirby_vt_04000270[] = {
{{{ 18, 2, -46}, 0, { 0, 0}, {0x1d, 0x1c, 0x87, 0x00}}},
};
Vtx kirby_vt_04000280[] = {
{{{ 17, 15, -39}, 0, { 0, 0}, {0x17, 0x60, 0xb0, 0x00}}},
{{{ 36, 9, -28}, 0, { 0, 0}, {0x63, 0x40, 0xd1, 0x00}}},
{{{ -24, 10, 22}, 0, { 0, 0}, {0xa9, 0x57, 0x20, 0x00}}},
{{{ -6, 7, 41}, 0, { 0, 0}, {0xeb, 0x5e, 0x53, 0x00}}},
{{{ 9, 30, -3}, 0, { 0, 0}, {0x08, 0x7f, 0x05, 0x00}}},
{{{ 19, 7, 36}, 0, { 0, 0}, {0x43, 0x51, 0x47, 0x00}}},
{{{ 36, 8, 0}, 0, { 0, 0}, {0x62, 0x4e, 0x19, 0x00}}},
{{{ 34, -5, 22}, 0, { 0, 0}, {0x73, 0x0c, 0x34, 0x00}}},
{{{ -21, -1, -27}, 0, { 0, 0}, {0x97, 0x10, 0xbb, 0x00}}},
};
Vtx kirby_vt_04000310[] = {
{{{ 26, -6, 36}, 0, { 0, 0}, {0x5d, 0x09, 0x56, 0x00}}},
{{{ 8, -6, 50}, 0, { 0, 0}, {0x28, 0x16, 0x77, 0x00}}},
{{{ -32, -3, 3}, 0, { 0, 0}, {0x82, 0x0d, 0xf2, 0x00}}},
{{{ -32, -4, 18}, 0, { 0, 0}, {0x84, 0x0d, 0x1b, 0x00}}},
};
Vtx kirby_vt_04000350[] = {
{{{ -23, -5, 39}, 0, { 0, 0}, {0x9e, 0x16, 0x4e, 0x00}}},
{{{ -9, -5, 48}, 0, { 0, 0}, {0xd8, 0x00, 0x79, 0x00}}},
{{{ 33, -51, 67}, 0, { 8632, 2404}, {0x2a, 0xb0, 0x59, 0x00}}},
{{{ 0, -43, 81}, 0, { 8000, 3029}, {0x00, 0xbf, 0x6d, 0x00}}},
};
Vtx kirby_vt_04000390[] = {
{{{ 0, -7, 94}, 0, { 7999, 5873}, {0x00, 0xee, 0x7e, 0x00}}},
{{{ 44, 20, 84}, 0, { 8606, 8266}, {0x39, 0x0a, 0x71, 0x00}}},
{{{ 77, 26, 56}, 0, { 9186, 8984}, {0x69, 0x1c, 0x42, 0x00}}},
{{{ 42, -27, 80}, 0, { 8650, 4343}, {0x36, 0xd5, 0x6b, 0x00}}},
{{{ 77, -7, 56}, 0, { 9216, 6206}, {0x69, 0xe9, 0x44, 0x00}}},
{{{ 95, 8, 0}, 0, { 10002, 8000}, {0x7f, 0x00, 0x00, 0x00}}},
{{{ -29, 23, -93}, 0, { 12390, 10062}, {0xcf, 0x10, 0x8c, 0x00}}},
{{{ 29, 23, -93}, 0, { 11609, 10062}, {0x31, 0x10, 0x8c, 0x00}}},
{{{ 77, -9, -54}, 0, { 10795, 7003}, {0x68, 0xeb, 0xba, 0x00}}},
{{{ 83, -39, 0}, 0, { 10077, 4007}, {0x72, 0xc7, 0x03, 0x00}}},
{{{ 64, -43, 48}, 0, { 9258, 3282}, {0x56, 0xbc, 0x40, 0x00}}},
{{{ 57, -64, 26}, 0, { 9597, 1706}, {0x4f, 0xa1, 0x1f, 0x00}}},
{{{ 61, -65, -10}, 0, { 10362, 1972}, {0x4e, 0x9d, 0xf1, 0x00}}},
{{{ 0, -67, 60}, 0, { 8000, 1140}, {0x00, 0x9d, 0x50, 0x00}}},
};
Vtx kirby_vt_04000470[] = {
{{{ 37, -65, 49}, 0, { 8931, 1393}, {0x2e, 0x9a, 0x3c, 0x00}}},
};
Vtx kirby_vt_04000480[] = {
{{{ -31, -81, 12}, 0, { 14087, 410}, {0xd7, 0x89, 0x10, 0x00}}},
};
Vtx kirby_vt_04000490[] = {
{{{ 0, -82, 32}, 0, { 8000, 141}, {0x00, 0x88, 0x2a, 0x00}}},
{{{ 31, -81, 12}, 0, { 9912, 410}, {0x29, 0x89, 0x10, 0x00}}},
{{{ 68, -40, -47}, 0, { 10830, 4345}, {0x59, 0xc0, 0xbf, 0x00}}},
};
Vtx kirby_vt_040004C0[] = {
{{{ -29, -10, -92}, 0, { 12380, 7284}, {0xd0, 0xe3, 0x8e, 0x00}}},
};
Vtx kirby_vt_040004D0[] = {
{{{ 29, -10, -92}, 0, { 11619, 7284}, {0x30, 0xe3, 0x8e, 0x00}}},
};
Vtx kirby_vt_040004E0[] = {
{{{ -25, -41, -80}, 0, { 12368, 4592}, {0xd7, 0xbb, 0x9d, 0x00}}},
};
Vtx kirby_vt_040004F0[] = {
{{{ -19, -67, -59}, 0, { 12350, 2200}, {0xe6, 0x9b, 0xb7, 0x00}}},
};
Vtx kirby_vt_04000500[] = {
{{{ 25, -41, -80}, 0, { 11631, 4592}, {0x29, 0xbb, 0x9d, 0x00}}},
};
Vtx kirby_vt_04000510[] = {
{{{ 45, -65, -41}, 0, { 11050, 2188}, {0x3e, 0xa1, 0xc7, 0x00}}},
};
Vtx kirby_vt_04000520[] = {
{{{ 19, -67, -59}, 0, { 11649, 2200}, {0x1a, 0x9b, 0xb7, 0x00}}},
};
Vtx kirby_vt_04000530[] = {
{{{ 0, -87, 2}, 0, { 11999, 0}, {0x00, 0x81, 0x03, 0x00}}},
{{{ 19, -83, -24}, 0, { 11343, 559}, {0x1e, 0x87, 0xe4, 0x00}}},
{{{ -19, -83, -24}, 0, { 12656, 559}, {0xe2, 0x87, 0xe4, 0x00}}},
{{{ -68, 55, -49}, 0, { 5271, 12345}, {0xa8, 0x45, 0xc3, 0x00}}},
};
Vtx kirby_vt_04000570[] = {
{{{ 18, 99, -28}, 0, { 3008, 15837}, {0x1a, 0x79, 0xe1, 0x00}}},
{{{ 19, 82, -62}, 0, { 3573, 14702}, {0x23, 0x5e, 0xb2, 0x00}}},
};
Vtx kirby_vt_04000590[] = {
{{{ -19, 82, -62}, 0, { 4426, 14702}, {0xdd, 0x5e, 0xb2, 0x00}}},
{{{ -49, 80, -39}, 0, { 5257, 14407}, {0xc0, 0x66, 0xd7, 0x00}}},
{{{ -61, 81, -4}, 0, { 6058, 14156}, {0xad, 0x60, 0xfc, 0x00}}},
{{{ -44, 85, 39}, 0, { 7028, 14090}, {0xcb, 0x69, 0x30, 0x00}}},
};
Vtx kirby_vt_040005D0[] = {
{{{ 0, 83, 63}, 0, { 8000, 13705}, {0x00, 0x63, 0x4f, 0x00}}},
{{{ -25, 54, -82}, 0, { 12404, 12592}, {0xd4, 0x3a, 0x98, 0x00}}},
{{{ 77, 24, -55}, 0, { 10765, 9782}, {0x67, 0x1a, 0xbb, 0x00}}},
};
Vtx kirby_vt_04000600[] = {
{{{ -19, 82, -62}, 0, { 12426, 14702}, {0xdd, 0x5e, 0xb2, 0x00}}},
};
Vtx kirby_vt_04000610[] = {
{{{ 25, 54, -82}, 0, { 11595, 12592}, {0x2c, 0x3a, 0x98, 0x00}}},
};
Vtx kirby_vt_04000620[] = {
{{{ 68, 55, -49}, 0, { 10728, 12345}, {0x58, 0x45, 0xc3, 0x00}}},
{{{ 19, 82, -62}, 0, { 11573, 14702}, {0x23, 0x5e, 0xb2, 0x00}}},
};
Vtx kirby_vt_04000640[] = {
{{{ 49, 80, -39}, 0, { 10742, 14407}, {0x40, 0x66, 0xd7, 0x00}}},
{{{ -19, 99, -27}, 0, { 13046, 15831}, {0xe5, 0x79, 0xe1, 0x00}}},
{{{ 18, 99, -28}, 0, { 11008, 15837}, {0x1a, 0x79, 0xe1, 0x00}}},
};
Vtx kirby_vt_04000670[] = {
{{{ -19, 99, -27}, 0, { 5046, 15831}, {0xe5, 0x79, 0xe1, 0x00}}},
{{{ -29, 98, 8}, 0, { 6677, 15445}, {0xd6, 0x78, 0x05, 0x00}}},
{{{ 0, 103, -2}, 0, { 8000, 16000}, {0x00, 0x7f, 0x01, 0x00}}},
{{{ 0, 98, 31}, 0, { 8000, 15283}, {0x00, 0x7a, 0x25, 0x00}}},
};
Vtx kirby_vt_040006B0[] = {
{{{ 29, 98, 8}, 0, { 9322, 15445}, {0x2a, 0x78, 0x05, 0x00}}},
{{{ 61, 81, -4}, 0, { 9941, 14156}, {0x53, 0x60, 0xfc, 0x00}}},
};
Vtx kirby_vt_040006D0[] = {
{{{ 44, 85, 39}, 0, { 8971, 14090}, {0x35, 0x69, 0x30, 0x00}}},
{{{ 38, 59, 73}, 0, { 8587, 11678}, {0x33, 0x3f, 0x62, 0x00}}},
{{{ 69, 61, 43}, 0, { 9230, 12069}, {0x5e, 0x47, 0x30, 0x00}}},
};
Vtx kirby_vt_04000700[] = {
{{{ 82, 56, -1}, 0, { 9940, 12000}, {0x74, 0x35, 0xfe, 0x00}}},
};
Vtx kirby_vt_04000710[] = {
{{{ 0, 32, 93}, 0, { 7999, 9192}, {0x00, 0x1e, 0x7c, 0x00}}},
};
Vtx kirby_vt_04000720[] = {
{{{ 0, 57, 83}, 0, { 8000, 11384}, {0x00, 0x40, 0x6e, 0x00}}},
};
Vtx kirby_vt_04000730[] = {
{{{ -38, 59, 73}, 0, { 7412, 11678}, {0xcd, 0x3f, 0x62, 0x00}}},
};
Vtx kirby_vt_04000740[] = {
{{{ -44, 20, 84}, 0, { 7393, 8266}, {0xc7, 0x0a, 0x71, 0x00}}},
{{{ -33, -51, 67}, 0, { 7367, 2404}, {0xd6, 0xb0, 0x59, 0x00}}},
};
Vtx kirby_vt_04000760[] = {
{{{ -42, -27, 80}, 0, { 7349, 4343}, {0xca, 0xd5, 0x6b, 0x00}}},
{{{ 0, -87, 2}, 0, { 3999, 0}, {0x00, 0x81, 0x03, 0x00}}},
};
Vtx kirby_vt_04000780[] = {
{{{ -19, -83, -24}, 0, { 4656, 559}, {0xe2, 0x87, 0xe4, 0x00}}},
{{{ -31, -81, 12}, 0, { 6087, 410}, {0xd7, 0x89, 0x10, 0x00}}},
{{{ -61, -65, -10}, 0, { 5637, 1972}, {0xb2, 0x9d, 0xf1, 0x00}}},
{{{ 29, -10, -92}, 0, { 3619, 7284}, {0x30, 0xe3, 0x8e, 0x00}}},
{{{ -29, -10, -92}, 0, { 4380, 7284}, {0xd0, 0xe3, 0x8e, 0x00}}},
{{{ -68, -40, -47}, 0, { 5169, 4345}, {0xa7, 0xc0, 0xbf, 0x00}}},
};
Vtx kirby_vt_040007E0[] = {
{{{ -69, 61, 43}, 0, { 6769, 12069}, {0xa2, 0x47, 0x30, 0x00}}},
{{{ -77, 26, 56}, 0, { 6813, 8984}, {0x97, 0x1c, 0x42, 0x00}}},
{{{ -57, -64, 26}, 0, { 6402, 1706}, {0xb1, 0xa1, 0x1f, 0x00}}},
};
Vtx kirby_vt_04000810[] = {
{{{ -64, -43, 48}, 0, { 6741, 3282}, {0xaa, 0xbc, 0x40, 0x00}}},
{{{ -77, -7, 56}, 0, { 6783, 6206}, {0x97, 0xe9, 0x44, 0x00}}},
{{{ -83, -39, 0}, 0, { 5922, 4007}, {0x8e, 0xc7, 0x03, 0x00}}},
{{{ 29, 23, -93}, 0, { 3609, 10062}, {0x31, 0x10, 0x8c, 0x00}}},
};
Vtx kirby_vt_04000850[] = {
{{{ -29, 23, -93}, 0, { 4390, 10062}, {0xcf, 0x10, 0x8c, 0x00}}},
};
Vtx kirby_vt_04000860[] = {
{{{ -77, -9, -54}, 0, { 5204, 7003}, {0x98, 0xeb, 0xba, 0x00}}},
{{{ -95, 8, 0}, 0, { 5997, 8000}, {0x81, 0x00, 0x00, 0x00}}},
};
Vtx kirby_vt_04000880[] = {
{{{ -25, 54, -82}, 0, { 4404, 12592}, {0xd4, 0x3a, 0x98, 0x00}}},
{{{ -77, 24, -55}, 0, { 5234, 9782}, {0x99, 0x1a, 0xbb, 0x00}}},
{{{ -82, 56, -1}, 0, { 6059, 12000}, {0x8c, 0x35, 0xfe, 0x00}}},
{{{ -25, -41, -80}, 0, { 4368, 4592}, {0xd7, 0xbb, 0x9d, 0x00}}},
{{{ 19, -67, -59}, 0, { 3649, 2200}, {0x1a, 0x9b, 0xb7, 0x00}}},
{{{ -19, -67, -59}, 0, { 4350, 2200}, {0xe6, 0x9b, 0xb7, 0x00}}},
{{{ -45, -65, -41}, 0, { 4949, 2188}, {0xc2, 0xa1, 0xc7, 0x00}}},
{{{ -37, -65, 49}, 0, { 7068, 1393}, {0xd2, 0x9a, 0x3c, 0x00}}},
{{{ 25, 54, -82}, 0, { 3595, 12592}, {0x2c, 0x3a, 0x98, 0x00}}},
{{{ 31, -64, 10}, 0, { 0, 0}, {0x4b, 0x9f, 0x20, 0x00}}},
{{{ 19, 26, 0}, 0, { 0, 0}, {0x35, 0x74, 0x00, 0x00}}},
};
Vtx kirby_vt_04000930[] = {
{{{ 37, 9, 0}, 0, { 0, 0}, {0x6c, 0x44, 0x00, 0x00}}},
{{{ 48, -24, 0}, 0, { 0, 0}, {0x7f, 0x0b, 0x00, 0x00}}},
{{{ 45, -49, 0}, 0, { 0, 0}, {0x74, 0xcb, 0x00, 0x00}}},
{{{ 6, -68, 10}, 0, { 0, 0}, {0xbb, 0x9d, 0x29, 0x00}}},
{{{ -1, 31, 0}, 0, { 0, 0}, {0x0b, 0x7f, 0x00, 0x00}}},
{{{ 13, 23, -20}, 0, { 0, 0}, {0x21, 0x68, 0xbf, 0x00}}},
{{{ 29, 6, -24}, 0, { 0, 0}, {0x4d, 0x37, 0xab, 0x00}}},
{{{ 40, -26, -24}, 0, { 0, 0}, {0x5f, 0x03, 0xab, 0x00}}},
{{{ 38, -50, -20}, 0, { 0, 0}, {0x5c, 0xcc, 0xb9, 0x00}}},
};
Vtx kirby_vt_040009C0[] = {
{{{ 31, -64, -10}, 0, { 0, 0}, {0x4b, 0x9f, 0xe0, 0x00}}},
{{{ -2, 16, -28}, 0, { 0, 0}, {0xed, 0x42, 0x95, 0x00}}},
{{{ 9, -2, -34}, 0, { 0, 0}, {0xf9, 0x11, 0x82, 0x00}}},
};
Vtx kirby_vt_040009F0[] = {
{{{ 20, -32, -34}, 0, { 0, 0}, {0x04, 0xee, 0x82, 0x00}}},
{{{ 15, -73, 0}, 0, { 0, 0}, {0x07, 0x81, 0x00, 0x00}}},
{{{ 19, -66, -17}, 0, { 0, 0}, {0x0c, 0x97, 0xb9, 0x00}}},
};
Vtx kirby_vt_04000A20[] = {
{{{ 21, -53, -28}, 0, { 0, 0}, {0x0a, 0xc1, 0x92, 0x00}}},
{{{ -11, -9, -24}, 0, { 0, 0}, {0xa5, 0xe8, 0xab, 0x00}}},
{{{ -1, -38, -24}, 0, { 0, 0}, {0xa9, 0xdc, 0xab, 0x00}}},
{{{ 6, -68, -10}, 0, { 0, 0}, {0xbb, 0x9d, 0xd7, 0x00}}},
{{{ 4, -57, -20}, 0, { 0, 0}, {0xaf, 0xc5, 0xb1, 0x00}}},
};
Vtx kirby_vt_04000A70[] = {
{{{ -3, -58, 0}, 0, { 0, 0}, {0x90, 0xc3, 0x00, 0x00}}},
};
Vtx kirby_vt_04000A80[] = {
{{{ -9, -41, 0}, 0, { 0, 0}, {0x88, 0xd7, 0x00, 0x00}}},
{{{ 21, -53, 28}, 0, { 0, 0}, {0x0a, 0xc1, 0x6e, 0x00}}},
{{{ 4, -57, 20}, 0, { 0, 0}, {0xaf, 0xc5, 0x4f, 0x00}}},
{{{ -2, 16, 28}, 0, { 0, 0}, {0xed, 0x42, 0x6b, 0x00}}},
{{{ 20, -32, 34}, 0, { 0, 0}, {0x04, 0xee, 0x7e, 0x00}}},
{{{ -1, -38, 24}, 0, { 0, 0}, {0xa9, 0xdc, 0x55, 0x00}}},
{{{ -11, -9, 24}, 0, { 0, 0}, {0xa5, 0xe8, 0x55, 0x00}}},
{{{ 9, -2, 34}, 0, { 0, 0}, {0xf9, 0x11, 0x7e, 0x00}}},
{{{ 19, -66, 17}, 0, { 0, 0}, {0x0c, 0x97, 0x47, 0x00}}},
{{{ 13, 23, 20}, 0, { 0, 0}, {0x21, 0x68, 0x41, 0x00}}},
{{{ 29, 6, 24}, 0, { 0, 0}, {0x4d, 0x37, 0x55, 0x00}}},
{{{ 40, -26, 24}, 0, { 0, 0}, {0x5f, 0x03, 0x55, 0x00}}},
{{{ 38, -50, 20}, 0, { 0, 0}, {0x5c, 0xcc, 0x47, 0x00}}},
{{{ -37, 9, 0}, 0, { 0, 0}, {0x94, 0x44, 0x00, 0x00}}},
{{{ -6, -67, 10}, 0, { 0, 0}, {0x45, 0x9d, 0x29, 0x00}}},
{{{ -13, 24, 20}, 0, { 0, 0}, {0xdf, 0x68, 0x41, 0x00}}},
{{{ 1, 31, 0}, 0, { 0, 0}, {0xf5, 0x7f, 0x00, 0x00}}},
{{{ -13, 24, -20}, 0, { 0, 0}, {0xdf, 0x68, 0xbf, 0x00}}},
{{{ -29, 6, -24}, 0, { 0, 0}, {0xb3, 0x37, 0xab, 0x00}}},
{{{ -32, -64, -10}, 0, { 0, 0}, {0xb5, 0x9f, 0xe0, 0x00}}},
{{{ -4, -57, 20}, 0, { 0, 0}, {0x51, 0xc5, 0x4f, 0x00}}},
{{{ 2, 16, -28}, 0, { 0, 0}, {0x13, 0x42, 0x95, 0x00}}},
{{{ -9, -2, -34}, 0, { 0, 0}, {0x07, 0x11, 0x82, 0x00}}},
{{{ -15, -73, 0}, 0, { 0, 0}, {0xf9, 0x81, 0x00, 0x00}}},
{{{ 11, -9, -24}, 0, { 0, 0}, {0x5b, 0xe8, 0xab, 0x00}}},
{{{ 1, -38, -24}, 0, { 0, 0}, {0x57, 0xdc, 0xab, 0x00}}},
{{{ 9, -40, 0}, 0, { 0, 0}, {0x78, 0xd7, 0x00, 0x00}}},
{{{ 3, -58, 0}, 0, { 0, 0}, {0x70, 0xc3, 0x00, 0x00}}},
{{{ -6, -67, -10}, 0, { 0, 0}, {0x45, 0x9d, 0xd7, 0x00}}},
{{{ -19, -66, -17}, 0, { 0, 0}, {0xf4, 0x97, 0xb9, 0x00}}},
{{{ -4, -57, -20}, 0, { 0, 0}, {0x51, 0xc5, 0xb1, 0x00}}},
};
Vtx kirby_vt_04000C70[] = {
{{{ -21, -53, -28}, 0, { 0, 0}, {0xf6, 0xc1, 0x92, 0x00}}},
{{{ -20, -32, -34}, 0, { 0, 0}, {0xfc, 0xee, 0x82, 0x00}}},
{{{ -38, -50, -20}, 0, { 0, 0}, {0xa4, 0xcc, 0xb9, 0x00}}},
{{{ -40, -26, -24}, 0, { 0, 0}, {0xa1, 0x03, 0xab, 0x00}}},
};
Vtx kirby_vt_04000CB0[] = {
{{{ -45, -48, 0}, 0, { 0, 0}, {0x8c, 0xcb, 0x00, 0x00}}},
};
Vtx kirby_vt_04000CC0[] = {
{{{ -48, -23, 0}, 0, { 0, 0}, {0x81, 0x0b, 0x00, 0x00}}},
{{{ -40, -26, 24}, 0, { 0, 0}, {0xa1, 0x03, 0x55, 0x00}}},
{{{ -29, 6, 24}, 0, { 0, 0}, {0xb3, 0x37, 0x55, 0x00}}},
{{{ -20, -32, 34}, 0, { 0, 0}, {0xfc, 0xee, 0x7e, 0x00}}},
{{{ 1, -38, 24}, 0, { 0, 0}, {0x57, 0xdc, 0x55, 0x00}}},
{{{ 11, -9, 24}, 0, { 0, 0}, {0x5b, 0xe8, 0x55, 0x00}}},
{{{ -9, -2, 34}, 0, { 0, 0}, {0x07, 0x11, 0x7e, 0x00}}},
{{{ 2, 16, 28}, 0, { 0, 0}, {0x13, 0x42, 0x6b, 0x00}}},
{{{ -21, -53, 28}, 0, { 0, 0}, {0xf6, 0xc1, 0x6e, 0x00}}},
{{{ -38, -50, 20}, 0, { 0, 0}, {0xa4, 0xcc, 0x47, 0x00}}},
{{{ -32, -64, 10}, 0, { 0, 0}, {0xb5, 0x9f, 0x20, 0x00}}},
{{{ -19, -66, 17}, 0, { 0, 0}, {0xf4, 0x97, 0x47, 0x00}}},
{{{ -19, 27, 0}, 0, { 0, 0}, {0xcb, 0x74, 0x00, 0x00}}},
{{{ -36, 9, -28}, 0, { 0, 0}, {0x9c, 0x36, 0xc7, 0x00}}},
{{{ 18, -11, 42}, 0, { 0, 0}, {0x55, 0x28, 0x56, 0x00}}},
{{{ 6, 7, 41}, 0, { 0, 0}, {0x20, 0x55, 0x59, 0x00}}},
{{{ 28, 4, 18}, 0, { 0, 0}, {0x71, 0x36, 0x1a, 0x00}}},
{{{ 23, 12, -8}, 0, { 0, 0}, {0x5b, 0x56, 0xe9, 0x00}}},
{{{ -9, 30, -3}, 0, { 0, 0}, {0xfa, 0x7f, 0x04, 0x00}}},
{{{ 4, 15, -33}, 0, { 0, 0}, {0x3d, 0x58, 0xba, 0x00}}},
{{{ -17, 12, -41}, 0, { 0, 0}, {0xf1, 0x4f, 0x9d, 0x00}}},
{{{ 7, 0, -41}, 0, { 0, 0}, {0x3b, 0x11, 0x90, 0x00}}},
{{{ 25, -1, -18}, 0, { 0, 0}, {0x71, 0x0e, 0xc7, 0x00}}},
{{{ 26, -15, -10}, 0, { 0, 0}, {0x6c, 0xc8, 0xdb, 0x00}}},
{{{ 28, -15, 24}, 0, { 0, 0}, {0x62, 0xb6, 0x21, 0x00}}},
{{{ 18, -11, 42}, 0, { 0, 0}, {0x27, 0x9a, 0x40, 0x00}}},
{{{ -2, -11, 50}, 0, { 0, 0}, {0xf2, 0x27, 0x78, 0x00}}},
{{{ -2, -11, 50}, 0, { 0, 0}, {0x08, 0x98, 0x48, 0x00}}},
{{{ 5, -22, 34}, 0, { 0, 0}, {0x10, 0x8c, 0x32, 0x00}}},
{{{ -20, -15, 39}, 0, { 0, 0}, {0xc1, 0xb1, 0x4d, 0x00}}},
{{{ -23, 5, 36}, 0, { 0, 0}, {0xb0, 0x37, 0x52, 0x00}}},
};
Vtx kirby_vt_04000EB0[] = {
{{{ 18, -22, 17}, 0, { 0, 0}, {0x23, 0x86, 0x05, 0x00}}},
};
Vtx kirby_vt_04000EC0[] = {
{{{ -16, -22, 28}, 0, { 0, 0}, {0xed, 0x84, 0x15, 0x00}}},
{{{ -39, 4, -2}, 0, { 0, 0}, {0x88, 0x28, 0x0d, 0x00}}},
};
Vtx kirby_vt_04000EE0[] = {
{{{ 10, -22, -25}, 0, { 0, 0}, {0x22, 0x8c, 0xd9, 0x00}}},
{{{ -37, -15, 8}, 0, { 0, 0}, {0x8c, 0xd1, 0x18, 0x00}}},
};
Vtx kirby_vt_04000F00[] = {
{{{ 0, -13, -40}, 0, { 0, 0}, {0x39, 0xc4, 0xa0, 0x00}}},
{{{ -29, -22, -6}, 0, { 0, 0}, {0xd6, 0x88, 0xfa, 0x00}}},
{{{ -14, -20, -32}, 0, { 0, 0}, {0xf0, 0x92, 0xc2, 0x00}}},
{{{ -18, -6, -45}, 0, { 0, 0}, {0xe1, 0xe7, 0x87, 0x00}}},
{{{ -34, -13, -31}, 0, { 0, 0}, {0x9b, 0xc4, 0xcf, 0x00}}},
{{{ 23, 5, 36}, 0, { 0, 0}, {0x50, 0x37, 0x52, 0x00}}},
{{{ 2, -11, 50}, 0, { 0, 0}, {0x0e, 0x27, 0x78, 0x00}}},
{{{ 20, -15, 39}, 0, { 0, 0}, {0x3f, 0xb1, 0x4d, 0x00}}},
{{{ 2, -11, 50}, 0, { 0, 0}, {0xf8, 0x98, 0x48, 0x00}}},
{{{ 39, 4, -2}, 0, { 0, 0}, {0x78, 0x28, 0x0d, 0x00}}},
{{{ -6, 7, 41}, 0, { 0, 0}, {0xe0, 0x55, 0x59, 0x00}}},
{{{ 37, -15, 8}, 0, { 0, 0}, {0x74, 0xd1, 0x18, 0x00}}},
{{{ -18, -11, 42}, 0, { 0, 0}, {0xd9, 0x9a, 0x40, 0x00}}},
{{{ 16, -22, 28}, 0, { 0, 0}, {0x13, 0x84, 0x15, 0x00}}},
{{{ 9, 30, -3}, 0, { 0, 0}, {0x06, 0x7f, 0x04, 0x00}}},
{{{ -18, -11, 42}, 0, { 0, 0}, {0xab, 0x28, 0x56, 0x00}}},
{{{ 36, 9, -28}, 0, { 0, 0}, {0x64, 0x36, 0xc7, 0x00}}},
{{{ -5, -22, 34}, 0, { 0, 0}, {0xf0, 0x8c, 0x32, 0x00}}},
{{{ 34, -13, -31}, 0, { 0, 0}, {0x65, 0xc4, 0xcf, 0x00}}},
{{{ -23, 12, -8}, 0, { 0, 0}, {0xa5, 0x56, 0xe9, 0x00}}},
{{{ -28, -15, 24}, 0, { 0, 0}, {0x9e, 0xb6, 0x21, 0x00}}},
{{{ 17, 12, -41}, 0, { 0, 0}, {0x0f, 0x4f, 0x9d, 0x00}}},
{{{ 29, -22, -6}, 0, { 0, 0}, {0x2a, 0x88, 0xfa, 0x00}}},
{{{ -28, 4, 18}, 0, { 0, 0}, {0x8f, 0x36, 0x1a, 0x00}}},
{{{ -4, 15, -33}, 0, { 0, 0}, {0xc3, 0x58, 0xba, 0x00}}},
{{{ -18, -22, 17}, 0, { 0, 0}, {0xdd, 0x86, 0x05, 0x00}}},
{{{ 18, -6, -45}, 0, { 0, 0}, {0x1f, 0xe7, 0x87, 0x00}}},
{{{ -7, 0, -41}, 0, { 0, 0}, {0xc5, 0x11, 0x90, 0x00}}},
};
Vtx kirby_vt_040010C0[] = {
{{{ -25, -1, -18}, 0, { 0, 0}, {0x8f, 0x0e, 0xc7, 0x00}}},
{{{ 14, -20, -32}, 0, { 0, 0}, {0x10, 0x92, 0xc2, 0x00}}},
{{{ 0, -13, -40}, 0, { 0, 0}, {0xc7, 0xc4, 0xa0, 0x00}}},
{{{ -26, -15, -10}, 0, { 0, 0}, {0x94, 0xc8, 0xdb, 0x00}}},
{{{ -10, -22, -25}, 0, { 0, 0}, {0xde, 0x8c, 0xd9, 0x00}}},
{{{ -66, 62, 46}, 0, { 6829, 12145}, {0xa4, 0x47, 0x33, 0x00}}},
{{{ -78, -12, 52}, 0, { 6722, 5927}, {0x98, 0xea, 0x46, 0x00}}},
{{{ -76, 26, 56}, 0, { 6829, 9049}, {0x97, 0x1b, 0x43, 0x00}}},
{{{ 0, 103, -2}, 0, { 8000, 16000}, {0x00, 0x7f, 0x00, 0x00}}},
{{{ 0, 93, -44}, 0, { 4000, 15549}, {0x00, 0x74, 0xcb, 0x00}}},
{{{ -28, 97, -15}, 0, { 5724, 15633}, {0xdd, 0x7a, 0xf3, 0x00}}},
{{{ -61, 82, -1}, 0, { 6126, 14248}, {0xb0, 0x63, 0x01, 0x00}}},
{{{ -45, 84, -44}, 0, { 5125, 14843}, {0xc8, 0x67, 0xce, 0x00}}},
{{{ 29, 23, -92}, 0, { 3605, 10123}, {0x30, 0x0f, 0x8b, 0x00}}},
{{{ -25, 65, -77}, 0, { 4435, 13480}, {0xd7, 0x46, 0x9e, 0x00}}},
{{{ -66, 55, -51}, 0, { 5232, 12459}, {0xa4, 0x3c, 0xc0, 0x00}}},
{{{ 0, -45, 79}, 0, { 8000, 2890}, {0x00, 0xc3, 0x6f, 0x00}}},
{{{ 29, -63, 61}, 0, { 8635, 1513}, {0x25, 0xa3, 0x4e, 0x00}}},
{{{ 0, -80, 36}, 0, { 8000, 347}, {0x00, 0x86, 0x23, 0x00}}},
{{{ -29, -63, 61}, 0, { 7364, 1513}, {0xdb, 0xa3, 0x4e, 0x00}}},
{{{ -82, 56, -1}, 0, { 6060, 12098}, {0x8c, 0x34, 0xfe, 0x00}}},
{{{ 29, -16, -91}, 0, { 3618, 6805}, {0x25, 0xdb, 0x8c, 0x00}}},
{{{ -29, 23, -92}, 0, { 4394, 10123}, {0xd0, 0x0f, 0x8b, 0x00}}},
{{{ -76, 24, -57}, 0, { 5196, 9870}, {0x9a, 0x19, 0xb8, 0x00}}},
{{{ -29, -16, -91}, 0, { 4381, 6805}, {0xdb, 0xdb, 0x8c, 0x00}}},
{{{ -74, -23, -56}, 0, { 5135, 5890}, {0x9e, 0xdf, 0xb7, 0x00}}},
{{{ -94, 8, 0}, 0, { 5997, 8055}, {0x81, 0xfb, 0x00, 0x00}}},
{{{ -73, -43, 34}, 0, { 6468, 3418}, {0x9c, 0xbd, 0x2a, 0x00}}},
};
Vtx kirby_vt_04001280[] = {
{{{ -80, -40, -20}, 0, { 5621, 4190}, {0x90, 0xc4, 0xf2, 0x00}}},
{{{ -45, -69, 33}, 0, { 6626, 1257}, {0xc8, 0x92, 0x21, 0x00}}},
{{{ -61, -65, 1}, 0, { 5865, 1862}, {0xae, 0x9e, 0x04, 0x00}}},
};
Vtx kirby_vt_040012B0[] = {
{{{ -56, -64, -34}, 0, { 5189, 2258}, {0xb1, 0xa5, 0xd8, 0x00}}},
};
Vtx kirby_vt_040012C0[] = {
{{{ -44, -54, -62}, 0, { 4733, 3376}, {0xcf, 0xaa, 0xb0, 0x00}}},
};
Vtx kirby_vt_040012D0[] = {
{{{ 0, -76, -48}, 0, { 4000, 1350}, {0x00, 0x8f, 0xc4, 0x00}}},
{{{ -30, -81, -24}, 0, { 4932, 777}, {0xd7, 0x88, 0xf0, 0x00}}},
};
Vtx kirby_vt_040012F0[] = {
{{{ 0, -88, -2}, 0, { 3999, 0}, {0x00, 0x81, 0xfe, 0x00}}},
{{{ -44, 20, 83}, 0, { 7388, 8340}, {0xc6, 0x08, 0x71, 0x00}}},
};
Vtx kirby_vt_04001310[] = {
{{{ -48, -30, 75}, 0, { 7243, 4185}, {0xc5, 0xd2, 0x67, 0x00}}},
{{{ 0, -7, 93}, 0, { 7999, 5923}, {0x00, 0xed, 0x7e, 0x00}}},
{{{ 48, -30, 75}, 0, { 8756, 4185}, {0x3b, 0xd2, 0x67, 0x00}}},
};
Vtx kirby_vt_04001340[] = {
{{{ 73, -43, 34}, 0, { 9531, 3418}, {0x64, 0xbd, 0x2a, 0x00}}},
};
Vtx kirby_vt_04001350[] = {
{{{ 80, -40, -20}, 0, { 10378, 4190}, {0x70, 0xc4, 0xf2, 0x00}}},
};
Vtx kirby_vt_04001360[] = {
{{{ 74, -23, -56}, 0, { 10864, 5890}, {0x62, 0xdf, 0xb7, 0x00}}},
};
Vtx kirby_vt_04001370[] = {
{{{ 76, 24, -57}, 0, { 10803, 9870}, {0x66, 0x19, 0xb8, 0x00}}},
{{{ 66, 55, -51}, 0, { 10767, 12459}, {0x5c, 0x3c, 0xc0, 0x00}}},
};
Vtx kirby_vt_04001390[] = {
{{{ 45, 84, -44}, 0, { 10874, 14843}, {0x38, 0x67, 0xce, 0x00}}},
{{{ 61, 82, -1}, 0, { 9873, 14248}, {0x50, 0x63, 0x01, 0x00}}},
{{{ 0, 32, 92}, 0, { 7999, 9276}, {0x00, 0x1e, 0x7c, 0x00}}},
{{{ 44, 20, 83}, 0, { 8611, 8340}, {0x3a, 0x08, 0x71, 0x00}}},
};
Vtx kirby_vt_040013D0[] = {
{{{ 78, -12, 52}, 0, { 9277, 5927}, {0x68, 0xea, 0x46, 0x00}}},
};
Vtx kirby_vt_040013E0[] = {
{{{ 94, 8, 0}, 0, { 10002, 8055}, {0x7f, 0xfb, 0x00, 0x00}}},
{{{ 82, 56, -1}, 0, { 9939, 12098}, {0x74, 0x34, 0xfe, 0x00}}},
{{{ 76, 26, 56}, 0, { 9170, 9049}, {0x69, 0x1b, 0x43, 0x00}}},
{{{ 66, 62, 46}, 0, { 9170, 12145}, {0x5c, 0x47, 0x33, 0x00}}},
{{{ 42, 89, 36}, 0, { 8969, 14516}, {0x2e, 0x70, 0x27, 0x00}}},
{{{ 38, 60, 72}, 0, { 8591, 11785}, {0x32, 0x3e, 0x63, 0x00}}},
{{{ 0, 58, 82}, 0, { 8000, 11490}, {0x00, 0x3f, 0x6f, 0x00}}},
{{{ 0, 98, 30}, 0, { 8000, 15322}, {0x00, 0x7a, 0x24, 0x00}}},
{{{ 0, 83, 62}, 0, { 8000, 13832}, {0x00, 0x64, 0x4f, 0x00}}},
};
Vtx kirby_vt_04001470[] = {
{{{ -38, 60, 72}, 0, { 7408, 11785}, {0xce, 0x3e, 0x63, 0x00}}},
{{{ -42, 89, 36}, 0, { 7030, 14516}, {0xd2, 0x70, 0x27, 0x00}}},
};
Vtx kirby_vt_04001490[] = {
{{{ 56, -64, -34}, 0, { 10810, 2258}, {0x4f, 0xa5, 0xd8, 0x00}}},
{{{ -30, -81, -24}, 0, { 12932, 777}, {0xd7, 0x88, 0xf0, 0x00}}},
};
Vtx kirby_vt_040014B0[] = {
{{{ 0, -88, -2}, 0, { 11999, 0}, {0x00, 0x81, 0xfe, 0x00}}},
{{{ 30, -81, -24}, 0, { 11067, 777}, {0x29, 0x88, 0xf0, 0x00}}},
};
Vtx kirby_vt_040014D0[] = {
{{{ 61, -65, 1}, 0, { 10134, 1862}, {0x52, 0x9e, 0x04, 0x00}}},
{{{ 45, -69, 33}, 0, { 9373, 1257}, {0x38, 0x92, 0x21, 0x00}}},
{{{ 28, 97, -15}, 0, { 10275, 15633}, {0x23, 0x7a, 0xf3, 0x00}}},
{{{ 0, 93, -44}, 0, { 12000, 15549}, {0x00, 0x74, 0xcb, 0x00}}},
{{{ -25, 65, -77}, 0, { 12435, 13480}, {0xd7, 0x46, 0x9e, 0x00}}},
{{{ 25, 65, -77}, 0, { 11564, 13480}, {0x29, 0x46, 0x9e, 0x00}}},
{{{ -29, 23, -92}, 0, { 12394, 10123}, {0xd0, 0x0f, 0x8b, 0x00}}},
};
Vtx kirby_vt_04001540[] = {
{{{ 29, 23, -92}, 0, { 11605, 10123}, {0x30, 0x0f, 0x8b, 0x00}}},
{{{ -29, -16, -91}, 0, { 12381, 6805}, {0xdb, 0xdb, 0x8c, 0x00}}},
{{{ 29, -16, -91}, 0, { 11618, 6805}, {0x25, 0xdb, 0x8c, 0x00}}},
{{{ 0, -55, -73}, 0, { 12000, 3385}, {0x00, 0xb2, 0x9c, 0x00}}},
};
Vtx kirby_vt_04001580[] = {
{{{ 44, -54, -62}, 0, { 11266, 3376}, {0x31, 0xaa, 0xb0, 0x00}}},
{{{ 0, -76, -48}, 0, { 12000, 1350}, {0x00, 0x8f, 0xc4, 0x00}}},
{{{ 0, -55, -73}, 0, { 4000, 3385}, {0x00, 0xb2, 0x9c, 0x00}}},
{{{ 20, 24, 13}, 0, { 0, 0}, {0x3e, 0x65, 0x2e, 0x00}}},
{{{ -1, 31, 0}, 0, { 0, 0}, {0x09, 0x7f, 0x00, 0x00}}},
{{{ 20, 24, -13}, 0, { 0, 0}, {0x3e, 0x65, 0xd2, 0x00}}},
{{{ -2, 16, 25}, 0, { 0, 0}, {0xff, 0x49, 0x68, 0x00}}},
};
Vtx kirby_vt_040015F0[] = {
{{{ 41, -3, 0}, 0, { 0, 0}, {0x77, 0x2c, 0x00, 0x00}}},
};
Vtx kirby_vt_04001600[] = {
{{{ 30, 2, 24}, 0, { 0, 0}, {0x4b, 0x2f, 0x5c, 0x00}}},
{{{ 9, -3, 34}, 0, { 0, 0}, {0xef, 0x11, 0x7d, 0x00}}},
};
Vtx kirby_vt_04001620[] = {
{{{ 46, -37, 0}, 0, { 0, 0}, {0x7e, 0xef, 0x00, 0x00}}},
{{{ 40, -36, 21}, 0, { 0, 0}, {0x67, 0xf6, 0x4b, 0x00}}},
};
Vtx kirby_vt_04001640[] = {
{{{ 20, -32, 34}, 0, { 0, 0}, {0x18, 0xf4, 0x7d, 0x00}}},
};
Vtx kirby_vt_04001650[] = {
{{{ 21, -53, 28}, 0, { 0, 0}, {0x18, 0xc4, 0x6e, 0x00}}},
};
Vtx kirby_vt_04001660[] = {
{{{ 30, 2, -24}, 0, { 0, 0}, {0x4b, 0x2f, 0xa4, 0x00}}},
{{{ -2, 16, -25}, 0, { 0, 0}, {0xff, 0x49, 0x98, 0x00}}},
{{{ -11, -9, 24}, 0, { 0, 0}, {0x99, 0xf5, 0x4a, 0x00}}},
{{{ 35, -64, 10}, 0, { 0, 0}, {0x55, 0xaf, 0x31, 0x00}}},
{{{ 40, -36, -21}, 0, { 0, 0}, {0x67, 0xf6, 0xb5, 0x00}}},
{{{ -1, -46, 24}, 0, { 0, 0}, {0xb6, 0xcd, 0x5a, 0x00}}},
{{{ 9, -3, -34}, 0, { 0, 0}, {0xef, 0x11, 0x83, 0x00}}},
{{{ 17, -66, 17}, 0, { 0, 0}, {0xed, 0x99, 0x49, 0x00}}},
{{{ 35, -64, -10}, 0, { 0, 0}, {0x55, 0xaf, 0xcf, 0x00}}},
{{{ -11, -9, -24}, 0, { 0, 0}, {0x99, 0xf5, 0xb6, 0x00}}},
{{{ 20, -32, -34}, 0, { 0, 0}, {0x18, 0xf4, 0x83, 0x00}}},
};
Vtx kirby_vt_04001710[] = {
{{{ 21, -73, 0}, 0, { 0, 0}, {0x0a, 0x81, 0x00, 0x00}}},
};
Vtx kirby_vt_04001720[] = {
{{{ -8, -48, 0}, 0, { 0, 0}, {0x89, 0xd3, 0x00, 0x00}}},
{{{ 21, -53, -28}, 0, { 0, 0}, {0x18, 0xc4, 0x92, 0x00}}},
{{{ -1, -46, -24}, 0, { 0, 0}, {0xb6, 0xcd, 0xa6, 0x00}}},
{{{ 6, -68, 0}, 0, { 0, 0}, {0xb0, 0x9d, 0x00, 0x00}}},
{{{ 17, -66, -17}, 0, { 0, 0}, {0xed, 0x99, 0xb7, 0x00}}},
{{{ 2, 16, 25}, 0, { 0, 0}, {0x01, 0x49, 0x68, 0x00}}},
{{{ 1, 31, 0}, 0, { 0, 0}, {0xf7, 0x7f, 0x00, 0x00}}},
{{{ -9, -2, 34}, 0, { 0, 0}, {0x11, 0x11, 0x7d, 0x00}}},
{{{ -20, 25, 13}, 0, { 0, 0}, {0xc2, 0x65, 0x2e, 0x00}}},
{{{ 11, -9, 24}, 0, { 0, 0}, {0x67, 0xf5, 0x4a, 0x00}}},
{{{ -30, 2, 24}, 0, { 0, 0}, {0xb5, 0x2f, 0x5b, 0x00}}},
{{{ 2, 16, -25}, 0, { 0, 0}, {0x01, 0x49, 0x98, 0x00}}},
{{{ -20, 25, -13}, 0, { 0, 0}, {0xc2, 0x65, 0xd2, 0x00}}},
{{{ -20, -32, 34}, 0, { 0, 0}, {0xe8, 0xf4, 0x7d, 0x00}}},
{{{ 11, -9, -24}, 0, { 0, 0}, {0x67, 0xf5, 0xb6, 0x00}}},
{{{ 1, -45, 24}, 0, { 0, 0}, {0x4a, 0xcd, 0x5a, 0x00}}},
{{{ 8, -48, 0}, 0, { 0, 0}, {0x77, 0xd3, 0x00, 0x00}}},
{{{ -9, -2, -34}, 0, { 0, 0}, {0x11, 0x11, 0x83, 0x00}}},
{{{ -21, -53, 28}, 0, { 0, 0}, {0xe8, 0xc5, 0x6e, 0x00}}},
{{{ -41, -4, 0}, 0, { 0, 0}, {0x88, 0x2c, 0x00, 0x00}}},
{{{ -40, -35, 21}, 0, { 0, 0}, {0x99, 0xf6, 0x4b, 0x00}}},
{{{ -30, 2, -24}, 0, { 0, 0}, {0xb5, 0x2f, 0xa5, 0x00}}},
{{{ -17, -66, 17}, 0, { 0, 0}, {0x13, 0x99, 0x49, 0x00}}},
{{{ -6, -67, 0}, 0, { 0, 0}, {0x51, 0x9d, 0x00, 0x00}}},
{{{ 1, -45, -24}, 0, { 0, 0}, {0x4a, 0xcd, 0xa6, 0x00}}},
{{{ -20, -32, -34}, 0, { 0, 0}, {0xe8, 0xf4, 0x83, 0x00}}},
{{{ -46, -37, 0}, 0, { 0, 0}, {0x82, 0xef, 0x00, 0x00}}},
{{{ -35, -64, 10}, 0, { 0, 0}, {0xab, 0xaf, 0x31, 0x00}}},
};
Vtx kirby_vt_040018E0[] = {
{{{ -21, -73, 0}, 0, { 0, 0}, {0xf6, 0x81, 0x00, 0x00}}},
{{{ -40, -35, -21}, 0, { 0, 0}, {0x99, 0xf6, 0xb5, 0x00}}},
{{{ -35, -64, -10}, 0, { 0, 0}, {0xab, 0xaf, 0xcf, 0x00}}},
{{{ -17, -66, -17}, 0, { 0, 0}, {0x13, 0x99, 0xb7, 0x00}}},
{{{ -21, -53, -28}, 0, { 0, 0}, {0xe8, 0xc5, 0x92, 0x00}}},
{{{ 0, 0, 0}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0x00}}},
{{{ -43, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -43, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 32, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -32, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, -22, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, 30, -46}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 43, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, -87, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, -87, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, 103, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -95, 103, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, -87, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, -87, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 95, 103, -93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001AB0[] = {
{{{ 95, 103, 94}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 48, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001B30[] = {
{{{ 48, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -48, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001BB0[] = {
{{{ 11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -39, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 28, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001C30[] = {
{{{ 28, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -28, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, -22, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, -22, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 39, 30, -45}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001CB0[] = {
{{{ 39, 30, 50}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, -88, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, -88, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, 103, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -94, 103, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, -88, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, -88, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 94, 103, -92}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001D30[] = {
{{{ 94, 103, 93}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 46, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001DB0[] = {
{{{ 46, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ -46, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, -73, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
{{{ 11, 31, -34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};
Vtx kirby_vt_04001E30[] = {
{{{ 11, 31, 34}, 0, { 0, 0}, {0x00, 0x00, 0x00, 0xff}}},
};

2
asm/kirby.u.7E2D70.s Normal file
View File

@ -0,0 +1,2 @@
.section .data
.incbin "bin/kirby.u.7E2D70.bin"

View File

@ -1,3 +1,24 @@
# .late_rodata
# glabel jtbl_800406BC
# .word L8000CBD0_ovl0
# .word L8000CABC_ovl0
# .word L8000C938_ovl0
# .word L8000C6A0_ovl0
# .word L8000C6A0_ovl0
# .word L8000C7A8_ovl0
# .word L8000C7A8_ovl0
# .word L8000C8C0_ovl0
# .word L8000C59C_ovl0
# .word L8000C59C_ovl0
# .word L8000C974_ovl0
# .word L8000C974_ovl0
# .word L8000CAFC_ovl0
# .word L8000CB88_ovl0
# .word L8000CA64_ovl0
# .word L8000CC58_ovl0
# .word L8000CCA4_ovl0
# .word L8000CD34_ovl0
.text
glabel func_8000C3D8
/* 00CFD8 8000C3D8 27BDFF58 */ addiu $sp, $sp, -0xa8
/* 00CFDC 8000C3DC AFBF0054 */ sw $ra, 0x54($sp)
@ -118,11 +139,12 @@ glabel func_8000C3D8
/* 00D17C 8000C57C 10200212 */ beqz $at, .L8000CDC8_ovl0
/* 00D180 8000C580 0040B825 */ move $s7, $v0
/* 00D184 8000C584 00024880 */ sll $t1, $v0, 2
/* 00D188 8000C588 3C018004 */ lui $at, 0x8004
/* 00D188 8000C588 3C018004 */ lui $at, %hi(jtbl_800406BC)
/* 00D18C 8000C58C 00290821 */ addu $at, $at, $t1
/* 00D190 8000C590 8C2906BC */ lw $t1, 0x6bc($at)
/* 00D190 8000C590 8C2906BC */ lw $t1, %lo(jtbl_800406BC)($at)
/* 00D194 8000C594 01200008 */ jr $t1
/* 00D198 8000C598 00000000 */ nop
/* 00D198 8000C598 00000000 */ nop
.L8000C59C_ovl0:
/* 00D19C 8000C59C 320A7FFF */ andi $t2, $s0, 0x7fff
/* 00D1A0 8000C5A0 448A4000 */ mtc1 $t2, $f8
/* 00D1A4 8000C5A4 001091C0 */ sll $s2, $s0, 7
@ -195,6 +217,7 @@ glabel func_8000C3D8
.L8000C698_ovl0:
/* 00D298 8000C698 100001CC */ b .L8000CDCC_ovl0
/* 00D29C 8000C69C C6600074 */ lwc1 $f0, 0x74($s3)
.L8000C6A0_ovl0:
/* 00D2A0 8000C6A0 320C7FFF */ andi $t4, $s0, 0x7fff
/* 00D2A4 8000C6A4 448C4000 */ mtc1 $t4, $f8
/* 00D2A8 8000C6A8 001091C0 */ sll $s2, $s0, 7
@ -268,6 +291,7 @@ glabel func_8000C3D8
.L8000C7A0_ovl0:
/* 00D3A0 8000C7A0 1000018A */ b .L8000CDCC_ovl0
/* 00D3A4 8000C7A4 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000C7A8_ovl0:
/* 00D3A8 8000C7A8 320E7FFF */ andi $t6, $s0, 0x7fff
/* 00D3AC 8000C7AC 448E5000 */ mtc1 $t6, $f10
/* 00D3B0 8000C7B0 001091C0 */ sll $s2, $s0, 7
@ -345,6 +369,7 @@ glabel func_8000C3D8
.L8000C8B8_ovl0:
/* 00D4B8 8000C8B8 10000144 */ b .L8000CDCC_ovl0
/* 00D4BC 8000C8BC C6600074 */ lwc1 $f0, 0x74($s3)
.L8000C8C0_ovl0:
/* 00D4C0 8000C8C0 001091C0 */ sll $s2, $s0, 7
/* 00D4C4 8000C8C4 24690004 */ addiu $t1, $v1, 4
/* 00D4C8 8000C8C8 AE690070 */ sw $t1, 0x70($s3)
@ -379,6 +404,7 @@ glabel func_8000C3D8
.L8000C930_ovl0:
/* 00D530 8000C930 10000126 */ b .L8000CDCC_ovl0
/* 00D534 8000C934 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000C938_ovl0:
/* 00D538 8000C938 320F7FFF */ andi $t7, $s0, 0x7fff
/* 00D53C 8000C93C 448F3000 */ mtc1 $t7, $f6
/* 00D540 8000C940 C6640074 */ lwc1 $f4, 0x74($s3)
@ -395,6 +421,7 @@ glabel func_8000C3D8
/* 00D568 8000C968 E66A0074 */ swc1 $f10, 0x74($s3)
/* 00D56C 8000C96C 10000117 */ b .L8000CDCC_ovl0
/* 00D570 8000C970 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000C974_ovl0:
/* 00D574 8000C974 32197FFF */ andi $t9, $s0, 0x7fff
/* 00D578 8000C978 44999000 */ mtc1 $t9, $f18
/* 00D57C 8000C97C 001091C0 */ sll $s2, $s0, 7
@ -461,6 +488,7 @@ glabel func_8000C3D8
.L8000CA5C_ovl0:
/* 00D65C 8000CA5C 100000DB */ b .L8000CDCC_ovl0
/* 00D660 8000CA60 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CA64_ovl0:
/* 00D664 8000CA64 C6600074 */ lwc1 $f0, 0x74($s3)
/* 00D668 8000CA68 246A0004 */ addiu $t2, $v1, 4
/* 00D66C 8000CA6C AE6A0070 */ sw $t2, 0x70($s3)
@ -484,6 +512,7 @@ glabel func_8000C3D8
.L8000CAB4_ovl0:
/* 00D6B4 8000CAB4 100000C5 */ b .L8000CDCC_ovl0
/* 00D6B8 8000CAB8 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CABC_ovl0:
/* 00D6BC 8000CABC 24780004 */ addiu $t8, $v1, 4
/* 00D6C0 8000CAC0 92690055 */ lbu $t1, 0x55($s3)
/* 00D6C4 8000CAC4 AE780070 */ sw $t8, 0x70($s3)
@ -501,6 +530,7 @@ glabel func_8000C3D8
.L8000CAF4_ovl0:
/* 00D6F4 8000CAF4 100000B5 */ b .L8000CDCC_ovl0
/* 00D6F8 8000CAF8 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CAFC_ovl0:
/* 00D6FC 8000CAFC 320B7FFF */ andi $t3, $s0, 0x7fff
/* 00D700 8000CB00 448B4000 */ mtc1 $t3, $f8
/* 00D704 8000CB04 001091C0 */ sll $s2, $s0, 7
@ -541,6 +571,7 @@ glabel func_8000C3D8
.L8000CB80_ovl0:
/* 00D780 8000CB80 10000092 */ b .L8000CDCC_ovl0
/* 00D784 8000CB84 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CB88_ovl0:
/* 00D788 8000CB88 246F0004 */ addiu $t7, $v1, 4
/* 00D78C 8000CB8C AE6F0070 */ sw $t7, 0x70($s3)
/* 00D790 8000CB90 8FB8008C */ lw $t8, 0x8c($sp)
@ -560,6 +591,7 @@ glabel func_8000C3D8
/* 00D7C4 8000CBC4 254B0004 */ addiu $t3, $t2, 4
/* 00D7C8 8000CBC8 10000080 */ b .L8000CDCC_ovl0
/* 00D7CC 8000CBCC AE6B0070 */ sw $t3, 0x70($s3)
.L8000CBD0_ovl0:
/* 00D7D0 8000CBD0 8E62006C */ lw $v0, 0x6c($s3)
/* 00D7D4 8000CBD4 C6600074 */ lwc1 $f0, 0x74($s3)
/* 00D7D8 8000CBD8 5040000E */ beql $v0, $zero, .L8000CC14_ovl0
@ -597,6 +629,7 @@ glabel func_8000C3D8
/* 00D84C 8000CC4C 24060000 */ li $a2, 0
/* 00D850 8000CC50 10000063 */ b .L8000CDE0_ovl0
/* 00D854 8000CC54 8FBF0054 */ lw $ra, 0x54($sp)
.L8000CC58_ovl0:
/* 00D858 8000CC58 0010C1C0 */ sll $t8, $s0, 7
/* 00D85C 8000CC5C 0018CD82 */ srl $t9, $t8, 0x16
/* 00D860 8000CC60 A2790054 */ sb $t9, 0x54($s3)
@ -617,6 +650,7 @@ glabel func_8000C3D8
/* 00D898 8000CC98 E66A0074 */ swc1 $f10, 0x74($s3)
/* 00D89C 8000CC9C 1000004B */ b .L8000CDCC_ovl0
/* 00D8A0 8000CCA0 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CCA4_ovl0:
/* 00D8A4 8000CCA4 8E6B0004 */ lw $t3, 4($s3)
/* 00D8A8 8000CCA8 02602025 */ move $a0, $s3
/* 00D8AC 8000CCAC 8D620048 */ lw $v0, 0x48($t3)
@ -656,6 +690,7 @@ glabel func_8000C3D8
/* 00D928 8000CD28 E6720074 */ swc1 $f18, 0x74($s3)
/* 00D92C 8000CD2C 10000027 */ b .L8000CDCC_ovl0
/* 00D930 8000CD30 C6600074 */ lwc1 $f0, 0x74($s3)
.L8000CD34_ovl0:
/* 00D934 8000CD34 320F7FFF */ andi $t7, $s0, 0x7fff
/* 00D938 8000CD38 448F3000 */ mtc1 $t7, $f6
/* 00D93C 8000CD3C 001091C0 */ sll $s2, $s0, 7

View File

@ -23,7 +23,8 @@
"bin/kirby.u.139150.bin": {"meta": {"size":"0x57a0"}, "offsets":{"us":["0x139150","0x0"]}},
"bin/kirby.u.1C9B00.bin": {"meta": {"size":"0x2450"}, "offsets":{"us":["0x1C9B00","0x0"]}},
"bin/kirby.u.1014F0.bin": {"meta": {"size":"0x26c0"}, "offsets":{"us":["0x1014F0","0x0"]}},
"bin/kirby.u.2502A0.bin": {"meta": {"size":"0x1C3B8B0"}, "offsets":{"us":["0x2502A0","0x0"]}},
"bin/kirby.u.2502A0.bin": {"meta": {"size":"0x58FA50"}, "offsets":{"us":["0x2502A0","0x0"]}},
"bin/kirby.u.7E2D70.bin": {"meta": {"size":"0x2000000"}, "offsets":{"us":["0x7E2D70","0x0"]}},
"bin/kirby_model.bin": {"meta":{"size":"0x1408"}, "offsets":{"us":["0x7E1A20","0x0"]}},
"textures/kirby.0x1c3e48a.i4.png": {"meta": {"dims":[32, 32]}, "offsets":{"us":["0x1c3e48a","0x0"]}},

View File

@ -14813,7 +14813,7 @@ u32 D_800406B4 = 0xFEFFFFFF;
u32 D_800406B8 = 0xFEAAAAAA;
u32 D_800406BC = 0x8000CBD0;
u32 jtbl_800406BC = 0x8000CBD0;
u32 D_800406C0 = 0x8000CABC;

View File

@ -4,14 +4,14 @@ file = open(sys.argv[1],'rb')
filebuf = file.read()
# print(".include \"macros.inc\"")
# print(".section .data")
print(".include \"macros.inc\"")
print(".section .data")
rom = 0
while rom < len(filebuf):
myData = filebuf[rom:rom+4]
print("u32 D_"+ str(hex(int(addr,16)+rom))[2:].upper()+
" = 0x"+str(binascii.hexlify(filebuf[rom:rom+4]))[2:-1].upper()
+";")
print("glabel D_"+ str(hex(int(addr,16)+rom))[2:].upper()+
"\n.word 0x"+str(binascii.hexlify(filebuf[rom:rom+4]))[2:-1].upper()
)
testFloat = str(struct.unpack('>f', myData))
# if "nan" not in testFloat and "e" not in testFloat and testFloat != '(0.0,)':
# print(testFloat, binascii.hexlify(myData))

View File

@ -22,6 +22,7 @@
#include <PR/ultratypes.h>
/*
* To use the F3DEX ucodes, define F3DEX_GBI before include this file.
*
@ -710,6 +711,7 @@
#define G_BL_1 2
#define G_BL_0 3
#define GBL_c1(m1a, m1b, m2a, m2b) \
(m1a) << 30 | (m1b) << 26 | (m2a) << 22 | (m2b) << 18
#define GBL_c2(m1a, m1b, m2a, m2b) \
@ -1174,6 +1176,7 @@ typedef union {
long long int force_structure_alignment;
} Mtx;
/*
* Viewport
*/
@ -1458,6 +1461,9 @@ typedef union {
long int force_structure_alignment[4];
} Hilite;
#include <PR/gu.h>
#define gdSPDefLights0(ar,ag,ab) \
{ {{ {ar,ag,ab},0,{ar,ag,ab},0}}, \
{{{ { 0, 0, 0},0,{ 0, 0, 0},0,{ 0, 0, 0},0}}} }
@ -2402,6 +2408,24 @@ typedef union {
#define gsSPBranchLessZ(dl, vtx, zval, near, far, flag) \
gsSPBranchLessZrg(dl, vtx, zval, near, far, flag, 0, G_MAXZ)
// temp new macros until we find out what's up with the original
#define G_DEPTOZSrgPersp(zval, near, far, flag, zmin, zmax) \
(unsigned int)((1.0f-(float)(near)/(float)(zval)) / \
(1.0f-(float)(near)/(float)(far )))
#define G_DEPTOZSPersp(zval, near, far, flag) \
G_DEPTOZSrgPersp(zval, near, far, flag, 0, G_MAXZ)
#define gsSPBranchLessZrgPersp(dl, vtx, zval, near, far, flag, zmin, zmax) \
{{ _SHIFTL(G_RDPHALF_1,24,8), \
(uintptr_t)(dl), }}, \
{{ _SHIFTL(G_BRANCH_Z,24,8)|_SHIFTL((vtx)*5,12,12)|_SHIFTL((vtx)*2,0,12),\
G_DEPTOZSrgPersp(zval, near, far, flag, zmin, zmax)}}
#define gsSPBranchLessZPersp(dl, vtx, zval, near, far, flag) \
gsSPBranchLessZrgPersp(dl, vtx, zval, near, far, G_BZ_PERSP, 0, G_MAXZ)
/*
* gSPBranchLessZraw Branch DL if (vtx.z) less than or equal (raw zval).
*

View File

@ -4,6 +4,10 @@
#include <PR/mbi.h>
#include <PR/ultratypes.h>
#define FTOFIX32(x) (long)((x) * (float)0x00010000)
#define FIX32TOF(x) ((float)(x) * (1.0f / (float)0x00010000))
#define FTOFRAC8(x) ((int) MIN(((x) * (128.0f)), 127.0f) & 0xff)
#define GU_PI 3.1415926
/* Functions */

View File

@ -53,6 +53,7 @@ SECTIONS
END_SEG(ovl0)
BEGIN_NOLOAD(ovl0) {
BUILD_DIR/src/ovl0/ovl0_0.o(.bss);
/*BUILD_DIR/src/ovl0/ovl0_3.o(.rodata);*/
}
END_NOLOAD(ovl0)
@ -215,6 +216,8 @@ SECTIONS
.BEGIN_SEG(ovl20, 0x80300000) {
BUILD_DIR/src/ovl20.o(.text);
BUILD_DIR/asm/kirby.u.2502A0.o(.data);
BUILD_DIR/actors/kirby.o(.rodata);
BUILD_DIR/asm/kirby.u.7E2D70.o(.data);
}
END_SEG(ovl20)

View File

@ -1,5 +1,6 @@
#include <ultra64.h>
#include <macros.h>
#include "ovl0_3.h"
#ifdef MIPS_TO_C
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
@ -420,14 +421,462 @@ loop_10:
GLOBAL_ASM("asm/non_matchings/ovl0/ovl0_3/func_8000C2C8.s")
#endif
extern f32 D_800406B0, D_800406B4, D_800406B8, D_80040704;
#ifdef MIPS_TO_C
//generated by mips_to_c commit e0e006e8858ba357d1dcb4dc64f038b7df278aa6
Failed to decompile function func_8000C3D8:
void func_8000C3D8(struct Animation *anim) {
struct AnimStack *sp8C;
u32 *sp88;
s32 sp84;
struct AnimStack *sp80;
u32 *temp_s0;
f32 temp_f0;
f32 temp_f10;
f32 temp_f16;
f32 temp_f16_2;
f32 temp_f20;
f32 temp_f20_2;
f32 temp_f20_3;
f32 temp_f20_4;
f32 temp_f20_5;
f32 temp_f2;
s32 temp_s1;
s32 temp_s1_2;
s32 temp_s1_3;
s32 temp_s1_4;
s32 temp_s1_5;
s32 temp_s1_6;
s32 temp_s1_7;
s32 temp_t1;
struct AnimStack **temp_s0_2;
struct AnimStack **temp_s0_3;
struct AnimStack **temp_s0_4;
struct AnimStack **temp_s0_5;
struct AnimStack **temp_s0_6;
struct AnimStack **temp_s0_7;
struct AnimStack **temp_s5;
struct AnimStack *temp_v0;
struct AnimStack *temp_v0_4;
struct AnimStack *temp_v0_5;
struct AnimStack *temp_v0_6;
struct AnimStack *temp_v0_7;
struct AnimStack *temp_v0_8;
struct AnimStack *temp_v0_9;
struct AnimStack *temp_v0_10;
struct AnimStack *temp_v0_2;
u32 temp_s2;
u32 temp_s2_2;
u32 temp_s2_3;
u32 temp_s2_4;
u32 temp_s2_5;
u32 temp_s2_6;
u32 temp_s2_7;
u32 temp_v0_3;
u32 temp_v1_2;
u8 temp_v1;
u32 *temp_t2;
u32 *temp_t8;
u32 *phi_s0;
struct AnimStack *phi_v0;
struct AnimStack *phi_v0_2;
f32 phi_f0;
f32 phi_f0_2;
u32 phi_s2;
s32 phi_s1;
struct AnimStack *phi_v1;
u32 phi_s2_2;
s32 phi_s1_2;
struct AnimStack *phi_v1_2;
u32 phi_s2_3;
s32 phi_s1_3;
struct AnimStack *phi_v1_3;
u32 phi_s2_4;
s32 phi_s1_4;
struct AnimStack *phi_v1_4;
u32 phi_s2_5;
s32 phi_s1_5;
struct AnimStack *phi_v1_5;
u32 phi_s2_6;
s32 phi_s1_6;
struct AnimStack *phi_v1_6;
struct AnimStack *phi_v0_3;
f32 phi_f0_3;
f32 phi_f0_4;
f32 phi_f16;
s32 phi_s0_2;
u32 phi_s2_7;
s32 phi_s1_7;
f32 phi_f0_5;
f32 phi_f0_6;
Unable to determine jump table for jr instruction.
There must be a read of a variable in the same block as
the instruction, which has a name starting with "jtbl".
if (D_800406B0 != anim->scale) {
if (D_800406B4 == anim->scale) {
anim->scale = -anim->unk7C;
block_4:
sp80 = NULL;
sp84 = 0;
for (phi_s0 = &sp88; (u32)phi_s0 != (u32)&anim; phi_s0++) {
*phi_s0 = 0;
}
phi_v0 = anim->unk6C;
if (anim->unk6C != 0) {
while (phi_v0 != NULL) {
temp_v1 = phi_v0->unk4;
if (temp_v1 > 0 && temp_v1 < 0xB) {
(&sp80[temp_v1])[-1] = *phi_v0;
}
phi_v0 = phi_v0->next;
}
}
loop_12:
if (anim->command == 0) {
phi_v0_2 = anim->unk6C;
phi_f0 = anim->scale;
phi_f0_2 = anim->scale;
if (anim->unk6C != 0) {
loop_14:
phi_f0_5 = phi_f0;
if (phi_v0_2->unk5 != 0) {
phi_v0_2->unkC += (anim->unk78 + phi_f0);
phi_f0_5 = anim->scale;
}
temp_v0_2 = phi_v0_2->next;
phi_v0_2 = temp_v0_2;
phi_f0 = phi_f0_5;
phi_f0_2 = phi_f0_5;
if (temp_v0_2 != 0) {
goto loop_14;
}
}
anim->unk7C = phi_f0_2;
anim->unk4->unk40 = phi_f0_2;
anim->scale = D_800406B8;
return;
return;
}
temp_v0_3 = *anim->command >> 0x19;
if (temp_v0_3 < 0x12) {
switch(temp_v0_3) {
case 8:
case 9:
phi_s2 = (*anim->command << 7) >> 16;
temp_f20 = (*anim->command & 0x7FFF);
anim->command++;
for (phi_s1 = 0; phi_s1 < 0xA; phi_s1++) {
if (phi_s2 != 0 && (phi_s2 & 1) != 0) {
temp_s0_2 = &(&sp80)[phi_s1];
if ((&sp80)[phi_s1] == 0) {
temp_v0_4 = func_800097E0(anim, (phi_s1 + 1) & 0xFF);
(&sp80)[phi_s1] = temp_v0_4;
}
phi_v1->unk10 = phi_v1->unk14;
(&sp80)[phi_s1]->unk14 = *anim->command;
anim->command++;
(&sp80)[phi_s1]->unk18 = (&sp80)[phi_s1]->unk1C;
(&sp80)[phi_s1]->unk1C = 0.0f;
(&sp80)[phi_s1]->unk5 = 3;
if (temp_f20 != 0.0f) {
(&sp80)[phi_s1]->unk8 = (1.0f / temp_f20);
}
(&sp80)[phi_s1]->unkC = (-anim->scale - anim->unk78);
phi_s2 >>= 1;
}
}
if (temp_v0_3 == 8) {
anim->scale += temp_f20;
}
break;
default:
temp_s2_2 = *anim->command << 7;
temp_f20_2 = (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
phi_s2_2 = temp_s2_2 >> 0x16;
phi_s1_2 = 0;
loop_33:
if (phi_s2_2 != 0) {
if ((phi_s2_2 & 1) != 0) {
temp_s0_3 = &(&sp80)[phi_s1_2];
phi_v1_2 = *temp_s0_3;
if (*temp_s0_3 == 0) {
temp_v0_5 = func_800097E0(anim, (phi_s1_2 + 1) & 0xFF);
*temp_s0_3 = temp_v0_5;
phi_v1_2 = temp_v0_5;
}
phi_v1_2->unk10 = (f32) phi_v1_2->unk14;
(*temp_s0_3)->unk14 = (f32) *anim->command;
anim->command++;
(*temp_s0_3)->unk5 = (u8)2;
if (temp_f20_2 != 0.0f) {
(*temp_s0_3)->unk18 = (f32) (((*temp_s0_3)->unk14 - (*temp_s0_3)->unk10) / temp_f20_2);
}
(*temp_s0_3)->unkC = (f32) (-anim->scale - (f32) anim->unk78);
(*temp_s0_3)->unk1C = 0.0f;
}
temp_s1_2 = phi_s1_2 + 1;
phi_s2_2 = phi_s2_2 >> 1;
phi_s1_2 = temp_s1_2;
if (temp_s1_2 != 0xA) {
goto loop_33;
}
}
if (temp_v0_3 == 3) {
anim->scale = (f32) (anim->scale + temp_f20_2);
}
break;
case 5:
case 6:
temp_s2_3 = *anim->command << 7;
temp_f20_3 = (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
phi_s2_3 = temp_s2_3 >> 0x16;
phi_s1_3 = 0;
loop_45:
if (phi_s2_3 != 0) {
if ((phi_s2_3 & 1) != 0) {
temp_s0_4 = &(&sp80)[phi_s1_3];
phi_v1_3 = *temp_s0_4;
if (*temp_s0_4 == 0) {
temp_v0_6 = func_800097E0(anim, (phi_s1_3 + 1) & 0xFF);
*temp_s0_4 = temp_v0_6;
phi_v1_3 = temp_v0_6;
}
phi_v1_3->unk10 = (f32) phi_v1_3->unk14;
(*temp_s0_4)->unk14 = (f32) *anim->command;
anim->command++;
(*temp_s0_4)->unk18 = (f32) (*temp_s0_4)->unk1C;
(*temp_s0_4)->unk1C = (f32) *anim->command;
anim->command++;
(*temp_s0_4)->unk5 = (u8)3;
if (temp_f20_3 != 0.0f) {
(*temp_s0_4)->unk8 = (f32) (1.0f / temp_f20_3);
}
(*temp_s0_4)->unkC = (f32) (-anim->scale - (f32) anim->unk78);
}
temp_s1_3 = phi_s1_3 + 1;
phi_s2_3 = phi_s2_3 >> 1;
phi_s1_3 = temp_s1_3;
if (temp_s1_3 != 0xA) {
goto loop_45;
}
}
if (temp_v0_3 == 5) {
anim->scale = (f32) (anim->scale + temp_f20_3);
}
break;
case 7:
temp_s2_4 = *anim->command << 7;
anim->command++;
phi_s2_4 = temp_s2_4 >> 0x16;
phi_s1_4 = 0;
loop_57:
if (phi_s2_4 != 0) {
if ((phi_s2_4 & 1) != 0) {
temp_s0_5 = &(&sp80)[phi_s1_4];
phi_v1_4 = *temp_s0_5;
if (*temp_s0_5 == 0) {
temp_v0_7 = func_800097E0(anim, (phi_s1_4 + 1) & 0xFF);
*temp_s0_5 = temp_v0_7;
phi_v1_4 = temp_v0_7;
}
phi_v1_4->unk1C = (f32) *anim->command;
anim->command++;
}
temp_s1_4 = phi_s1_4 + 1;
phi_s2_4 = phi_s2_4 >> 1;
phi_s1_4 = temp_s1_4;
if (temp_s1_4 != 0xA) {
goto loop_57;
}
}
break;
case 2:
temp_f10 = anim->scale + (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
anim->scale = temp_f10;
break;
case 10:
case 11:
temp_s2_5 = *anim->command << 7;
temp_f20_4 = (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
phi_s2_5 = temp_s2_5 >> 0x16;
phi_s1_5 = 0;
loop_66:
if (phi_s2_5 != 0) {
if ((phi_s2_5 & 1) != 0) {
temp_s0_6 = &(&sp80)[phi_s1_5];
phi_v1_5 = *temp_s0_6;
if (*temp_s0_6 == 0) {
temp_v0_8 = func_800097E0(anim, (phi_s1_5 + 1) & 0xFF);
*temp_s0_6 = temp_v0_8;
phi_v1_5 = temp_v0_8;
}
phi_v1_5->unk10 = (f32) phi_v1_5->unk14;
(*temp_s0_6)->unk14 = (f32) *anim->command;
anim->command++;
(*temp_s0_6)->unk5 = (u8)1;
(*temp_s0_6)->unk8 = temp_f20_4;
(*temp_s0_6)->unkC = (f32) (-anim->scale - (f32) anim->unk78);
(*temp_s0_6)->unk1C = 0.0f;
}
temp_s1_5 = phi_s1_5 + 1;
phi_s2_5 = phi_s2_5 >> 1;
phi_s1_5 = temp_s1_5;
if (temp_s1_5 != 0xA) {
goto loop_66;
}
}
if (temp_v0_3 == 0xA) {
anim->scale = (f32) (anim->scale + temp_f20_4);
}
break;
case 14:
temp_t2 = anim->command + 4;
anim->command = temp_t2;
temp_f0 = -anim->scale;
anim->command = (void *) *temp_t2;
anim->unk7C = temp_f0;
anim->unk4->unk40 = temp_f0;
if (anim->unk55 != 0) {
if (anim->unk4->unk48 != 0) {
anim->unk4->unk48(anim, -2, 0);
}
}
break;
case 1:
temp_t8 = anim->command + 4;
anim->command = temp_t8;
anim->command = (void *) *temp_t8;
if (anim->unk55 != 0) {
if (anim->unk4->unk48 != 0) {
anim->unk4->unk48(anim, -2, 0);
}
}
break;
case 12:
phi_s2_6 = (*anim->command << 7) >> 0x16;
temp_f20_5 = (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
phi_s1_6 = 0;
loop_84:
if (phi_s2_6 != 0) {
if ((phi_s2_6 & 1) != 0) {
temp_s0_7 = &(&sp80)[phi_s1_6];
phi_v1_6 = *temp_s0_7;
if (*temp_s0_7 == 0) {
temp_v0_9 = func_800097E0(anim, (phi_s1_6 + 1) & 0xFF);
*temp_s0_7 = temp_v0_9;
phi_v1_6 = temp_v0_9;
}
phi_v1_6->unkC = (f32) (phi_v1_6->unkC + temp_f20_5);
}
temp_s1_6 = phi_s1_6 + 1;
phi_s2_6 = phi_s2_6 >> 1;
phi_s1_6 = temp_s1_6;
if (temp_s1_6 != 0xA) {
goto loop_84;
}
}
break;
case 13:
anim->command++;
if (sp8C == 0) {
sp8C = func_800097E0(anim, (u8)4U);
}
sp8C->unk20 = (s32) *anim->command;
anim->command++;
goto block_116;
case 0:
phi_v0_3 = anim->unk6C;
phi_f0_3 = anim->scale;
phi_f0_4 = anim->scale;
if (anim->unk6C != 0) {
loop_95:
phi_f0_6 = phi_f0_3;
if (phi_v0_3->unk5 != 0) {
phi_v0_3->unkC = (f32) (phi_v0_3->unkC + ((f32) anim->unk78 + phi_f0_3));
phi_f0_6 = anim->scale;
}
temp_v0_10 = phi_v0_3->next;
phi_v0_3 = temp_v0_10;
phi_f0_3 = phi_f0_6;
phi_f0_4 = phi_f0_6;
if (temp_v0_10 != 0) {
goto loop_95;
}
}
anim->unk7C = phi_f0_4;
anim->unk4->unk40 = phi_f0_4;
anim->scale = (f32) D_80040704;
if (anim->unk55 != 0) {
if (anim->unk4->unk48 != 0) {
anim->unk4->unk48(anim, -1, 0);
return;
case 15:
anim->unk54 = (u8) ((u32) (*anim->command << 7) >> 0x16);
temp_t1 = *anim->command & 0x7FFF;
temp_f16 = (f32) temp_t1;
phi_f16 = temp_f16;
if (temp_t1 < 0) {
phi_f16 = temp_f16 + 4294967296.0f;
}
anim->command++;
anim->scale += phi_f16;
break;
case 16:
phi_s0_2 = *anim->command;
if (anim->unk4->unk48 != 0) {
temp_v1_2 = (u32) (*anim->command << 7) >> 0x16;
anim->unk4->unk48(anim, temp_v1_2 >> 8, (f32) (u32) (temp_v1_2 & 0xFF));
phi_s0_2 = *anim->command;
}
anim->command++;
anim->scale = (f32) (anim->scale + (f32) (u32) (phi_s0_2 & 0x7FFF));
break;
case 17:
temp_s2_7 = (u32) (*anim->command << 7) >> 0x16;
temp_f16_2 = anim->scale + (f32) (u32) (*anim->command & 0x7FFF);
anim->command++;
anim->scale = temp_f16_2;
phi_s2_7 = temp_s2_7;
phi_s1_7 = 4;
loop_108:
if (phi_s2_7 != 0) {
if ((phi_s2_7 & 1) != 0) {
if (anim->unk4->unk48 != 0) {
anim->unk4->unk48(anim, phi_s1_7, anim->command);
}
anim->command++;
}
temp_s1_7 = phi_s1_7 + 1;
phi_s2_7 = phi_s2_7 >> 1;
phi_s1_7 = temp_s1_7;
if (temp_s1_7 != 0xE) {
goto loop_108;
}
}
block_116:
if (anim->scale <= 0.0f) {
goto loop_12;
}
}
}
}
} else {
goto block_116;
}
} else {
temp_f2 = (f32) anim->unk78;
anim->scale = (f32) (anim->scale - temp_f2);
anim->unk7C = (f32) (anim->unk7C + temp_f2);
anim->unk4->unk40 = (f32) anim->unk7C;
if (!(0.0f < anim->scale)) {
goto block_4;
}
}
}
}
#else
GLOBAL_ASM("asm/non_matchings/ovl0/ovl0_3/func_8000C3D8.s")
#endif
@ -485,7 +934,7 @@ u8 func_8000CF84(void *arg0) {
if (arg0->unk5 != 1) {
if (arg0->unk5 == 2) {
return (bitwise u8) ((bitwise f32) arg0->unk10 + (arg0->unkC * arg0->unk18));
return (u8) ((f32) arg0->unk10 + (arg0->unkC * arg0->unk18));
}
if (arg0->unk5 == 3) {
return func_8000CE18(arg0->unk8, arg0->unkC, arg0->unk10, arg0->unk14, arg0->unk18, arg0->unk1C);
@ -493,9 +942,9 @@ u8 func_8000CF84(void *arg0) {
return arg0->unk5;
}
if (arg0->unk8 <= arg0->unkC) {
phi_f2 = (bitwise u8) (bitwise f32) arg0->unk14;
phi_f2 = (u8) (f32) arg0->unk14;
} else {
phi_f2 = (bitwise u8) (bitwise f32) arg0->unk10;
phi_f2 = (u8) (f32) arg0->unk10;
}
return phi_f2;
}
@ -508,7 +957,7 @@ GLOBAL_ASM("asm/non_matchings/ovl0/ovl0_3/func_8000CF84.s")
u8 func_8000D030(void *arg0) {
if (arg0->unk5 != 1) {
if (arg0->unk5 == 2) {
return (bitwise u8) arg0->unk18;
return (u8) arg0->unk18;
}
if (arg0->unk5 == 3) {
return func_8000CECC(arg0->unk8, arg0->unkC, arg0->unk10, arg0->unk14, arg0->unk18, arg0->unk1C);

61
src/ovl0/ovl0_3.h Normal file
View File

@ -0,0 +1,61 @@
struct AnimationUnk6C {
struct AnimationUnk6C *next; // it's a list but is it really the next one?
u8 unk4;
u8 unk5;
u8 unk6;
u8 unk7;
f32 unk8;
f32 unkC;
f32 unk10;
f32 unk14;
};
struct AnimStack { // TODO: Same as Unk6C?
struct AnimStack *next; // it's a list but is it really the next one?
u8 unk4;
u8 unk5;
u8 unk6;
u8 unk7;
f32 unk8;
f32 unkC;
u32 unk10;
u32 unk14;
f32 unk18;
f32 unk1C;
f32 unk20;
};
struct Animation {
u32 unk0;
struct {
u8 pad[0x40];
f32 unk40;
u32 unk44;
void (*unk48)(struct Animation *a0, u32 a1, u32 a2);
} *unk4;
u32 unk8;
u32 unkC;
u32 unk10[4];
u32 unk20[4];
u32 unk30[4];
u32 unk40[4];
u32 unk50;
u8 unk54; // verify type
u8 unk55;
u8 unk56;
u8 unk57;
u32 unk58;
u32 unk5C;
u32 unk60;
u32 unk64;
u32 unk68;
struct AnimStack *unk6C;
u32 *command;
f32 scale; // unk74
u32 unk78;
f32 unk7C;
};
void func_8000C3D8(struct Animation *anim);
struct AnimStack *func_800097E0(struct Animation *anim, u8 something);

43
tools/vtxDisasm.py Normal file
View File

@ -0,0 +1,43 @@
import sys, os, binascii, struct
f = open(sys.argv[1],"rb")
off = sys.argv[2]
def tc(a):
return struct.unpack('>h', bytes.fromhex(str(a)))[0]
addrs = []
with open(sys.argv[3]) as getAddr:
for line in getAddr:
if "gsSPVertex" in line:
addrs.append(line.replace("("," ").replace(","," ").split()[1])
print(addrs)
fB = f.read()
fB = fB[int(off,16):]
off = 0
testOff = 0x04000110
while True:
if "0x0"+str(hex(testOff))[2:].upper() in addrs:
print("// 0x0"+str(hex(testOff))[2:].upper())
buf = str(binascii.hexlify(fB[off:off+0x10]))
buf = buf[2:-1]
if 'e700000000000000' in buf: # [0:0x10]: # or 'e700000000000000' in buf[0x10:]:
break
print("{{{"+"{:>6}, {:>7}, {:>7}".format(
int(tc(buf[0:4])),
int(tc(buf[4:8])),
int(tc(buf[8:12])),
) + "}, " + "{}, ".format(int(tc(buf[12:16])))+"{"+"{:>6}, {:>7}".format(
int(tc(buf[16:20])),
int(tc(buf[20:24])),
) + "}, {"+"0x{:02x}, 0x{:02x}, 0x{:02x}, 0x{:02x}".format(
int(buf[24:26],16),
int(buf[26:28],16),
int(buf[28:30],16),
int(buf[30:32],16),
)+"}}},"
)
off+=0x10
testOff += 0x10