[][src]Trait zinc64_core::Cpu

pub trait Cpu {
    fn get_a(&self) -> u8;
fn get_p(&self) -> u8;
fn get_pc(&self) -> u16;
fn get_sp(&self) -> u8;
fn get_x(&self) -> u8;
fn get_y(&self) -> u8;
fn set_a(&mut self, value: u8);
fn set_p(&mut self, value: u8);
fn set_pc(&mut self, value: u16);
fn set_sp(&mut self, value: u8);
fn set_x(&mut self, value: u8);
fn set_y(&mut self, value: u8);
fn reset(&mut self);
fn step(&mut self, tick_fn: &TickFn);
fn read(&self, address: u16) -> u8;
fn write(&mut self, address: u16, value: u8); }

CPU is responsible for decoding and executing instructions.

Required methods

fn get_a(&self) -> u8

fn get_p(&self) -> u8

fn get_pc(&self) -> u16

fn get_sp(&self) -> u8

fn get_x(&self) -> u8

fn get_y(&self) -> u8

fn set_a(&mut self, value: u8)

fn set_p(&mut self, value: u8)

fn set_pc(&mut self, value: u16)

fn set_sp(&mut self, value: u8)

fn set_x(&mut self, value: u8)

fn set_y(&mut self, value: u8)

fn reset(&mut self)

fn step(&mut self, tick_fn: &TickFn)

The core method of the cpu, decodes and executes one instruction. Tick callback is invoked for each elapsed clock cycle.

fn read(&self, address: u16) -> u8

Read byte from the specified address.

fn write(&mut self, address: u16, value: u8)

Write byte to the specified address.

Loading content...

Implementors

Loading content...