Emulator Issues #8351


GameCube Service Disc-Controller Test fails

Added by kolano over 7 years ago. Updated over 1 year ago.

% Done:


Operating system:
Issue type:
Relates to usability:
Relates to performance:
Relates to maintainability:
Regression start:
Fixed in:


Game Name?
US GameCube Service Disc

Game ID?

What's the problem? Describe what went wrong in few words.
Results in "SI:Unknown command (0x43)" error from Dolphin when the test starts, and controller test fails. Additionally the "Press the A button to continue." message at the tests end may be mispositioned.

What did you expect to happen instead?
No error to be produced by Dolphin and test to succeed.

What steps will reproduce the problem?

  1. Select Individual Tests
  2. Select Accessory Tests
  3. Select Controller Test
  4. See "SI:Unknown command (0x43)" error
  5. Follow test instructions to end
  6. Observer Failed message, and "Press the A button to continue." misaligned with black box it should presumably appear in.

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
Windows 7, Intel Core i7-960, nVidia GeForce 580

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)

Actions #1

Updated by JMC4789 over 7 years ago

The message being misaligned is due to our free text.

Actions #2

Updated by flacs over 7 years ago

I just created issue 8362 for that.

Actions #4

Updated by kolano over 7 years ago

Can confirm that using GC BIOS fonts resolves the misplaced text issue.

Should also note that the controller test specifically fails during the analog directional control test. Prior to tests for the c-Stick / shoulder buttons.

Actions #5

Updated by skidau over 7 years ago

  • Status changed from New to Invalid

The controller test passes if a genuine GC pad, an Official WiiU GC adapter and Dolphin Direct Connect is used. This leads me to believe that it is an issue with the radius and/or circle-square setting. For the test to pass, the extreme X/Y co-ordinates have to be 100 and the diagonals have to be 75. On my PS2 gamepad, I would have to set the Dolphin radius setting to:

100 / 127 * 100 = 78.7 or 79.

But the controller stick gate on my PS2 isn't the same as the one on a GC pad and the diagonals reach 100 in the test. This causes the test to fail anyway.

As this is a settings and/or controller hardware problem, not a emulator problem, this issue is invalid.

Actions #6

Updated by kolano over 7 years ago

Um wait, is it invalid that an emulated controller can't pass this? The emulated controller can't pass the test which still seems like problem. I understand that a real controller can, but I'd presume we'd want an emulated controller to so so.

Actions #7

Updated by JMC4789 over 7 years ago

We can't due to the shape of the joystick range, from what I just read.

Actions #8

Updated by kolano over 7 years ago

OK, I guess if we want to declare this a controller settings problems I want a bit more detail on if there are settings that can be changed to resolve it. If there are then I'm fine with this being invalid, if not then it seems there may be some work left to do.

Actions #9

Updated by kolano over 7 years ago

I understand that skidau provided basic directions, but even after a while of adjusting the radius settings I can't get things to align to exactly 100 in the test. We may be able to better restrict inputs to range expected here.

Actions #10

Updated by kolano over 7 years ago

We also have the "SI:Unknown command (0x43)" error with an emulated controller that seems like it would need to be resolved.

Actions #11

Updated by skidau over 7 years ago

The radius setting of the GC pad main stick will fix this for you. To determine the right value to enter, go into the Controller test and push the stick as far right as it can go and record the X value. Use this formula:

100 / X * 100 = value to enter into radius setting.

The other part of the problem is that there needs to be a way to limit the diagonals to a value of 75 in the test. This emulates the stick "gate" which is the dark gray plastic part at the bottom of this picture: Note that the GC pad's gate is not perfectly round. It is an octagon.

Actions #12

Updated by kolano over 7 years ago

Thanks for the further info, skidau.

Ia there another issue related to the gate emulation. Again, I don't want to be a pain, but it's an issue that may subtlety effect a lot of games. The failure here at least provides a clear indicator of the emulation problem (i.e. even if it doesn't apply to the real GC controller.).

Further on the (0x43) error...

Actions #13

Updated by JMC4789 about 6 years ago

It's apparently passing in latest master. Can this be retested?

Actions #14

Updated by kaosjr over 3 years ago

I've tested it again with both a native GC controller and an XBOX One S controller through Bluetooth. Seems like the native controller works fine and passes the test, but I couldn't get the sticks to work properly. Seems the range of the sticks doesn't line up with the range of the sticks on a native controller. Max value on a native controller was 101, whereas the max value with my XBOX controller was 83. I tried using the recalibration tool, which didn't improve anything either (I calibrated both before and after the video).
Here's a short youtube clip:
It did manage to pass with a native controller, but looks like emulated controllers are still broken. The SI command error doesn't seem to be present anymore however, I tried multiple times and never had it show up.

Actions #15

Updated by Miksel12 over 2 years ago

Actions #16

Updated by JosJuice over 2 years ago

No, that pull request is not relevant.

Actions #17

Updated by FireNX70 over 1 year ago

The SI command error returned at some point before 5.0-10411. 5.0-10411 through 5.0-10741 spits it out once and if you press OK the test works just fine. On 5.0-14095, pressing OK will just result in the test immediately throwing the error out again and ignoring it will cause not just the service disc, but Dolphin altogether to crash. It seems 5.0-10745 changed the way this behaves, which makes sense since it's an SI related PR. Also got the usual "harmless" 0xff FIFO error on all versions tested.


Also available in: Atom PDF