Emulator Issues #12977
closedSpider-Man 2 - Mismatched matrix index configuration between CP and XF stages
0%
Description
Game Name?
Spider-Man 2
Game ID? (right click the game in the game list, Properties, Info tab)
GK2E52
MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)
a2762a6acc32d4e523ac6848589cc147
What's the problem? Describe what went wrong.
Popup stating
"Warning: Mismatched matrix index configuration between CP and XF stages - index A: 00000000/3cf3cf00, index B 00f3cf3c/00f3cf3c. Please report on the issue tracker."
This popup appears several times.
What steps will reproduce the problem?
Start the game. A few popups appear immediately one after the other.
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
Yes, 5.0-16932
Is the issue present in the latest stable version?
No, 5.0
If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)
5.0-16461 is when the message was added
If your issue is a graphical issue, please attach screenshots and record a three frame fifolog of the issue if possible. Screenshots showing what it is supposed to look like from either console or older builds of Dolphin will help too. For more information on how to use the fifoplayer, please check here: https://wiki.dolphin-emu.org/index.php?title=FifoPlayer
[Attach any fifologs if possible, write a description of fifologs and screenshots here to assist people unfamiliar with the game.]
What are your PC specifications? (CPU, GPU, Operating System, more)
i7-8750H
GTX 1060
Windows 10
8GB DDR4
Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)
Let me know, I'll see what else I can do.
Files
Updated by ZephyrSurfer over 2 years ago
Updated by ZephyrSurfer over 2 years ago
It happens regardless of dual core enabled or disabled
Updated by ZephyrSurfer over 2 years ago
It seems to regardless of settings entirely.
I've tried all the accurate settings too and I'm getting the same message.
Updated by pokechu22 over 2 years ago
Can you record a fifolog? The following process should hopefully capture it:
- Ensure that on Config, under the Interface tab, "Show Debugging UI" is checked.
- Check Options → Boot to Pause.
- Start the game. A new black window should appear.
- Select Tools → Fifo Player.
- Set the number of frames to 30 (this may not be necessary).
- Click "Record" in the FIFO player window.
- Resume the game by clicking the play button in the main window.
- Click "Save" in the FIFO player window.
- Stop emulation.
- Uncheck Boot to Pause.
- In the FIFO player window, click "Load", and select the fifolog you saved before.
- If everything went well, the same error message should appear, in which case you can close Dolphin.
- You will probably need to compress the fifolog with 7-zip to fit it on the bug tracker.
The fifo recorder seems to behave a bit weirdly with "boot to pause", so there's a chance that this won't capture the needed information. If so, I'll try to come up with an alternative approach.
Updated by ZephyrSurfer over 2 years ago
The "Record" wasn't active when following the steps but if I had the fifolog window remaining opened from a previously running game and switching over after I could record. So I did that but otherwise followed the steps.
Here is a 30 frame fifolog. Hopefully it captures what is required.
Updated by ZephyrSurfer over 2 years ago
The same error messages did not reappear though.
I've tried recording a couple of times and the error messages do not reappear.
Updated by pokechu22 over 2 years ago
Unfortunately that one doesn't seem to have the needed info - I think the fifo recorder must lose the first frame (which contains the initialization stuff). What I should do is investigate what's going on there (and why the record button isn't consistently enabled), but instead, I've got a hacky workaround:
Try launching the game with the GameCube menu enabled. While the GameCube menu is fading to black, pause emulation, and then start recording with the FIFO player (again for 30 frames to hopefully catch the right part). This should ensure that the relevant information is captured (in addition to junk from the GameCube menu, but that's OK).
Updated by ZephyrSurfer over 2 years ago
I tried that and got the popup on playing back the fifolog. I'm not too sure how many frames are GC menu though.
Updated by pokechu22 over 2 years ago
Thanks, that one does include helpful information. The problem starts on frame 8 and continues until frame 17 (you can see this by setting the start and end to frame 8, though you can't easily check the end point because looping in the fifoplayer re-uses registers from the start of frame 0).
On frame 8, object 0, at offset 0000437, they set both the CP and XF versions of MATINDEX_A to all 60. But then at offset 00000b6d, they set the CP version to all zeros, but don't change the XF version. On frame 17, object 1, they fix this by setting the XF and CP values to 60/0/0/0 (at offsets 0000023a and 0000026d).
Unfortunately I can't determine why the game is doing this without decompiling it. I think offset 000008da of object 0 on frame 8 is the end of GXInit
(specifically __GXInitGX
's call to GXSetGPMetric
) so the stuff after that (which includes the change of the CP MATINDEX_A without changing the XF one) is game-specific. I can change the panic alert into a warning, though.
Updated by pokechu22 over 2 years ago
- Has duplicate Emulator Issues #12984: Spider-Man 2 Android added
Updated by pokechu22 over 2 years ago
- Status changed from New to Fixed
- Fixed in set to 5.0-16972
The panic alert has been changed to a warning log in 5.0-16972.