mirror of https://github.com/zeldaret/tp.git
63 lines
1.4 KiB
C++
63 lines
1.4 KiB
C++
//
|
|
// Generated By: dol2asm
|
|
// Translation Unit: osdsp
|
|
//
|
|
|
|
#include "JSystem/JAudio2/osdsp.h"
|
|
#include "JSystem/JAudio2/osdsp_task.h"
|
|
#include "dolphin/os/OS.h"
|
|
#include "dolphin/dsp/dsp_task.h"
|
|
|
|
//
|
|
// Types:
|
|
//
|
|
|
|
// Unclear why this is a different type than DSPTaskInfo
|
|
struct STRUCT_DSP_TASK {
|
|
DSPTaskInfo info;
|
|
};
|
|
|
|
//
|
|
// Forward References:
|
|
//
|
|
|
|
//
|
|
// External References:
|
|
//
|
|
|
|
//
|
|
// Declarations:
|
|
//
|
|
|
|
/* ############################################################################################## */
|
|
|
|
/* 8029EA00-8029EA84 299340 0084+00 0/0 1/1 0/0 .text DSPAddTask */
|
|
DSPTaskInfo* DSPAddTask(DSPTaskInfo* task) {
|
|
if (DSP_prior_task == NULL) {
|
|
OSReport("Prior Task is not inited\n");
|
|
return NULL;
|
|
}
|
|
BOOL status = OSDisableInterrupts();
|
|
__DSP_insert_task(task);
|
|
task->state = 0;
|
|
task->flags = 1;
|
|
OSRestoreInterrupts(status);
|
|
return task;
|
|
}
|
|
|
|
/* ############################################################################################## */
|
|
|
|
/* 8029EAA0-8029EB1C 2993E0 007C+00 0/0 1/1 0/0 .text DSPAddPriorTask__FP15STRUCT_DSP_TASK */
|
|
void DSPAddPriorTask(STRUCT_DSP_TASK* task) {
|
|
if (DSP_prior_task != NULL) {
|
|
OSReport("Already inited prior DSP task\n");
|
|
return;
|
|
}
|
|
BOOL status = OSDisableInterrupts();
|
|
DSP_prior_task = (DSPTaskInfo*)task;
|
|
task->info.state = 0;
|
|
task->info.flags = 1;
|
|
__DSP_boot_task((DSPTaskInfo*)task);
|
|
OSRestoreInterrupts(status);
|
|
}
|