diff options
Diffstat (limited to 'src/core/hle/kernel')
| -rw-r--r-- | src/core/hle/kernel/board/nintendo/nx/k_system_control.cpp | 22 | ||||
| -rw-r--r-- | src/core/hle/kernel/k_process.cpp | 3 |
2 files changed, 20 insertions, 5 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 49bdc671e..4cfdf4558 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 | |||
| @@ -35,13 +35,27 @@ namespace { | |||
| 35 | using namespace Common::Literals; | 35 | using namespace Common::Literals; |
| 36 | 36 | ||
| 37 | u32 GetMemorySizeForInit() { | 37 | u32 GetMemorySizeForInit() { |
| 38 | return Settings::values.use_unsafe_extended_memory_layout ? Smc::MemorySize_8GB | 38 | switch (Settings::values.memory_layout_mode.GetValue()) { |
| 39 | : Smc::MemorySize_4GB; | 39 | case Settings::MemoryLayout::Memory_4Gb: |
| 40 | return Smc::MemorySize_4GB; | ||
| 41 | case Settings::MemoryLayout::Memory_6Gb: | ||
| 42 | return Smc::MemorySize_6GB; | ||
| 43 | case Settings::MemoryLayout::Memory_8Gb: | ||
| 44 | return Smc::MemorySize_8GB; | ||
| 45 | } | ||
| 46 | return Smc::MemorySize_4GB; | ||
| 40 | } | 47 | } |
| 41 | 48 | ||
| 42 | Smc::MemoryArrangement GetMemoryArrangeForInit() { | 49 | Smc::MemoryArrangement GetMemoryArrangeForInit() { |
| 43 | return Settings::values.use_unsafe_extended_memory_layout ? Smc::MemoryArrangement_8GB | 50 | switch (Settings::values.memory_layout_mode.GetValue()) { |
| 44 | : Smc::MemoryArrangement_4GB; | 51 | case Settings::MemoryLayout::Memory_4Gb: |
| 52 | return Smc::MemoryArrangement_4GB; | ||
| 53 | case Settings::MemoryLayout::Memory_6Gb: | ||
| 54 | return Smc::MemoryArrangement_6GB; | ||
| 55 | case Settings::MemoryLayout::Memory_8Gb: | ||
| 56 | return Smc::MemoryArrangement_8GB; | ||
| 57 | } | ||
| 58 | return Smc::MemoryArrangement_4GB; | ||
| 45 | } | 59 | } |
| 46 | } // namespace | 60 | } // namespace |
| 47 | 61 | ||
diff --git a/src/core/hle/kernel/k_process.cpp b/src/core/hle/kernel/k_process.cpp index 44c7cb22f..e573e2a57 100644 --- a/src/core/hle/kernel/k_process.cpp +++ b/src/core/hle/kernel/k_process.cpp | |||
| @@ -81,7 +81,8 @@ Result KProcess::Initialize(KProcess* process, Core::System& system, std::string | |||
| 81 | process->m_capabilities.InitializeForMetadatalessProcess(); | 81 | process->m_capabilities.InitializeForMetadatalessProcess(); |
| 82 | process->m_is_initialized = true; | 82 | process->m_is_initialized = true; |
| 83 | 83 | ||
| 84 | std::mt19937 rng(Settings::values.rng_seed.GetValue().value_or(std::time(nullptr))); | 84 | std::mt19937 rng(Settings::values.rng_seed_enabled ? Settings::values.rng_seed.GetValue() |
| 85 | : static_cast<u32>(std::time(nullptr))); | ||
| 85 | std::uniform_int_distribution<u64> distribution; | 86 | std::uniform_int_distribution<u64> distribution; |
| 86 | std::generate(process->m_random_entropy.begin(), process->m_random_entropy.end(), | 87 | std::generate(process->m_random_entropy.begin(), process->m_random_entropy.end(), |
| 87 | [&] { return distribution(rng); }); | 88 | [&] { return distribution(rng); }); |