early-access version 4044

This commit is contained in:
pineappleEA 2024-01-03 01:45:11 +01:00
parent 72dab394e8
commit 3db0022082
6 changed files with 15 additions and 16 deletions

View file

@ -1,7 +1,7 @@
yuzu emulator early access yuzu emulator early access
============= =============
This is the source code for early-access 4042. This is the source code for early-access 4044.
## Legal Notice ## Legal Notice

View file

@ -149,7 +149,7 @@ class AddonsFragment : Fragment() {
} }
val isValid = externalAddonDirectory.listFiles() val isValid = externalAddonDirectory.listFiles()
.any { AddonUtil.validAddonDirectories.contains(it.name) } .any { AddonUtil.validAddonDirectories.contains(it.name?.lowercase()) }
val errorMessage = MessageDialogFragment.newInstance( val errorMessage = MessageDialogFragment.newInstance(
requireActivity(), requireActivity(),
titleId = R.string.invalid_directory, titleId = R.string.invalid_directory,

View file

@ -30,7 +30,6 @@ import org.yuzu.yuzu_emu.NativeLibrary.StickType
import org.yuzu.yuzu_emu.R import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.features.settings.model.BooleanSetting import org.yuzu.yuzu_emu.features.settings.model.BooleanSetting
import org.yuzu.yuzu_emu.features.settings.model.IntSetting import org.yuzu.yuzu_emu.features.settings.model.IntSetting
import org.yuzu.yuzu_emu.features.settings.model.Settings
import org.yuzu.yuzu_emu.overlay.model.OverlayControl import org.yuzu.yuzu_emu.overlay.model.OverlayControl
import org.yuzu.yuzu_emu.overlay.model.OverlayControlData import org.yuzu.yuzu_emu.overlay.model.OverlayControlData
import org.yuzu.yuzu_emu.overlay.model.OverlayLayout import org.yuzu.yuzu_emu.overlay.model.OverlayLayout
@ -302,7 +301,7 @@ class InputOverlay(context: Context, attrs: AttributeSet?) :
MotionEvent.ACTION_POINTER_UP -> if (dpadBeingConfigured === dpad) { MotionEvent.ACTION_POINTER_UP -> if (dpadBeingConfigured === dpad) {
// Persist button position by saving new place. // Persist button position by saving new place.
saveControlPosition( saveControlPosition(
Settings.PREF_BUTTON_DPAD, OverlayControl.COMBINED_DPAD.id,
dpadBeingConfigured!!.bounds.centerX(), dpadBeingConfigured!!.bounds.centerX(),
dpadBeingConfigured!!.bounds.centerY(), dpadBeingConfigured!!.bounds.centerY(),
layout layout

View file

@ -1258,11 +1258,11 @@ ThreadState KThread::RequestTerminate() {
// Change the thread's priority to be higher than any system thread's. // Change the thread's priority to be higher than any system thread's.
this->IncreaseBasePriority(TerminatingThreadPriority); this->IncreaseBasePriority(TerminatingThreadPriority);
// If the thread is runnable, send a termination interrupt to other cores. // If the thread is runnable, send a termination interrupt to cores it may be running on.
if (this->GetState() == ThreadState::Runnable) { if (this->GetState() == ThreadState::Runnable) {
if (const u64 core_mask = m_physical_affinity_mask.GetAffinityMask() & // NOTE: We do not mask the "current core", because this code may not actually be
~(1ULL << GetCurrentCoreId(m_kernel)); // executing from the thread representing the "current core".
core_mask != 0) { if (const u64 core_mask = m_physical_affinity_mask.GetAffinityMask(); core_mask != 0) {
Kernel::KInterruptManager::SendInterProcessorInterrupt(m_kernel, core_mask); Kernel::KInterruptManager::SendInterProcessorInterrupt(m_kernel, core_mask);
} }
} }

View file

@ -989,7 +989,7 @@ void IHidServer::SetSupportedNpadStyleSet(HLERequestContext& ctx) {
Core::HID::NpadStyleTag style_tag{parameters.supported_style_set}; Core::HID::NpadStyleTag style_tag{parameters.supported_style_set};
const auto revision = npad->GetRevision(parameters.applet_resource_user_id); const auto revision = npad->GetRevision(parameters.applet_resource_user_id);
if (style_tag.gamecube != 0 && revision < NpadRevision::Revision3) { if (style_tag.palma != 0 && revision < NpadRevision::Revision3) {
// GetResourceManager()->GetPalma()->EnableBoostMode(parameters.applet_resource_user_id, // GetResourceManager()->GetPalma()->EnableBoostMode(parameters.applet_resource_user_id,
// true); // true);
} }
@ -1346,6 +1346,7 @@ void IHidServer::SwapNpadAssignment(HLERequestContext& ctx) {
IPC::ResponseBuilder rb{ctx, 2}; IPC::ResponseBuilder rb{ctx, 2};
rb.Push(result); rb.Push(result);
} }
void IHidServer::IsUnintendedHomeButtonInputProtectionEnabled(HLERequestContext& ctx) { void IHidServer::IsUnintendedHomeButtonInputProtectionEnabled(HLERequestContext& ctx) {
IPC::RequestParser rp{ctx}; IPC::RequestParser rp{ctx};
struct Parameters { struct Parameters {
@ -1357,8 +1358,8 @@ void IHidServer::IsUnintendedHomeButtonInputProtectionEnabled(HLERequestContext&
const auto parameters{rp.PopRaw<Parameters>()}; const auto parameters{rp.PopRaw<Parameters>()};
LOG_WARNING(Service_HID, "(STUBBED) called, npad_id={}, applet_resource_user_id={}", LOG_INFO(Service_HID, "called, npad_id={}, applet_resource_user_id={}", parameters.npad_id,
parameters.npad_id, parameters.applet_resource_user_id); parameters.applet_resource_user_id);
if (!IsNpadIdValid(parameters.npad_id)) { if (!IsNpadIdValid(parameters.npad_id)) {
IPC::ResponseBuilder rb{ctx, 3}; IPC::ResponseBuilder rb{ctx, 3};
@ -1373,7 +1374,7 @@ void IHidServer::IsUnintendedHomeButtonInputProtectionEnabled(HLERequestContext&
IPC::ResponseBuilder rb{ctx, 3}; IPC::ResponseBuilder rb{ctx, 3};
rb.Push(result); rb.Push(result);
rb.Push<u8>(is_enabled); rb.Push(is_enabled);
} }
void IHidServer::EnableUnintendedHomeButtonInputProtection(HLERequestContext& ctx) { void IHidServer::EnableUnintendedHomeButtonInputProtection(HLERequestContext& ctx) {
@ -1388,8 +1389,7 @@ void IHidServer::EnableUnintendedHomeButtonInputProtection(HLERequestContext& ct
const auto parameters{rp.PopRaw<Parameters>()}; const auto parameters{rp.PopRaw<Parameters>()};
LOG_WARNING(Service_HID, LOG_INFO(Service_HID, "called, is_enabled={}, npad_id={}, applet_resource_user_id={}",
"(STUBBED) called, is_enabled={}, npad_id={}, applet_resource_user_id={}",
parameters.is_enabled, parameters.npad_id, parameters.applet_resource_user_id); parameters.is_enabled, parameters.npad_id, parameters.applet_resource_user_id);
if (!IsNpadIdValid(parameters.npad_id)) { if (!IsNpadIdValid(parameters.npad_id)) {

View file

@ -94,7 +94,7 @@ void DirectConnectWindow::Connect() {
// Store settings // Store settings
UISettings::values.multiplayer_nickname = ui->nickname->text().toStdString(); UISettings::values.multiplayer_nickname = ui->nickname->text().toStdString();
UISettings::values.multiplayer_ip = ui->ip->text().toStdString(); UISettings::values.multiplayer_ip = ui->ip->text().toStdString();
if (ui->port->isModified() && !ui->port->text().isEmpty()) { if (!ui->port->text().isEmpty()) {
UISettings::values.multiplayer_port = ui->port->text().toInt(); UISettings::values.multiplayer_port = ui->port->text().toInt();
} else { } else {
UISettings::values.multiplayer_port = UISettings::values.multiplayer_port.GetDefault(); UISettings::values.multiplayer_port = UISettings::values.multiplayer_port.GetDefault();