mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-01-15 22:53:47 +00:00
rsx: Workarounds for some buggy games
- Replace assert with log message until hardware testing confirms findings
This commit is contained in:
parent
e334a43169
commit
e55d216619
@ -756,7 +756,14 @@ namespace rsx
|
||||
|
||||
const auto surface_internal_pitch = (required_width * required_bpp);
|
||||
|
||||
verify(HERE), surface_internal_pitch <= required_pitch;
|
||||
// Sanity check
|
||||
if (UNLIKELY(surface_internal_pitch > required_pitch))
|
||||
{
|
||||
LOG_WARNING(RSX, "Invalid 2D region descriptor. w=%d, h=%d, bpp=%d, pitch=%d",
|
||||
required_width, required_height, required_bpp, required_pitch);
|
||||
return {};
|
||||
}
|
||||
|
||||
const auto test_range = utils::address_range::start_length(texaddr, (required_pitch * required_height) - (required_pitch - surface_internal_pitch));
|
||||
|
||||
auto process_list_function = [&](std::unordered_map<u32, surface_storage_type>& data, bool is_depth)
|
||||
|
@ -2023,8 +2023,10 @@ namespace rsx
|
||||
scale_x = 0.f;
|
||||
scale_y = 0.f;
|
||||
}
|
||||
else if (extended_dimension == rsx::texture_dimension_extended::texture_dimension_1d)
|
||||
else if (required_surface_height == 1)
|
||||
{
|
||||
// Pitch doesn't matter when height=1 and some games abuse this fact
|
||||
tex_pitch = std::max<u16>(tex_pitch, get_format_packed_pitch(format, tex_width, !tex.border_type(), !linear));
|
||||
scale_y = 0.f;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user