Finished rework
This commit is contained in:
parent
e5f67a01f5
commit
a9f1a63900
|
@ -69,7 +69,11 @@ impl ThreadedEmulator {
|
|||
});
|
||||
println!("Cmd: {:?}", cmd);
|
||||
match cmd {
|
||||
Cmd::Step => system.step()?,
|
||||
Cmd::Step => {
|
||||
system.step()?;
|
||||
let page_02 = Vec::from(&system.ram[0x200..0x300]);
|
||||
tdata.send(page_02);
|
||||
}
|
||||
Cmd::Reset => {
|
||||
system.restart();
|
||||
system.ram = *TEST_CODE;
|
||||
|
@ -78,6 +82,8 @@ impl ThreadedEmulator {
|
|||
if let Err(e) = rcmd.recv_timeout(std::time::Duration::from_millis(1)) {
|
||||
if e == std::sync::mpsc::RecvTimeoutError::Timeout {
|
||||
system.step()?;
|
||||
let page_02 = Vec::from(&system.ram[0x200..0x300]);
|
||||
tdata.send(page_02);
|
||||
} else {
|
||||
panic!("Controller mpsc disconnected: {}", e)
|
||||
}
|
||||
|
|
|
@ -130,6 +130,7 @@ pub fn init(app: >k::Application) -> Result<(), ProgErr> {
|
|||
let drawing_area = drawing_area.clone();
|
||||
let palette = palette.clone();
|
||||
let img_m = img_m.clone();
|
||||
let system = emulator.system.clone();
|
||||
emulator.rdata.attach(None, move |data: Vec<_>| {
|
||||
println!("Received page");
|
||||
for line in data.chunks(16) {
|
||||
|
@ -152,7 +153,7 @@ pub fn init(app: >k::Application) -> Result<(), ProgErr> {
|
|||
}
|
||||
}
|
||||
|
||||
if let Ok(system) = emulator.system.try_lock() {
|
||||
if let Ok(system) = system.try_lock() {
|
||||
registers.set_text(&format!("{:#?}", system.registers));
|
||||
}
|
||||
drawing_area.queue_draw();
|
||||
|
|
Loading…
Reference in New Issue