summaryrefslogtreecommitdiff
path: root/docs/DSP/zeldaNotes.txt
blob: 2d195f568be8292fff53d195a757aba51e981840 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
DSP startup sequence:

DspBoot called with (JASystem::TAudioThread::syncDSP()) as a parameter.
DSP lib initialized
A Dsp task is created:
	init callback = DspHandShake()
	req callback = JASystem::TAudioThread::syncDSP()
Task is pushed as first task and executed

DSP send DSP_INIT command (0xDCD10003)
__DSPHandler receive the command

task's init callback (DspHandShake) is called
1 mail is read from dsp (and discarded)
DSP flag is set as running

AIRegisterDMACallback(JASystem::TAudioThread::syncAudio((void))
AIStartDMA() to initialize dma in AI module

-----------------------------------

DSP run sequence:

__DSPHandler  receive command DSP_RESUME
callback JASystem::TAudioThread::syncDSP called and pull 1 mail
A message is send by OSSendMessage(1)

JASystem::TAudioThread::audioproc receive OSMessage:
	0=update dac
	1=update dsp
	2=nop ?
	3=exit thread

dsp is updated