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

* Re: [PATCH] memory_display: add padding to simplify counting
  2018-11-20 22:57 [PATCH] memory_display: add padding to simplify counting Roland Hieber
@ 2018-11-21  8:55 ` Sascha Hauer
  0 siblings, 0 replies; 2+ messages in thread
From: Sascha Hauer @ 2018-11-21  8:55 UTC (permalink / raw)
  To: Roland Hieber; +Cc: barebox

On Tue, Nov 20, 2018 at 11:57:13PM +0100, Roland Hieber wrote:
> 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>
> ---

Nice ;) Applied, thanks

Sascha

>  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
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
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