aboutsummaryrefslogtreecommitdiff
path: root/qtmips_machine/peripspiled.h
diff options
context:
space:
mode:
authorPavel Pisa <pisa@cmp.felk.cvut.cz>2019-06-30 18:22:27 +0200
committerPavel Pisa <pisa@cmp.felk.cvut.cz>2019-06-30 18:22:27 +0200
commit9dc519887f61ae33ff82bb125fb69398503f91f6 (patch)
treec0074870df060adc0f546715e39169cacc8d5667 /qtmips_machine/peripspiled.h
parentc86a491e26800f620b51ced800b612e73da1cced (diff)
downloadqtmips-9dc519887f61ae33ff82bb125fb69398503f91f6.tar.gz
qtmips-9dc519887f61ae33ff82bb125fb69398503f91f6.tar.bz2
qtmips-9dc519887f61ae33ff82bb125fb69398503f91f6.zip
Memory change counter moved to MemoryAccess and external changes notification added.
This change together with use of PhysAddrSpace as the memory content source for memory and program view allows to access and monitor contents of peripheral registers and frame-buffer memory from graphic user interface. Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Diffstat (limited to 'qtmips_machine/peripspiled.h')
-rw-r--r--qtmips_machine/peripspiled.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/qtmips_machine/peripspiled.h b/qtmips_machine/peripspiled.h
index 8c884e3..70c8019 100644
--- a/qtmips_machine/peripspiled.h
+++ b/qtmips_machine/peripspiled.h
@@ -69,7 +69,11 @@ public slots:
public:
bool wword(std::uint32_t address, std::uint32_t value);
std::uint32_t rword(std::uint32_t address, bool debug_access = false) const;
+ virtual std::uint32_t get_change_counter() const override;
private:
+ void knob_update_notify(std::uint32_t val, std::uint32_t mask, int shift);
+
+ mutable std::uint32_t change_counter;
std::uint32_t spiled_reg_led_line;
std::uint32_t spiled_reg_led_rgb1;
std::uint32_t spiled_reg_led_rgb2;