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

cellPad, cellVdec and sys_process fixes #5719

Merged
merged 13 commits into from Mar 31, 2019
Merged

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Mar 13, 2019

  • Fix passing ASSIGN_CHANGES flag in cellPadGetInfor since its not supported by this function.
  • Minor optimizations in pad_thread, use raw ptr when possible and replace std::vector with std::array in m_pads container.
  • Fix segfault when reading stack memory in the debugger.
  • Remove handle in cellVdecClose.
  • Fix page fault range check. (old bug)
  • Allow recieving frame information only once in cellVdecGetPicItem, fixes Toy Home. (used to iterate this func infinitely)
  • Fix Emulator crash after SPU access violation.
  • Fix sys_process_exit2 when waiting for SPUs at av handler to terminate. Fixes Regression: Yakuza 1&2 HD EDITION [BLJM60471] (#5244) #5713
  • Improve vblank timing, fixing potential stutter and micro frame rate spikes.
  • Fix timer (sys_timer) state after event queue destruction. testcase
  • Implemented sys_vm_append/return_memory, improved sys_vm error checking.

Copy link
Member

@Nekotekina Nekotekina left a comment

Choose a reason for hiding this comment

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

Thanks.

rpcs3/Emu/Memory/vm.cpp Outdated Show resolved Hide resolved
Utilities/Thread.cpp Outdated Show resolved Hide resolved
rpcs3/Emu/Cell/Modules/cellVdec.cpp Show resolved Hide resolved
rpcs3/Emu/Cell/Modules/cellVdec.h Outdated Show resolved Hide resolved
@elad335 elad335 force-pushed the wip-pad branch 3 times, most recently from 7c5c1ac to ea65e8c Compare March 13, 2019 18:25
@elad335
Copy link
Contributor Author

elad335 commented Mar 13, 2019

This also fixed Siren Blood Curse halt with hle cellvdec.

@elad335 elad335 force-pushed the wip-pad branch 2 times, most recently from 245af78 to 8a83d16 Compare March 15, 2019 17:07
@Parthorisian
Copy link

cant see any flickering for [BLUS30443] - it seems fixes 4587, 3eab2e8 at least

@uaqlover
Copy link

any update when it will merge to the master thanks again elad : )

@elad335 elad335 force-pushed the wip-pad branch 5 times, most recently from 4d2ba2c to cfcf3be Compare March 23, 2019 08:47
@AniLeo AniLeo requested a review from Nekotekina March 24, 2019 14:36
@elad335 elad335 force-pushed the wip-pad branch 6 times, most recently from a170b56 to 63a9472 Compare March 27, 2019 06:52
@elad335
Copy link
Contributor Author

elad335 commented Mar 27, 2019

Doom 3 [NPUB30889] (nothing ->playable)
image

@elad335 elad335 force-pushed the wip-pad branch 2 times, most recently from 9b82596 to 79ef5ab Compare March 27, 2019 18:35
@elad335 elad335 force-pushed the wip-pad branch 6 times, most recently from a21c55b to a48d3a4 Compare March 30, 2019 11:19
@AniLeo AniLeo requested a review from Nekotekina March 31, 2019 03:01
the debugger uses super ptr which was unmapped for stack.
- Dont bother with shared_ptr since all pad_t management is going under the pad mutex.

- Change m_pads type into std::array since its size is known
ASSIGN_CHANGES flag is not returned in this func.
Those are the initial argument checks done by the firmware
Range end check was bugged (always true), also rewrite it so vm::get would be called only once
Remove context switch, replace it with host yield() for giving some cpu time for SPUs ans RSX
* Hw tests show state is unaffected by external destruction of the event queue

* Minor race regarding state check fixed (can result in an undestroyable state)
@Nekotekina Nekotekina merged commit 182054b into RPCS3:master Mar 31, 2019
@RPCS3 RPCS3 deleted a comment Mar 31, 2019
@RPCS3 RPCS3 locked as off-topic and limited conversation to collaborators Mar 31, 2019
@AniLeo
Copy link
Member

AniLeo commented Mar 31, 2019

Locking to prevent the usual batch of unrelated comments

@elad335 elad335 deleted the wip-pad branch April 3, 2019 14:38
@Megamouse
Copy link
Contributor

@elad335 I just found out that this fixed input in Blazing Angels 2

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Regression: Yakuza 1&2 HD EDITION [BLJM60471] (#5244)
6 participants