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

Function dvdcb

src/SB/Core/gc/iSnd.cpp:149–198  ·  view source on GitHub ↗

FIXME: param name

Source from the content-addressed store, hash-verified

147
148// FIXME: param name
149static void dvdcb(s32 r3, DVDFileInfo* info)
150{
151 if (!soundInited)
152 {
153 return;
154 }
155
156 UNK_STREAM* data = (UNK_STREAM*)info->cb.userData;
157 xSTAssetName(data->vinf.aid);
158 dump_flags(data->vinf.flags);
159 if (data->vinf.voice == NULL)
160 {
161 return;
162 }
163
164 if (r3 <= 0)
165 {
166 return;
167 }
168
169 data->offset += r3;
170 data->x90 += r3;
171 data->vinf.flags |= 0x800;
172 data->vinf.flags &= ~0x100;
173 if (data->vinf.flags & (0x200 | 0x400))
174 {
175 houston_we_have_a_problem = TRUE;
176 }
177 if ((data->vinf.flags & 0x4) == 0)
178 {
179 return;
180 }
181
182 U32 dest = 0;
183 if ((data->vinf.flags & 0x1000) == 0)
184 {
185 data->vinf.flags |= 0x200;
186 dest = data->dest_a;
187 }
188 else if ((data->vinf.flags & 0x2000) == 0)
189 {
190 data->vinf.flags |= 0x400;
191 dest = data->dest_b;
192 }
193
194 if (dest != 0)
195 {
196 ARQPostRequest(&data->request, (u32)data, 0, 1, data->source_a, dest, 0x4000, arqcb);
197 }
198}
199
200static void arqcb(u32 pointerToARQRequest)
201{

Callers

nothing calls this directly

Calls 3

dump_flagsFunction · 0.85
ARQPostRequestFunction · 0.85
xSTAssetNameFunction · 0.50

Tested by

no test coverage detected