| 299 | } |
| 300 | |
| 301 | void MIXInitChannel(AXVPB* p, u32 mode, int input, int auxA, int auxB, int pan, |
| 302 | int span, int fader) |
| 303 | { |
| 304 | MIXChannel* chan = &__MIXChannel[p->index]; |
| 305 | |
| 306 | u16 mixerCtrl; |
| 307 | |
| 308 | chan->axvpb = p; |
| 309 | chan->mode = mode & 7; |
| 310 | chan->input = input; |
| 311 | chan->auxA = auxA; |
| 312 | chan->auxB = auxB; |
| 313 | chan->pan = pan; |
| 314 | chan->span = span; |
| 315 | chan->fader = fader; |
| 316 | |
| 317 | __MIXSetPan(chan); |
| 318 | |
| 319 | if (chan->mode & 4) |
| 320 | { |
| 321 | chan->v = 0; |
| 322 | } |
| 323 | else |
| 324 | { |
| 325 | chan->v = __MIXGetVolume(input); |
| 326 | } |
| 327 | |
| 328 | mixerCtrl = 0; |
| 329 | |
| 330 | switch (__MIXSoundMode) |
| 331 | { |
| 332 | case 0: |
| 333 | chan->vL = __MIXGetVolume(chan->fader + chan->f); |
| 334 | chan->vR = __MIXGetVolume(chan->fader + chan->f); |
| 335 | chan->vS = __MIXGetVolume(chan->fader + chan->b); |
| 336 | if (chan->mode & 1) |
| 337 | { |
| 338 | chan->vAL = __MIXGetVolume(chan->auxA + chan->f); |
| 339 | chan->vAR = __MIXGetVolume(chan->auxA + chan->f); |
| 340 | chan->vAS = __MIXGetVolume(chan->auxA + chan->b - 0x3c); |
| 341 | } |
| 342 | else |
| 343 | { |
| 344 | chan->vAL = __MIXGetVolume(chan->fader + chan->auxA + chan->f); |
| 345 | chan->vAR = __MIXGetVolume(chan->fader + chan->auxA + chan->f); |
| 346 | chan->vAS = __MIXGetVolume(chan->fader + chan->auxA + chan->b - 0x3c); |
| 347 | } |
| 348 | |
| 349 | if (chan->mode & 2) |
| 350 | { |
| 351 | chan->vBL = __MIXGetVolume(chan->auxB + chan->f); |
| 352 | chan->vBR = __MIXGetVolume(chan->auxB + chan->f); |
| 353 | chan->vBS = __MIXGetVolume(chan->auxB + chan->b - 0x3c); |
| 354 | } |
| 355 | else |
| 356 | { |
| 357 | chan->vBL = __MIXGetVolume(chan->fader + chan->auxB + chan->f); |
| 358 | chan->vBR = __MIXGetVolume(chan->fader + chan->auxB + chan->f); |
no test coverage detected