aboutsummaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorswurl <swurl@swurl.xyz>2025-05-11 23:58:25 +0000
committercrueter <crueter@noreply.localhost>2025-05-11 23:58:25 +0000
commit7e943732bf025bb7ead5ee3e104b88c020f9f422 (patch)
tree0f1a403b8f44190c90f9b4fab0a8de188237f735 /src/core
parent5bbb9eba32734219cd9b57dfeefaa028b1e8ab02 (diff)
fix a large variety of issues (#101)
- GLASM/SPIR-V mixup on Android - potential greenscreen fix (thx suyu) - save memory layout and add 10gb/12gb options - potential samsung gaming hub fix - fix layout of controller UI - fix default settings to sensible defaults. - note to TotK that you should increase memory layout - Error checking for Windows linking - fix an IDE error - improved migration system w/threading and busy indicator - disabled citron migration for now - replaced some user-facing legacy strings with eden - Added 10GB and 12GB DRAM layouts - Fix Android black screen issues - add discord link & update FAQ/Quickstart - update links in about page - add back rich presence - add Don't show again for desktop pre alpha banner - add citron warning to android and polaris to desktop Signed-off-by: swurl <swurl@swurl.xyz> Co-authored-by: Pavel Barabanov <pavelbarabanov94@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/101 Co-authored-by: swurl <swurl@swurl.xyz> Co-committed-by: swurl <swurl@swurl.xyz>
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp20
-rw-r--r--src/core/hle/kernel/board/nintendo/nx/secure_monitor.h4
-rw-r--r--src/core/hle/service/am/service/common_state_getter.cpp13
-rw-r--r--src/core/hle/service/am/service/common_state_getter.h1
4 files changed, 25 insertions, 13 deletions
diff --git a/src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp b/src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp
index 37fa39a734..f62f3e4767 100644
--- a/src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp
+++ b/src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp
@@ -48,6 +48,10 @@ u32 GetMemorySizeForInit() {
return Smc::MemorySize_6GB;
case Settings::MemoryLayout::Memory_8Gb:
return Smc::MemorySize_8GB;
+ case Settings::MemoryLayout::Memory_10Gb:
+ return Smc::MemorySize_10GB;
+ case Settings::MemoryLayout::Memory_12Gb:
+ return Smc::MemorySize_12GB;
}
return Smc::MemorySize_4GB;
}
@@ -60,6 +64,10 @@ Smc::MemoryArrangement GetMemoryArrangeForInit() {
return Smc::MemoryArrangement_6GB;
case Settings::MemoryLayout::Memory_8Gb:
return Smc::MemoryArrangement_8GB;
+ case Settings::MemoryLayout::Memory_10Gb:
+ return Smc::MemoryArrangement_10GB;
+ case Settings::MemoryLayout::Memory_12Gb:
+ return Smc::MemoryArrangement_12GB;
}
return Smc::MemoryArrangement_4GB;
}
@@ -79,6 +87,10 @@ size_t KSystemControl::Init::GetIntendedMemorySize() {
return 6_GiB;
case Smc::MemorySize_8GB:
return 8_GiB;
+ case Smc::MemorySize_10GB:
+ return 10_GiB;
+ case Smc::MemorySize_12GB:
+ return 12_GiB;
}
}
@@ -114,6 +126,10 @@ std::size_t KSystemControl::Init::GetApplicationPoolSize() {
case Smc::MemoryArrangement_8GB:
// Real kernel sets this to 4916_MiB. We are not debugging applets.
return 6547_MiB;
+ case Smc::MemoryArrangement_10GB:
+ return 8178_MiB;
+ case Smc::MemoryArrangement_12GB:
+ return 9809_MiB;
}
}();
@@ -139,6 +155,10 @@ size_t KSystemControl::Init::GetAppletPoolSize() {
case Smc::MemoryArrangement_8GB:
//! Real kernel sets this to 2193_MiB. We are not debugging applets.
return 562_MiB;
+ case Smc::MemoryArrangement_10GB:
+ return 562_MiB;
+ case Smc::MemoryArrangement_12GB:
+ return 562_MiB;
}
}();
diff --git a/src/core/hle/kernel/board/nintendo/nx/secure_monitor.h b/src/core/hle/kernel/board/nintendo/nx/secure_monitor.h
index b0e4123f08..ffec06f2d5 100644
--- a/src/core/hle/kernel/board/nintendo/nx/secure_monitor.h
+++ b/src/core/hle/kernel/board/nintendo/nx/secure_monitor.h
@@ -9,6 +9,8 @@ enum MemorySize {
MemorySize_4GB = 0,
MemorySize_6GB = 1,
MemorySize_8GB = 2,
+ MemorySize_10GB = 3,
+ MemorySize_12GB = 4,
};
enum MemoryArrangement {
@@ -18,6 +20,8 @@ enum MemoryArrangement {
MemoryArrangement_6GB = 3,
MemoryArrangement_6GBForAppletDev = 4,
MemoryArrangement_8GB = 5,
+ MemoryArrangement_10GB = 6,
+ MemoryArrangement_12GB = 7,
};
} // namespace Kernel::Board::Nintendo::Nx::Smc
diff --git a/src/core/hle/service/am/service/common_state_getter.cpp b/src/core/hle/service/am/service/common_state_getter.cpp
index c445e5e776..c179102f76 100644
--- a/src/core/hle/service/am/service/common_state_getter.cpp
+++ b/src/core/hle/service/am/service/common_state_getter.cpp
@@ -38,7 +38,7 @@ ICommonStateGetter::ICommonStateGetter(Core::System& system_, std::shared_ptr<Ap
{30, nullptr, "GetHomeButtonReaderLockAccessor"},
{31, D<&ICommonStateGetter::GetReaderLockAccessorEx>, "GetReaderLockAccessorEx"},
{32, D<&ICommonStateGetter::GetWriterLockAccessorEx>, "GetWriterLockAccessorEx"},
- {40, D<&ICommonStateGetter::GetCradleFwVersion>, "GetCradleFwVersion"},
+ {40, nullptr, "GetCradleFwVersion"},
{50, D<&ICommonStateGetter::IsVrModeEnabled>, "IsVrModeEnabled"},
{51, D<&ICommonStateGetter::SetVrModeEnabled>, "SetVrModeEnabled"},
{52, D<&ICommonStateGetter::SetLcdBacklighOffEnabled>, "SetLcdBacklighOffEnabled"},
@@ -172,17 +172,6 @@ Result ICommonStateGetter::GetBootMode(Out<PM::SystemBootMode> out_boot_mode) {
R_SUCCEED();
}
-Result ICommonStateGetter::GetCradleFwVersion(OutArray<uint32_t, 4> out_version) {
- LOG_DEBUG(Service_AM, "(STUBBED) called");
-
- out_version[0] = 0;
- out_version[1] = 0;
- out_version[2] = 0;
- out_version[3] = 0;
-
- R_SUCCEED();
-}
-
Result ICommonStateGetter::IsVrModeEnabled(Out<bool> out_is_vr_mode_enabled) {
LOG_DEBUG(Service_AM, "called");
diff --git a/src/core/hle/service/am/service/common_state_getter.h b/src/core/hle/service/am/service/common_state_getter.h
index a326e11053..0cafbfe176 100644
--- a/src/core/hle/service/am/service/common_state_getter.h
+++ b/src/core/hle/service/am/service/common_state_getter.h
@@ -39,7 +39,6 @@ private:
Result GetHdcpAuthenticationStateChangeEvent(OutCopyHandle<Kernel::KReadableEvent> out_event);
Result GetOperationMode(Out<OperationMode> out_operation_mode);
Result GetPerformanceMode(Out<APM::PerformanceMode> out_performance_mode);
- Result GetCradleFwVersion(OutArray<uint32_t, 4> out_version);
Result GetBootMode(Out<PM::SystemBootMode> out_boot_mode);
Result IsVrModeEnabled(Out<bool> out_is_vr_mode_enabled);
Result SetVrModeEnabled(bool is_vr_mode_enabled);