Update xform and related types

This commit is contained in:
Zac 2024-07-07 00:22:36 +00:00 committed by GitHub
parent e02d2c77b6
commit 2ac168ec41
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 78 additions and 65 deletions

View File

@ -261,9 +261,7 @@ segments:
- [0xcefb8, asm, P2/stephide]
- [0xd24f0, asm, P2/steppipe]
- [0xd39c8, c, P2/steppower]
- [0xd41d0, asm, P2/step_pqr_unk] #? unknown file
- [0xd41d0, asm, P2/steprail] #? unconfirmed name
- [0xd46f0, asm, P2/steprun]
- [0xd5148, asm, P2/stepside]
- [0xd5848, asm, P2/stepzap]
@ -287,9 +285,7 @@ segments:
- [0xea088, c, P2/ui]
- [0xeac78, asm, P2/update]
- [0xeb408, c, P2/util]
- [0xec518, asm, P2/uv_unk] #? unknown file
- [0xee650, c, P2/vec]
- [0xef318, asm, P2/vifs]
- [0xef900, asm, P2/vis]
@ -297,7 +293,11 @@ segments:
- [0xf0838, asm, P2/waypoint]
- [0xf0ce8, asm, P2/wipe]
- [0xf1758, asm, P2/wm] # not confident
- [0xf49f8, c, P2/xform]
- [0xf49f8, c, P2/xform1]
- [0xf4c38, asm, P2/xform_PwarpFromOid]
- [0xf4d80, c, P2/xform2]
- [0xf5f20, asm, P2/zap]
## Source files in May proto that aren't in release:

View File

@ -23,7 +23,7 @@ LO *PloFindSwChild(SW *psw, OID oid, ALO *paloAncestor);
int FIsCidDerivedFrom(int cid, int cidAncestor);
int CploFindSwObjectsByClass(SW *psw, ulong grffso, CID cid, LO *ploContext, int cploMax, LO **aplo);
int CploFindSwObjectsByClass(SW *psw, int grffso, CID cid, LO *ploContext, int cploMax, LO **aplo);
LO *PloFindSwObjectByClass(SW *psw, int grffso, CID cid, LO *ploContext);

View File

@ -8,6 +8,20 @@
#include <alo.h>
enum FSO
{
FSO_FindChild = 0x1,
FSO_FindImmediateChild = 0x2,
FSO_FindParent = 0x3,
FSO_FindNearest = 0x4,
FSO_FindAll = 0x5,
GRFFSO_FindMask = 0xFF,
FSO_IncludeRemovedObjects = 0x100,
FSO_ReturnActualCount = 0x200
};
typedef int GRFFSO;
/**
* @brief Scene object.
*

View File

@ -31,10 +31,10 @@ typedef int GRFTRANS;
*/
struct TRANS
{
uint32_t fSet;
uint fSet;
struct LevelTableStruct *pchzWorld; // Current file thats loading struct
OID oidWarp; // Checkpoint Warps
OID trans_mod_flags;
OID oidWarpContet;
GRFTRANS grftrans; // Lost all lives flags
};

View File

@ -32,16 +32,16 @@ enum WIPES
};
/**
* @brief Wipe
* @brief Screen wipe
*/
struct WIPE
{
undefined4 unk_0x0;
WIPES wipes;
float tWipes;
float uBlack;
TRANS trans;
WIPEK wipek;
TRANS transButton;
WIPEK wipek;
WIPEK wipekButton;
};

View File

@ -1,53 +0,0 @@
#include "common.h"
INCLUDE_ASM(const s32, "P2/xform", InitXfm__FP3XFM);
INCLUDE_ASM(const s32, "P2/xform", LoadXfmFromBrx__FP3XFMP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform", SetXfmParent__FP3XFMP3ALO);
INCLUDE_ASM(const s32, "P2/xform", ApplyXfmProxy__FP3XFMP5PROXY);
INCLUDE_ASM(const s32, "P2/xform", ConvertXfmLocalToWorld__FP3XFMP6VECTORT1);
INCLUDE_ASM(const s32, "P2/xform", GetXfmPos__FP3XFMP6VECTOR);
INCLUDE_ASM(const s32, "P2/xform", GetXfmMat__FP3XFMP7MATRIX3);
INCLUDE_ASM(const s32, "P2/xform", PwarpFromOid__F3OIDT0);
INCLUDE_ASM(const s32, "P2/xform", LoadWarpFromBrx__FP4WARPP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform", CloneWarp__FP4WARPT0);
INCLUDE_ASM(const s32, "P2/xform", PostWarpLoad__FP4WARP);
INCLUDE_ASM(const s32, "P2/xform", TriggerWarp__FP4WARP);
INCLUDE_ASM(const s32, "P2/xform", SetWarpRsmg__FP4WARPi3OIDN22);
INCLUDE_ASM(const s32, "P2/xform", func_001F4308);
INCLUDE_ASM(const s32, "P2/xform", TeleportSwPlayer__FP2SW3OIDT1);
INCLUDE_ASM(const s32, "P2/xform", PexitDefault__Fv);
INCLUDE_ASM(const s32, "P2/xform", TriggerDefaultExit__Fi5WIPEK);
INCLUDE_ASM(const s32, "P2/xform", LoadExitFromBrx__FP4EXITP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform", PostExitLoad__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform", SetExitExits__FP4EXIT5EXITS);
INCLUDE_ASM(const s32, "P2/xform", TriggerExit__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform", WipeExit__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform", UpdateExit__FfP4EXIT);
INCLUDE_ASM(const s32, "P2/xform", InitCamera__FP6CAMERA);
INCLUDE_ASM(const s32, "P2/xform", PostCameraLoad__FP6CAMERA);
INCLUDE_ASM(const s32, "P2/xform", EnableCamera__FP6CAMERA);

15
src/P2/xform1.c Normal file
View File

@ -0,0 +1,15 @@
#include <xform.h>
INCLUDE_ASM(const s32, "P2/xform1", InitXfm__FP3XFM);
INCLUDE_ASM(const s32, "P2/xform1", LoadXfmFromBrx__FP3XFMP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform1", SetXfmParent__FP3XFMP3ALO);
INCLUDE_ASM(const s32, "P2/xform1", ApplyXfmProxy__FP3XFMP5PROXY);
INCLUDE_ASM(const s32, "P2/xform1", ConvertXfmLocalToWorld__FP3XFMP6VECTORT1);
INCLUDE_ASM(const s32, "P2/xform1", GetXfmPos__FP3XFMP6VECTOR);
INCLUDE_ASM(const s32, "P2/xform1", GetXfmMat__FP3XFMP7MATRIX3);

37
src/P2/xform2.c Normal file
View File

@ -0,0 +1,37 @@
#include <xform.hgit >
INCLUDE_ASM(const s32, "P2/xform2", LoadWarpFromBrx__FP4WARPP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform2", CloneWarp__FP4WARPT0);
INCLUDE_ASM(const s32, "P2/xform2", PostWarpLoad__FP4WARP);
INCLUDE_ASM(const s32, "P2/xform2", TriggerWarp__FP4WARP);
INCLUDE_ASM(const s32, "P2/xform2", SetWarpRsmg__FP4WARPi3OIDN22);
INCLUDE_ASM(const s32, "P2/xform2", func_001F4308);
INCLUDE_ASM(const s32, "P2/xform2", TeleportSwPlayer__FP2SW3OIDT1);
INCLUDE_ASM(const s32, "P2/xform2", PexitDefault__Fv);
INCLUDE_ASM(const s32, "P2/xform2", TriggerDefaultExit__Fi5WIPEK);
INCLUDE_ASM(const s32, "P2/xform2", LoadExitFromBrx__FP4EXITP18CBinaryInputStream);
INCLUDE_ASM(const s32, "P2/xform2", PostExitLoad__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform2", SetExitExits__FP4EXIT5EXITS);
INCLUDE_ASM(const s32, "P2/xform2", TriggerExit__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform2", WipeExit__FP4EXIT);
INCLUDE_ASM(const s32, "P2/xform2", UpdateExit__FfP4EXIT);
INCLUDE_ASM(const s32, "P2/xform2", InitCamera__FP6CAMERA);
INCLUDE_ASM(const s32, "P2/xform2", PostCameraLoad__FP6CAMERA);
INCLUDE_ASM(const s32, "P2/xform2", EnableCamera__FP6CAMERA);