From d2043dc6fbcbccf2ab41c90334961b89662b775e Mon Sep 17 00:00:00 2001 From: Sam M W Date: Mon, 3 Apr 2023 21:04:34 +0100 Subject: [PATCH] less verbosity, more expliciteness --- src/cpu.rs | 68 ++++++++++++++++++++++++++---------------------------- 1 file changed, 33 insertions(+), 35 deletions(-) diff --git a/src/cpu.rs b/src/cpu.rs index f8a32b3..04a1a10 100644 --- a/src/cpu.rs +++ b/src/cpu.rs @@ -937,11 +937,12 @@ impl core::fmt::Debug for CPU { mod tests { use super::*; + use crate::memory::Memory as Ram; use num::range_inclusive; #[test] fn dont_panic_for_overflow() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.add_with_carry(-128); assert_eq!(cpu.registers.accumulator, -128); cpu.add_with_carry(-128); @@ -955,7 +956,7 @@ mod tests { #[cfg_attr(feature = "decimal_mode", test)] fn decimal_add_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.status.or(Status::PS_DECIMAL_MODE); cpu.add_with_carry(0x09); @@ -982,7 +983,7 @@ mod tests { #[cfg_attr(feature = "decimal_mode", test)] fn decimal_subtract_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers .status .or(Status::PS_DECIMAL_MODE | Status::PS_CARRY); @@ -1004,7 +1005,7 @@ mod tests { #[test] fn add_with_carry_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.add_with_carry(1); assert_eq!(cpu.registers.accumulator, 1); @@ -1027,7 +1028,7 @@ mod tests { assert!(!cpu.registers.status.contains(Status::PS_NEGATIVE)); assert!(!cpu.registers.status.contains(Status::PS_OVERFLOW)); - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.add_with_carry(127); assert_eq!(cpu.registers.accumulator, 127); @@ -1058,7 +1059,7 @@ mod tests { assert!(cpu.registers.status.contains(Status::PS_NEGATIVE)); assert!(!cpu.registers.status.contains(Status::PS_OVERFLOW)); - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.add_with_carry(127); assert_eq!(cpu.registers.accumulator, 127); @@ -1074,7 +1075,7 @@ mod tests { assert!(cpu.registers.status.contains(Status::PS_NEGATIVE)); assert!(cpu.registers.status.contains(Status::PS_OVERFLOW)); - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.status.or(Status::PS_CARRY); cpu.add_with_carry(-1); assert_eq!(cpu.registers.accumulator, 0); @@ -1083,7 +1084,7 @@ mod tests { #[test] fn and_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.accumulator = 0; cpu.and(-1); @@ -1112,7 +1113,7 @@ mod tests { #[test] fn subtract_with_carry_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((Instruction::SEC, OpInput::UseImplied)); cpu.registers.accumulator = 0; @@ -1172,7 +1173,7 @@ mod tests { #[test] fn decrement_memory_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); let addr: u16 = 0xA1B2; cpu.memory.set_byte(addr, 5); @@ -1209,7 +1210,7 @@ mod tests { #[test] fn decrement_x_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.index_x = 0x80; cpu.execute_instruction((Instruction::DEX, OpInput::UseImplied)); assert_eq!(cpu.registers.index_x, 127); @@ -1219,7 +1220,7 @@ mod tests { #[test] fn decrement_y_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.index_y = 0x80; cpu.execute_instruction((Instruction::DEY, OpInput::UseImplied)); assert_eq!(cpu.registers.index_y, 127); @@ -1231,7 +1232,7 @@ mod tests { fn logical_shift_right_test() { // Testing UseImplied version (which targets the accumulator) only, for now - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((Instruction::LDA, OpInput::UseImmediate(0))); cpu.execute_instruction((Instruction::LSR, OpInput::UseImplied)); assert_eq!(cpu.registers.accumulator, 0); @@ -1267,7 +1268,7 @@ mod tests { #[test] fn dec_x_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((Instruction::DEX, OpInput::UseImplied)); assert_eq!(cpu.registers.index_x, 0xff); @@ -1312,7 +1313,7 @@ mod tests { #[test] fn jump_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); let addr: u16 = 0xA1B1; cpu.jump(addr); @@ -1321,7 +1322,7 @@ mod tests { #[test] fn branch_if_carry_clear_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((Instruction::SEC, OpInput::UseImplied)); cpu.branch_if_carry_clear(0xABCD); @@ -1334,7 +1335,7 @@ mod tests { #[test] fn branch_if_carry_set_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((Instruction::CLC, OpInput::UseImplied)); cpu.branch_if_carry_set(0xABCD); @@ -1347,7 +1348,7 @@ mod tests { #[test] fn branch_if_equal_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.branch_if_equal(0xABCD); assert_eq!(cpu.registers.program_counter, (0)); @@ -1360,7 +1361,7 @@ mod tests { #[test] fn branch_if_minus_test() { { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); let registers_before = cpu.registers; cpu.branch_if_minus(0xABCD); @@ -1369,7 +1370,7 @@ mod tests { } { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.status.or(Status::PS_NEGATIVE); let registers_before = cpu.registers; @@ -1382,7 +1383,7 @@ mod tests { #[test] fn branch_if_positive_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.status.insert(Status::PS_NEGATIVE); cpu.branch_if_positive(0xABCD); @@ -1395,7 +1396,7 @@ mod tests { #[test] fn branch_if_overflow_clear_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.status.insert(Status::PS_OVERFLOW); cpu.branch_if_overflow_clear(0xABCD); @@ -1408,7 +1409,7 @@ mod tests { #[test] fn branch_across_end_of_address_space() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.registers.program_counter = 0xffff; cpu.registers.status.insert(Status::PS_OVERFLOW); @@ -1418,7 +1419,7 @@ mod tests { #[test] fn branch_if_overflow_set_test() { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.branch_if_overflow_set(0xABCD); assert_eq!(cpu.registers.program_counter, (0)); @@ -1431,9 +1432,9 @@ mod tests { #[cfg(test)] fn compare_test_helper(compare: &mut F, load_instruction: Instruction) where - F: FnMut(&mut CPU, u8), + F: FnMut(&mut CPU, u8), { - let mut cpu = CPU::new(crate::memory::Memory::new()); + let mut cpu = CPU::new(Ram::new()); cpu.execute_instruction((load_instruction, OpInput::UseImmediate(127))); @@ -1481,7 +1482,7 @@ mod tests { #[test] fn compare_with_a_register_test() { compare_test_helper( - &mut |cpu: &mut CPU, val: u8| { + &mut |cpu: &mut CPU, val: u8| { cpu.compare_with_a_register(val); }, Instruction::LDA, @@ -1491,7 +1492,7 @@ mod tests { #[test] fn compare_with_x_register_test() { compare_test_helper( - &mut |cpu: &mut CPU, val: u8| { + &mut |cpu: &mut CPU, val: u8| { cpu.compare_with_x_register(val); }, Instruction::LDX, @@ -1501,7 +1502,7 @@ mod tests { #[test] fn compare_with_y_register_test() { compare_test_helper( - &mut |cpu: &mut CPU, val: u8| { + &mut |cpu: &mut CPU, val: u8| { cpu.compare_with_y_register(val); }, Instruction::LDY, @@ -1510,8 +1511,7 @@ mod tests { #[test] fn exclusive_or_test() { - use crate::memory::Memory; - let mut cpu = CPU::new(Memory::new()); + let mut cpu = CPU::new(Ram::new()); for a_before in range_inclusive(0u8, 255u8) { for val in range_inclusive(0u8, 255u8) { @@ -1539,8 +1539,7 @@ mod tests { #[test] fn inclusive_or_test() { - use crate::memory::Memory; - let mut cpu = CPU::new(Memory::new()); + let mut cpu = CPU::new(Ram::new()); for a_before in range_inclusive(0u8, 255u8) { for val in range_inclusive(0u8, 255u8) { @@ -1568,8 +1567,7 @@ mod tests { #[test] fn stack_underflow() { - use crate::memory::Memory; - let mut cpu = CPU::new(Memory::new()); + let mut cpu = CPU::new(Ram::new()); let _val: u8 = cpu.pull_from_stack(); } }