Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DSP: ARAM cleanup experiments #7740

Merged
merged 4 commits into from
Sep 2, 2019
Merged

Conversation

booto
Copy link
Contributor

@booto booto commented Jan 26, 2019

Some experiments trying to clean up ARAM-related code that seems strange.

@shuffle2
Copy link
Contributor

shuffle2 commented Jan 26, 2019

did you check git blame? nvm lgtm

@booto booto force-pushed the aram-experiments branch 2 times, most recently from 7ff09ee to 1bb7392 Compare January 29, 2019 08:47
@JMC47
Copy link
Contributor

JMC47 commented Jan 29, 2019

This fixes the remaining issues in ATV Offroad Fury 2 in multiplayer.

@booto booto force-pushed the aram-experiments branch 3 times, most recently from 653764b to 4464aa3 Compare January 31, 2019 05:37
@endrift
Copy link
Contributor

endrift commented Jan 31, 2019

Wonder if this will fix my HSP issues. Poke me when this is done and I'll rewrite my HSP branch on top of it to find out.

@gandalfthewhite19890404

Seems it fixes Resident Evil 2 sound issues, at least for me. Need more testers, also for Residen Evil 3 Nemesis.

@JMC47
Copy link
Contributor

JMC47 commented Feb 15, 2019

The broken sound in the intro is still there for me in Resident Evil 2. I haven't tested any areas beyond that, though.

@booto
Copy link
Contributor Author

booto commented Apr 13, 2019

Waiting on #7980 merge before rebasing/etc this.

@booto booto force-pushed the aram-experiments branch from a39e0d4 to 94e6c9c Compare May 16, 2019 00:59
@booto booto changed the title [WIP] DSP: ARAM cleanup experiments DSP: ARAM cleanup experiments May 16, 2019
@JMC47
Copy link
Contributor

JMC47 commented May 17, 2019

Everything seems to be working at a quick glance of ARAM sensitive games.

Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
@booto booto force-pushed the aram-experiments branch from 94e6c9c to 02b499f Compare May 22, 2019 02:22
booto added 3 commits May 21, 2019 22:23
Changes include:
  * Take into account how different size settings interact
  * Do ARAM DMA transfers in chunks rather than all-at-once
@booto booto force-pushed the aram-experiments branch 3 times, most recently from 1761395 to 052240a Compare May 22, 2019 03:11
Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
@booto booto force-pushed the aram-experiments branch from 052240a to 97b7032 Compare May 23, 2019 00:44
@booto booto force-pushed the aram-experiments branch from 97b7032 to 23ee0dd Compare May 23, 2019 00:47
Copy link
Contributor

@endrift endrift left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm minus the nit

// ARAM is mirrored every 64MB (verified on real HW) - done in address conversion func
// Source/destination/count aligned to 32 bytes - done in MMIO handler

u32 lines_to_transfer = std::min(s_arDMA.Cnt.count / ARAM_LINE_SIZE, ARAM_MAX_TRANSFER_CHUNKING);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: Please keep the naming style consistent.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was this mostly about ticksToTransfer not being snake case? (fixed)

@booto booto force-pushed the aram-experiments branch from 23ee0dd to 62e642f Compare May 30, 2019 05:14
Copy link
Member

@BhaaLseN BhaaLseN left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code seems fine (other than that remark), untested though.

Source/Core/Core/HW/DSP.cpp Outdated Show resolved Hide resolved
@booto booto force-pushed the aram-experiments branch from 62e642f to c1baffa Compare May 31, 2019 01:46
@nbohr1more
Copy link

@dolphin-emu-bot rebuild

@JMC47
Copy link
Contributor

JMC47 commented Sep 2, 2019

This got abandoned but I tested it and the code is approved.

@JMC47 JMC47 merged commit 03ea0eb into dolphin-emu:master Sep 2, 2019
@BParks21
Copy link

BParks21 commented Sep 2, 2019

@JMC47 This has broken a lot of things. New Super Mario Bros just straight up crashes with broken audio and i also can no longer get into the wii system menu immediately after installing this merge to the latest dev build. Switching to DSP LLE fixes the crashing but audio is still broken.

@JMC47
Copy link
Contributor

JMC47 commented Sep 2, 2019

That's interesting, I didn't test many Wii games since the Wii doesn't have ARAM. Probably a minor oversight. If it doesn't get fixed soon I can revert this. Thanks for the report!

@BParks21
Copy link

BParks21 commented Sep 2, 2019

Yeah i'm finding that more games are affected including Donkey Kong Country Returns :( crashes shortly after the title screen

@JMC47
Copy link
Contributor

JMC47 commented Sep 2, 2019

It's likely that all Wii games are affected to some degree.

@delroth
Copy link
Member

delroth commented Sep 2, 2019

Rolled back in #8344.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

9 participants