Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AX: handle DPL2 mixer control in old GameCube titles #10656

Merged
merged 2 commits into from May 13, 2022

Conversation

Tilka
Copy link
Member

@Tilka Tilka commented May 12, 2022

In old GameCube titles the DPL2 bit implicitly activates the AUXB_LR channels. Also, setting the AUXA bit activates all three channels (LRS). This fixes the audio test in Rogue Squadron 2 (issue 12902).

The other commit is just a theoretical accuracy improvement for AXWii. In practice it should not affect any games.

Tilka added 2 commits May 12, 2022 21:21
On GameCube, a ramp bit has no effect if its corresponding channel is
inactive. On Wii however, enabling just the ramp implicitly also enables
the channel. AXSetVoiceMix() never does that, so this commit should have
no impact on games unless they fiddle with the mixer control value
directly.
This fixes the audio test in Rogue Squadron 2 (issue 12902).
Copy link
Contributor

@Pokechu22 Pokechu22 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can confirm that this fixes RS2 (and doesn't cause a regression in RS3). I haven't attempted to reverse-engineer the AX ucode myself to confirm it.

Also, a fun fact (that I discovered by accident) is that there are actually 2 TIE fighters in the audio test in RS2; the one that moves in a straight line is separate from the one that rotates. This can't be seen with freelook, but it can be seen by patching 7fc15438 to 4e800020 in the US release (which stops the camera from updating - something I had enabled for other purposes and forgot that I had left it on).

GSWE64_2022-05-12_23-28-20

@Tilka Tilka merged commit 27c6731 into dolphin-emu:master May 13, 2022
10 checks passed
@Tilka Tilka deleted the ax_dpl2 branch May 13, 2022 08:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants