From 2c8a61dcc8e89018d80e3124995fdc2546061e48 Mon Sep 17 00:00:00 2001 From: Atreya Bain Date: Mon, 19 Feb 2024 12:37:53 +0530 Subject: [PATCH] [fix] Get sensible y coordinates --- src/emu/cpu.rs | 5 ++++- src/graphics/graphics_adapter.rs | 8 +------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/emu/cpu.rs b/src/emu/cpu.rs index 121293d..e0b002e 100644 --- a/src/emu/cpu.rs +++ b/src/emu/cpu.rs @@ -44,10 +44,13 @@ impl <'a> Cpu<'a>{ for _i in 0..65536{ let address_to_execute = self.get_pc(); - //fetch + //execute p1 self.copy_u24(address_to_execute)?; + //execute p2 let new_pc_location = address_to_execute+2*(Self::PC_LEN as u32) ; + let new_pc = self.memory.try_get_u24(new_pc_location)?; + self.set_pc(new_pc); } log::debug!("Finished internal loop"); diff --git a/src/graphics/graphics_adapter.rs b/src/graphics/graphics_adapter.rs index 6ac3cc3..ab5d034 100644 --- a/src/graphics/graphics_adapter.rs +++ b/src/graphics/graphics_adapter.rs @@ -25,17 +25,11 @@ impl <'a> SDLGraphicsAdapter<'a> { } } pub fn draw(&self, canvas:&mut WindowCanvas) -> EmulatorResult<()> { - let mut canvas_ref = &canvas; let fb = self.graphics_processor.get_framebuffer(); - for i in 0..fb.len() { - let i = i as u32; - let y_coord = i&0xff00; - let x_coord = i&0x00ff; - } let xyc = fb.iter().enumerate().map(|(i,e)| { let i = i as u32; - let y_coord = i&0xff00; + let y_coord = i&0xff00 >> 8; let x_coord = i&0x00ff; let color = Color::new(*e); (x_coord,y_coord,color)