mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH] memory_display: add padding to simplify counting
@ 2018-11-20 22:57 Roland Hieber
  2018-11-21  8:55 ` Sascha Hauer
  0 siblings, 1 reply; 2+ messages in thread
From: Roland Hieber @ 2018-11-20 22:57 UTC (permalink / raw)
  To: barebox; +Cc: Roland Hieber

Trying to count single bytes (e.g. when adding an offset) in 'word' or
'byte' output mode is not easy in the current formatting, and (at least
for me) has a high chance of miscounting or losing track of groups:

    barebox@boardname:/ md -b 0x149983f0+32
    149983f0: 18 00 00 00 00 00 0d 86 00 00 00 00 00 00 00 00    ................
    14998400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................

    barebox@boardname:/ md -w 0x149983f0+32
    149983f0: 0018 0000 0000 860d 0000 0000 0000 0000            ................
    14998400: 0000 0000 0000 0000 0000 0000 0000 0000            ................

With an additional space after 8 bytes, counting becomes easier:

    barebox@boardname:/ md -b 0x149983f0+32
    149983f0: 18 00 00 00 00 00 0d 86  00 00 00 00 00 00 00 00   ................
    14998400: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ................

    barebox@boardname:/ md -w 0x149983f0+32
    149983f0: 0018 0000 0000 860d  0000 0000 0000 0000           ................
    14998400: 0000 0000 0000 0000  0000 0000 0000 0000           ................

The 'quad' and 'long' output modes stay the same and are already much
more easier to count because they build bigger and therefore less groups
of bytes per line.

Signed-off-by: Roland Hieber <r.hieber@pengutronix.de>
---
 common/memory_display.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/common/memory_display.c b/common/memory_display.c
index ea91985e5d..30821cced4 100644
--- a/common/memory_display.c
+++ b/common/memory_display.c
@@ -55,23 +55,27 @@ int memory_display(const void *addr, loff_t offs, unsigned nbytes, int size, int
 			} else if (size == 2) {
 				uint16_t res;
 				data_abort_mask();
 				res = *((uint16_t *)addr);
 				if (swab)
 					res = __swab16(res);
+				if (i > 1 && i % 8 == 0)
+					count -= printf(" ");
 				if (data_abort_unmask()) {
 					res = 0xffff;
 					count -= printf(" xxxx");
 				} else {
 					count -= printf(" %04x", res);
 				}
 				*usp++ = res;
 			} else {
 				uint8_t res;
 				data_abort_mask();
 				res = *((uint8_t *)addr);
+				if (i > 1 && i % 8 == 0)
+					count -= printf(" ");
 				if (data_abort_unmask()) {
 					res = 0xff;
 					count -= printf(" xx");
 				} else {
 					count -= printf(" %02x", res);
 				}
-- 
2.19.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-11-21  8:55 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-20 22:57 [PATCH] memory_display: add padding to simplify counting Roland Hieber
2018-11-21  8:55 ` Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox