early-access version 1788
This commit is contained in:
parent
bbacb1eaaa
commit
eadd21a25c
3 changed files with 30 additions and 29 deletions
|
@ -1,7 +1,7 @@
|
||||||
yuzu emulator early access
|
yuzu emulator early access
|
||||||
=============
|
=============
|
||||||
|
|
||||||
This is the source code for early-access 1787.
|
This is the source code for early-access 1788.
|
||||||
|
|
||||||
## Legal Notice
|
## Legal Notice
|
||||||
|
|
||||||
|
|
|
@ -51,6 +51,24 @@ struct hash<Service::LM::LogPacketHeaderEntry> {
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
||||||
namespace Service::LM {
|
namespace Service::LM {
|
||||||
|
namespace {
|
||||||
|
std::string_view NameOf(LogSeverity severity) {
|
||||||
|
switch (severity) {
|
||||||
|
case LogSeverity::Trace:
|
||||||
|
return "TRACE";
|
||||||
|
case LogSeverity::Info:
|
||||||
|
return "INFO";
|
||||||
|
case LogSeverity::Warning:
|
||||||
|
return "WARNING";
|
||||||
|
case LogSeverity::Error:
|
||||||
|
return "ERROR";
|
||||||
|
case LogSeverity::Fatal:
|
||||||
|
return "FATAL";
|
||||||
|
default:
|
||||||
|
return "UNKNOWN";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // Anonymous namespace
|
||||||
|
|
||||||
enum class LogDestination : u32 {
|
enum class LogDestination : u32 {
|
||||||
TargetManager = 1 << 0,
|
TargetManager = 1 << 0,
|
||||||
|
@ -262,33 +280,8 @@ private:
|
||||||
if (text_log) {
|
if (text_log) {
|
||||||
output_log += fmt::format("Log Text: {}\n", *text_log);
|
output_log += fmt::format("Log Text: {}\n", *text_log);
|
||||||
}
|
}
|
||||||
|
LOG_DEBUG(Service_LM, "LogManager {} ({}):\n{}", NameOf(entry.severity),
|
||||||
switch (entry.severity) {
|
|
||||||
case LogSeverity::Trace:
|
|
||||||
LOG_DEBUG(Service_LM, "LogManager TRACE ({}):\n{}", DestinationToString(destination),
|
|
||||||
output_log);
|
|
||||||
break;
|
|
||||||
case LogSeverity::Info:
|
|
||||||
LOG_INFO(Service_LM, "LogManager INFO ({}):\n{}", DestinationToString(destination),
|
|
||||||
output_log);
|
|
||||||
break;
|
|
||||||
case LogSeverity::Warning:
|
|
||||||
LOG_WARNING(Service_LM, "LogManager WARNING ({}):\n{}",
|
|
||||||
DestinationToString(destination), output_log);
|
DestinationToString(destination), output_log);
|
||||||
break;
|
|
||||||
case LogSeverity::Error:
|
|
||||||
LOG_ERROR(Service_LM, "LogManager ERROR ({}):\n{}", DestinationToString(destination),
|
|
||||||
output_log);
|
|
||||||
break;
|
|
||||||
case LogSeverity::Fatal:
|
|
||||||
LOG_CRITICAL(Service_LM, "LogManager FATAL ({}):\n{}", DestinationToString(destination),
|
|
||||||
output_log);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
LOG_CRITICAL(Service_LM, "LogManager UNKNOWN ({}):\n{}",
|
|
||||||
DestinationToString(destination), output_log);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static std::string DestinationToString(LogDestination destination) {
|
static std::string DestinationToString(LogDestination destination) {
|
||||||
|
|
|
@ -1098,7 +1098,15 @@ std::optional<SubresourceBase> FindSubresource(const ImageInfo& candidate, const
|
||||||
return std::nullopt;
|
return std::nullopt;
|
||||||
}
|
}
|
||||||
const ImageInfo& existing = image.info;
|
const ImageInfo& existing = image.info;
|
||||||
if (False(options & RelaxedOptions::Format)) {
|
if (True(options & RelaxedOptions::Format)) {
|
||||||
|
// Format checking is relaxed, but we still have to check for matching bytes per block.
|
||||||
|
// This avoids creating a view for blits on UE4 titles where formats with different bytes
|
||||||
|
// per block are aliased.
|
||||||
|
if (BytesPerBlock(existing.format) != BytesPerBlock(candidate.format)) {
|
||||||
|
return std::nullopt;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Format comaptibility is not relaxed, ensure we are creating a view on a compatible format
|
||||||
if (!IsViewCompatible(existing.format, candidate.format, broken_views, native_bgr)) {
|
if (!IsViewCompatible(existing.format, candidate.format, broken_views, native_bgr)) {
|
||||||
return std::nullopt;
|
return std::nullopt;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue