Updated DiscordRPC, fixed TTYD and fixed Android compiling

This commit is contained in:
Jarrod Norwell 2024-05-25 15:39:06 +08:00
parent 4ce69bc41f
commit f627a085d3
11 changed files with 63 additions and 22 deletions

2
externals/vcpkg vendored

@ -1 +1 @@
Subproject commit 90542a476c8ef3288039e2443a775e48db279173
Subproject commit 326d8b43e365352ba3ccadf388d989082fe0f2a6

2
externals/xbyak vendored

@ -1 +1 @@
Subproject commit 9c0f5d3ecb06d2c93c2b59becb9b3b763213e74e
Subproject commit 80477f635345e8f13efc512d84b01b94cad92cd9

View File

@ -186,7 +186,7 @@ android {
}
tasks.create<Delete>("ktlintReset") {
delete(File(buildDir.path + File.separator + "intermediates/ktLint"))
delete(File(layout.buildDirectory.toString() + File.separator + "intermediates/ktLint"))
}
val showFormatHelp = {
@ -203,13 +203,6 @@ ktlint {
version.set("0.47.1")
android.set(true)
ignoreFailures.set(false)
disabledRules.set(
setOf(
"no-wildcard-imports",
"package-name",
"import-ordering"
)
)
reporters {
reporter(ReporterType.CHECKSTYLE)
}

View File

@ -12,7 +12,8 @@ SystemSettings DefaultSystemSettings() {
settings.version = 0x140000;
settings.flags = 7;
settings.rebootless_system_version = {.version = 38, .reserved = 1, .display_version = 38};
settings.rebootless_system_version =
RebootlessSystemUpdateVersion{.version = 38, .reserved = {1}, .display_version = {38}};
settings.mii_author_id = Common::UUID::MakeDefault();

View File

@ -11,7 +11,8 @@ SystemSettings DefaultSystemSettings() {
settings.version = 0x140000;
settings.flags = 7;
settings.rebootless_system_version = {.version = 38, .reserved = 1, .display_version = 38};
settings.rebootless_system_version =
RebootlessSystemUpdateVersion{.version = 38, .reserved = {1}, .display_version = {38}};
settings.color_set_id = ColorSet::BasicWhite;

View File

@ -38,10 +38,7 @@ enum class IoMode : u32 {
};
// This is nn::ssl::sf::OptionType
enum class OptionType : u32 {
DoNotCloseSocket = 0,
GetServerCertChain = 1,
};
enum class OptionType : u32 { DoNotCloseSocket = 0, GetServerCertChain = 1, EnableAlpn = 3 };
// This is nn::ssl::sf::SslVersion
struct SslVersion {
@ -96,8 +93,8 @@ public:
{23, nullptr, "GetOption"},
{24, nullptr, "GetVerifyCertErrors"},
{25, nullptr, "GetCipherInfo"},
{26, nullptr, "SetNextAlpnProto"},
{27, nullptr, "GetNextAlpnProto"},
{26, &ISslConnection::SetNextAlpnProto, "SetNextAlpnProto"},
{27, &ISslConnection::GetNextAlpnProto, "GetNextAlpnProto"},
{28, nullptr, "SetDtlsSocketDescriptor"},
{29, nullptr, "GetDtlsHandshakeTimeout"},
{30, nullptr, "SetPrivateOption"},
@ -142,6 +139,7 @@ private:
bool get_server_cert_chain = false;
std::shared_ptr<Network::SocketBase> socket;
bool did_handshake = false;
bool enable_alpn = false;
Result SetSocketDescriptorImpl(s32* out_fd, s32 fd) {
LOG_DEBUG(Service_SSL, "called, fd={}", fd);
@ -381,6 +379,10 @@ private:
case OptionType::GetServerCertChain:
get_server_cert_chain = static_cast<bool>(parameters.value);
break;
case OptionType::EnableAlpn:
LOG_ERROR(Service_SSL, "(STUBBED) called.");
enable_alpn = static_cast<bool>(parameters.value);
break;
default:
LOG_WARNING(Service_SSL, "Unknown option={}, value={}", parameters.option,
parameters.value);
@ -389,6 +391,20 @@ private:
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ResultSuccess);
}
void SetNextAlpnProto(HLERequestContext& ctx) {
LOG_ERROR(Service_SSL, "(STUBBED) called.");
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ResultSuccess);
}
void GetNextAlpnProto(HLERequestContext& ctx) {
LOG_ERROR(Service_SSL, "(STUBBED) called.");
IPC::ResponseBuilder rb{ctx, 3};
rb.Push(ResultSuccess);
}
};
class ISslContext final : public ServiceFramework<ISslContext> {

View File

@ -24,7 +24,7 @@ DiscordImpl::DiscordImpl(Core::System& system_) : system{system_} {
DiscordEventHandlers handlers{};
// The number is the client ID for sudachi, it's used for images and the
// application name
Discord_Initialize("712465656758665259", &handlers, 1, nullptr);
Discord_Initialize("1223291656732934377", &handlers, 1, nullptr);
}
DiscordImpl::~DiscordImpl() {

View File

@ -1197,6 +1197,10 @@ void RasterizerOpenGL::SyncBlendState() {
}
}
bool RasterizerOpenGL::IsAnyFloat(Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute) {
return attribute.type == Tegra::Engines::Maxwell3D::Regs::VertexAttribute::Type::Float;
};
void RasterizerOpenGL::SyncLogicOpState() {
auto& flags = maxwell3d->dirty.flags;
if (!flags[Dirty::LogicOp]) {
@ -1205,7 +1209,16 @@ void RasterizerOpenGL::SyncLogicOpState() {
flags[Dirty::LogicOp] = false;
const auto& regs = maxwell3d->regs;
if (regs.logic_op.enable) {
bool has_float = false;
if (std::any_of(regs.vertex_attrib_format.begin(), regs.vertex_attrib_format.end(),
[&](Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute) {
return IsAnyFloat(attribute);
}))
has_float = true;
if (regs.logic_op.enable && !has_float) {
glEnable(GL_COLOR_LOGIC_OP);
glLogicOp(MaxwellToGL::LogicOp(regs.logic_op.op));
} else {

View File

@ -236,6 +236,8 @@ private:
void QueryFallback(GPUVAddr gpu_addr, VideoCommon::QueryType type,
VideoCommon::QueryPropertiesFlags flags, u32 payload, u32 subreport);
bool IsAnyFloat(Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute);
Tegra::GPU& gpu;
Tegra::MaxwellDeviceMemoryManager& device_memory;

View File

@ -1310,12 +1310,25 @@ void RasterizerVulkan::UpdateDepthBiasEnable(Tegra::Engines::Maxwell3D::Regs& re
[enable](vk::CommandBuffer cmdbuf) { cmdbuf.SetDepthBiasEnableEXT(enable != 0); });
}
bool RasterizerVulkan::IsAnyFloat(Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute) {
return attribute.type == Tegra::Engines::Maxwell3D::Regs::VertexAttribute::Type::Float;
};
void RasterizerVulkan::UpdateLogicOpEnable(Tegra::Engines::Maxwell3D::Regs& regs) {
if (!state_tracker.TouchLogicOpEnable()) {
return;
}
scheduler.Record([enable = regs.logic_op.enable](vk::CommandBuffer cmdbuf) {
cmdbuf.SetLogicOpEnableEXT(enable != 0);
scheduler.Record([&, regs](vk::CommandBuffer cmdbuf) {
bool has_float = false;
if (std::any_of(regs.vertex_attrib_format.begin(), regs.vertex_attrib_format.end(),
[&](Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute) {
return IsAnyFloat(attribute);
}))
has_float = true;
cmdbuf.SetLogicOpEnableEXT((regs.logic_op.enable != 0 && !has_float) ? true : false);
});
}

View File

@ -180,6 +180,8 @@ private:
void UpdateVertexInput(Tegra::Engines::Maxwell3D::Regs& regs);
bool IsAnyFloat(Tegra::Engines::Maxwell3D::Regs::VertexAttribute attribute);
Tegra::GPU& gpu;
Tegra::MaxwellDeviceMemoryManager& device_memory;