sm64pc/src/game/main.h

79 lines
1.9 KiB
C
Raw Normal View History

2019-08-25 04:46:40 +00:00
#ifndef _MAIN_H_
#define _MAIN_H_
2020-04-03 18:57:26 +00:00
struct RumbleData {
u8 unk00;
u8 unk01;
s16 unk02;
s16 unk04;
};
struct StructSH8031D9B0 {
s16 unk00;
s16 unk02;
s16 unk04;
s16 unk06;
s16 unk08;
s16 unk0A;
s16 unk0C;
s16 unk0E;
};
2019-08-25 04:46:40 +00:00
extern OSThread D_80339210;
extern OSThread gIdleThread;
extern OSThread gMainThread;
extern OSThread gGameLoopThread;
extern OSThread gSoundThread;
2020-04-03 18:57:26 +00:00
#ifdef VERSION_SH
extern OSThread gRumblePakThread;
extern s32 gRumblePakPfs; // Actually an OSPfs but we don't have that header yet
#endif
2019-08-25 04:46:40 +00:00
extern OSMesgQueue gPIMesgQueue;
extern OSMesgQueue gIntrMesgQueue;
extern OSMesgQueue gSPTaskMesgQueue;
2020-04-03 18:57:26 +00:00
#ifdef VERSION_SH
extern OSMesgQueue gRumblePakSchedulerMesgQueue;
extern OSMesgQueue gRumbleThreadVIMesgQueue;
#endif
2019-08-25 04:46:40 +00:00
extern OSMesg gDmaMesgBuf[1];
extern OSMesg gPIMesgBuf[32];
extern OSMesg gSIEventMesgBuf[1];
extern OSMesg gIntrMesgBuf[16];
extern OSMesg gUnknownMesgBuf[16];
extern OSIoMesg gDmaIoMesg;
extern OSMesg D_80339BEC;
extern OSMesgQueue gDmaMesgQueue;
extern OSMesgQueue gSIEventMesgQueue;
2020-04-03 18:57:26 +00:00
#ifdef VERSION_SH
extern OSMesg gRumblePakSchedulerMesgBuf[1];
extern OSMesg gRumbleThreadVIMesgBuf[1];
extern struct RumbleData gRumbleDataQueue[3];
extern struct StructSH8031D9B0 gCurrRumbleSettings;
#endif
2019-08-25 04:46:40 +00:00
extern struct VblankHandler *gVblankHandler1;
extern struct VblankHandler *gVblankHandler2;
extern struct SPTask *gActiveSPTask;
extern struct SPTask *D_8032C62C;
extern struct SPTask *D_8032C630;
extern OSMesg D_8032C634;
extern OSMesg D_8032C638;
extern s8 D_8032C63C;
extern u32 sNumVblanks;
extern s8 gResetTimer;
extern s8 D_8032C648;
extern s8 gDebugLevelSelect;
extern s8 D_8032C650;
extern s8 gShowProfiler;
extern s8 gShowDebugText;
extern void set_vblank_handler(s32 a, struct VblankHandler *b, OSMesgQueue *queue, OSMesg *msg);
extern void dispatch_audio_sptask(struct SPTask *spTask);
extern void send_display_list(struct SPTask *a);
2020-03-02 03:42:52 +00:00
extern void main(void);
2019-08-25 04:46:40 +00:00
#endif