Project

General

Profile

Actions

Emulator Issues #5035

closed

Latest Dolphin revisions crash on OS X

Added by jurpie over 12 years ago.

Status:
Invalid
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
OS X
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

  1. Game Name and ID (as it appears in right click > properties: "GZ2P01",
    "RSBE01", etc):
    Zelda: Skyward Sword: SOUE01 (maybe more)

2) What is the expected output? What do you see instead?
After Wiimote setup(+ / IR callibration) I expect to see the Menu, but Dolphin crashes

3) Did the game ever work correctly (i.e. not have this problem) on an
earlier version of dolphin? Please specify the exact revision when the
problem began.
it works OK on v3.0

4) What steps will reproduce the problem?

  1. Run game
  2. Connect Wiimote
  3. Crash

5) What version of dolphin are you using (32bit/64bit along with the
version as it appears in the title bar, etc)?
On what operating system, drivers, and hardware? Be sure to list OS,
graphics driver information, and video card model if you are having
graphics problems, for example.
Tried 32/64 bit modes. OS X 10.7.2, for info about hardware see attachment.

6) Please provide any additional information below.
See attachment voor a Crashlog


Related issues 4 (0 open4 closed)

Has duplicate Emulator - Emulator Issues #4077: Super Smash Bros. Brawl does not run under Mac OS XDuplicate

Actions
Has duplicate Emulator - Emulator Issues #4801: Mac osx - Games crash as soon as they startDuplicate

Actions
Has duplicate Emulator - Emulator Issues #5037: [OS X] Bluetooth crashes when trying to connect WiimoteDuplicate

Actions
Has duplicate Emulator - Emulator Issues #5528: Can't use real wiimoteDuplicate

Actions
Actions #1

Updated by jurpie over 12 years ago

Forgot to mention, I'm running the latest build (3.0-211).

And just found out that Wii Sports crashes on the 64 bits version (32 bits works perfectly).

Actions #2

Updated by jurpie over 12 years ago

I'm not really into GDB, but if you can give me a few pointers (pun intended) on how to debug it, I'll look what I can do :)

Actions #3

Updated by Anonymous over 12 years ago

Hm the trace2 looks interesting, relevant code (code changed, was looking at the wrong branch):

void Renderer::SetPSConstant4f(unsigned int const_number, float f1, float f2, float f3, float f4)
{
float f[4] = { f1, f2, f3, f4 };
glProgramEnvParameter4fvARB(GL_FRAGMENT_PROGRAM_ARB, const_number, f);
}

Same thing though:
So I'm guessing that it's related to alignment or location of the function(glProgramEnvParameter4fvARB).

Can you breakpoint on SetPSConstant4f and show the location of the function SetPSConstant4f as well as glProgramEnvParameter4fvARB ? Just google for gdb stuff :P

Actions #4

Updated by jurpie over 12 years ago

I've attached some gdb output, please tell me what to look for.

Actions #5

Updated by jurpie over 12 years ago

forgot to add this:

(gdb) print $xmm4
$1 = {
v4_float = {0, 0, 0, 0},
v2_double = {0, 0},
v16_int8 = {0 <repeats 16 times>},
v8_int16 = {0, 0, 0, 0, 0, 0, 0, 0},
v4_int32 = {0, 0, 0, 0},
v2_int64 = {0, 0},
uint128 = 0
}

Actions #6

Updated by Anonymous over 12 years ago

0x0000000000212648 <_ZN3OGL8Renderer15SetPSConstant4fEjffff+8>: movaps %xmm4,(%rsp)

This is the problem, because rsp is not 16 byte aligned. However I'm not really sure what's causing it, since I don't use osx and am not familiar with their compiler...

So, time for guessing. Can you try commenting line 135 in Source\Core\VideoCommon\Src\OpcodeDecoding.cpp ? This should make it so the Display List is always interpreted. Seems like the jit calls into LoadIndexedXF, which eventually calls a function which has been optimized by g++ such that alignment is wrong when calling from jit'd code.

Actions #7

Updated by mthuurne over 12 years ago

The issue from the first trace might be solved by commit 98981cc72486. Can you test that?

Actions #8

Updated by jurpie over 12 years ago

I'll try that, compiling right know.
Is it possible to compile and link the changed files only?
If I try to just run ./SConstruct . it does that, but the output binary still shows it's version 3.0-211

Actions #9

Updated by jurpie over 12 years ago

Great! the issue from the first trace is fixed

Actions #10

Updated by jurpie over 12 years ago

The issue from the second trace is fixed by commenting line 135 of Source/Core/VideoCommon/Src/OpcodeDecoding.cpp

Actions #11

Updated by Anonymous over 12 years ago

Issue 4801 has been merged into this issue.

Actions #12

Updated by Anonymous over 12 years ago

Issue 5037 has been merged into this issue.

Actions #13

Updated by Anonymous over 12 years ago

  • Status changed from New to Accepted

Looks like a great percentage of the OS X crashes are caused by calling functions which expect certain alignment conditions to be met, which are not, since they are called through JIT'd code.

Hopefully it can be fixed either in the JIT or in the compiler, instead of attributes on each function...

Actions #14

Updated by jurpie over 12 years ago

Would compiling using the non-LLVM (plain gcc) compiler make a difference?
I tried that once, but it gave some errors during the compile stage..

Actions #15

Updated by celgilles over 12 years ago

Compiling with llvm-gcc 3 (which comes with XCode 4.2) works for me. it seems that Marteen has fixed most of the OS X issues in version 211 & 212, even the latest version 220 works great! I have no more crashes (JITCache and EFB related crashes) anymore on OS X in 64bit mode....I tested ZSS yesterday with a Wii+ and worked great at all resolutions. But not sure if my crash is your crash ;-) I always delete the folder "Source" in the "Build" > "Darwin-x86_64-release" folder before compiling (if you delete the "Externals" folder it will recompile "wxWidgets3" and that takes most of the time compiling it).

Actions #16

Updated by jurpie over 12 years ago

I think your crashes are different, the JITCache? and EFB related crash is fixed, but I've some other crashes related to alignment.

Attached is another crash in Mario Kart

Actions #17

Updated by jurpie over 12 years ago

Another crash for Super Mario Galaxy (function is way too big for full disas, so only included relevant lines)

Actions #18

Updated by Sonicadvance1 over 12 years ago

The mario kart wii trace shows failure happening in the OpenCL texture decoder?

Actions #19

Updated by Anonymous about 12 years ago

Issue 5442 has been merged into this issue.

Actions #20

Updated by Anonymous about 12 years ago

Issue 5528 has been merged into this issue.

Actions #21

Updated by Anonymous about 12 years ago

Issue 5442 has been merged into this issue.

Actions #22

Updated by Anonymous about 12 years ago

Issue 5442 has been merged into this issue.

Actions #23

Updated by Anonymous about 12 years ago

Issue 4077 has been merged into this issue.

Actions #24

Updated by Billiard26 over 11 years ago

  • Issue type set to Bug
  • Operating system OS X added
Actions #25

Updated by ariff.isk about 11 years ago

Is there a fix? or atleast a reason this problem persists? I've heard about the OpenGL issue that's been pulled back but for most osx users this bug still persists. Even for me. I have no problem with Dolphin 3.5 but the dev builds have easier configurable options that r3.5 just doesnt have.

Actions #26

Updated by pauldacheez about 11 years ago

ariff, your issue is completely different from this one (and I don't know if this old issue is even relevant anymore) - yours is more likely because Dolphin now requires 10.7/10.8 and a graphics card that supports all of GL 3.2 properly. If you're running 10.6 or you've got an old GPU on 10.7/10.8 it's just gonna crash.

Here's the last build that'll still work on 10.6 or with older GPUs: http://dolphin-emu.org/download/dev/8767b30f75db5732023d9ebf9d93573f3b839e50/

Actions #27

Updated by ariff.isk about 11 years ago

paul, I'm running 10.7.5 on an early 2011 macbook pro with Intel HD 3000 and 4GB RAM (Haven't updated to 8GB yet) and it's still an issue. :| I've searched that osx 10.7.5 supports GL 3.2 But apparently i still can't open recent dev versions. The only version i CAN open whats fairly recent is v3.5-1382 albeit with MAJOR graphical glitching (even with optimized settings). Everything above that crashes. I've posted it as an issue.
http://code.google.com/p/dolphin-emu/issues/detail?id=6346&thanks=6346&ts=1370373440

Actions #28

Updated by pauldacheez about 11 years ago

The OS, the GPU, and the drivers in between all need to support the necessary parts of GL 3.2 - and support them properly, mind you - to be able to run Dolphin. The drivers are broken in this case.

Actions #29

Updated by delroth almost 11 years ago

  • Status changed from Accepted to Invalid
Actions

Also available in: Atom PDF