|
| From: | Philippe Mathieu-Daudé |
| Subject: | Re: [PATCH v2 07/12] mos6522: add register names to register read/write trace events |
| Date: | Thu, 24 Feb 2022 15:04:58 +0100 |
| User-agent: | Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.6.1 |
On 24/2/22 12:59, Mark Cave-Ayland wrote:
This helps to follow how the guest is programming the mos6522 when debugging. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> --- hw/misc/mos6522.c | 10 ++++++++-- hw/misc/trace-events | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/hw/misc/mos6522.c b/hw/misc/mos6522.c index 093cc83dcf..aaae195d63 100644 --- a/hw/misc/mos6522.c +++ b/hw/misc/mos6522.c @@ -36,6 +36,12 @@ #include "qemu/module.h" #include "trace.h"
I'd feel safer adding: #define MOS6522_IOSIZE 0x10
+static const char *mos6522_reg_names[16] = {
Then here: ... mos6522_reg_names[MOS6522_IOSIZE] ...
+ "ORB", "ORA", "DDRB", "DDRA", "T1CL", "T1CH", "T1LL", "T1LH", + "T2CL", "T2CH", "SR", "ACR", "PCR", "IFR", "IER", "ANH" +}; + /* XXX: implement all timer modes */static void mos6522_timer1_update(MOS6522State *s, MOS6522Timer *ti,@@ -310,7 +316,7 @@ uint64_t mos6522_read(void *opaque, hwaddr addr, unsigned size) }if (addr != VIA_REG_IFR || val != 0) {- trace_mos6522_read(addr, val); + trace_mos6522_read(addr, mos6522_reg_names[addr], val); }
And finally:
-- >8 --
@@ -478,7 +478,8 @@ static void mos6522_init(Object *obj)
MOS6522State *s = MOS6522(obj);
int i;
- memory_region_init_io(&s->mem, obj, &mos6522_ops, s, "mos6522", 0x10);
+ memory_region_init_io(&s->mem, obj, &mos6522_ops, s, "mos6522",
+ MOS6522_IOSIZE);
sysbus_init_mmio(sbd, &s->mem);
sysbus_init_irq(sbd, &s->irq);
---
Regardless:
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
| [Prev in Thread] | Current Thread | [Next in Thread] |