unsigned int __fastcall hack_read_long(unsigned int a) { a &= 0xfffff; if (a == speedhack_address) { unsigned int pc = Sh2GetPC(0); if (pc == speedhack_pc[0]) { Sh2StopRun(); } else if (pc == speedhack_pc[1]) { Sh2StopRun(); } else if (pc == speedhack_pc[2]) { Sh2StopRun(); } else if (pc == speedhack_pc[3]) { Sh2StopRun(); } } return *((unsigned int*)(DrvSh2RAM + a)); }
unsigned int __fastcall CyvernReadLong(unsigned int a) { if (a >= 0x02f00000 && a <= 0x02f000ff) { unsigned int Offset = (a - 0x02f00000) / 4; return SknsHitRead(Offset); } if (a >= 0x06000000 && a <= 0x06ffffff) { if (a >= 0x06000028 && a <= 0x0600002b) bprintf(PRINT_NORMAL, _T("Read Long Bios Skip %x, %x\n"), a, Sh2GetPC(0) / 4); unsigned int Offset = (a - 0x06000000) / 4; UINT32 *Ram = (UINT32*)DrvPrgRam; return Ram[Offset]; } switch (a) { default: { bprintf(PRINT_NORMAL, _T("Read long => %08X\n"), a); } } return 0; }
unsigned short __fastcall CyvernReadWord(unsigned int a) { if (a >= 0x06000000 && a <= 0x06ffffff) { if (a >= 0x06000028 && a <= 0x0600002b) bprintf(PRINT_NORMAL, _T("Read Word Bios Skip %x, %x\n"), a, Sh2GetPC(0)); unsigned int Offset = (a - 0x06000000) / 2; UINT16 *Ram = (UINT16*)DrvPrgRam; return Ram[Offset]; } switch (a) { default: { bprintf(PRINT_NORMAL, _T("Read word => %08X\n"), a); } } return 0; }