mirror of
https://github.com/zeldaret/mm.git
synced 2024-12-04 19:16:38 +00:00
6d20839ab0
* Decompile padmgr.c * Format * Enum names * Update namefixer * Suggested changes Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * Suggested changes, improve motor.c Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Further suggested changes * Format * Fix `controller.h` comment Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> --------- Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
33 lines
894 B
C
33 lines
894 B
C
#ifndef IRQMGR_H
|
|
#define IRQMGR_H
|
|
|
|
#include "PR/sched.h"
|
|
#include "os.h"
|
|
#include "ultra64.h"
|
|
|
|
#define OS_SC_RETRACE_MSG 1
|
|
#define OS_SC_DONE_MSG 2
|
|
#define OS_SC_NMI_MSG 3 // name is made up, 3 is OS_SC_RDP_DONE_MSG in the original sched.c
|
|
#define OS_SC_PRE_NMI_MSG 4
|
|
|
|
typedef struct IrqMgrClient {
|
|
/* 0x0 */ struct IrqMgrClient* next;
|
|
/* 0x4 */ OSMesgQueue* queue;
|
|
} IrqMgrClient; // size = 0x8
|
|
|
|
typedef struct {
|
|
/* 0x000 */ OSScMsg verticalRetraceMesg;
|
|
/* 0x020 */ OSScMsg prenmiMsg;
|
|
/* 0x040 */ OSScMsg nmiMsg;
|
|
/* 0x060 */ OSMesgQueue irqQueue;
|
|
/* 0x078 */ OSMesg irqBuffer[8];
|
|
/* 0x098 */ OSThread thread;
|
|
/* 0x248 */ IrqMgrClient* callbacks;
|
|
/* 0x24C */ u8 prenmiStage;
|
|
/* 0x250 */ OSTime lastPrenmiTime;
|
|
/* 0x258 */ OSTimer prenmiTimer;
|
|
/* 0x278 */ OSTime lastFrameTime;
|
|
} IrqMgr; // size = 0x280
|
|
|
|
#endif
|