diff --git a/Cargo.lock b/Cargo.lock index 5b6c7ed..10fcdff 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -86,6 +86,17 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "ahash" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.3" @@ -595,7 +606,7 @@ checksum = "5ea929ec5819fef373728bb0e55003ce921975039cfec3ca8305bb024e5b7b32" dependencies = [ "bytemuck", "directories-next", - "egui", + "egui 0.20.1", "egui-winit", "egui_glow", "glow", @@ -612,6 +623,15 @@ dependencies = [ "winit", ] +[[package]] +name = "egui" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b403f29d592b5c2267279bfdf2cd3fe3ba0e7a8738d03203a6f1536e8e9d26bd" +dependencies = [ + "epaint 0.14.0", +] + [[package]] name = "egui" version = "0.20.1" @@ -619,8 +639,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65a5e883a316e53866977450eecfbcac9c48109c2ab3394af29feb83fcde4ea9" dependencies = [ "accesskit", - "ahash", - "epaint", + "ahash 0.8.3", + "epaint 0.20.0", "nohash-hasher", "ron", "serde", @@ -635,7 +655,7 @@ checksum = "5696bdbe60898b81157f07ae34fe02dbfd522174bd6e620942c269cd7307901f" dependencies = [ "accesskit_winit", "arboard", - "egui", + "egui 0.20.1", "instant", "serde", "smithay-clipboard", @@ -651,7 +671,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d4b5960cb1bae1c403a6c9027a745210a41913433b10c73b6e7d76a1017f8b4" dependencies = [ "bytemuck", - "egui", + "egui 0.20.1", "glow", "memoffset", "tracing", @@ -659,6 +679,21 @@ dependencies = [ "web-sys", ] +[[package]] +name = "egui_memory_editor" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae2e73ae4ecc1c03d5166902ff2cabbf76a6ecbc18eaa35a858dbd05ba325412" +dependencies = [ + "egui 0.14.2", +] + +[[package]] +name = "emath" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cca5179aa9d15128cebb79bb56dda73a79cc66b402056ff19a992e54b365e15c" + [[package]] name = "emath" version = "0.20.0" @@ -701,6 +736,19 @@ dependencies = [ "syn", ] +[[package]] +name = "epaint" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "136e7d88da926182bcfdb8217137dd347dfe5dc03b8988eaba3ef8becf83394a" +dependencies = [ + "ab_glyph", + "ahash 0.7.6", + "atomic_refcell", + "emath 0.14.0", + "ordered-float", +] + [[package]] name = "epaint" version = "0.20.0" @@ -708,11 +756,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de14b65fe5e423e0058f77a8beb2c863b056d0566d6c4ce0d097aa5814cb705a" dependencies = [ "ab_glyph", - "ahash", + "ahash 0.8.3", "atomic_refcell", "bytemuck", "ecolor", - "emath", + "emath 0.20.0", "nohash-hasher", "parking_lot", "serde", @@ -834,7 +882,8 @@ version = "0.1.0" dependencies = [ "console_error_panic_hook", "eframe", - "egui", + "egui 0.20.1", + "egui_memory_editor", "emu", "tracing-subscriber", "tracing-wasm", @@ -1241,6 +1290,15 @@ dependencies = [ "minimal-lexical", ] +[[package]] +name = "num-traits" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +dependencies = [ + "autocfg", +] + [[package]] name = "num_enum" version = "0.5.7" @@ -1323,6 +1381,15 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66" +[[package]] +name = "ordered-float" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7940cf2ca942593318d07fcf2596cdca60a85c9e7fab408a5e21a4f9dcd40d87" +dependencies = [ + "num-traits", +] + [[package]] name = "owned_ttf_parser" version = "0.15.0" diff --git a/emu/src/mem.rs b/emu/src/mem.rs index 75fcd6d..d3dbad4 100644 --- a/emu/src/mem.rs +++ b/emu/src/mem.rs @@ -90,21 +90,27 @@ impl AddressBus for Mem { fn copy_from(&mut self, _other: &Self) { todo!("copy from"); } + #[inline] fn read_byte(&self, _address_space: AddressSpace, address: u32) -> u32 { self.read_u8(address) } + #[inline] fn read_word(&self, _address_space: AddressSpace, address: u32) -> u32 { self.read_u16(address) } + #[inline] fn read_long(&self, _address_space: AddressSpace, address: u32) -> u32 { self.read_u32(address) } + #[inline] fn write_byte(&mut self, _address_space: AddressSpace, address: u32, value: u32) { self.write_u8(address, value) } + #[inline] fn write_word(&mut self, _address_space: AddressSpace, address: u32, value: u32) { self.write_u16(address, value) } + #[inline] fn write_long(&mut self, _address_space: AddressSpace, address: u32, value: u32) { self.write_u32(address, value) }