2024-08-15 02:05:41 +00:00
|
|
|
#ifndef N64DD_H
|
|
|
|
#define N64DD_H
|
|
|
|
|
2024-08-25 05:04:53 +00:00
|
|
|
#include "ultra64.h"
|
2024-09-04 07:15:52 +00:00
|
|
|
#include "z64pause.h"
|
2024-08-19 08:24:02 +00:00
|
|
|
#include "z64scene.h"
|
|
|
|
|
2024-09-04 05:46:41 +00:00
|
|
|
struct GameState;
|
|
|
|
union Gfx;
|
|
|
|
struct PlayState;
|
2024-08-20 23:20:11 +00:00
|
|
|
struct RegEditor;
|
2024-09-04 05:46:41 +00:00
|
|
|
struct RoomContext;
|
2024-08-20 23:20:11 +00:00
|
|
|
struct SaveContext;
|
2024-09-04 05:46:41 +00:00
|
|
|
struct Scene;
|
2024-08-20 23:20:11 +00:00
|
|
|
|
|
|
|
// TODO Use the specific pointer types instead of void*
|
2024-09-04 18:56:24 +00:00
|
|
|
typedef struct n64ddStruct_800FEE70_pointers {
|
2024-08-20 23:20:11 +00:00
|
|
|
void* unk_00;
|
|
|
|
void* unk_04;
|
|
|
|
struct RegEditor* unk_08;
|
|
|
|
void* unk_0C[31];
|
|
|
|
struct SaveContext* unk_88;
|
|
|
|
void* unk_8C[9];
|
2024-09-04 18:56:24 +00:00
|
|
|
} n64ddStruct_800FEE70_pointers; // size = 0xB0
|
2024-08-20 23:20:11 +00:00
|
|
|
|
2024-09-04 18:56:24 +00:00
|
|
|
typedef struct n64ddStruct_80121220 {
|
|
|
|
void (*unk_00)(n64ddStruct_800FEE70_pointers*, struct n64ddStruct_80121220*);
|
2024-08-20 23:20:11 +00:00
|
|
|
void (*unk_04)(void);
|
2024-09-04 05:46:41 +00:00
|
|
|
void (*unk_08)(struct PlayState* play, struct RoomContext* roomCtx, s32 roomNum);
|
|
|
|
void (*unk_0C)(struct PlayState* play);
|
|
|
|
void (*unk_10)(struct PlayState* play);
|
|
|
|
void (*unk_14)(struct PlayState* play);
|
|
|
|
char unk_18[0x1C];
|
2024-09-04 07:15:52 +00:00
|
|
|
void (*unk_34)(PauseMapMarksData**);
|
|
|
|
void (*unk_38)(PauseMapMarksData**);
|
2024-08-15 02:05:41 +00:00
|
|
|
void (*unk_3C)(void);
|
|
|
|
void (*unk_40)(void);
|
2024-08-24 04:44:16 +00:00
|
|
|
s32 (*unk_44)(struct PlayState*);
|
2024-09-04 05:46:41 +00:00
|
|
|
struct SceneTableEntry* (*unk_48)(s32 sceneId, struct SceneTableEntry* sceneTable);
|
|
|
|
char unk_4C[0x08];
|
|
|
|
s32 (*unk_54)(struct PlayState*);
|
|
|
|
char unk_58[0x14];
|
2024-08-19 08:24:02 +00:00
|
|
|
void (*unk_6C)(struct PlayState*, SceneDrawConfigFunc*);
|
2024-09-04 05:46:41 +00:00
|
|
|
s32 (*unk_70)(struct DmaRequest* req, void* ram, uintptr_t vrom, size_t size, u32 unk, OSMesgQueue* queue, OSMesg msg);
|
|
|
|
void (*unk_74)(struct GameState*);
|
2024-08-29 22:23:01 +00:00
|
|
|
s32 (*unk_78)(struct PlayState*, void*, void*);
|
2024-09-04 18:56:24 +00:00
|
|
|
} n64ddStruct_80121220; // size = ?
|
2024-08-20 23:20:11 +00:00
|
|
|
|
2024-09-04 18:56:24 +00:00
|
|
|
void func_800AD410(void);
|
|
|
|
void func_800AD488(void);
|
|
|
|
n64ddStruct_80121220* func_800AD4C0(n64ddStruct_80121220* arg0);
|
|
|
|
void func_800AD51C(void);
|
|
|
|
n64ddStruct_800FEE70_pointers* func_800AD560(void);
|
|
|
|
void func_800AD590(void);
|
|
|
|
void func_800AD598(s32 arg0, s32 arg1, s32 arg2);
|
2024-09-04 05:46:41 +00:00
|
|
|
|
2024-09-04 18:56:24 +00:00
|
|
|
u32 func_801C6E80(void);
|
|
|
|
void func_801C6EA0(union Gfx** gfxP);
|
|
|
|
s32 func_801C70FC(void);
|
|
|
|
void func_801C7268(void);
|
|
|
|
s32 func_801C7658(void);
|
|
|
|
s32 func_801C7818(void);
|
|
|
|
void func_801C7C1C(void* dest, s32 offset, s32 size);
|
|
|
|
void func_801C7E78(void);
|
|
|
|
void n64dd_SetDiskVersion(s32 arg0);
|
2024-08-15 02:05:41 +00:00
|
|
|
|
2024-09-04 18:56:24 +00:00
|
|
|
extern n64ddStruct_800FEE70_pointers D_800FEE70;
|
|
|
|
extern n64ddStruct_80121220* B_80121220;
|
2024-08-20 23:20:11 +00:00
|
|
|
|
2024-09-04 18:56:24 +00:00
|
|
|
extern u8 D_80121210;
|
|
|
|
extern u8 D_80121211;
|
|
|
|
extern u8 D_80121212;
|
|
|
|
extern vu8 D_80121213;
|
|
|
|
extern vu8 D_80121214;
|
2024-08-20 23:20:11 +00:00
|
|
|
|
2024-08-15 02:05:41 +00:00
|
|
|
#endif
|