Struct moa_m68k::timing::M68kInstructionTiming
source · pub struct M68kInstructionTiming {
pub cputype: M68kType,
pub bus_size: Size,
pub branched: bool,
pub reps: u16,
pub accesses: u8,
pub internal: u8,
pub on_branch: u8,
pub per_rep: u8,
}
Fields§
§cputype: M68kType
§bus_size: Size
§branched: bool
§reps: u16
§accesses: u8
§internal: u8
§on_branch: u8
§per_rep: u8
Implementations§
source§impl M68kInstructionTiming
impl M68kInstructionTiming
pub fn new(cputype: M68kType, bus_width: u8) -> Self
pub fn reset(&mut self)
pub fn add_access(&mut self, size: Size) -> &mut Self
pub fn add_internal(&mut self, clocks: u8) -> &mut Self
pub fn sub_internal(&mut self, clocks: u8) -> &mut Self
pub fn add_if_long(&mut self, size: Size, clocks: u8) -> &mut Self
pub fn add_reg_v_mem(&mut self, target: &Target, reg: u8, mem: u8) -> &mut Self
pub fn add_word_v_long(&mut self, size: Size, word: u8, long: u8) -> &mut Self
pub fn add_standard_set( &mut self, size: Size, target: &Target, areg: (u8, u8), dreg: (u8, u8), mem: (u8, u8) ) -> &mut Self
pub fn add_immediate_set( &mut self, size: Size, target: &Target, reg: (u8, u8), mem: (u8, u8) ) -> &mut Self
pub fn add_indirect_set( &mut self, target: &Target, areg: u8, aoff: u8, indoff: u8, indw: u8, indl: u8 ) -> &mut Self
pub fn add_reg_mem_set( &mut self, size: Size, target: &Target, reg: (u8, u8), mem: (u8, u8) ) -> &mut Self
pub fn add_on_branch(&mut self, clocks: u8) -> &mut Self
pub fn add_per_rep(&mut self, clocks: u8) -> &mut Self
pub fn add_target(&mut self, size: Size, target: &Target) -> &mut Self
pub fn add_two_targets( &mut self, size: Size, src: &Target, dest: &Target ) -> &mut Self
pub fn add_movem( &mut self, size: Size, target: &Target, dir: Direction, n: u8 ) -> &mut Self
pub fn add_instruction(&mut self, instruction: &Instruction) -> &mut Self
pub fn add_instruction_68000(&mut self, instruction: &Instruction) -> &mut Self
pub fn add_instruction_68020(&mut self, _instruction: &Instruction) -> &mut Self
pub fn performed_reset(&mut self)
pub fn increase_reps(&mut self, reps: u16)
pub fn branch_taken(&mut self)
pub fn calculate_clocks(&self) -> ClockCycles
pub fn access_size(&self, size: Size) -> u8
Trait Implementations§
source§impl Clone for M68kInstructionTiming
impl Clone for M68kInstructionTiming
source§fn clone(&self) -> M68kInstructionTiming
fn clone(&self) -> M68kInstructionTiming
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for M68kInstructionTiming
impl Debug for M68kInstructionTiming
source§impl PartialEq for M68kInstructionTiming
impl PartialEq for M68kInstructionTiming
source§fn eq(&self, other: &M68kInstructionTiming) -> bool
fn eq(&self, other: &M68kInstructionTiming) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for M68kInstructionTiming
impl StructuralPartialEq for M68kInstructionTiming
Auto Trait Implementations§
impl Freeze for M68kInstructionTiming
impl RefUnwindSafe for M68kInstructionTiming
impl Send for M68kInstructionTiming
impl Sync for M68kInstructionTiming
impl Unpin for M68kInstructionTiming
impl UnwindSafe for M68kInstructionTiming
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T, S> IntoAddress<T> for Swhere
T: FromAddress<S>,
impl<T, S> IntoAddress<T> for Swhere
T: FromAddress<S>,
source§fn into_address(self) -> T
fn into_address(self) -> T
Translate the given address into an address of type
T