From fe62834154db3a0ccaa8984e7228e6293fe91f8e Mon Sep 17 00:00:00 2001 From: Matthias Endler Date: Thu, 25 Oct 2018 23:46:45 +0200 Subject: [PATCH] Make changes to use no_std --- src/address.rs | 2 +- src/cpu.rs | 16 +++++----------- src/lib.rs | 4 +++- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/address.rs b/src/address.rs index 0479a96..a5722be 100644 --- a/src/address.rs +++ b/src/address.rs @@ -25,7 +25,7 @@ // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE // POSSIBILITY OF SUCH DAMAGE. -use std::ops::Add; +use core::ops::Add; // The idea here is that it doesn't make sense to add two addresses, but it // does make sense to add an address and an "address-difference". (If this diff --git a/src/cpu.rs b/src/cpu.rs index 2bdca43..631a79d 100644 --- a/src/cpu.rs +++ b/src/cpu.rs @@ -25,15 +25,14 @@ // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE // POSSIBILITY OF SUCH DAMAGE. -use std; - use address::{Address, AddressDiff}; use instruction; use instruction::{DecodedInstr, Instruction, OpInput}; use memory::Memory; use registers::{Registers, StackPointer, Status, StatusArgs}; -use registers::{PS_CARRY, PS_DECIMAL_MODE, PS_DISABLE_INTERRUPTS, PS_NEGATIVE, PS_OVERFLOW, - PS_ZERO}; +use registers::{ + PS_CARRY, PS_DECIMAL_MODE, PS_DISABLE_INTERRUPTS, PS_NEGATIVE, PS_OVERFLOW, PS_ZERO, +}; #[derive(Clone)] pub struct CPU { @@ -758,8 +757,8 @@ impl CPU { } } -impl std::fmt::Debug for CPU { - fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { +impl core::fmt::Debug for CPU { + fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result { write!( f, "CPU Dump:\n\nAccumulator: {}", @@ -1171,7 +1170,6 @@ mod tests { assert!(CPU.registers.status.contains(PS_CARRY)); assert!(!CPU.registers.status.contains(PS_NEGATIVE)); - CPU.execute_instruction((load_instruction, OpInput::UseImmediate(127))); compare(&mut CPU, 1); @@ -1179,7 +1177,6 @@ mod tests { assert!(CPU.registers.status.contains(PS_CARRY)); assert!(!CPU.registers.status.contains(PS_NEGATIVE)); - CPU.execute_instruction((load_instruction, OpInput::UseImmediate(1))); compare(&mut CPU, 2); @@ -1187,7 +1184,6 @@ mod tests { assert!(!CPU.registers.status.contains(PS_CARRY)); assert!(CPU.registers.status.contains(PS_NEGATIVE)); - CPU.execute_instruction((load_instruction, OpInput::UseImmediate(20))); compare(&mut CPU, -50i8 as u8); @@ -1195,7 +1191,6 @@ mod tests { assert!(!CPU.registers.status.contains(PS_CARRY)); assert!(!CPU.registers.status.contains(PS_NEGATIVE)); - CPU.execute_instruction((load_instruction, OpInput::UseImmediate(1))); compare(&mut CPU, -1i8 as u8); @@ -1203,7 +1198,6 @@ mod tests { assert!(!CPU.registers.status.contains(PS_CARRY)); assert!(!CPU.registers.status.contains(PS_NEGATIVE)); - CPU.execute_instruction((load_instruction, OpInput::UseImmediate(127))); compare(&mut CPU, -128i8 as u8); diff --git a/src/lib.rs b/src/lib.rs index fd23caf..e66745c 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -25,6 +25,8 @@ // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE // POSSIBILITY OF SUCH DAMAGE. +#![no_std] + // Needed for debug! / log! macros #[macro_use] extern crate log; @@ -35,7 +37,7 @@ extern crate num; extern crate bitflags; pub mod address; -pub mod instruction; pub mod cpu; +pub mod instruction; pub mod memory; pub mod registers;