summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/process_capability.cpp
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2018-12-20 03:14:47 +0100
committerLioncash <mathew1800@gmail.com>2018-12-21 13:05:34 +0100
commit010bc677f36304964e753057740a8ca32a7dcb83 (patch)
treeaddf6c2eb4b90236e61ae038b7717d2f774f85c3 /src/core/hle/kernel/process_capability.cpp
parentkernel/process_capability: Handle interrupt capability flags (diff)
downloadyuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar.gz
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar.bz2
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar.lz
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar.xz
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.tar.zst
yuzu-010bc677f36304964e753057740a8ca32a7dcb83.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/process_capability.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/core/hle/kernel/process_capability.cpp b/src/core/hle/kernel/process_capability.cpp
index e98157f9c..ef506b9f3 100644
--- a/src/core/hle/kernel/process_capability.cpp
+++ b/src/core/hle/kernel/process_capability.cpp
@@ -200,6 +200,8 @@ void ProcessCapabilities::Clear() {
handle_table_size = 0;
kernel_version = 0;
+ program_type = ProgramType::SysModule;
+
is_debuggable = false;
can_force_debug = false;
}
@@ -303,7 +305,12 @@ ResultCode ProcessCapabilities::HandleInterruptFlags(u32 flags) {
}
ResultCode ProcessCapabilities::HandleProgramTypeFlags(u32 flags) {
- // TODO: Implement
+ const u32 reserved = flags >> 17;
+ if (reserved != 0) {
+ return ERR_RESERVED_VALUE;
+ }
+
+ program_type = static_cast<ProgramType>((flags >> 14) & 0b111);
return RESULT_SUCCESS;
}