diff --git a/src/Tools/cdtypes/src/types/bcd.rs b/src/Tools/cdtypes/src/types/bcd.rs index 095905d1..66ffbbc2 100644 --- a/src/Tools/cdtypes/src/types/bcd.rs +++ b/src/Tools/cdtypes/src/types/bcd.rs @@ -1,5 +1,5 @@ #[derive(Debug)] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct BCDValue { value: u8 } diff --git a/src/Tools/cdtypes/src/types/date.rs b/src/Tools/cdtypes/src/types/date.rs index b149944f..2f54e208 100644 --- a/src/Tools/cdtypes/src/types/date.rs +++ b/src/Tools/cdtypes/src/types/date.rs @@ -128,7 +128,7 @@ impl Date { let mut value = ['0' as u8;SIZE]; for i in 0..SIZE { - value[(SIZE - 1 - i)] = ('0' as u32 + (number%10)) as u8; + value[SIZE - 1 - i] = ('0' as u32 + (number%10)) as u8; number /= 10; } value diff --git a/src/Tools/cdtypes/src/types/error_correction/mod.rs b/src/Tools/cdtypes/src/types/error_correction/mod.rs index e64c2d0b..e1a885de 100644 --- a/src/Tools/cdtypes/src/types/error_correction/mod.rs +++ b/src/Tools/cdtypes/src/types/error_correction/mod.rs @@ -4,13 +4,13 @@ use super::{sector::SECTOR_SIZE, lsb_msb::{ReadWriteEndian, LittleEndianU32}}; type RawSector = [u8; SECTOR_SIZE]; #[repr(packed(1))] -#[derive(Clone, Default)] +#[derive(Clone, Copy, Default)] pub struct EDC { data: LittleEndianU32 } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct ECC { data: [u8; 276] } diff --git a/src/Tools/cdtypes/src/types/sector.rs b/src/Tools/cdtypes/src/types/sector.rs index c8e49cff..3357f06c 100644 --- a/src/Tools/cdtypes/src/types/sector.rs +++ b/src/Tools/cdtypes/src/types/sector.rs @@ -37,7 +37,7 @@ pub enum SubHeaderForm { } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct Sync { value: [u8; 12], } @@ -59,7 +59,7 @@ impl std::fmt::Display for Sync { } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct Header { minute: BCDValue, second: BCDValue, @@ -107,7 +107,7 @@ impl Default for Header { } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct SubHeader { pub file_number: u8, pub channel_number: u8, @@ -156,7 +156,7 @@ impl Default for SubHeader { } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct SubMode { value: u8 } @@ -202,7 +202,7 @@ impl Default for SubMode { } #[repr(packed(1))] -#[derive(Clone)] +#[derive(Clone, Copy)] pub struct CodingInfo { value: u8 } diff --git a/src/Tools/psxcdgen_ex/src/encoder/psx.rs b/src/Tools/psxcdgen_ex/src/encoder/psx.rs index 9d492144..3cc2e7e6 100644 --- a/src/Tools/psxcdgen_ex/src/encoder/psx.rs +++ b/src/Tools/psxcdgen_ex/src/encoder/psx.rs @@ -401,7 +401,7 @@ fn create_dir_record_raw<'a>(dst: &'a mut [u8], name: &str, track_rel_lba: u32, } unsafe { - let mut dir_record = std::mem::transmute::<&mut u8, &mut DirectoryRecord>(&mut dst[0]); + let dir_record = std::mem::transmute::<&mut u8, &mut DirectoryRecord>(&mut dst[0]); dir_record.new(name, has_system_use); dir_record.data_block_number.write(track_rel_lba);