x64 and hsfload improvements, build every REL (#582)
* Port some of hsfload.c * More byteswaps in hsfload.c * Finish hsfload besides cenv * hsfload fixes * Some x64 improvements * More x64 improvements * 64 bit improvements * Link in lots of files * Fix armem bug * Fix dll killing, load modeseldll * Fixes, clearing TODOs * Tons of warning/error fixes * Linux build fixes * Add -fPIC flag to fix build on x64 linux * GXSETARRAY sizes and misc fixes * More fixes * Build all RELs * Implement C_Quat functions * Fix PAL build
This commit is contained in:
parent
bc19d2263b
commit
34cf507e3f
186 changed files with 3256 additions and 1540 deletions
|
|
@ -3,7 +3,7 @@
|
|||
#include "game/hsfman.h"
|
||||
#include "game/object.h"
|
||||
|
||||
extern u8 texMtxTbl[];
|
||||
SHARED_SYM extern u8 texMtxTbl[];
|
||||
|
||||
#define FABS(x) ((x < 0.0f) ? -(x) : (x))
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ typedef struct _unkStruct6 {
|
|||
m440Func6 unk38;
|
||||
s16 unk3C;
|
||||
s16 unk3E;
|
||||
} unkStruct6; // sizeof 0x40
|
||||
} unkStruct6; // sizeof 0x40 // TODO same as unkStruct14?
|
||||
|
||||
typedef struct _unkStruct7 {
|
||||
GXColor unk0;
|
||||
|
|
@ -178,7 +178,8 @@ typedef struct _unkStruct13 {
|
|||
typedef struct _unkStruct14 {
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
char unk4[0x8];
|
||||
char unk4[4];
|
||||
s32 unk8;
|
||||
void *unkC;
|
||||
char unk10[0x4];
|
||||
void *unk14;
|
||||
|
|
|
|||
|
|
@ -29,9 +29,6 @@ typedef struct {
|
|||
HsfObject *obj; // 0030
|
||||
} HuObjUnk;
|
||||
|
||||
extern Vec CRot;
|
||||
extern Vec Center;
|
||||
extern float CZoom;
|
||||
void fn_1_29C();
|
||||
void fn_1_28F8(Vec *arg0, Vec *arg1);
|
||||
void fn_1_37DC(omObjData *);
|
||||
|
|
|
|||
|
|
@ -27,7 +27,9 @@ typedef struct datalist_sprite {
|
|||
GXColor color;
|
||||
} DataListSprite;
|
||||
|
||||
// void fn_1_1EC0(s16 view);
|
||||
#ifndef __MWERKS__
|
||||
void fn_1_1EC0(s16 view);
|
||||
#endif
|
||||
|
||||
s32 fn_1_2490(void);
|
||||
s32 fn_1_37DC(void);
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ typedef struct tutorial_scene {
|
|||
TutorialSceneFunc func;
|
||||
} TutorialScene;
|
||||
|
||||
extern s32 boardTutorialData[4];
|
||||
SHARED_SYM extern s32 boardTutorialData[4];
|
||||
|
||||
void HostPosSet(s16);
|
||||
void fn_1_1FB0(void);
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ extern "C" {
|
|||
#define ARQ_PRIORITY_LOW 0
|
||||
#define ARQ_PRIORITY_HIGH 1
|
||||
|
||||
typedef void (*ARQCallback)(u32 pointerToARQRequest);
|
||||
typedef void (*ARQCallback)(uintptr_t pointerToARQRequest);
|
||||
|
||||
typedef struct ARQRequest {
|
||||
|
||||
|
|
@ -37,7 +37,7 @@ typedef struct ARQRequest {
|
|||
|
||||
void ARQInit(void);
|
||||
void ARQReset(void);
|
||||
void ARQPostRequest(ARQRequest* task, u32 owner, u32 type, u32 priority, u32 source, u32 dest,
|
||||
void ARQPostRequest(ARQRequest* task, u32 owner, u32 type, u32 priority, uintptr_t source, uintptr_t dest,
|
||||
u32 length, ARQCallback callback);
|
||||
void ARQRemoveRequest(ARQRequest* task);
|
||||
void ARQRemoveOwnerRequest(u32 owner);
|
||||
|
|
|
|||
|
|
@ -20,9 +20,10 @@ void GXSetTevIndirect(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXIndTe
|
|||
GXIndTexWrap wrap_t, GXBool add_prev, GXBool ind_lod,
|
||||
GXIndTexAlphaSel alpha_sel);
|
||||
//Must be implicit to match m455dll
|
||||
//void GXSetTevIndWarp(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXBool signed_offsets,
|
||||
// GXBool replace_mode, GXIndTexMtxID matrix_sel);
|
||||
|
||||
#ifndef __MWERKS__
|
||||
void GXSetTevIndWarp(GXTevStageID tev_stage, GXIndTexStageID ind_stage, GXBool signed_offsets,
|
||||
GXBool replace_mode, GXIndTexMtxID matrix_sel);
|
||||
#endif
|
||||
void GXSetTevIndTile (GXTevStageID tev_stage, GXIndTexStageID ind_stage,
|
||||
u16 tilesize_s, u16 tilesize_t,
|
||||
u16 tilespacing_s, u16 tilespacing_t,
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ typedef struct {
|
|||
#define MTXRadToDeg(a) ((a)*57.29577951f)
|
||||
#define MTXRowCol(m, r, c) ((m)[(r)][(c)])
|
||||
|
||||
|
||||
void C_MTXIdentity(Mtx m);
|
||||
void C_MTXCopy(const Mtx src, Mtx dst);
|
||||
void C_MTXConcat(const Mtx a, const Mtx b, Mtx ab);
|
||||
|
|
@ -46,6 +47,8 @@ void C_MTXConcatArray(const Mtx a, const Mtx* srcBase, Mtx* dstBase, u32 count);
|
|||
void C_MTXTranspose(const Mtx src, Mtx xPose);
|
||||
u32 C_MTXInverse(const Mtx src, Mtx inv);
|
||||
u32 C_MTXInvXpose(const Mtx src, Mtx invX);
|
||||
void C_MTXReorder(const Mtx src, ROMtx dest);
|
||||
void C_MTXROMultVecArray(const ROMtx m, const Vec *srcBase, Vec *dstBase, u32 count);
|
||||
|
||||
#ifdef GEKKO
|
||||
void PSMTXIdentity(Mtx m);
|
||||
|
|
|
|||
|
|
@ -84,8 +84,8 @@ PADSamplingCallback PADSetSamplingCallback(PADSamplingCallback);
|
|||
#ifdef TARGET_PC
|
||||
/* New API to facilitate controller interactions */
|
||||
typedef struct PADDeadZones {
|
||||
bool emulateTriggers;
|
||||
bool useDeadzones;
|
||||
BOOL emulateTriggers;
|
||||
BOOL useDeadzones;
|
||||
u16 stickDeadZone;
|
||||
u16 substickDeadZone;
|
||||
u16 leftTriggerActivationZone;
|
||||
|
|
@ -118,7 +118,7 @@ const char* PADGetNativeButtonName(u32 button);
|
|||
/* Returns any pressed native button */
|
||||
s32 PADGetNativeButtonPressed(u32 port);
|
||||
void PADRestoreDefaultMapping(u32 port);
|
||||
void PADBlockInput(bool block);
|
||||
void PADBlockInput(BOOL block);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
|
|
@ -4,7 +4,9 @@
|
|||
#include "math.h"
|
||||
#include "dolphin/mtx.h"
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.141592653589793
|
||||
#endif
|
||||
|
||||
typedef struct vec2f {
|
||||
float x;
|
||||
|
|
@ -36,6 +38,7 @@ typedef struct vec2f {
|
|||
|
||||
#ifndef __MWERKS__
|
||||
void HuSetVecF(Vec *arg0, f32 arg8, f32 arg9, f32 argA);
|
||||
void HuSubVecF(Vec* out, Vec* in, Vec* sub);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#define _GAME_AUDIO_H
|
||||
|
||||
#include "dolphin.h"
|
||||
#include "version.h"
|
||||
|
||||
typedef struct sndGrpTbl_s {
|
||||
s16 ovl;
|
||||
|
|
@ -74,6 +75,6 @@ extern float Snd3DDistOffset;
|
|||
extern s32 musicOffF;
|
||||
extern u8 fadeStat;
|
||||
|
||||
extern SNDGRPTBL sndGrpTable[];
|
||||
SHARED_SYM extern SNDGRPTBL sndGrpTable[];
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@
|
|||
|
||||
#include "dolphin.h"
|
||||
|
||||
void BoardLandBlueExec(s32 player, s32 space);
|
||||
void BoardLandRedExec(s32 player, s32 space);
|
||||
void BoardEventLandBlue(s32, s32);
|
||||
void BoardEventLandRed(s32, s32);
|
||||
s8 BoardCoinChgCreate(Vec*, s8);
|
||||
|
|
|
|||
|
|
@ -8,10 +8,6 @@ s16 BoardBooCreate(s32 arg0, Vec *arg1);
|
|||
void BoardBooKill(void);
|
||||
s32 BoardBooStealTypeSet(s32 arg0);
|
||||
s32 BoardBooStealMain(void);
|
||||
BOOL CheckBallCoinDone(void);
|
||||
void TakeBallStar(void);
|
||||
void ExecTakeBallStar(omObjData *arg0);
|
||||
BOOL CheckTakeBallStarDone(void);
|
||||
s32 BoardBooStealValueGet(s16 *arg0, s16 *arg1);
|
||||
BOOL BoardBooStealLightCheck(void);
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ void BoardBooHouseHostSet(s16);
|
|||
s16 BoardBooHouseHostGet(void);
|
||||
void BoardBooHouseCreate(void);
|
||||
void BoardBooHouseExec(s32);
|
||||
void BoardBooHouseKill(void);
|
||||
|
||||
s32 BoardBooComUseCheck(s32);
|
||||
void BoardBooHouseTutorialExec(void);
|
||||
|
|
|
|||
8
include/game/board/bowser.h
Normal file
8
include/game/board/bowser.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef _BOARD_BOWSER_H
|
||||
#define _BOARD_BOWSER_H
|
||||
|
||||
#include "game/process.h"
|
||||
|
||||
void BoardBowserExec(s32 player, s32 space);
|
||||
|
||||
#endif
|
||||
8
include/game/board/fortune.h
Normal file
8
include/game/board/fortune.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#ifndef _BOARD_FORTUNE_H
|
||||
#define _BOARD_FORTUNE_H
|
||||
|
||||
#include "game/process.h"
|
||||
|
||||
void BoardFortuneExec(s32 player, s32 space);
|
||||
|
||||
#endif
|
||||
|
|
@ -6,5 +6,8 @@
|
|||
void BoardItemStart(s32 arg0, s32 arg1);
|
||||
BOOL BoardItemDoneCheck(void);
|
||||
void BoardItemBagItemSet(s16 *arg0);
|
||||
#ifndef __MWERKS__
|
||||
void BoardItemPlayerRestore(s32 arg0, s32 arg1);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1,72 +1,73 @@
|
|||
#ifndef _BOARD_MAIN_H
|
||||
#define _BOARD_MAIN_H
|
||||
|
||||
#include "dolphin.h"
|
||||
#include "game/data.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "game/object.h"
|
||||
#include "game/data.h"
|
||||
#include "dolphin.h"
|
||||
|
||||
#define BOARD_ID_MAIN1 0 //TOADS_MIDWAY_MADNESS
|
||||
#define BOARD_ID_MAIN2 1 //GOOMBAS_GREEDY_GALA
|
||||
#define BOARD_ID_MAIN3 2 //SHY_GUYS_JUNGLE_JAM
|
||||
#define BOARD_ID_MAIN4 3 //BOOS_HAUNTED_BASH
|
||||
#define BOARD_ID_MAIN5 4 //KOOPAS_SEASIDE_SOIREE
|
||||
#define BOARD_ID_MAIN6 5 //BOWSERS_GNARLY_PARTY
|
||||
#define BOARD_ID_TUTORIAL 6 //TUTORIAL_BOARD
|
||||
#define BOARD_ID_EXTRA1 7 //MEGA_BOARD_MAYHEM
|
||||
#define BOARD_ID_EXTRA2 8 //MINI_BOARD_MAD_DASH
|
||||
|
||||
#define BOARD_ID_MAIN1 0 // TOADS_MIDWAY_MADNESS
|
||||
#define BOARD_ID_MAIN2 1 // GOOMBAS_GREEDY_GALA
|
||||
#define BOARD_ID_MAIN3 2 // SHY_GUYS_JUNGLE_JAM
|
||||
#define BOARD_ID_MAIN4 3 // BOOS_HAUNTED_BASH
|
||||
#define BOARD_ID_MAIN5 4 // KOOPAS_SEASIDE_SOIREE
|
||||
#define BOARD_ID_MAIN6 5 // BOWSERS_GNARLY_PARTY
|
||||
#define BOARD_ID_TUTORIAL 6 // TUTORIAL_BOARD
|
||||
#define BOARD_ID_EXTRA1 7 // MEGA_BOARD_MAYHEM
|
||||
#define BOARD_ID_EXTRA2 8 // MINI_BOARD_MAD_DASH
|
||||
|
||||
#define BOARD_FABS(value) ((value < 0) ? -(value) : (value))
|
||||
|
||||
typedef struct board_focus_data {
|
||||
u16 view_type;
|
||||
s16 time;
|
||||
s16 max_time;
|
||||
float fov_start;
|
||||
float fov_end;
|
||||
float zoom_start;
|
||||
float zoom_end;
|
||||
Vec rot_start;
|
||||
Vec rot_end;
|
||||
Vec target_start;
|
||||
Vec target_end;
|
||||
u16 view_type;
|
||||
s16 time;
|
||||
s16 max_time;
|
||||
float fov_start;
|
||||
float fov_end;
|
||||
float zoom_start;
|
||||
float zoom_end;
|
||||
Vec rot_start;
|
||||
Vec rot_end;
|
||||
Vec target_start;
|
||||
Vec target_end;
|
||||
} BoardFocusData;
|
||||
|
||||
typedef struct board_camera_data {
|
||||
struct {
|
||||
u8 hide_all : 1;
|
||||
u8 moving : 1;
|
||||
u8 quaking : 1;
|
||||
};
|
||||
u16 mask;
|
||||
s16 target_mdl;
|
||||
s16 target_space;
|
||||
s32 quake_timer;
|
||||
float quake_strength;
|
||||
float fov;
|
||||
float near;
|
||||
float far;
|
||||
float aspect;
|
||||
float viewport_x;
|
||||
float viewport_y;
|
||||
float viewport_w;
|
||||
float viewport_h;
|
||||
float viewport_near;
|
||||
float viewport_far;
|
||||
Vec pos;
|
||||
Vec up;
|
||||
Vec target;
|
||||
Vec offset;
|
||||
Vec rot;
|
||||
float zoom;
|
||||
void (*pos_calc)(struct board_camera_data *);
|
||||
BoardFocusData focus;
|
||||
struct {
|
||||
u8 hide_all : 1;
|
||||
u8 moving : 1;
|
||||
u8 quaking : 1;
|
||||
};
|
||||
u16 mask;
|
||||
s16 target_mdl;
|
||||
s16 target_space;
|
||||
s32 quake_timer;
|
||||
float quake_strength;
|
||||
float fov;
|
||||
float nnear;
|
||||
float ffar;
|
||||
float aspect;
|
||||
float viewport_x;
|
||||
float viewport_y;
|
||||
float viewport_w;
|
||||
float viewport_h;
|
||||
float viewport_near;
|
||||
float viewport_far;
|
||||
Vec pos;
|
||||
Vec up;
|
||||
Vec target;
|
||||
Vec offset;
|
||||
Vec rot;
|
||||
float zoom;
|
||||
void (*pos_calc)(struct board_camera_data *);
|
||||
BoardFocusData focus;
|
||||
} BoardCameraData;
|
||||
|
||||
extern BoardCameraData boardCamera;
|
||||
extern Process *boardObjMan;
|
||||
extern Process *boardMainProc;
|
||||
extern u32 boardRandSeed;
|
||||
SHARED_SYM extern Process *boardObjMan;
|
||||
SHARED_SYM extern Process *boardMainProc;
|
||||
SHARED_SYM extern u32 boardRandSeed;
|
||||
extern omObjData *boardMainObj;
|
||||
|
||||
typedef void (*BoardFunc)(void);
|
||||
|
|
@ -78,11 +79,11 @@ typedef void (*BoardCameraPosCalcFunc)(BoardCameraData *camera);
|
|||
|
||||
typedef void (*BoardTurnStartHook)(s32 player, s32 space);
|
||||
|
||||
extern BoardTurnStartHook boardTurnStartFunc;
|
||||
extern void (*boardStarShowNextHook)(void);
|
||||
extern void (*boardStarGiveHook)(void);
|
||||
extern BoardBowserHook boardBowserHook;
|
||||
extern BoardFunc boardTurnFunc;
|
||||
SHARED_SYM extern BoardTurnStartHook boardTurnStartFunc;
|
||||
SHARED_SYM extern void (*boardStarShowNextHook)(void);
|
||||
SHARED_SYM extern void (*boardStarGiveHook)(void);
|
||||
SHARED_SYM extern BoardBowserHook boardBowserHook;
|
||||
SHARED_SYM extern BoardFunc boardTurnFunc;
|
||||
extern BoardLightHook boardLightResetHook;
|
||||
extern BoardLightHook boardLightSetHook;
|
||||
|
||||
|
|
@ -119,12 +120,15 @@ void BoardCameraTargetSpaceSet(s32 space);
|
|||
void BoardCameraQuakeSet(s32 duration, float strength);
|
||||
void BoardCameraQuakeReset();
|
||||
void BoardCameraTargetSet(float x, float y, float z);
|
||||
#ifndef __MWERKS__
|
||||
void BoardCameraPosCalcFuncSet(BoardCameraPosCalcFunc func);
|
||||
#endif
|
||||
void BoardCameraPosSet(float x, float y, float z);
|
||||
void BoardCameraXRotZoomSet(float zoom, float x_rot);
|
||||
void BoardCameraZoomSet(float zoom);
|
||||
void BoardCameraRotSet(float x, float y);
|
||||
void BoardCameraNearFarSet(float near, float far);
|
||||
void BoardCameraNearFarGet(float *near, float *far);
|
||||
void BoardCameraNearFarSet(float nnear, float ffar);
|
||||
void BoardCameraNearFarGet(float *nnear, float *ffar);
|
||||
void BoardCameraMotionStart(s16 model_target, Vec *rot_target, float zoom_target, float fov_target);
|
||||
void BoardCameraMotionStartEx(s16 model_target, Vec *rot_target, Vec *offset_end, float zoom_target, float fov_target, s16 max_time);
|
||||
void BoardCameraFovSet(float fov);
|
||||
|
|
@ -166,4 +170,4 @@ void BoardTauntKill(void);
|
|||
s32 BoardDataDirReadAsync(s32 data_num);
|
||||
void BoardDataAsyncWait(s32 status);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ s32 BoardModelMotionUpdateSet(s16 model, s32 flag);
|
|||
s32 BoardModelVoiceEnableSet(s16 model, s32 motion, s32 flag);
|
||||
s32 BoardModelMotionStart(s16 model, s32 slot, u32 attr);
|
||||
s32 BoardModelMotionShiftSet(s16 model, s32 motion, float time, float shift_time, u32 attr);
|
||||
s32 BoardModelMotionShiftIDGet(s16 model);
|
||||
s32 BoardModelAttrSet(s16 model, u32 attr);
|
||||
s32 BoardModelAttrReset(s16 model, u32 attr);
|
||||
s32 BoardModelMotionTimeSet(s16 model, float time);
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
#include "game/board/space.h"
|
||||
#include "game/board/ui.h"
|
||||
|
||||
extern s16 boardPlayerMdl[4];
|
||||
SHARED_SYM extern s16 boardPlayerMdl[4];
|
||||
|
||||
static inline s32 BoardPlayerHandicapGet(s32 player)
|
||||
{
|
||||
|
|
@ -97,6 +97,9 @@ void BoardJunctionMaskReset(s32);
|
|||
void BoardJunctionMaskZero(void);
|
||||
void BoardPlayerVoiceEnableSet(s32, s32, s32);
|
||||
|
||||
#ifndef __MWERKS__
|
||||
void BoardPlayerMoveBetween(s32 arg0, s32 arg1, s32 arg2);
|
||||
#endif
|
||||
|
||||
void BoardPlayerMoveTo(s32, s32);
|
||||
void BoardPlayerMoveToAsync(s32, s32);
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ typedef struct board_space {
|
|||
u16 link[BOARD_SPACE_LINKMAX+1];
|
||||
} BoardSpace;
|
||||
|
||||
s32 BoardSpaceWalkExec(s32 player, s32 space);
|
||||
void BoardSpaceWalkEventFuncSet(BoardSpaceEventFunc func);
|
||||
void BoardSpaceWalkMiniEventFuncSet(BoardSpaceEventFunc func);
|
||||
void BoardSpaceLandEventFuncSet(BoardSpaceEventFunc func);
|
||||
|
|
@ -27,6 +28,7 @@ BoardSpace *BoardSpaceGet(s32 layer, s32 index);
|
|||
void BoardSpaceAttrSet(s32 layer, u32 attr);
|
||||
void BoardSpaceAttrReset(s32 layer, u32 attr);
|
||||
u32 BoardSpaceFlagGet(s32 layer, s32 index);
|
||||
void BoardSpaceTypeForce(u16 from, u16 to);
|
||||
s32 BoardSpaceTypeGet(s32 layer, s32 index);
|
||||
void BoardSpaceTypeSet(s32 layer, s32 index, s32 type);
|
||||
s32 BoardSpacePosGet(s32 layer, s32 index, Vec *pos);
|
||||
|
|
@ -40,6 +42,7 @@ s32 BoardSpaceLinkTargetListGet(s32 layer, s32 target, s16 *list);
|
|||
s32 BoardSpaceLinkTypeSearch(s32 layer, s32 target, u16 type);
|
||||
s32 BoardSpaceLinkTransformGet(s32 flag, Vec *pos, Vec *rot, Vec *scale);
|
||||
void BoardSpaceHostSet(s32 space);
|
||||
void BoardSpaceHide(s32 value);
|
||||
void BoardSpaceStarSetIndex(s32 index);
|
||||
s32 BoardSpaceStarGetNext(void);
|
||||
s32 BoardSpaceStarGetRandom(s32 excl_pos);
|
||||
|
|
@ -49,6 +52,7 @@ s32 BoardSpaceStarGetCurr(void);
|
|||
s32 BoardSpaceStarCheck(s32 index);
|
||||
void BoardSpaceLandExec(s32 player, s32 space);
|
||||
void BoardSpaceCameraSet(u16 mask);
|
||||
s32 BoardSpaceBlockExec(s32 player, s32 space);
|
||||
void BoardSpaceBlockPosSet(void);
|
||||
void BoardSpaceInit(s32 data_num);
|
||||
void BoardSpaceDestroy(void);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#define _BOARD_TUTORIAL_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "version.h"
|
||||
|
||||
void BoardTutorialInit(void);
|
||||
void BoardTutorialKill(void);
|
||||
|
|
@ -16,7 +17,7 @@ void BoardTutorialItemSet(s8 arg0);
|
|||
void BoardTutorialHostSet(s16 arg0);
|
||||
void BoardTutorialHostHide(s8 arg0);
|
||||
|
||||
extern s32 boardTutorialData[4];
|
||||
SHARED_SYM extern s32 boardTutorialData[4];
|
||||
extern s8 boardTutorialDirInputX;
|
||||
extern s8 boardTutorialDirInputY;
|
||||
extern s16 boardTutorialDirInputTime;
|
||||
|
|
@ -24,6 +25,6 @@ extern s32 boardTutorialBlockPos;
|
|||
extern s8 boardTutorialBlockItem;
|
||||
extern s8 boardTutorialBlockF;
|
||||
extern s8 boardTutorialUseItem;
|
||||
extern s8 boardTutorialF;
|
||||
SHARED_SYM extern s8 boardTutorialF;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,8 +2,9 @@
|
|||
#define _GAME_CARD_H
|
||||
|
||||
#include "dolphin.h"
|
||||
#include "version.h"
|
||||
|
||||
extern u8 UnMountCnt;
|
||||
SHARED_SYM extern u8 UnMountCnt;
|
||||
|
||||
void HuCardInit(void);
|
||||
s32 HuCardCheck(void);
|
||||
|
|
|
|||
|
|
@ -34,7 +34,6 @@ s32 HuDataReadChk(s32 data_num);
|
|||
DataReadStat *HuDataGetStatus(void *dir_ptr);
|
||||
void *HuDataGetDirPtr(s32 data_num);
|
||||
DataReadStat *HuDataDirRead(s32 data_num);
|
||||
DataReadStat *HuDataDirReadNum(s32 data_num, s32 num);
|
||||
DataReadStat *HuDataDirSet(void *dir_ptr, s32 data_num);
|
||||
void HuDataDirReadAsyncCallBack(s32 result, DVDFileInfo* fileInfo);
|
||||
s32 HuDataDirReadAsync(s32 data_num);
|
||||
|
|
|
|||
|
|
@ -197,7 +197,6 @@ static inline void GWRumbleSet(s32 value)
|
|||
{
|
||||
GWGameStat.rumble = value;
|
||||
if (value == 0) {
|
||||
// TODO PC: get rumble working
|
||||
HuPadRumbleAllStop();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include "game/hsfformat.h"
|
||||
#include "game/hsfman.h"
|
||||
#include "game/animdata.h"
|
||||
#include "version.h"
|
||||
|
||||
typedef struct model_data ModelData;
|
||||
typedef struct particle_data ParticleData;
|
||||
|
|
@ -138,7 +139,7 @@ void Hu3DParManTimeLimitSet(s16 arg0, s32 arg1);
|
|||
void Hu3DParManVacumeSet(s16 arg0, float arg1, float arg2, float arg3, float arg4);
|
||||
void Hu3DParManColorSet(s16 arg0, s16 arg1);
|
||||
|
||||
extern Hu3DTexAnimDataStruct Hu3DTexAnimData[256];
|
||||
extern Hu3DTexScrDataStruct Hu3DTexScrData[16];
|
||||
SHARED_SYM extern Hu3DTexAnimDataStruct Hu3DTexAnimData[256];
|
||||
SHARED_SYM extern Hu3DTexScrDataStruct Hu3DTexScrData[16];
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ typedef struct hsfdraw_struct_01 {
|
|||
/* 0x1C */ float unk1C;
|
||||
/* 0x20 */ float unk20;
|
||||
/* 0x24 */ float unk24;
|
||||
/* 0x28 */ float unk28;
|
||||
/* 0x28 */ float unk28;
|
||||
/* 0x2C */ float unk2C;
|
||||
/* 0x30 */ float unk30;
|
||||
/* 0x34 */ float unk34;
|
||||
|
|
|
|||
|
|
@ -285,8 +285,8 @@ typedef struct hsf_camera {
|
|||
HsfVector3f pos;
|
||||
float aspect_dupe;
|
||||
float fov;
|
||||
float near;
|
||||
float far;
|
||||
float nnear;
|
||||
float ffar;
|
||||
} HsfCamera;
|
||||
|
||||
typedef struct hsf_light {
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
#include "game/hsfanim.h"
|
||||
#include "game/hsfformat.h"
|
||||
#include "game/memory.h"
|
||||
#include "version.h"
|
||||
|
||||
#define HU3D_MODEL_MAX 512
|
||||
#define HU3D_MOTION_MAX 256
|
||||
|
|
@ -104,7 +105,7 @@ struct model_data {
|
|||
u16 unk_26;
|
||||
u16 unk_28[8];
|
||||
s16 unk_38[8];
|
||||
u32 unk_48;
|
||||
uintptr_t unk_48;
|
||||
u32 unk_4C;
|
||||
u32 attr;
|
||||
u32 motion_attr;
|
||||
|
|
@ -140,8 +141,8 @@ struct model_data {
|
|||
}; // sizeof 0x124
|
||||
typedef struct camera_data {
|
||||
float fov;
|
||||
float near;
|
||||
float far;
|
||||
float nnear;
|
||||
float ffar;
|
||||
float aspect;
|
||||
float aspect_dupe;
|
||||
Vec pos;
|
||||
|
|
@ -297,23 +298,23 @@ void Hu3DProjectionPosSet(s16, Vec *, Vec *, Vec *);
|
|||
void Hu3DProjectionTPLvlSet(s16, float);
|
||||
void Hu3DMipMapSet(char *, s16, s32, float);
|
||||
|
||||
extern ModelData Hu3DData[0x200];
|
||||
extern CameraData Hu3DCamera[0x10];
|
||||
SHARED_SYM extern ModelData Hu3DData[0x200];
|
||||
SHARED_SYM extern CameraData Hu3DCamera[0x10];
|
||||
extern AnimData *reflectAnim[5];
|
||||
extern AnimData *hiliteAnim[4];
|
||||
SHARED_SYM extern AnimData *hiliteAnim[4];
|
||||
extern ThreeDProjectionStruct Hu3DProjection[4];
|
||||
extern ShadowData Hu3DShadowData;
|
||||
extern Mtx Hu3DCameraMtx;
|
||||
extern Mtx Hu3DCameraMtxXPose;
|
||||
extern LightData Hu3DGlobalLight[0x8];
|
||||
SHARED_SYM extern ShadowData Hu3DShadowData;
|
||||
SHARED_SYM extern Mtx Hu3DCameraMtx;
|
||||
SHARED_SYM extern Mtx Hu3DCameraMtxXPose;
|
||||
SHARED_SYM extern LightData Hu3DGlobalLight[0x8];
|
||||
extern s16 reflectMapNo;
|
||||
extern AnimData *toonAnim;
|
||||
extern s16 Hu3DShadowCamBit;
|
||||
extern s32 Hu3DShadowF;
|
||||
extern s32 shadowModelDrawF;
|
||||
extern s16 Hu3DCameraNo;
|
||||
SHARED_SYM extern s16 Hu3DShadowCamBit;
|
||||
SHARED_SYM extern s32 Hu3DShadowF;
|
||||
SHARED_SYM extern s32 shadowModelDrawF;
|
||||
SHARED_SYM extern s16 Hu3DCameraNo;
|
||||
extern s16 Hu3DCameraBit;
|
||||
extern s16 Hu3DPauseF;
|
||||
extern GXColor BGColor;
|
||||
SHARED_SYM extern GXColor BGColor;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "dolphin.h"
|
||||
#include "game/hsfformat.h"
|
||||
#include "version.h"
|
||||
|
||||
#define Hu3DMotionCreateFile(data_id) (Hu3DMotionCreate(HuDataSelHeapReadNum((data_id), MEMORY_DEFAULT_NUM, HEAP_DATA)))
|
||||
|
||||
|
|
@ -76,6 +77,6 @@ s16 Hu3DJointMotion(s16 arg0, void *arg1);
|
|||
void JointModel_Motion(s16 arg0, s16 arg1);
|
||||
void Hu3DMotionCalc(s16 arg0);
|
||||
|
||||
extern MotionData Hu3DMotion[256];
|
||||
SHARED_SYM extern MotionData Hu3DMotion[256];
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,8 +2,9 @@
|
|||
#define _GAME_INIT_H
|
||||
|
||||
#include "dolphin.h"
|
||||
#include "version.h"
|
||||
|
||||
extern GXRenderModeObj *RenderMode;
|
||||
SHARED_SYM extern GXRenderModeObj *RenderMode;
|
||||
extern OSHeapHandle currentHeapHandle;
|
||||
|
||||
extern void *DemoFrameBuffer1;
|
||||
|
|
@ -11,7 +12,7 @@ extern void *DemoFrameBuffer2;
|
|||
extern void *DemoCurrentBuffer;
|
||||
extern u32 minimumVcount;
|
||||
extern float minimumVcountf;
|
||||
extern u32 worstVcount;
|
||||
SHARED_SYM extern u32 worstVcount;
|
||||
|
||||
void HuSysInit(GXRenderModeObj *mode);
|
||||
void HuSysBeforeRender();
|
||||
|
|
|
|||
|
|
@ -2,15 +2,23 @@
|
|||
#define _GAME_JMP_H
|
||||
|
||||
#ifdef TARGET_PC
|
||||
#include <setjmp.h>
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
#ifdef _M_X64
|
||||
#include "../extern/longjmp_win64/longjmp_win64.h"
|
||||
#define SETJMP setjmp_win64
|
||||
#define LONGJMP longjmp_win64
|
||||
#define JMPBUF JMP_BUF_WIN64
|
||||
#else
|
||||
#include <setjmp.h>
|
||||
#define SETJMP setjmp
|
||||
#define LONGJMP longjmp
|
||||
#define JMPBUF jmp_buf
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _JMP_BUF_DEFINED
|
||||
#if defined(_M_IX86) || defined(__i386__)
|
||||
#if defined(_M_IX86)
|
||||
typedef struct __JUMP_BUFFER {
|
||||
uint32_t Ebp;
|
||||
uint32_t Ebx;
|
||||
|
|
@ -24,41 +32,27 @@ typedef struct __JUMP_BUFFER {
|
|||
uint32_t UnwindFunc;
|
||||
uint32_t UnwindData[6];
|
||||
} _JUMP_BUFFER;
|
||||
#elif defined(_M_X64) || defined(__x86_64__)
|
||||
#ifndef SETJMP_FLOAT128
|
||||
// TODO do we need to align this?
|
||||
typedef struct _SETJMP_FLOAT128 {
|
||||
uint64_t Part[2];
|
||||
} SETJMP_FLOAT128;
|
||||
#endif
|
||||
typedef struct _JUMP_BUFFER {
|
||||
uint64_t Frame;
|
||||
#elif defined(__i386__)
|
||||
typedef struct __JUMP_BUFFER {
|
||||
uint32_t Bx;
|
||||
uint32_t Si;
|
||||
uint32_t Di;
|
||||
uint32_t Bp;
|
||||
uint32_t Sp;
|
||||
uint32_t Pc;
|
||||
} _JUMP_BUFFER;
|
||||
#elif defined(__x86_64__)
|
||||
typedef struct __JUMP_BUFFER {
|
||||
uint64_t Rbx;
|
||||
uint64_t Rsp;
|
||||
uint64_t Rbp;
|
||||
uint64_t Rsi;
|
||||
uint64_t Rdi;
|
||||
uint64_t R12;
|
||||
uint64_t R13;
|
||||
uint64_t R14;
|
||||
uint64_t R15;
|
||||
uint64_t Rip;
|
||||
uint32_t MxCsr;
|
||||
uint16_t FpCsr;
|
||||
uint16_t Spare;
|
||||
|
||||
SETJMP_FLOAT128 Xmm6;
|
||||
SETJMP_FLOAT128 Xmm7;
|
||||
SETJMP_FLOAT128 Xmm8;
|
||||
SETJMP_FLOAT128 Xmm9;
|
||||
SETJMP_FLOAT128 Xmm10;
|
||||
SETJMP_FLOAT128 Xmm11;
|
||||
SETJMP_FLOAT128 Xmm12;
|
||||
SETJMP_FLOAT128 Xmm13;
|
||||
SETJMP_FLOAT128 Xmm14;
|
||||
SETJMP_FLOAT128 Xmm15;
|
||||
uint64_t Rsp;
|
||||
uint64_t Pc;
|
||||
} _JUMP_BUFFER;
|
||||
#elif defined(_M_ARM) || defined(__arm__)
|
||||
#elif defined(_M_ARM)
|
||||
typedef struct _JUMP_BUFFER {
|
||||
uint32_t Frame;
|
||||
|
||||
|
|
@ -76,7 +70,7 @@ typedef struct _JUMP_BUFFER {
|
|||
uint32_t Fpscr;
|
||||
uint32_t long D[8]; // D8-D15 VFP/NEON regs
|
||||
} _JUMP_BUFFER;
|
||||
#elif defined(_M_ARM64) || defined(__aarch64__)
|
||||
#elif defined(_M_ARM64)
|
||||
typedef struct _JUMP_BUFFER {
|
||||
uint64_t Frame;
|
||||
uint64_t Reserved;
|
||||
|
|
@ -133,21 +127,27 @@ typedef struct _JUMP_BUFFER {
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(_M_IX86) || defined(__i386__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Eip = (size_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Esp = (size_t)sp
|
||||
#elif defined(_M_X64) || defined(__x86_64__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Rip = (size_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Rsp = (size_t)sp
|
||||
#if defined(_M_IX86)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Eip = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Esp = (uintptr_t)sp
|
||||
#elif defined(__i386__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Pc = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Sp = (uintptr_t)sp
|
||||
#elif defined(__x86_64__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Pc = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Rsp = (uintptr_t)sp
|
||||
#elif defined(_M_X64)
|
||||
#define SETJMP_SET_IP(jump, func) (jump)->rip_getjmp = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) (jump)->rsp_getjmp = (uintptr_t)sp
|
||||
#elif defined(_M_ARM) || defined(__arm__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Pc = (size_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Sp = (size_t)sp
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Pc = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Sp = (uintptr_t)sp
|
||||
#elif defined(_M_ARM64) || defined(__aarch64__)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Lr = (size_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Sp = (size_t)sp
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->Lr = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->Sp = (uintptr_t)sp
|
||||
#elif defined(__riscv)
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->ra = (size_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->sp = (size_t)sp
|
||||
#define SETJMP_SET_IP(jump, func) ((_JUMP_BUFFER *)((jump)))->ra = (uintptr_t)func
|
||||
#define SETJMP_SET_SP(jump, sp) ((_JUMP_BUFFER *)((jump)))->sp = (uintptr_t)sp
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
|
@ -166,6 +166,7 @@ typedef struct jmp_buf {
|
|||
s32 gcsetjmp(jmp_buf *jump);
|
||||
s32 gclongjmp(jmp_buf *jump, s32 status);
|
||||
|
||||
#define JMPBUF jmp_buf
|
||||
#define SETJMP(jump) gcsetjmp(&(jump))
|
||||
#define LONGJMP(jump, status) gclongjmp(&(jump), (status))
|
||||
|
||||
|
|
|
|||
|
|
@ -16,11 +16,11 @@ void CharRotInv(Mtx arg0, Mtx arg1, Vec *arg2, omObjData *arg3);
|
|||
|
||||
extern Mtx MapMT;
|
||||
extern Mtx MapMTR;
|
||||
extern float AddX;
|
||||
extern float AddZ;
|
||||
extern s32 nMap;
|
||||
extern s32 nChar;
|
||||
SHARED_SYM extern float AddX;
|
||||
SHARED_SYM extern float AddZ;
|
||||
SHARED_SYM extern s32 nMap;
|
||||
SHARED_SYM extern s32 nChar;
|
||||
extern s32 HitFaceCount;
|
||||
extern omObjData *MapObject[16];
|
||||
SHARED_SYM extern omObjData *MapObject[16];
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -117,6 +117,6 @@ s32 MGSeqUpdateRecord(SeqWork *work);
|
|||
s32 MGSeqInitFlip(SeqWork *work, va_list params);
|
||||
s32 MGSeqUpdateFlip(SeqWork *work);
|
||||
|
||||
extern OverlayID mgSeqOvlPrev;
|
||||
SHARED_SYM extern OverlayID mgSeqOvlPrev;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include "dolphin.h"
|
||||
#include "game/process.h"
|
||||
#include "game/gamework_data.h"
|
||||
#include "version.h"
|
||||
|
||||
typedef struct mg_info {
|
||||
u16 ovl;
|
||||
|
|
@ -22,20 +23,20 @@ void omGameSysInit(Process *objman);
|
|||
void omVibrate(s16 player_cfg_index, s16 duration, s16 off, s16 on);
|
||||
|
||||
|
||||
extern s16 mgTypeCurr;
|
||||
extern s16 mgBattleStar[4];
|
||||
extern s16 mgBattleStarMax;
|
||||
extern u8 lbl_801D3E94;
|
||||
extern u32 mgRecordExtra;
|
||||
extern s32 mgQuitExtraF;
|
||||
extern s32 mgPracticeEnableF;
|
||||
extern s32 mgInstExitEnableF;
|
||||
extern u8 mgBoardHostEnableF;
|
||||
SHARED_SYM extern s16 mgTypeCurr;
|
||||
SHARED_SYM extern s16 mgBattleStar[4];
|
||||
SHARED_SYM extern s16 mgBattleStarMax;
|
||||
SHARED_SYM extern u8 lbl_801D3E94;
|
||||
SHARED_SYM extern u32 mgRecordExtra;
|
||||
SHARED_SYM extern s32 mgQuitExtraF;
|
||||
SHARED_SYM extern s32 mgPracticeEnableF;
|
||||
SHARED_SYM extern s32 mgInstExitEnableF;
|
||||
SHARED_SYM extern u8 mgBoardHostEnableF;
|
||||
|
||||
extern s16 mgTicTacToeGrid[3][3];
|
||||
extern u8 mgIndexList[256];
|
||||
extern GameStat mgGameStatBackup;
|
||||
SHARED_SYM extern s16 mgTicTacToeGrid[3][3];
|
||||
SHARED_SYM extern u8 mgIndexList[256];
|
||||
SHARED_SYM extern GameStat mgGameStatBackup;
|
||||
|
||||
extern MgInfo mgInfoTbl[];
|
||||
SHARED_SYM extern MgInfo mgInfoTbl[];
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#define _GAME_PRINTFUNC_H
|
||||
|
||||
#include "dolphin.h"
|
||||
#include "version.h"
|
||||
|
||||
#define FONT_COLOR_BLACK 0
|
||||
#define FONT_COLOR_DARK_BLUE 1
|
||||
|
|
@ -29,7 +30,7 @@ void pfDrawFonts(void);
|
|||
extern BOOL saftyFrameF;
|
||||
extern u16 strlinecnt;
|
||||
extern u16 empstrline;
|
||||
extern int fontcolor;
|
||||
SHARED_SYM extern int fontcolor;
|
||||
extern u32 procfunc;
|
||||
|
||||
#endif
|
||||
|
|
@ -26,8 +26,8 @@ typedef struct process {
|
|||
u16 stat;
|
||||
u16 prio;
|
||||
s32 sleep_time;
|
||||
u32 base_sp;
|
||||
jmp_buf jump;
|
||||
uintptr_t base_sp;
|
||||
JMPBUF jump;
|
||||
void (*dtor)(void);
|
||||
void *user_data;
|
||||
} Process;
|
||||
|
|
|
|||
|
|
@ -24,13 +24,13 @@ typedef union save_buf_all {
|
|||
u8 ATTRIBUTE_ALIGN(32) buf[SAVE_BUF_SIZE];
|
||||
} SaveBufAll;
|
||||
|
||||
extern char *SaveFileNameTbl[];
|
||||
extern CARDFileInfo curFileInfo;
|
||||
extern SaveBufAll saveBuf;
|
||||
SHARED_SYM extern char *SaveFileNameTbl[];
|
||||
SHARED_SYM extern CARDFileInfo curFileInfo;
|
||||
SHARED_SYM extern SaveBufAll saveBuf;
|
||||
extern u64 SLSerialNo;
|
||||
extern s32 saveExecF;
|
||||
SHARED_SYM extern s32 saveExecF;
|
||||
extern u8 curBoxNo;
|
||||
extern s16 curSlotNo;
|
||||
SHARED_SYM extern s16 curSlotNo;
|
||||
|
||||
s32 SLFileOpen(char *fileName);
|
||||
s32 SLFileCreate(char *fileName, u32 size, void *addr);
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ void HuSprGrpCenterSet(s16 group, float x, float y);
|
|||
void HuSprGrpZRotSet(s16 group, float z_rot);
|
||||
void HuSprGrpScaleSet(s16 group, float x, float y);
|
||||
void HuSprGrpTPLvlSet(s16 group, float tp_lvl);
|
||||
#ifndef HUSPR_USE_OLD_DEFS
|
||||
#if !defined(HUSPR_USE_OLD_DEFS) || !defined(__MWERKS__)
|
||||
void HuSprGrpDrawNoSet(s16 group, s32 draw_no);
|
||||
#endif
|
||||
void HuSprDrawNoSet(s16 group, s16 member, s32 draw_no);
|
||||
|
|
@ -127,7 +127,7 @@ void AnimDebug(AnimData *anim);
|
|||
|
||||
void HuSprDispInit(void);
|
||||
void HuSprDisp(HuSprite *sprite);
|
||||
#ifndef HUSPR_USE_OLD_DEFS
|
||||
#if !defined(HUSPR_USE_OLD_DEFS) || !defined(__MWERKS__)
|
||||
void HuSprTexLoad(AnimData *anim, s16 bmp, s16 slot, GXTexWrapMode wrap_s, GXTexWrapMode wrap_t, GXTexFilter filter);
|
||||
#endif
|
||||
void HuSprExecLayerSet(s16 draw_no, s16 layer);
|
||||
|
|
|
|||
|
|
@ -2,13 +2,49 @@
|
|||
#define _SRC_BYTESWAP_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include "game/animdata.h"
|
||||
#include "game/hsfformat.h"
|
||||
|
||||
typedef struct AnimData32b {
|
||||
s16 bankNum;
|
||||
s16 patNum;
|
||||
s16 bmpNum;
|
||||
s16 useNum;
|
||||
|
||||
u32 bank;
|
||||
u32 pat;
|
||||
u32 bmp;
|
||||
} AnimData32b;
|
||||
|
||||
typedef struct AnimBankData32b {
|
||||
s16 timeNum;
|
||||
s16 unk;
|
||||
u32 frame;
|
||||
} AnimBankData32b;
|
||||
|
||||
typedef struct AnimPatData32b {
|
||||
s16 layerNum;
|
||||
s16 centerX;
|
||||
s16 centerY;
|
||||
s16 sizeX;
|
||||
s16 sizeY;
|
||||
u32 layer;
|
||||
} AnimPatData32b;
|
||||
|
||||
typedef struct AnimBmpData32b {
|
||||
u8 pixSize;
|
||||
u8 dataFmt;
|
||||
s16 palNum;
|
||||
s16 sizeX;
|
||||
s16 sizeY;
|
||||
u32 dataSize;
|
||||
u32 palData;
|
||||
u32 data;
|
||||
} AnimBmpData32b;
|
||||
|
||||
typedef struct HsfCluster32b {
|
||||
u32 name[2];
|
||||
u32 targetName;
|
||||
|
|
@ -145,7 +181,7 @@ typedef struct HsfObjectData32b {
|
|||
float baseMorph;
|
||||
float morphWeight[33];
|
||||
} mesh;
|
||||
struct hsf_object *replica;
|
||||
u32 replica;
|
||||
};
|
||||
|
||||
u32 face;
|
||||
|
|
@ -236,10 +272,10 @@ void byteswap_s32(s32 *src);
|
|||
void byteswap_hsfvec3f(HsfVector3f *src);
|
||||
void byteswap_hsfvec2f(HsfVector2f *src);
|
||||
|
||||
void byteswap_animdata(void *src, AnimData* dest);
|
||||
void byteswap_animbankdata(void *src, AnimBankData *dest);
|
||||
void byteswap_animpatdata(void *src, AnimPatData *dest);
|
||||
void byteswap_animbmpdata(void *src, AnimBmpData *dest);
|
||||
void byteswap_animdata(void *src, AnimData *dest);
|
||||
void byteswap_animbankdata(AnimBankData32b *src, AnimBankData *dest);
|
||||
void byteswap_animpatdata(AnimPatData32b *src, AnimPatData *dest);
|
||||
void byteswap_animbmpdata(AnimBmpData32b *src, AnimBmpData *dest);
|
||||
void byteswap_animframedata(AnimFrameData *src);
|
||||
void byteswap_animlayerdata(AnimLayerData *src);
|
||||
|
||||
|
|
@ -263,6 +299,25 @@ void byteswap_hsfbitmapkey(HsfBitmapKey32b *src, HsfBitmapKey *dest);
|
|||
void byteswap_hsftrack(HsfTrack32b *src, HsfTrack *dest);
|
||||
void byteswap_hsfmotion(HsfMotion32b *src, HsfMotion *dest);
|
||||
void byteswap_hsfface(HsfFace32b *src, HsfFace *dest);
|
||||
void byteswap_hsfcluster(HsfCluster32b *src, HsfCluster *dest);
|
||||
void byteswap_hsfattribute(HsfAttribute32b *src, HsfAttribute *dest);
|
||||
void byteswap_hsfmaterial(HsfMaterial32b *src, HsfMaterial *dest);
|
||||
void byteswap_hsfscene(HsfScene *src);
|
||||
void byteswap_hsfbuffer(HsfBuffer32b *src, HsfBuffer *dest);
|
||||
void byteswap_hsfmatrix(HsfMatrix *src);
|
||||
void byteswap_hsfpalette(HsfPalette32b *src, HsfPalette *dest);
|
||||
void byteswap_hsfpart(HsfPart32b *src, HsfPart *dest);
|
||||
void byteswap_hsfbitmap(HsfBitmap32b *src, HsfBitmap *dest);
|
||||
void byteswap_hsfmapattr(HsfMapAttr32b *src, HsfMapAttr *dest);
|
||||
void byteswap_hsfskeleton(HsfSkeleton32b *src, HsfSkeleton *dest);
|
||||
void byteswap_hsfshape(HsfShape32b *src, HsfShape *dest);
|
||||
void byteswap_hsfcenv_single(HsfCenvSingle *src);
|
||||
void byteswap_hsfcenv(HsfCenv32b *src, HsfCenv *dest);
|
||||
void byteswap_hsfobject(HsfObject32b *src, HsfObject *dest);
|
||||
void byteswap_hsfbitmapkey(HsfBitmapKey32b *src, HsfBitmapKey *dest);
|
||||
void byteswap_hsftrack(HsfTrack32b *src, HsfTrack *dest);
|
||||
void byteswap_hsfmotion(HsfMotion32b *src, HsfMotion *dest);
|
||||
void byteswap_hsfface(HsfFace32b *src, HsfFace *dest);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue