From f5fad4b53e59bef902cae94ca831b41600e5e99f Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Sun, 8 Oct 2023 12:38:12 -0600 Subject: [PATCH] fix multu --- src/device/cpu_instructions.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/device/cpu_instructions.rs b/src/device/cpu_instructions.rs index 24b3921..6f0ff53 100644 --- a/src/device/cpu_instructions.rs +++ b/src/device/cpu_instructions.rs @@ -1037,8 +1037,8 @@ pub fn mult(device: &mut device::Device, opcode: u32) { } pub fn multu(device: &mut device::Device, opcode: u32) { - let result = - device.cpu.gpr[rs(opcode) as usize].wrapping_mul(device.cpu.gpr[rt(opcode) as usize]); + let result = (device.cpu.gpr[rs(opcode) as usize] as u32 as u64) + .wrapping_mul(device.cpu.gpr[rt(opcode) as usize] as u32 as u64); device.cpu.lo = se32((result) as u32 as i32); device.cpu.hi = se32((result >> 32) as u32 as i32);