Project

General

Profile

Actions

Emulator Issues #967

closed

Wii games has cracky sound after rev 2932 (and possible fix!)

Added by Autoran1 over 15 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
% Done:

0%

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

Description

What steps will reproduce the problem?

  1. After r2932 i have cracky noisy sound in several Wii Games
    2.
    3.
    The 2932'th commit is mostly cool but,
    The problem is in the Source\Core\Core\HW\DSP.cpp
    and here's the patch file
Actions #1

Updated by death2droid over 15 years ago

  • Issue type set to Other
Actions #2

Updated by XTra.KrazzY over 15 years ago

the check should be if the position is larger than the GC ARAM size, not than the mask

Actions #3

Updated by death2droid over 15 years ago

Should it be more like this?

if (_iAddress > ARAM_SIZE)
_iAddress = (_iAddress & ARAM_MASK);
return g_ARAM[_iAddress];

Actions #4

Updated by Autoran1 over 15 years ago

Tried your code, the sound is cracky again

Actions #5

Updated by death2droid over 15 years ago

Well it defiantly shouldn't be
if (_iAddress > WII_MASK)
_iAddress = (_iAddress & WII_MASK);
return g_ARAM[_iAddress];
Try
if (_iAddress > ARAM_SIZE)
_iAddress = (_iAddress & WII_MASK);
return g_ARAM[_iAddress];

Actions #6

Updated by nakeee over 15 years ago

WII_MASK is what was there before, and though I agree it's a bit weird.
I think we should ask ector why he changed those lines.

Actions #7

Updated by Autoran1 over 15 years ago

death2droid, this code is working

Actions #8

Updated by death2droid over 15 years ago

Which code works?

Actions #9

Updated by Autoran1 over 15 years ago

second one
if (_iAddress > ARAM_SIZE)
_iAddress = (_iAddress & WII_MASK);
return g_ARAM[_iAddress];

Actions #10

Updated by XTra.KrazzY over 15 years ago

Yeah it looks good. I think it's something that could be committed.

Actions #11

Updated by sl1nk3.s over 15 years ago

hmm, strange nobody committed it yet ?
changing return g_ARAM[_iAddress & ARAM_MASK];
to either return g_ARAM[_iAddress & WII_MASK];
or return g_ARAM[_iAddress]; without mask fix this

Actions #12

Updated by death2droid over 15 years ago

  • Status changed from New to Fixed
Actions #13

Updated by nakeee over 15 years ago

  • Status changed from Fixed to Accepted
Actions #14

Updated by Autoran1 over 15 years ago

Fixed in r3384, thanks

Actions #15

Updated by jhonatan.teixeira over 15 years ago

yeah this issue is fixed by death2droid =P

Actions #16

Updated by sl1nk3.s over 15 years ago

yeye, the thing has been reverted, but we still need to make sure this is the good
way to do it :)

Actions #17

Updated by death2droid over 15 years ago

Well what was the point of the aram_mask anyway?

Actions #18

Updated by ChaosCode over 15 years ago

is this fixed?

Actions #19

Updated by daws72 over 15 years ago

Wii sports don't have anymore craky sound. :)

Actions #20

Updated by ChaosCode over 15 years ago

fixed and needs closing.

Actions #21

Updated by hrydgard over 15 years ago

  • Status changed from Accepted to Fixed
Actions

Also available in: Atom PDF