mirror of
https://github.com/zeldaret/tp
synced 2026-07-11 23:30:05 -04:00
JASDriverIF, JASAiCtrl, JASDSPInterface (#1907)
* JASDriverIF * JASDriverIF sinit * JASAiCtrl * JASDSPInterface
This commit is contained in:
@@ -13,7 +13,9 @@
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct STRUCT_DSP_TASK {};
|
||||
struct STRUCT_DSP_TASK {
|
||||
/* 0x00 */ DSPTaskInfo info;
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
@@ -559,29 +561,29 @@ SECTION_DATA static u8 jdsp[7936] = {
|
||||
};
|
||||
|
||||
/* 80431F80-80431FE0 05ECA0 0050+10 1/1 0/0 0/0 .bss audio_task */
|
||||
static u8 audio_task[80 + 16 /* padding */];
|
||||
static STRUCT_DSP_TASK audio_task ALIGN_DECL(32);
|
||||
|
||||
/* 80431FE0-80433FE0 05ED00 2000+00 1/1 0/0 0/0 .bss AUDIO_YIELD_BUFFER */
|
||||
static u8 AUDIO_YIELD_BUFFER[8192];
|
||||
static u8 AUDIO_YIELD_BUFFER[8192] ALIGN_DECL(32);
|
||||
|
||||
/* 8029E720-8029E7CC 299060 00AC+00 0/0 1/1 0/0 .text DspBoot__FPFPv_v */
|
||||
void DspBoot(void (*param_0)(void*)) {
|
||||
DspInitWork();
|
||||
((DSPTaskInfo*)audio_task)->priority = 0xf0;
|
||||
((DSPTaskInfo*)audio_task)->iram_mmem_addr = (u16*)(jdsp + 0x80000000);
|
||||
((DSPTaskInfo*)audio_task)->iram_length = sizeof(jdsp);
|
||||
((DSPTaskInfo*)audio_task)->iram_addr = 0;
|
||||
((DSPTaskInfo*)audio_task)->dram_mmem_addr = (u16*)(AUDIO_YIELD_BUFFER + 0x80000000);
|
||||
((DSPTaskInfo*)audio_task)->dram_length = sizeof(AUDIO_YIELD_BUFFER);
|
||||
((DSPTaskInfo*)audio_task)->dram_addr = 0;
|
||||
((DSPTaskInfo*)audio_task)->dsp_init_vector = 0;
|
||||
((DSPTaskInfo*)audio_task)->dsp_resume_vector = 0x10;
|
||||
((DSPTaskInfo*)audio_task)->init_cb = DspHandShake;
|
||||
((DSPTaskInfo*)audio_task)->res_cb = NULL;
|
||||
((DSPTaskInfo*)audio_task)->done_cb = NULL;
|
||||
((DSPTaskInfo*)audio_task)->req_cb = param_0;
|
||||
audio_task.info.priority = 0xf0;
|
||||
audio_task.info.iram_mmem_addr = (u16*)(jdsp + 0x80000000);
|
||||
audio_task.info.iram_length = sizeof(jdsp);
|
||||
audio_task.info.iram_addr = 0;
|
||||
audio_task.info.dram_mmem_addr = (u16*)(AUDIO_YIELD_BUFFER + 0x80000000);
|
||||
audio_task.info.dram_length = sizeof(AUDIO_YIELD_BUFFER);
|
||||
audio_task.info.dram_addr = 0;
|
||||
audio_task.info.dsp_init_vector = 0;
|
||||
audio_task.info.dsp_resume_vector = 0x10;
|
||||
audio_task.info.init_cb = DspHandShake;
|
||||
audio_task.info.res_cb = NULL;
|
||||
audio_task.info.done_cb = NULL;
|
||||
audio_task.info.req_cb = param_0;
|
||||
DSPInit();
|
||||
DSPAddPriorTask((STRUCT_DSP_TASK*)audio_task);
|
||||
DSPAddPriorTask(&audio_task);
|
||||
}
|
||||
|
||||
/* 8029E7E0-8029E8C8 299120 00E8+00 0/0 4/4 0/0 .text DSPSendCommands2__FPUlUlPFUs_v */
|
||||
|
||||
Reference in New Issue
Block a user