2
0
forked from Ivasoft/DSView

update: parallel and usb_signalling decoder

This commit is contained in:
dreamsourcelabTAI
2022-08-24 14:44:40 +08:00
parent dcb195404d
commit 0462fbc56c
2 changed files with 11 additions and 10 deletions

View File

@@ -184,9 +184,10 @@ class Decoder(srd.Decoder):
def end(self):
cur_dex = self.last_samplenum
#the last annotation
self.put_py(self.prv_dex, cur_dex, ['ITEM', self.saved_item])
self.put_ann(self.prv_dex, cur_dex, [0, [self.fmt_item.format(self.saved_item)]])
self.handel_word(None, cur_dex)
if self.saved_item != None:
self.put_py(self.prv_dex, cur_dex, ['ITEM', self.saved_item])
self.put_ann(self.prv_dex, cur_dex, [0, [self.fmt_item.format(self.saved_item)]])
self.handel_word(None, cur_dex)
def decode(self):
# Determine which (optional) channels have input data. Insist in
@@ -227,9 +228,9 @@ class Decoder(srd.Decoder):
num_word_items = self.options['wordsize']
num_word_bits = num_item_bits * num_word_items
num_digits = (num_item_bits + 3) // 4
self.fmt_item = "{{:0{}X}}".format(num_digits)
self.fmt_item = "@{{:0{}X}}".format(num_digits)
num_digits = (num_word_bits + 3) // 4
self.fmt_word = "{{:0{}X}}".format(num_digits)
self.fmt_word = "@{{:0{}X}}".format(num_digits)
self.num_item_bits = num_item_bits
# Keep processing the input stream. Assume "always zero" for

View File

@@ -163,12 +163,12 @@ class Decoder(srd.Decoder):
if key == srd.SRD_CONF_SAMPLERATE:
self.samplerate = value
self.signalling = self.options['signalling']
if self.signalling != 'automatic':
self.update_bitrate()
self.update_bitrate()
def update_bitrate(self):
self.bitrate = bitrates[self.signalling]
self.bitwidth = float(self.samplerate) / float(self.bitrate)
def update_bitrate(self):
if self.signalling != 'automatic':
self.bitrate = bitrates[self.signalling]
self.bitwidth = float(self.samplerate) / float(self.bitrate)
def putpx(self, data):
s = self.samplenum_edge