diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2016-08-28 22:21:24 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-28 22:21:24 -0700 |
commit | 474586bc53eb6fda40fb0db23ea1d50d32af28b6 (patch) | |
tree | 49df9979f3351f3eac26d8a74e25c5181ba35e6c /src/core/memory.cpp | |
parent | 950f6c0c200fd6a91131f088a68f9605ebd925e8 (diff) | |
parent | 1c9612b79155de9538d4b71ff71938786adcea11 (diff) |
Merge pull request #1948 from wwylele/cro++
Implemented CRO
Diffstat (limited to 'src/core/memory.cpp')
-rw-r--r-- | src/core/memory.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/core/memory.cpp b/src/core/memory.cpp index 8c9e5d46d..9aa8c4e5a 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp @@ -280,6 +280,20 @@ u8* GetPointer(const VAddr vaddr) { return nullptr; } +std::string ReadCString(VAddr vaddr, std::size_t max_length) { + std::string string; + string.reserve(max_length); + for (std::size_t i = 0; i < max_length; ++i) { + char c = Read8(vaddr); + if (c == '\0') + break; + string.push_back(c); + ++vaddr; + } + string.shrink_to_fit(); + return string; +} + u8* GetPhysicalPointer(PAddr address) { // TODO(Subv): This call should not go through the application's memory mapping. return GetPointer(PhysicalToVirtualAddress(address)); |