Start on z_bgcheck.c

This commit is contained in:
rozlette 2020-03-01 19:17:22 -06:00
parent 74c1dc2145
commit d4d8f58636
7 changed files with 475 additions and 43 deletions

View File

@ -556,7 +556,7 @@ void func_800AE5A0(GlobalContext* ctxt); // func_800AE5A0
void func_800AE5E4(void); // func_800AE5E4
void func_800AE778(GlobalContext* ctxt, ColorRGBA8* color, short param_3, short param_4); // func_800AE778
void func_800AE8EC(GlobalContext* ctxt); // func_800AE8EC
void func_800AE930(BgCheckContext* bgCtxt, int param_2, float* param_3, float param_4, short param_5, int param_6, int param_7); // func_800AE930
void func_800AE930(BgCheckContext* bgCtxt, int param_2, float* param_3, float param_4, short param_5, BgPolygon* param_6, int param_7); // func_800AE930
void func_800AEF44(void); // func_800AEF44
void func_800AEF70(void); // func_800AEF70
void func_800AEFA0(void); // func_800AEFA0
@ -911,31 +911,31 @@ void func_800BF9A0(s32 a0, s32 a1); // func_800BF9A0
s32 func_800BFA78(s32 param_1, s32 param_2); // func_800BFA78
void func_800BFAE8(void); // func_800BFAE8
void func_800BFB40(void); // func_800BFB40
void BgCheck_PolygonLinkedListNodeInit(BgPolygonLinkedListNode* node, s16* next, s16 polyIndex); // func_800BFB80
void BgCheck_PolygonLinkedListResetHead(s16* head); // func_800BFB9C
void BgCheck_ScenePolygonListsNodeInsert(BgScenePolygonLists* list, u16* head, s32 polyIndex); // func_800BFBAC
void BgCheck_PolygonLinkedListNodeInsert(BgPolygonLinkedList* list, s16* head, s32 polyIndex); // func_800BFC04
void BgCheck_PolygonLinkedListNodeInit(BgPolygonLinkedListNode* node, s16* polyIndex, u16 next); // func_800BFB80
void BgCheck_PolygonLinkedListResetHead(u16* head); // func_800BFB9C
void BgCheck_ScenePolygonListsNodeInsert(BgScenePolygonLists* list, u16* head, s16* polyIndex); // func_800BFBAC
void BgCheck_PolygonLinkedListNodeInsert(BgPolygonLinkedList* list, u16* head, s16* polyIndex); // func_800BFC04
void BgCheck_PolygonLinkedListInit(GlobalContext* ctxt, BgPolygonLinkedList* list); // func_800BFC5C
void BgCheck_PolygonLinkedListAlloc(GlobalContext* ctxt, BgPolygonLinkedList* list, u32 numNodes); // func_800BFC70
void BgCheck_PolygonLinkedListReset(BgPolygonLinkedList* list); // func_800BFCC0
s16 BgCheck_AllocPolygonLinkedListNode(BgPolygonLinkedList* attributes); // func_800BFCCC
u16 BgCheck_AllocPolygonLinkedListNode(BgPolygonLinkedList* list); // func_800BFCCC
void BgCheck_CreateVec3fFromVertex(BgVertex* vertex, Vector3f* vector); // func_800BFCFC
void BgCheck_CreateVertexFromVec3f(BgVertex* vertex, Vector3f* vector); // func_800BFD40
void func_800BFD84(void); // func_800BFD84
void func_800BFDEC(void); // func_800BFDEC
float func_800BFD84(BgPolygon* polygon, float param_2, float param_3); // func_800BFD84
int func_800BFDEC(BgPolygon* param_1, BgPolygon* param_2, unsigned int* param_3, unsigned int* param_4); // func_800BFDEC
s32 BgCheck_PolygonGetMinY(BgPolygon* polygons, BgVertex* vertices); // func_800BFFC4
void func_800C003C(void); // func_800C003C
void func_800C0094(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_800C0094
void func_800C01B8(void); // func_800C01B8
void BgCheck_PolygonGetNormal(BgPolygon* polygon, f32* normalX, f32* normalY, f32* normalZ); // func_800C003C
void func_800C0094(BgPolygon* param_1, f32 xOffset, f32 yOffset, f32 zOffset, z_Matrix* matrix); // func_800C0094
f32 func_800C01B8(BgPolygon* param_1, Vector3f* param_2); // func_800C01B8
void BgCheck_CreateColTriParamsFromPolygon(BgPolygon* polygon, BgVertex* vertices, ColTriParams* tri); // func_800C0220
void func_800C02C0(BgPolygon* poly, s32 index, BgCheckContext* bgCtxt, ColTriParams* tri); // func_800C02C0
void func_800C0340(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_800C0340
void func_800C0474(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_800C0474
void func_800C0340(BgPolygon* param_1, BgVertex* param_2, UNK_TYPE4 param_3, UNK_TYPE4 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_800C0340
UNK_TYPE4 func_800C0474(BgPolygon* param_1, BgVertex* param_2, UNK_TYPE4 param_3, UNK_TYPE4 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); // func_800C0474
void func_800C0668(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_800C0668
void func_800C06A8(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_800C06A8
void func_800C074C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5); // func_800C074C
void func_800C07F0(void); // func_800C07F0
void func_800C0AF0(void); // func_800C0AF0
void BgCheck_PolygonCollidesWithSphere(BgPolygon* polygon, BgVertex* verticies, Vector3f* pos, f32 readius); // func_800C0AF0
void BgCheck_ScenePolygonListsInsertSorted(BgCheckContext* bgCtxt, u16* head, BgPolygon* polygons, BgVertex* vertices, s16 index); // func_800C0BC0
void BgCheck_ScenePolygonListsInsert(BgMeshSubdivision* subdivision, BgCheckContext* bgCtxt, BgPolygon* polygons, BgVertex* vertices, s16 index); // func_800C0DE0
void func_800C0E74(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10); // func_800C0E74

View File

@ -822,13 +822,13 @@ typedef struct {
/* 0x4 */ u16 vertB; // upper 3 bits contain flags
/* 0x6 */ u16 vertC;
/* 0x8 */ Vector3s normal;
/* 0xE */ UNK_TYPE1 padE[0x2];
/* 0xE */ s16 unkE;
} BgPolygon;
typedef struct {
/* 0x0 */ BgPolygonLinkedListNode* nodes;
/* 0x4 */ u32 nextFreeNode;
/* 0x8 */ u32 maxNodes;
/* 0x8 */ s32 maxNodes;
} BgPolygonLinkedList;
typedef struct {

View File

@ -3902,12 +3902,12 @@ extern UNK_TYPE1 D_801ED930; // D_801ED930
extern UNK_TYPE1 D_801ED940; // D_801ED940
extern UNK_TYPE1 D_801ED950; // D_801ED950
extern UNK_TYPE1 D_801ED9A0; // D_801ED9A0
extern UNK_TYPE1 D_801ED9F0; // D_801ED9F0
extern UNK_TYPE1 D_801ED9FC; // D_801ED9FC
extern UNK_TYPE1 D_801EDA08; // D_801EDA08
extern UNK_TYPE1 D_801EDA18; // D_801EDA18
extern UNK_TYPE1 D_801EDA24; // D_801EDA24
extern UNK_TYPE1 D_801EDA30; // D_801EDA30
extern Vector3f D_801ED9F0; // D_801ED9F0
extern Vector3f D_801ED9FC; // D_801ED9FC
extern Vector3f D_801EDA08; // D_801EDA08
extern Vector3f D_801EDA18; // D_801EDA18
extern Vector3f D_801EDA24; // D_801EDA24
extern Vector3f D_801EDA30; // D_801EDA30
extern z_Matrix D_801EDA40; // D_801EDA40
extern ColTriParams D_801EDA80; // D_801EDA80
extern UNK_TYPE1 D_801EDAF8; // D_801EDAF8

View File

@ -320,7 +320,7 @@ SECTIONS
build/asm/z_DLF.o(.text)
build/src/code/z_actor.o(.text)
build/asm/code_0x800BF9A0.o(.text)
build/asm/z_bgcheck.o(.text)
build/src/code/z_bgcheck.o(.text)
build/src/code/code_0x800CAAD0.o(.text)
build/src/code/code_0x800CAE10.o(.text)
build/asm/code_0x800CB000.o(.text)

432
src/code/z_bgcheck.c Normal file
View File

@ -0,0 +1,432 @@
#include <ultra64.h>
#include <global.h>
void BgCheck_PolygonLinkedListNodeInit(BgPolygonLinkedListNode* node, s16* polyIndex, u16 next) {
node->polyIndex = *polyIndex;
node->next = next;
}
void BgCheck_PolygonLinkedListResetHead(u16* head) {
*head = 0xFFFF;
}
void BgCheck_ScenePolygonListsNodeInsert(BgScenePolygonLists* list, u16* head, s16* polyIndex) {
u16 index;
index = BgCheck_ScenePolygonListsReserveNode(list);
BgCheck_PolygonLinkedListNodeInit(&list->nodes[index], polyIndex, *head);
*head = index;
}
void BgCheck_PolygonLinkedListNodeInsert(BgPolygonLinkedList* list, u16* head, s16* polyIndex) {
u16 index;
index = BgCheck_AllocPolygonLinkedListNode(list);
BgCheck_PolygonLinkedListNodeInit(&list->nodes[index], polyIndex, *head);
*head = index;
}
void BgCheck_PolygonLinkedListInit(GlobalContext* ctxt, BgPolygonLinkedList* list) {
list->nodes = NULL;
list->nextFreeNode = 0;
}
void BgCheck_PolygonLinkedListAlloc(GlobalContext* ctxt, BgPolygonLinkedList* list, u32 numNodes) {
list->nodes = (BgPolygonLinkedListNode*)GameStateHeap_AllocFromEndAligned(&ctxt->common.heap, numNodes << 2, 0xfffffffe);
list->maxNodes = numNodes;
list->nextFreeNode = 0;
}
void BgCheck_PolygonLinkedListReset(BgPolygonLinkedList* list) {
list->nextFreeNode = 0;
}
u16 BgCheck_AllocPolygonLinkedListNode(BgPolygonLinkedList* list) {
u16 index;
index = list->nextFreeNode++;
if (list->maxNodes <= index) {
return 0xffff;
}
return index;
}
void BgCheck_CreateVec3fFromVertex(BgVertex* vertex, Vector3f* vector) {
vector->x = vertex->pos.x;
vector->y = vertex->pos.y;
vector->z = vertex->pos.z;
}
void BgCheck_CreateVertexFromVec3f(BgVertex* vertex, Vector3f* vector) {
vertex->pos.x = vector->x;
vertex->pos.y = vector->y;
vertex->pos.z = vector->z;
}
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800BFD84.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800BFDEC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_PolygonGetMinY.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C003C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0094.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C01B8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_CreateColTriParamsFromPolygon.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C02C0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0340.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0474.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0668.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C06A8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C074C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C07F0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0AF0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ScenePolygonListsInsertSorted.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ScenePolygonListsInsert.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C0E74.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C10FC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C1238.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C12A4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C1B68.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C1D7C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C2008.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C20F4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C2310.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C2460.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C2514.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C25E0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetPolyMinSubdivisions.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetPolyMaxSubdivisions.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetPolyMinMaxSubdivisions.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C2BE0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_SplitScenePolygonsIntoSubdivisions.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetIsDefaultSpecialScene.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetSpecialSceneMaxMemory.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_CalcSubdivisionSize.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetSpecialSceneMaxObjects.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_Init.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3C00.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3C14.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetActorMeshHeader.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3C94.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3D50.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3F40.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C3FA0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4000.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4058.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C40B4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C411C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4188.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C41E4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4240.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C42A8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4314.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C43CC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4488.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C44F0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C455C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C45C4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4C74.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4CD8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4D3C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4DA4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4E10.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4F38.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4F84.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C4FD4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5464.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C54AC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5538.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C55C4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5650.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C56E0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C576C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C57F8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C583C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C58C8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5954.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5A20.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5A64.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ScenePolygonListsInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ScenePolygonListsAlloc.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C5B80.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ScenePolygonListsReserveNode.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshParamsInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_SetActorMeshParams.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_AreActorMeshParamsEqual.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshPolyListsHeadsInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshPolyListsInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshVerticesIndexInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshWaterboxesIndexInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshInitFromActor.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_HasActorMeshChanged.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_PolygonsInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_PolygonsAlloc.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_VerticesInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_VerticesListAlloc.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_WaterboxListInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_WaterboxListAlloc.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ActorMeshUpdateParams.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_IsActorMeshIndexValid.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_DynaInit.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_DynaAlloc.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_AddActorMesh.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetActorOfMesh.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C62BC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C6314.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C636C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C63C4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C641C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C6474.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_RemoveActorMesh.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C6554.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_CalcWaterboxDimensions.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_AddActorMeshToLists.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_ResetFlagsIfLoadedActor.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_Update.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C756C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_UpdateAllActorMeshes.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C76EC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C7974.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C7E40.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C8580.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C87D0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C8A60.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C8BD0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C8DC0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C8EEC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C90AC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C921C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9380.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_RelocateMeshHeaderPointers.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_RelocateMeshHeader.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_RelocateAllMeshHeaders.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9640.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/BgCheck_GetPolygonAttributes.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9704.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9728.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9770.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C97F8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9844.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C98CC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9924.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C99AC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C99D4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C99FC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9A24.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9A4C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9A7C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9AB0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9AE4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9B18.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9B40.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9B68.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9B90.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9BB8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9BDC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9C24.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9C74.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9C9C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9CC4.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9CEC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9D14.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9D50.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9D8C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9DDC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9E18.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9E40.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9E88.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800C9EBC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA1AC.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA1E8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA22C.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA568.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA634.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA648.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA6B8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA6D8.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA6F0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CA9D0.asm")
GLOBAL_ASM("./asm/non_matchings/z_bgcheck/func_800CAA14.asm")

View File

@ -553,7 +553,7 @@
0x800AE5E4:("func_800AE5E4","void","void"),
0x800AE778:("func_800AE778","void","GlobalContext* ctxt, ColorRGBA8* color, short param_3, short param_4"),
0x800AE8EC:("func_800AE8EC","void","GlobalContext* ctxt"),
0x800AE930:("func_800AE930","void","BgCheckContext* bgCtxt, int param_2, float* param_3, float param_4, short param_5, int param_6, int param_7"),
0x800AE930:("func_800AE930","void","BgCheckContext* bgCtxt, int param_2, float* param_3, float param_4, short param_5, BgPolygon* param_6, int param_7"),
0x800AEF44:("func_800AEF44","void","void"),
0x800AEF70:("func_800AEF70","void","void"),
0x800AEFA0:("func_800AEFA0","void","void"),
@ -908,31 +908,31 @@
0x800BFA78:("func_800BFA78","s32","s32 param_1, s32 param_2"),
0x800BFAE8:("func_800BFAE8","void","void"),
0x800BFB40:("func_800BFB40","void","void"),
0x800BFB80:("BgCheck_PolygonLinkedListNodeInit","void","BgPolygonLinkedListNode* node, s16* next, s16 polyIndex"),
0x800BFB9C:("BgCheck_PolygonLinkedListResetHead","void","s16* head"),
0x800BFBAC:("BgCheck_ScenePolygonListsNodeInsert","void","BgScenePolygonLists* list, u16* head, s32 polyIndex"),
0x800BFC04:("BgCheck_PolygonLinkedListNodeInsert","void","BgPolygonLinkedList* list, s16* head, s32 polyIndex"),
0x800BFB80:("BgCheck_PolygonLinkedListNodeInit","void","BgPolygonLinkedListNode* node, s16* polyIndex, u16 next"),
0x800BFB9C:("BgCheck_PolygonLinkedListResetHead","void","u16* head"),
0x800BFBAC:("BgCheck_ScenePolygonListsNodeInsert","void","BgScenePolygonLists* list, u16* head, s16* polyIndex"),
0x800BFC04:("BgCheck_PolygonLinkedListNodeInsert","void","BgPolygonLinkedList* list, u16* head, s16* polyIndex"),
0x800BFC5C:("BgCheck_PolygonLinkedListInit","void","GlobalContext* ctxt, BgPolygonLinkedList* list"),
0x800BFC70:("BgCheck_PolygonLinkedListAlloc","void","GlobalContext* ctxt, BgPolygonLinkedList* list, u32 numNodes"),
0x800BFCC0:("BgCheck_PolygonLinkedListReset","void","BgPolygonLinkedList* list"),
0x800BFCCC:("BgCheck_AllocPolygonLinkedListNode","s16","BgPolygonLinkedList* attributes"),
0x800BFCCC:("BgCheck_AllocPolygonLinkedListNode","u16","BgPolygonLinkedList* list"),
0x800BFCFC:("BgCheck_CreateVec3fFromVertex","void","BgVertex* vertex, Vector3f* vector"),
0x800BFD40:("BgCheck_CreateVertexFromVec3f","void","BgVertex* vertex, Vector3f* vector"),
0x800BFD84:("func_800BFD84","void","void"),
0x800BFDEC:("func_800BFDEC","void","void"),
0x800BFD84:("func_800BFD84","float","BgPolygon* polygon, float param_2, float param_3"),
0x800BFDEC:("func_800BFDEC","int","BgPolygon* param_1, BgPolygon* param_2, unsigned int* param_3, unsigned int* param_4"),
0x800BFFC4:("BgCheck_PolygonGetMinY","s32","BgPolygon* polygons, BgVertex* vertices"),
0x800C003C:("func_800C003C","void","void"),
0x800C0094:("func_800C0094","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5"),
0x800C01B8:("func_800C01B8","void","void"),
0x800C003C:("BgCheck_PolygonGetNormal","void","BgPolygon* polygon, f32* normalX, f32* normalY, f32* normalZ"),
0x800C0094:("func_800C0094","void","BgPolygon* param_1, f32 xOffset, f32 yOffset, f32 zOffset, z_Matrix* matrix"),
0x800C01B8:("func_800C01B8","f32","BgPolygon* param_1, Vector3f* param_2"),
0x800C0220:("BgCheck_CreateColTriParamsFromPolygon","void","BgPolygon* polygon, BgVertex* vertices, ColTriParams* tri"),
0x800C02C0:("func_800C02C0","void","BgPolygon* poly, s32 index, BgCheckContext* bgCtxt, ColTriParams* tri"),
0x800C0340:("func_800C0340","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6"),
0x800C0474:("func_800C0474","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6"),
0x800C0340:("func_800C0340","void","BgPolygon* param_1, BgVertex* param_2, UNK_TYPE4 param_3, UNK_TYPE4 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6"),
0x800C0474:("func_800C0474","UNK_TYPE4","BgPolygon* param_1, BgVertex* param_2, UNK_TYPE4 param_3, UNK_TYPE4 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6"),
0x800C0668:("func_800C0668","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5"),
0x800C06A8:("func_800C06A8","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5"),
0x800C074C:("func_800C074C","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5"),
0x800C07F0:("func_800C07F0","void","void"),
0x800C0AF0:("func_800C0AF0","void","void"),
0x800C0AF0:("BgCheck_PolygonCollidesWithSphere","void","BgPolygon* polygon, BgVertex* verticies, Vector3f* pos, f32 readius"),
0x800C0BC0:("BgCheck_ScenePolygonListsInsertSorted","void","BgCheckContext* bgCtxt, u16* head, BgPolygon* polygons, BgVertex* vertices, s16 index"),
0x800C0DE0:("BgCheck_ScenePolygonListsInsert","void","BgMeshSubdivision* subdivision, BgCheckContext* bgCtxt, BgPolygon* polygons, BgVertex* vertices, s16 index"),
0x800C0E74:("func_800C0E74","void","UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10"),

View File

@ -4021,12 +4021,12 @@
0x801ED940:("D_801ED940","UNK_TYPE1","",0x1),
0x801ED950:("D_801ED950","UNK_TYPE1","",0x1),
0x801ED9A0:("D_801ED9A0","UNK_TYPE1","",0x1),
0x801ED9F0:("D_801ED9F0","UNK_TYPE1","",0x1),
0x801ED9FC:("D_801ED9FC","UNK_TYPE1","",0x1),
0x801EDA08:("D_801EDA08","UNK_TYPE1","",0x1),
0x801EDA18:("D_801EDA18","UNK_TYPE1","",0x1),
0x801EDA24:("D_801EDA24","UNK_TYPE1","",0x1),
0x801EDA30:("D_801EDA30","UNK_TYPE1","",0x1),
0x801ED9F0:("D_801ED9F0","Vector3f","",0xc),
0x801ED9FC:("D_801ED9FC","Vector3f","",0xc),
0x801EDA08:("D_801EDA08","Vector3f","",0xc),
0x801EDA18:("D_801EDA18","Vector3f","",0xc),
0x801EDA24:("D_801EDA24","Vector3f","",0xc),
0x801EDA30:("D_801EDA30","Vector3f","",0xc),
0x801EDA40:("D_801EDA40","z_Matrix","",0x40),
0x801EDA80:("D_801EDA80","ColTriParams","",0x34),
0x801EDAF8:("D_801EDAF8","UNK_TYPE1","",0x1),