Loading [MathJax]/extensions/tex2jax.js
Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
dsp.h
Go to the documentation of this file.
1#ifndef _DOLPHIN_DSP_H_
2#define _DOLPHIN_DSP_H_
3
4#include <dolphin/os.h>
5
6#ifdef __cplusplus
7extern "C" {
8#endif
9
10typedef void (*DSPCallback)(void* task);
12
13typedef struct STRUCT_DSP_TASK {
14 /* 0x00 */ volatile u32 state;
15 /* 0x04 */ volatile u32 priority;
16 /* 0x08 */ volatile u32 flags;
17 /* 0x0C */ u16* iram_mmem_addr;
18 /* 0x10 */ u32 iram_length;
19 /* 0x14 */ u32 iram_addr;
20 /* 0x18 */ u16* dram_mmem_addr;
21 /* 0x1C */ u32 dram_length;
22 /* 0x20 */ u32 dram_addr;
23 /* 0x24 */ u16 dsp_init_vector;
25 /* 0x28 */ DSPCallback init_cb;
26 /* 0x2C */ DSPCallback res_cb;
27 /* 0x30 */ DSPCallback done_cb;
28 /* 0x34 */ DSPCallback req_cb;
29 /* 0x38 */ DSPTaskInfo* next;
30 /* 0x3C */ DSPTaskInfo* prev;
31 /* 0x40 */ OSTime t_context;
32 /* 0x48 */ OSTime t_task;
34
39void DSPSendMailToDSP(u32 mail);
40void DSPAssertInt(void);
41void DSPInit(void);
42BOOL DSPCheckInit(void);
43void DSPReset(void);
44void DSPHalt(void);
45void DSPUnhalt(void);
50
52
53#ifdef __cplusplus
54}
55#endif
56
57#endif
DSPTaskInfo * DSPAddTask(DSPTaskInfo *task)
Definition dsp.c:128
u32 DSPCheckMailToDSP(void)
Definition dsp.c:26
void DSPUnhalt(void)
Definition dsp.c:113
void DSPHalt(void)
Definition dsp.c:102
void(* DSPCallback)(void *task)
Definition dsp.h:10
struct STRUCT_DSP_TASK DSPTaskInfo
Definition dsp.h:11
u32 DSPGetDMAStatus(void)
Definition dsp.c:124
void DSPSendMailToDSP(u32 mail)
Definition dsp.c:42
void DSPInit(void)
Definition dsp.c:58
DSPTaskInfo * DSPCancelTask(DSPTaskInfo *task)
Definition dsp.c:145
u32 DSPReadMailFromDSP(void)
Definition dsp.c:38
void DSPAssertInt(void)
Definition dsp.c:47
DSPTaskInfo * DSPAssertTask(DSPTaskInfo *task)
Definition dsp.c:158
void DSPReset(void)
Definition dsp.c:90
DSPTaskInfo * __DSPGetCurrentTask(void)
Definition dsp_debug.c:7
__declspec(weak) DSPTaskInfo *DSPAddTask(DSPTaskInfo *task)
Definition amcnotstub.c:4
u32 DSPReadCPUToDSPMbox(void)
Definition dsp.c:34
BOOL DSPCheckInit(void)
Definition dsp.c:86
u32 DSPCheckMailFromDSP(void)
Definition dsp.c:30
s64 OSTime
Definition os.h:16
Definition dsp.h:13
DSPCallback req_cb
Definition dsp.h:28
DSPCallback res_cb
Definition dsp.h:26
OSTime t_context
Definition dsp.h:31
DSPCallback done_cb
Definition dsp.h:27
OSTime t_task
Definition dsp.h:32
u16 dsp_init_vector
Definition dsp.h:23
volatile u32 flags
Definition dsp.h:16
u32 iram_addr
Definition dsp.h:19
u16 dsp_resume_vector
Definition dsp.h:24
DSPCallback init_cb
Definition dsp.h:25
volatile u32 state
Definition dsp.h:14
u16 * iram_mmem_addr
Definition dsp.h:17
volatile u32 priority
Definition dsp.h:15
u32 iram_length
Definition dsp.h:18
DSPTaskInfo * next
Definition dsp.h:29
u32 dram_length
Definition dsp.h:21
u32 dram_addr
Definition dsp.h:22
DSPTaskInfo * prev
Definition dsp.h:30
u16 * dram_mmem_addr
Definition dsp.h:20
int BOOL
Definition types.h:30
unsigned long u32
Definition types.h:9
unsigned short int u16
Definition types.h:7