Update copyright notices
This commit is contained in:
		
							
								
								
									
										3
									
								
								justfile
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								justfile
									
									
									
									
									
								
							| @@ -1,3 +1,6 @@ | |||||||
|  | # (c) 2023 John A. Breaux | ||||||
|  | # This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| # Some common commands for working on this stuff | # Some common commands for working on this stuff | ||||||
|  |  | ||||||
| # Run All Tests | # Run All Tests | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Chirp: A chip-8 interpreter in Rust | //! Chirp: A chip-8 interpreter in Rust | ||||||
| //! Hello, world! | //! Hello, world! | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
| #![allow(missing_docs)] | #![allow(missing_docs)] | ||||||
| //! Platform-specific IO/UI code, and some debug functionality. | //! Platform-specific IO/UI code, and some debug functionality. | ||||||
| //! TODO: Destroy this all. | //! TODO: Destroy this all. | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Decodes and runs instructions | //! Decodes and runs instructions | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! The Bus connects the CPU to Memory | //! The Bus connects the CPU to Memory | ||||||
| //! | //! | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Trait for getting a generic integer for a structure. | //! Trait for getting a generic integer for a structure. | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,9 +1,13 @@ | |||||||
|  | // (c) 2023 John A. Breaux | ||||||
|  | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Represents [Flags] that aid in implementation but aren't a part of the Chip-8 spec | //! Represents [Flags] that aid in implementation but aren't a part of the Chip-8 spec | ||||||
|  |  | ||||||
| use super::{Mode, Quirks}; | use super::{Mode, Quirks}; | ||||||
|  |  | ||||||
| /// Represents flags that aid in implementation but aren't a part of the Chip-8 spec | /// Represents flags that aid in implementation but aren't a part of the Chip-8 spec | ||||||
| #[derive(Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] | #[derive(Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] | ||||||
|  | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] | ||||||
| pub struct Flags { | pub struct Flags { | ||||||
|     /// Set when debug (live disassembly) mode enabled |     /// Set when debug (live disassembly) mode enabled | ||||||
|     pub debug: bool, |     pub debug: bool, | ||||||
|   | |||||||
| @@ -1,3 +1,6 @@ | |||||||
|  | // (c) 2023 John A. Breaux | ||||||
|  | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Selects the memory behavior of the [super::CPU] | //! Selects the memory behavior of the [super::CPU] | ||||||
| //! | //! | ||||||
| //! Since [Quirks] implements [`From<Mode>`], | //! Since [Quirks] implements [`From<Mode>`], | ||||||
| @@ -8,7 +11,8 @@ use crate::error::Error; | |||||||
| use std::str::FromStr; | use std::str::FromStr; | ||||||
|  |  | ||||||
| /// Selects the memory behavior of the interpreter | /// Selects the memory behavior of the interpreter | ||||||
| #[derive(Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] | #[derive(Clone, Copy, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] | ||||||
|  | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] | ||||||
| pub enum Mode { | pub enum Mode { | ||||||
|     /// VIP emulation mode |     /// VIP emulation mode | ||||||
|     #[default] |     #[default] | ||||||
|   | |||||||
| @@ -1,9 +1,13 @@ | |||||||
|  | // (c) 2023 John A. Breaux | ||||||
|  | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Controls the [Quirks] behavior of the CPU on a granular level. | //! Controls the [Quirks] behavior of the CPU on a granular level. | ||||||
|  |  | ||||||
| /// Controls the quirk behavior of the CPU on a granular level. | /// Controls the quirk behavior of the CPU on a granular level. | ||||||
| /// | /// | ||||||
| /// `false` is Cosmac-VIP-like behavior | /// `false` is Cosmac-VIP-like behavior | ||||||
| #[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] | #[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)] | ||||||
|  | #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] | ||||||
| pub struct Quirks { | pub struct Quirks { | ||||||
|     /// Super Chip: Binary ops in `8xy`(`1`, `2`, `3`) shouldn't set vF to 0 |     /// Super Chip: Binary ops in `8xy`(`1`, `2`, `3`) shouldn't set vF to 0 | ||||||
|     pub bin_ops: bool, |     pub bin_ops: bool, | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Unit tests for [super::CPU] | //! Unit tests for [super::CPU] | ||||||
| //! | //! | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  |  | ||||||
| //! Error type for Chirp | //! Error type for Chirp | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| // (c) 2023 John A. Breaux | // (c) 2023 John A. Breaux | ||||||
| // This code is licensed under MIT license (see LICENSE.txt for details) | // This code is licensed under MIT license (see LICENSE for details) | ||||||
| #![cfg_attr(feature = "unstable", feature(no_coverage))] | #![cfg_attr(feature = "nightly", feature(no_coverage))] | ||||||
| #![deny(missing_docs, clippy::all)] | #![deny(missing_docs, clippy::all)] | ||||||
| //! This crate implements a Chip-8 interpreter as if it were a real CPU architecture, | //! This crate implements a Chip-8 interpreter as if it were a real CPU architecture, | ||||||
| //! to the best of my current knowledge. As it's the first emulator project I've | //! to the best of my current knowledge. As it's the first emulator project I've | ||||||
|   | |||||||
| @@ -1,3 +1,7 @@ | |||||||
|  | // (c) 2023 John A. Breaux | ||||||
|  | // This code is licensed under MIT license (see LICENSE for details) | ||||||
|  | // When compiled, the resulting binary is licensed under version 3 of the GNU General Public License (see chip8-test-suite/LICENSE for details) | ||||||
|  |  | ||||||
| //! These are a series of interpreter tests using Timendus's incredible test suite | //! These are a series of interpreter tests using Timendus's incredible test suite | ||||||
|  |  | ||||||
| pub use chirp::*; | pub use chirp::*; | ||||||
|   | |||||||
| @@ -3,6 +3,7 @@ use chirp::*; | |||||||
| use std::{collections::hash_map::DefaultHasher, hash::Hash}; | use std::{collections::hash_map::DefaultHasher, hash::Hash}; | ||||||
|  |  | ||||||
| #[test] | #[test] | ||||||
|  | #[allow(clippy::redundant_clone)] | ||||||
| fn chip8() { | fn chip8() { | ||||||
|     let ch8 = Chip8::default(); // Default |     let ch8 = Chip8::default(); // Default | ||||||
|     let ch82 = ch8.clone(); // Clone |     let ch82 = ch8.clone(); // Clone | ||||||
| @@ -125,6 +126,7 @@ mod cpu { | |||||||
|         use super::*; |         use super::*; | ||||||
|         //#[derive(Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] |         //#[derive(Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)] | ||||||
|         #[test] |         #[test] | ||||||
|  |         #[allow(clippy::redundant_clone)] | ||||||
|         fn clone() { |         fn clone() { | ||||||
|             let cf1 = Flags { |             let cf1 = Flags { | ||||||
|                 debug: false, |                 debug: false, | ||||||
| @@ -259,6 +261,7 @@ mod quirks { | |||||||
|             dma_inc: true, |             dma_inc: true, | ||||||
|             stupid_jumps: false, |             stupid_jumps: false, | ||||||
|         }; |         }; | ||||||
|  |         #[allow(clippy::clone_on_copy)] | ||||||
|         let q2 = q1.clone(); |         let q2 = q1.clone(); | ||||||
|         assert_eq!(q1, q2); |         assert_eq!(q1, q2); | ||||||
|     } |     } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user