uart: Better fix for ASCII output.
authorUwe Hermann <uwe@hermann-uwe.de>
Thu, 30 Jan 2014 14:26:06 +0000 (15:26 +0100)
committerUwe Hermann <uwe@hermann-uwe.de>
Thu, 30 Jan 2014 14:34:38 +0000 (15:34 +0100)
This is a temporary thing, later there'll be some facility to let
frontends handle any annotations marked as "this is a number" (as opposed
to "this is a string") in a generic manner and display them in any
supported (by that frontend) format, e.g. ascii, hex, oct, decimal,
binary, big-endian vs. little-endian, and so on.

This is a fix related to #201.

decoders/uart/pd.py

index f1c832364539fcac8d386f2a12cc41bfb5069ef0..00be94bdd1b50da1a501a8d066716c992305ab85 100644 (file)
@@ -230,7 +230,7 @@ class Decoder(srd.Decoder):
 
         b, f = self.databyte[rxtx], self.options['format']
         if f == 'ascii':
-            c = chr(b) if chr(b).isprintable() else '[%02X]' % b
+            c = chr(b) if b in range(30, 126 + 1) else '[%02X]' % b
             self.putx(rxtx, [rxtx, [c]])
         elif f == 'dec':
             self.putx(rxtx, [rxtx, [str(b)]])