-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Gran Turismo Improvements #13917
Gran Turismo Improvements #13917
Conversation
rpcs3/Emu/Cell/lv2/sys_timer.cpp
Outdated
| @@ -267,7 +267,8 @@ error_code _sys_timer_start(ppu_thread& ppu, u32 timer_id, u64 base_time, u64 pe | |||
| { | |||
| std::lock_guard lock(timer.mutex); | |||
|
|
|||
| if (!lv2_obj::check(timer.port)) | |||
| // LV2: Simple nullptr check, nothing complex (do not use lv2_obj::check here) | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This comment can be improved by explaining why lv2_obj::check is incorrect here or if maybe it's just unnecessary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better explained.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm. Will wait for neko's review.
rpcs3/Emu/Cell/PPUThread.cpp
Outdated
| @@ -3754,7 +3761,7 @@ bool ppu_initialize(const ppu_module& info, bool check_only) | |||
| settings += ppu_settings::accurate_nj_mode, settings -= ppu_settings::fixup_nj_denormals, fmt::throw_exception("NJ Not implemented"); | |||
|
|
|||
| // Write version, hash, CPU, settings | |||
| fmt::append(obj_name, "v5-kusa-%s-%s-%s.obj", fmt::base57(output, 16), fmt::base57(settings), jit_compiler::cpu(g_cfg.core.llvm_cpu)); | |||
| fmt::append(obj_name, "v5-kusa-gt-%s-%s-%s.obj", fmt::base57(output, 16), fmt::base57(settings), jit_compiler::cpu(g_cfg.core.llvm_cpu)); | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why gt?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be just for the test, before merge this should become just v6 I'm guessing
| static_cast<ppu_thread*>(cpu)->gpr[3] = CELL_EBUSY; | ||
| } | ||
|
|
||
| if (mode == 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| if (mode == 1) | |
| else if (mode == 1) |
|
@elad335 Will this also affect GT5 Prologue and GT6? |
Yes. |
b9b5e7c to
7af113a
Compare
|
The audio "desync"(audio cut out) still happens sometimes. The easyest way that works for me is to trigger is to start World Compact Car Race/ Cape ring two times in a row. |
|
this pr has eliminated GT6 desyncs for good. this is amazing. |
|
Use support platforms if you need support, don't ping further in this PR |
I've been laying low lately because I've been working on imprvements to Gran Turismo 5' stability. After many hours debugging and head-racking here are all the fixes to make GT5 not freeze anymore, enjoy.
One thing to not is that you need RSX FIFO Accuracy set to Atomic and enable Accurate RSX reservation access.
Fixes #10882