void HLE_OSPanic() { std::string error = GetStringVA(); std::string msg = GetStringVA(5); PanicAlert("OSPanic: %s: %s", error.c_str(), msg.c_str()); ERROR_LOG(OSREPORT, "%08x->%08x| OSPanic: %s: %s", LR, PC, error.c_str(), msg.c_str()); NPC = LR; }
void HLE_OSPanic() { std::string Error, Msg; GetStringVA(Error); GetStringVA(Msg, 5); PanicAlert("OSPanic: %s: %s", Error.c_str(), Msg.c_str()); ERROR_LOG(OSREPORT, "%08x->%08x| OSPanic: %s: %s", LR, PC, Error.c_str(), Msg.c_str()); NPC = LR; }
// Generalized func for just printing string pointed to by r3. void HLE_GeneralDebugPrint() { std::string ReportMessage; if(*(u32*)Memory::GetPointer(GPR(3)) > 0x80000000){ GetStringVA(ReportMessage, 4); }else{ GetStringVA(ReportMessage); } NPC = LR; //PanicAlert("(%08x->%08x) %s", LR, PC, ReportMessage.c_str()); NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, ReportMessage.c_str()); }
// Generalized func for just printing string pointed to by r3. void HLE_GeneralDebugPrint() { std::string ReportMessage; if (PowerPC::HostRead_U32(GPR(3)) > 0x80000000) { GetStringVA(ReportMessage, 4); } else { GetStringVA(ReportMessage); } NPC = LR; // PanicAlert("(%08x->%08x) %s", LR, PC, ReportMessage.c_str()); NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, ReportMessage.c_str()); }
// __write_console is slightly abnormal void HLE_write_console() { std::string report_message = GetStringVA(4); NPC = LR; NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, report_message.c_str()); }
// Generalized func for just printing string pointed to by r3. void HLE_GeneralDebugPrint() { std::string report_message; if (PowerPC::HostRead_U32(GPR(3)) > 0x80000000) { report_message = GetStringVA(4); } else { report_message = GetStringVA(); } NPC = LR; NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, report_message.c_str()); }
// __write_console is slightly abnormal void HLE_write_console() { std::string ReportMessage; GetStringVA(ReportMessage, 4); NPC = LR; //PanicAlert("(%08x->%08x) %s", LR, PC, ReportMessage.c_str()); NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, ReportMessage.c_str()); }
// Generalized func for just printing string pointed to by r3. void HLE_GeneralDebugPrintWithInt() { std::string ReportMessage; GetStringVA(ReportMessage, 5); NPC = LR; //PanicAlert("(%08x->%08x) %s", LR, PC, ReportMessage.c_str()); NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, ReportMessage.c_str()); }
void HLE_VPrintf() { std::string ReportMessage; u32 r4 = GPR(4); u32 offset = Memory::Read_U32(r4+8); u32 check = Memory::Read_U32(r4); //NOTICE_LOG(OSREPORT, "Offset: %08X, Check %08X", offset, check); for(int i = 4; i<= 10; i++){ GPR(i) = Memory::Read_U32(offset+(i-(check == 0x01000000? 3 : 2))*4); //NOTICE_LOG(OSREPORT, "r%d: %08X",i, GPR(i)); } GetStringVA(ReportMessage); NPC = LR; NOTICE_LOG(OSREPORT, "%08x->%08x| %s", LR, PC, ReportMessage.c_str()); }