From 847e49ccdf2f700cc2957ba5bbed6de9c065ee28 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Wed, 26 Jul 2017 19:47:39 -0400 Subject: [PATCH] Corrected timestamp reporting by the all-RAM Z80. --- Processors/AllRAMProcessor.hpp | 2 +- Processors/Z80/Z80AllRAM.cpp | 4 ++++ Processors/Z80/Z80AllRAM.hpp | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Processors/AllRAMProcessor.hpp b/Processors/AllRAMProcessor.hpp index c95a7b0ee..7b805fca3 100644 --- a/Processors/AllRAMProcessor.hpp +++ b/Processors/AllRAMProcessor.hpp @@ -18,7 +18,7 @@ namespace CPU { class AllRAMProcessor { public: AllRAMProcessor(size_t memory_size); - uint32_t get_timestamp(); + virtual uint32_t get_timestamp(); void set_data_at_address(uint16_t startAddress, size_t length, const uint8_t *data); void get_data_at_address(uint16_t startAddress, size_t length, uint8_t *data); diff --git a/Processors/Z80/Z80AllRAM.cpp b/Processors/Z80/Z80AllRAM.cpp index 74c56fad7..63a6744df 100644 --- a/Processors/Z80/Z80AllRAM.cpp +++ b/Processors/Z80/Z80AllRAM.cpp @@ -94,6 +94,10 @@ class ConcreteAllRAMProcessor: public AllRAMProcessor, public Processor::set_wait_line(value); } + + uint32_t get_timestamp() { + return timestamp_ >> 1; + } }; } diff --git a/Processors/Z80/Z80AllRAM.hpp b/Processors/Z80/Z80AllRAM.hpp index 9b68d1054..972401fbd 100644 --- a/Processors/Z80/Z80AllRAM.hpp +++ b/Processors/Z80/Z80AllRAM.hpp @@ -38,6 +38,8 @@ class AllRAMProcessor: virtual void set_non_maskable_interrupt_line(bool value) = 0; virtual void set_wait_line(bool value) = 0; + virtual uint32_t get_timestamp() = 0; + protected: MemoryAccessDelegate *delegate_; AllRAMProcessor() : ::CPU::AllRAMProcessor(65536), delegate_(nullptr) {}