Temporarily give 80MB to all processes (#715)
This commit is contained in:
@@ -122,7 +122,10 @@ void Kernel::mapMemoryBlock() {
|
||||
}
|
||||
|
||||
if (KernelHandles::isSharedMemHandle(block)) {
|
||||
if (block == KernelHandles::FontSharedMemHandle && addr == 0) addr = 0x18000000;
|
||||
if (block == KernelHandles::FontSharedMemHandle && addr == 0) {
|
||||
addr = getSharedFontVaddr();
|
||||
}
|
||||
|
||||
u8* ptr = mem.mapSharedMemory(block, addr, myPerms, otherPerms); // Map shared memory block
|
||||
|
||||
// Pass pointer to shared memory to the appropriate service
|
||||
@@ -216,3 +219,8 @@ void Kernel::unmapMemoryBlock() {
|
||||
Helpers::warn("Stubbed svcUnmapMemoryBlock!");
|
||||
regs[0] = Result::Success;
|
||||
}
|
||||
|
||||
u32 Kernel::getSharedFontVaddr() {
|
||||
// Place shared font at the very beginning of system FCRAM
|
||||
return mem.getLinearHeapVaddr() + Memory::FCRAM_APPLICATION_SIZE;
|
||||
}
|
||||
@@ -391,7 +391,7 @@ void APTService::setScreencapPostPermission(u32 messagePointer) {
|
||||
void APTService::getSharedFont(u32 messagePointer) {
|
||||
log("APT::GetSharedFont\n");
|
||||
|
||||
constexpr u32 fontVaddr = 0x18000000;
|
||||
const u32 fontVaddr = kernel.getSharedFontVaddr();
|
||||
mem.write32(messagePointer, IPC::responseHeader(0x44, 2, 2));
|
||||
mem.write32(messagePointer + 4, Result::Success);
|
||||
mem.write32(messagePointer + 8, fontVaddr);
|
||||
|
||||
Reference in New Issue
Block a user