mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2024-11-15 05:47:56 -07:00
Little fix for platforms not moving in Wind Waker on Dolphin 32bits, see issue 1139
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3973 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
ea561430ff
commit
1cb10791c0
@ -1084,7 +1084,7 @@ static void EndField()
|
|||||||
|
|
||||||
// Purpose 1: Send VI interrupt for every screen refresh
|
// Purpose 1: Send VI interrupt for every screen refresh
|
||||||
// Purpose 2: Execute XFB copy in homebrew games
|
// Purpose 2: Execute XFB copy in homebrew games
|
||||||
// Run when: This is run 7200 times per second on full speed
|
// Run when: This is run 15700 times per second on full speed
|
||||||
void Update()
|
void Update()
|
||||||
{
|
{
|
||||||
// Update the target refresh rate
|
// Update the target refresh rate
|
||||||
@ -1104,7 +1104,6 @@ void Update()
|
|||||||
// Multipled by two because of the way TicksPerFrame is calculated (divided by 25 and 30
|
// Multipled by two because of the way TicksPerFrame is calculated (divided by 25 and 30
|
||||||
// rather than 50 and 60)
|
// rather than 50 and 60)
|
||||||
|
|
||||||
// TODO : Feed the FPS estimate into Iulius' framelimiter.
|
|
||||||
ActualRefreshRate = ((double)SyncTicksProgress / (double)TicksPerFrame) * 2.0;
|
ActualRefreshRate = ((double)SyncTicksProgress / (double)TicksPerFrame) * 2.0;
|
||||||
LastTick = CoreTiming::GetTicks();
|
LastTick = CoreTiming::GetTicks();
|
||||||
SyncTicksProgress = 0;
|
SyncTicksProgress = 0;
|
||||||
|
@ -287,9 +287,9 @@ void fdivx(UGeckoInstruction _inst)
|
|||||||
}
|
}
|
||||||
void fdivsx(UGeckoInstruction _inst)
|
void fdivsx(UGeckoInstruction _inst)
|
||||||
{
|
{
|
||||||
float a = (float)rPS0(_inst.FA);
|
double a = rPS0(_inst.FA);
|
||||||
float b = (float)rPS0(_inst.FB);
|
double b = rPS0(_inst.FB);
|
||||||
rPS0(_inst.FD) = rPS1(_inst.FD) = a / b;
|
rPS0(_inst.FD) = rPS1(_inst.FD) = (float)(a / b);
|
||||||
if (b == 0.0)
|
if (b == 0.0)
|
||||||
{
|
{
|
||||||
if (!FPSCR.ZX)
|
if (!FPSCR.ZX)
|
||||||
|
@ -42,9 +42,10 @@ void CUCode_Zelda::AFCdecodebuffer(const s16 *coef, const char *src, signed shor
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// In Pikmin, Dolphin's engine sound is using AFC 5bits, even though such a sound is hard
|
// In Pikmin, Dolphin's engine sound is using AFC type 5, even though such a sound is hard
|
||||||
// to compare, it seems like to sound exactly like a real GC
|
// to compare, it seems like to sound exactly like a real GC
|
||||||
DEBUG_LOG(DSPHLE, "5 bits AFC sample");
|
// In Super Mario Sunshine, you can get such a sound by talking to anyone
|
||||||
|
DEBUG_LOG(DSPHLE, "5 bytes AFC sample");
|
||||||
for (int i = 0; i < 16; i += 4)
|
for (int i = 0; i < 16; i += 4)
|
||||||
{
|
{
|
||||||
nibbles[i + 0] = (*src >> 6) & 0x02;
|
nibbles[i + 0] = (*src >> 6) & 0x02;
|
||||||
@ -53,6 +54,7 @@ void CUCode_Zelda::AFCdecodebuffer(const s16 *coef, const char *src, signed shor
|
|||||||
nibbles[i + 3] = (*src >> 0) & 0x02;
|
nibbles[i + 3] = (*src >> 0) & 0x02;
|
||||||
src++;
|
src++;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < 16; i++)
|
for (int i = 0; i < 16; i++)
|
||||||
{
|
{
|
||||||
if (nibbles[i] >= 2)
|
if (nibbles[i] >= 2)
|
||||||
|
Loading…
Reference in New Issue
Block a user