]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/ds243x/pd.py
configure.ac: Also check for Python 3.7.
[libsigrokdecode.git] / decoders / ds243x / pd.py
index 0c515967bb2c8659ccf3638b3db6affd1dcc4fd0..c7869a8d9c4af3ab2b39dcd4d4edc50b4ccdce58 100644 (file)
@@ -72,8 +72,14 @@ class Decoder(srd.Decoder):
     annotations = (
         ('text', 'Human-readable text'),
     )
+    binary = (
+        ('mem_read', 'Data read from memory'),
+    )
 
     def __init__(self):
+        self.reset()
+
+    def reset(self):
         # Bytes for function command.
         self.bytes = []
         self.family_code = None
@@ -82,6 +88,7 @@ class Decoder(srd.Decoder):
 
     def start(self):
         self.out_ann = self.register(srd.OUTPUT_ANN)
+        self.out_binary = self.register(srd.OUTPUT_BINARY)
 
     def putx(self, data):
         self.put(self.ss, self.es, self.out_ann, data)
@@ -257,3 +264,6 @@ class Decoder(srd.Decoder):
                 elif 3 < len(self.bytes):
                     self.ss, self.es = ss, es
                     self.putx([0, ['Data: 0x%02x' % (self.bytes[-1])]])
+
+                    bdata = self.bytes[-1].to_bytes(1, byteorder='big')
+                    self.put(ss, es, self.out_binary, [0, bdata])