Project

General

Profile

Actions

Emulator Issues #9584

closed

SSBB Mod: Dolphin does not crash when real Wii does (Captain Falcon Brawlex .rel)

Added by ryanebola16 almost 8 years ago. Updated over 6 years ago.

Status:
Fixed
Priority:
Low
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:
5.0-540

Description

Game Name?

Super Smash Bros. Brawl

Game ID? (right click the game in the game list, properties, info tab)

RSBE01

MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)

c55273506f0814362f1f6defc354263b (edited ISO, works fine on both Dolphin and real Wii)

What's the problem? Describe what went wrong.

There is a known issue in the Brawl Expansion Project (http://forums.kc-mm.com/index.php?topic=65113.0) with the edited Captain Falcon module file for cloned characters (for example, the attached SD.raw's /private/wii/app/rsbe/pf/Module/ft_ryu.rel). Whenever a Captain Falcon-based clone uses its final smash, the game will freeze upon transitioning to the scene with the Blue Falcon. Sammi Husky of KCMM found part of the problem and updated the module file (updated version is included in attached SD.raw and configured for a specific clone. Generic updated version: https://mega.nz/#!PMxHiDYQ!jNfkPrXIqm14KVPK37ZNBZwdBBgho-e9GGILyvVxV5I). This created an interesting situation where Dolphin would not crash upon using a Captain Falcon-based clone's final smash but the real Wii would.

I realize that this problem may be considered low priority but I would like Dolphin to behave in the same manner that the real Wii does. This will make identifying and correcting the problem easier. Alternatively, if someone has a USB Gecko and wants to tell me what is going on in the real Wii when this crash happens, that's fine too!

What steps will reproduce the problem?

Preparation of Dolphin:

  1. Place SD.raw in appropriate location
  2. Set Brawl as Default ISO
  3. Extract Gecko OS app if needed (included in SD.raw's /apps)

Preparation of real Wii:

  1. Extract SD.raw contents to non-SDHC card
  2. Extract Gecko OS app if needed (included in SD.raw's /apps)

After initial setup:

  1. Load Gecko OS app
  2. Select "Launch Game"
  3. Enter Solo -> Training
  4. Select "Ryu" (leftmost slot, 2nd row from bottom). This Ryu has been replaced with a Kakashi Moveset that experiences the described problem.
  5. Start training, pause the game, spawn a Smash Ball, hit the Smash Ball until it is obtained. Use the final smash (B button) when the opponent is at close range and hit them.
  6. Dolphin should not crash and perform the Final Smash (ideal behavior). A real Wii will crash right before the scene transitions to the Blue Falcon scene.

Edited sd.raw from secretchaos1's "Smash Bros Infinite V2.5": http://www.mediafire.com/download/bj9qjt48i0z4o91/sd+CF+Final+Smash+Error.rar
I think the setup is proper but it involves a lot of steps on my end to prepare so let me know if I messed something up.

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?

Present on all Dolphin versions (tested up to 4.0-9426)

What are your PC specifications? (CPU, GPU, Operating System, more)

Win 10 Pro x64
Intel Core i7-4702MQ CPU @2.20GHz
GeForce GT 750M
2x 8GB Hynix 1600MHz
GeForce Game Ready Driver 368.22


Files

BexCFcrash.png (15.1 KB) BexCFcrash.png BeX Captain Falcon module-related crash (on 5.0-5667) ryanebola16, 10/18/2017 12:18 PM
Actions #1

Updated by phire almost 8 years ago

  • Priority changed from Normal to Low

Thanks for the extremely well documented bug report.

Like you said, issues like this are low priority, but very interesting and we would like to get them fixed eventually.

Actions #2

Updated by phire almost 8 years ago

You could try running dolphin in interpreter mode or with MMU enabled, there is a small chance that might force the bug out.

Give RealXFB a try too. If the bug is caused by the efb to xfb copy overwriting code or important data, RealXFB will make dolphin crash too.

Actions #3

Updated by ryanebola16 almost 8 years ago

I just tried Panic Handlers on, interpreter mode, MMU enabled, Single Core and Real XFB together and no crash occurred when it should have crashed.

I should also mention that the opponent doesn't always move expectedly when hit with the Final Smash (excessive rotation instead of landing on the track once hit). It doesn't alter gameplay but it is likely another part of the underlying problem.

I'm dabbling in PPC ASM during my free time but almost everything is more complicated than it seems! I was hoping this issue would be a good one to tackle since it is (likely) confined to one file.

Actions #4

Updated by JMC4789 almost 8 years ago

  • Status changed from New to Accepted

I love issues like these <3

Keep 'em coming.

Actions #5

Updated by ryanebola16 over 6 years ago

FWIW, invalid reads are appearing on 5.0-5322 now during the final smash. This behavior may match a real Wii now.

Actions #6

Updated by Helios over 6 years ago

  • Status changed from Accepted to Fixed

sweet

Actions #7

Updated by ryanebola16 over 6 years ago

Although https://dolphin-emu.org/download/dev/3e0355e7f685eafaac7a134a7aad86907ec0fafb/ can't be tested on Windows, the bisect tool suggests this PR fixed the problem.

Actions #9

Updated by leoetlino over 6 years ago

  • Fixed in set to 5.0-540

It's much more likely to be the latter PR rather than the CoreTiming IOS fix, which doesn't affect Brawl during gameplay because it does not use ES_LaunchTitle.

Actions #10

Updated by ryanebola16 over 6 years ago

I suppose that does make sense. Thanks!

Actions #11

Updated by ryanebola16 over 6 years ago

The attached panic handler messages now appear before crashing due to bug(s) in Captain Falcon's Brawlex module. The errors seem to be consistent across cloned Captain Falcon movesets. This is no longer Dolphin's problem but this information will help solve the Brawlex problem in the future.

Actions

Also available in: Atom PDF