MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / __AXOutInit

Function __AXOutInit

src/dolphin/src/ax/AXOut.c:187–231  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

185 }
186
187void __AXOutInit(u32 outputBufferMode)
188{
189#ifdef DEBUG
190 OSReport("Initializing AXOut code module\n");
191#endif
192
193 __AXOutputBufferMode = outputBufferMode;
194 __AXOutFrame = 0;
195 __AXAiDmaFrame = 0;
196 __AXDebugSteppingMode = 0;
197
198 BUFFER_MEMSET(__AXOutBuffer, 0x1E0);
199 DCFlushRange(__AXOutBuffer, sizeof(__AXOutBuffer));
200
201 BUFFER_MEMSET(__AXOutSBuffer, 0xA0);
202 DCFlushRange(__AXOutSBuffer, sizeof(__AXOutSBuffer));
203
204 __AXOutInitDSP();
205 AIRegisterDMACallback(__AXOutAiCallback);
206
207 if (__AXOutputBufferMode == 1)
208 {
209 __AXNextFrame(__AXOutSBuffer, &__AXOutBuffer[2][0]);
210 }
211 else
212 {
213 __AXNextFrame(__AXOutSBuffer, &__AXOutBuffer[1][0]);
214 }
215
216 __AXOutDspReady = 1;
217 __AXUserFrameCallback = NULL;
218
219 if (__AXOutputBufferMode == 1)
220 {
221 AIInitDMA((u32)&__AXOutBuffer[__AXAiDmaFrame][0], sizeof(__AXOutBuffer[0]));
222 __AXAiDmaFrame++;
223 __AXAiDmaFrame &= 1;
224 }
225 else
226 {
227 AIInitDMA((u32)&__AXOutBuffer[__AXOutFrame][0], sizeof(__AXOutBuffer[0]));
228 }
229
230 AIStartDMA();
231}
232
233void __AXOutQuit(void)
234{

Callers 1

AXInitExFunction · 0.85

Calls 6

OSReportFunction · 0.85
__AXOutInitDSPFunction · 0.85
AIRegisterDMACallbackFunction · 0.85
__AXNextFrameFunction · 0.85
AIInitDMAFunction · 0.85
AIStartDMAFunction · 0.85

Tested by

no test coverage detected