[PTM] Stub ConfigureNew3DSCPU

This commit is contained in:
wheremyfoodat 2023-04-21 01:50:19 +03:00
parent ca7ee380ec
commit d0db2eefce
3 changed files with 12 additions and 2 deletions

View file

@ -10,6 +10,7 @@ class PTMService {
MAKE_LOG_FUNCTION(log, ptmLogger)
// Service commands
void configureNew3DSCPU(u32 messagePointer);
void getStepHistory(u32 messagePointer);
void getTotalStepCount(u32 messagePointer);

View file

@ -4,7 +4,8 @@
namespace PTMCommands {
enum : u32 {
GetStepHistory = 0x000B00C2,
GetTotalStepCount = 0x000C0000
GetTotalStepCount = 0x000C0000,
ConfigureNew3DSCPU = 0x08180040
};
}
@ -19,6 +20,7 @@ void PTMService::reset() {}
void PTMService::handleSyncRequest(u32 messagePointer) {
const u32 command = mem.read32(messagePointer);
switch (command) {
case PTMCommands::ConfigureNew3DSCPU: configureNew3DSCPU(messagePointer); break;
case PTMCommands::GetStepHistory: getStepHistory(messagePointer); break;
case PTMCommands::GetTotalStepCount: getTotalStepCount(messagePointer); break;
default: Helpers::panic("PTM service requested. Command: %08X\n", command);
@ -36,4 +38,10 @@ void PTMService::getTotalStepCount(u32 messagePointer) {
mem.write32(messagePointer, IPC::responseHeader(0xC, 2, 0));
mem.write32(messagePointer + 4, Result::Success);
mem.write32(messagePointer + 8, 3); // We walk a lot
}
void PTMService::configureNew3DSCPU(u32 messagePointer) {
log("PTM::ConfigureNew3DSCPU [stubbed]\n");
mem.write32(messagePointer, IPC::responseHeader(0x818, 1, 0));
mem.write32(messagePointer + 4, Result::Success);
}

View file

@ -104,7 +104,8 @@ static std::map<std::string, Handle> serviceMap = {
{ "mic:u", KernelHandles::MIC },
{ "ndm:u", KernelHandles::NDM },
{ "nim:aoc", KernelHandles::NIM },
{ "ptm:u", KernelHandles::PTM },
{ "ptm:u", KernelHandles::PTM }, // TODO: ptm:u and ptm:sysm have very different command sets
{ "ptm:sysm", KernelHandles::PTM },
{ "y2r:u", KernelHandles::Y2R }
};