mirror of
https://github.com/gopher64/gopher64.git
synced 2026-07-11 01:25:20 +02:00
+12
-12
@@ -204,7 +204,7 @@ pub fn set_control_registers(device: &mut device::Device, index: u32, mut data:
|
||||
let mut compare_event_diff = (data as u32).wrapping_sub(current_count as u32);
|
||||
|
||||
if compare_event_diff == 0 {
|
||||
compare_event_diff += !0 as u32;
|
||||
compare_event_diff += u32::MAX;
|
||||
}
|
||||
|
||||
device::events::create_event(
|
||||
@@ -237,7 +237,7 @@ pub fn compare_event(device: &mut device::Device) {
|
||||
device::events::create_event(
|
||||
device,
|
||||
device::events::EventType::Compare,
|
||||
device.cpu.next_event_count + (!0 as u32 as u64),
|
||||
device.cpu.next_event_count + (u32::MAX as u64),
|
||||
compare_event,
|
||||
);
|
||||
device::exceptions::check_pending_interrupts(device);
|
||||
@@ -266,15 +266,15 @@ pub fn init(device: &mut device::Device) {
|
||||
COP0_CONTEXT_REG_MASK,
|
||||
COP0_PAGEMASK_REG_MASK,
|
||||
COP0_WIRED_REG_MASK,
|
||||
0, // 7
|
||||
0, // BadVAddr, read only
|
||||
!0 as u32 as u64, // count
|
||||
0, // 7
|
||||
0, // BadVAddr, read only
|
||||
u32::MAX as u64, // count
|
||||
COP0_ENTRYHI_REG_MASK,
|
||||
!0 as u32 as u64, // compare
|
||||
u32::MAX as u64, // compare
|
||||
COP0_STATUS_REG_MASK,
|
||||
COP0_CAUSE_REG_MASK,
|
||||
!0, // EPC
|
||||
0, // previd, read only
|
||||
u64::MAX, // EPC
|
||||
0, // previd, read only
|
||||
COP0_CONFIG_REG_MASK,
|
||||
COP0_LLADDR_REG_MASK,
|
||||
COP0_WATCHLO_REG_MASK,
|
||||
@@ -288,9 +288,9 @@ pub fn init(device: &mut device::Device) {
|
||||
COP0_PARITYERR_REG_MASK,
|
||||
0, // cache error
|
||||
COP0_TAGLO_REG_MASK,
|
||||
0, // taghi
|
||||
!0, // ErrorPC
|
||||
0, // 31
|
||||
0, // taghi
|
||||
u64::MAX, // ErrorPC
|
||||
0, // 31
|
||||
];
|
||||
|
||||
device.cpu.cop0.instrs = [
|
||||
@@ -375,7 +375,7 @@ pub fn init(device: &mut device::Device) {
|
||||
device::events::create_event(
|
||||
device,
|
||||
device::events::EventType::Compare,
|
||||
!0 as u32 as u64,
|
||||
u32::MAX as u64,
|
||||
compare_event,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -505,7 +505,7 @@ pub fn swl(device: &mut device::Device, opcode: u32) {
|
||||
|
||||
let mask;
|
||||
if n == 0 {
|
||||
mask = !0 as u32
|
||||
mask = u32::MAX
|
||||
} else {
|
||||
mask = bits_below_mask(8 * (4 - n)) as u32
|
||||
}
|
||||
@@ -552,7 +552,7 @@ pub fn sdl(device: &mut device::Device, opcode: u32) {
|
||||
|
||||
let mask;
|
||||
if n == 0 {
|
||||
mask = !0 as u64
|
||||
mask = u64::MAX
|
||||
} else {
|
||||
mask = bits_below_mask(8 * (8 - n))
|
||||
}
|
||||
@@ -1060,7 +1060,7 @@ pub fn div(device: &mut device::Device, opcode: u32) {
|
||||
if (device.cpu.gpr[rs(opcode) as usize] as i32) < 0 {
|
||||
device.cpu.lo = 1
|
||||
} else {
|
||||
device.cpu.lo = !0 as u64
|
||||
device.cpu.lo = u64::MAX
|
||||
}
|
||||
device.cpu.hi = se32(device.cpu.gpr[rs(opcode) as usize] as i32)
|
||||
}
|
||||
@@ -1079,7 +1079,7 @@ pub fn divu(device: &mut device::Device, opcode: u32) {
|
||||
% (device.cpu.gpr[rt(opcode) as usize] as u32)) as i32,
|
||||
);
|
||||
} else {
|
||||
device.cpu.lo = !0 as u64;
|
||||
device.cpu.lo = u64::MAX;
|
||||
device.cpu.hi = se32(device.cpu.gpr[rs(opcode) as usize] as u32 as i32)
|
||||
}
|
||||
|
||||
@@ -1112,7 +1112,7 @@ pub fn ddiv(device: &mut device::Device, opcode: u32) {
|
||||
if ((device.cpu.gpr[rs(opcode) as usize]) as i64) < 0 {
|
||||
device.cpu.lo = 1
|
||||
} else {
|
||||
device.cpu.lo = !0 as u64
|
||||
device.cpu.lo = u64::MAX
|
||||
}
|
||||
device.cpu.hi = device.cpu.gpr[rs(opcode) as usize]
|
||||
}
|
||||
@@ -1124,7 +1124,7 @@ pub fn ddivu(device: &mut device::Device, opcode: u32) {
|
||||
device.cpu.lo = device.cpu.gpr[rs(opcode) as usize] / device.cpu.gpr[rt(opcode) as usize];
|
||||
device.cpu.hi = device.cpu.gpr[rs(opcode) as usize] % device.cpu.gpr[rt(opcode) as usize]
|
||||
} else {
|
||||
device.cpu.lo = !0 as u64;
|
||||
device.cpu.lo = u64::MAX;
|
||||
device.cpu.hi = device.cpu.gpr[rs(opcode) as usize]
|
||||
}
|
||||
device::cop0::add_cycles(device, 68);
|
||||
|
||||
@@ -161,7 +161,7 @@ pub fn decode_opcode(device: &mut device::Device, opcode: u32) -> fn(&mut device
|
||||
}
|
||||
|
||||
pub fn init(device: &mut device::Device) {
|
||||
device.rsp.cpu.reciprocals[0] = !0 as u16;
|
||||
device.rsp.cpu.reciprocals[0] = u16::MAX;
|
||||
let mut index = 1;
|
||||
while index < 512 {
|
||||
let a = (index + 512) as u64;
|
||||
|
||||
Reference in New Issue
Block a user