From 4e057a2a948a1f53b5ae814c632ed34296eac74b Mon Sep 17 00:00:00 2001 From: Sam M W Date: Fri, 21 Oct 2022 06:40:56 +0100 Subject: [PATCH] remove unused function `decrement_memory` --- src/cpu.rs | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/src/cpu.rs b/src/cpu.rs index d73a735..dc6ca22 100644 --- a/src/cpu.rs +++ b/src/cpu.rs @@ -689,24 +689,6 @@ impl CPU { ); } - fn decrement_memory(&mut self, addr: Address) { - let value_new = self.memory.get_byte(addr).wrapping_sub(1); - - self.memory.set_byte(addr, value_new); - - let is_negative = (value_new as i8) < 0; - let is_zero = value_new == 0; - - self.registers.status.set_with_mask( - Status::PS_NEGATIVE | Status::PS_ZERO, - Status::new(StatusArgs { - negative: is_negative, - zero: is_zero, - ..StatusArgs::none() - }), - ); - } - fn jump(&mut self, addr: Address) { self.registers.program_counter = addr; } @@ -1062,31 +1044,31 @@ mod tests { cpu.memory.set_byte(addr, 5); - cpu.decrement_memory(addr); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); assert_eq!(cpu.memory.get_byte(addr), 4); assert!(!cpu.registers.status.contains(Status::PS_ZERO)); assert!(!cpu.registers.status.contains(Status::PS_NEGATIVE)); - cpu.decrement_memory(addr); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); assert_eq!(cpu.memory.get_byte(addr), 3); assert!(!cpu.registers.status.contains(Status::PS_ZERO)); assert!(!cpu.registers.status.contains(Status::PS_NEGATIVE)); - cpu.decrement_memory(addr); - cpu.decrement_memory(addr); - cpu.decrement_memory(addr); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); assert_eq!(cpu.memory.get_byte(addr), 0); assert!(cpu.registers.status.contains(Status::PS_ZERO)); assert!(!cpu.registers.status.contains(Status::PS_NEGATIVE)); - cpu.decrement_memory(addr); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); assert_eq!(cpu.memory.get_byte(addr) as i8, -1); assert!(!cpu.registers.status.contains(Status::PS_ZERO)); assert!(cpu.registers.status.contains(Status::PS_NEGATIVE)); cpu.memory.set_byte(addr, 0); - cpu.decrement_memory(addr); + cpu.execute_instruction((Instruction::DEC, OpInput::UseAddress(addr))); assert_eq!(cpu.memory.get_byte(addr), 0xff); assert!(!cpu.registers.status.contains(Status::PS_ZERO)); assert!(cpu.registers.status.contains(Status::PS_NEGATIVE));