X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=decoders%2Fx2444m%2Fpd.py;h=57f12252d750c1d467a144a542c559b2ec85f6b2;hp=751e6d36feb4f5a7ba994379e6a13d0ba00a3fdf;hb=a0cbf8298d761a3615fe3c9c444b7517b437920f;hpb=e7a4360d9ceddc295302baf42fe607fd366de93f diff --git a/decoders/x2444m/pd.py b/decoders/x2444m/pd.py index 751e6d3..57f1225 100644 --- a/decoders/x2444m/pd.py +++ b/decoders/x2444m/pd.py @@ -28,7 +28,8 @@ registers = { 0x84: ['WREN', 4, lambda _: ''], 0x85: ['RCL', 5, lambda _: ''], 0x86: ['READ', 6, lambda v: '0x%x' % v], - 0x87: ['READ', 7, lambda v: '0x%x' % v], + 0x87: ['READ', 6, lambda v: '0x%x' % v], + # 0x86/0x87 are both valid READ commands (bit 0 is "don't care"). } class Decoder(srd.Decoder): @@ -39,7 +40,8 @@ class Decoder(srd.Decoder): desc = 'Xicor X2444M/P nonvolatile static RAM protocol.' license = 'gplv2+' inputs = ['spi'] - outputs = ['x2444m'] + outputs = [] + tags = ['IC', 'Memory'] annotations = ( ('wrds', 'Write disable'), ('sto', 'Store RAM data in EEPROM'), @@ -48,7 +50,6 @@ class Decoder(srd.Decoder): ('wren', 'Write enable'), ('rcl', 'Recall EEPROM data into RAM'), ('read', 'Data read from RAM'), - ('read', 'Data read from RAM'), ) def __init__(self): @@ -64,10 +65,11 @@ class Decoder(srd.Decoder): def putreadwrite(self, ss, es, reg, idx, addr, value): self.put(ss, es, self.out_ann, - [idx, ['%s: %s => 0x%4.4x' % (reg, addr, value)]]) + [idx, ['%s: %s => 0x%4.4x' % (reg, addr, value), + '%s: %s => 0x%4.4x' % (reg[0], addr, value), reg[0]]]) def putcmd(self, ss, es, reg, idx): - self.put(ss, es, self.out_ann, [idx, ['%s' % reg]]) + self.put(ss, es, self.out_ann, [idx, [reg, reg[0]]]) def decode(self, ss, es, data): ptype, mosi, miso = data