diff --git a/Source/Project64/N64 System/Mips/Mempak.cpp b/Source/Project64/N64 System/Mips/Mempak.cpp index 1948f44f8..1a8fece98 100644 --- a/Source/Project64/N64 System/Mips/Mempak.cpp +++ b/Source/Project64/N64 System/Mips/Mempak.cpp @@ -129,7 +129,7 @@ BYTE Mempak::CalculateCrc(BYTE * DataToCrc) void Mempak::ReadFrom(int Control, BYTE * command) { - int address = (command[3] << 8) | (command[4] & 0xE0); + DWORD address = (command[3] << 8) | (command[4] & 0xE0); if (address < 0x8000) { @@ -149,7 +149,7 @@ void Mempak::ReadFrom(int Control, BYTE * command) void Mempak::WriteTo(int Control, BYTE * command) { DWORD dwWritten; - int address = (command[3] << 8) | (command[4] & 0xE0); + DWORD address = (command[3] << 8) | (command[4] & 0xE0); if (address < 0x8000) { diff --git a/Source/Project64/N64 System/Mips/Rumblepak.cpp b/Source/Project64/N64 System/Mips/Rumblepak.cpp index 441598fdf..51051cc6d 100644 --- a/Source/Project64/N64 System/Mips/Rumblepak.cpp +++ b/Source/Project64/N64 System/Mips/Rumblepak.cpp @@ -12,24 +12,21 @@ void Rumblepak::ReadFrom(BYTE * command) { - unsigned char data; - int address = (command[3] << 8) | (command[4] & 0xE0); + DWORD address = (command[3] << 8) | (command[4] & 0xE0); if ((address >= 0x8000) && (address < 0x9000)) { - data = 0x80; + memset(&command[5], 0x80, 0x20); } else { - data = 0x00; + memset(&command[5], 0x00, 0x20); } - - memset(&command[5], data, 0x20); } void Rumblepak::WriteTo(int Control, BYTE * command) { - int address = (command[3] << 8) | (command[4] & 0xE0); + DWORD address = (command[3] << 8) | (command[4] & 0xE0); if ((address) == 0xC000) {