summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2015-07-19 20:18:57 +0200
committerYuri Kunde Schlesner <yuriks@yuriks.net>2015-08-16 06:03:45 +0200
commita12a30c9e0c059f87649a1f87b76003ee44efe73 (patch)
treeb9f11ddcd80594ff3276cb8823eda4c613d53808 /src/core
parentKernel: Properly implement ControlMemory FREE and COMMIT (diff)
downloadyuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar.gz
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar.bz2
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar.lz
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar.xz
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.tar.zst
yuzu-a12a30c9e0c059f87649a1f87b76003ee44efe73.zip
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/kernel/process.cpp8
-rw-r--r--src/core/hle/kernel/process.h2
2 files changed, 7 insertions, 3 deletions
diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp
index 1db763999..561824305 100644
--- a/src/core/hle/kernel/process.cpp
+++ b/src/core/hle/kernel/process.cpp
@@ -92,9 +92,11 @@ void Process::ParseKernelCaps(const u32* kernel_caps, size_t len) {
mapping.unk_flag = false;
} else if ((type & 0xFE0) == 0xFC0) { // 0x01FF
// Kernel version
- int minor = descriptor & 0xFF;
- int major = (descriptor >> 8) & 0xFF;
- LOG_INFO(Loader, "ExHeader kernel version ignored: %d.%d", major, minor);
+ kernel_version = descriptor & 0xFFFF;
+
+ int minor = kernel_version & 0xFF;
+ int major = (kernel_version >> 8) & 0xFF;
+ LOG_DEBUG(Loader, "ExHeader kernel version: %d.%d", major, minor);
} else {
LOG_ERROR(Loader, "Unhandled kernel caps descriptor: 0x%08X", descriptor);
}
diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h
index 567d5df18..5c7de9044 100644
--- a/src/core/hle/kernel/process.h
+++ b/src/core/hle/kernel/process.h
@@ -104,6 +104,8 @@ public:
/// processes access to specific I/O regions and device memory.
boost::container::static_vector<AddressMapping, 8> address_mappings;
ProcessFlags flags;
+ /// Kernel compatibility version for this process
+ u16 kernel_version = 0;
/// The id of this process
u32 process_id = next_process_id++;