aboutsummaryrefslogtreecommitdiffstats
path: root/icebox
diff options
context:
space:
mode:
authorTim 'mithro' Ansell <me@mith.ro>2018-05-30 12:41:51 -0700
committerTim 'mithro' Ansell <me@mith.ro>2018-05-30 12:42:57 -0700
commit353a3385056a9637d31a9c9d125bc284c811a876 (patch)
tree4e96a3076353b086296a00dfc07a2a946e3f204f /icebox
parent816c47ce83e330d0b293cd5e0a2e82885fb9f74e (diff)
downloadicestorm-353a3385056a9637d31a9c9d125bc284c811a876.tar.gz
icestorm-353a3385056a9637d31a9c9d125bc284c811a876.tar.bz2
icestorm-353a3385056a9637d31a9c9d125bc284c811a876.zip
Support both `abc/123` and `123` forms of specifying tracks.
Kind of fixes #145.
Diffstat (limited to 'icebox')
-rwxr-xr-xicebox/icebox_hlc2asc.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/icebox/icebox_hlc2asc.py b/icebox/icebox_hlc2asc.py
index 0982942..a8b7a30 100755
--- a/icebox/icebox_hlc2asc.py
+++ b/icebox/icebox_hlc2asc.py
@@ -805,6 +805,13 @@ class LogicCell:
self.seq_bits[3] = '1'
elif len(fields) >= 3 and (fields[1] == '->' or fields[1] == '<->'):
prefix = 'lutff_%d/' % self.index
+
+ # Strip prefix if it is given
+ if fields[0].startswith(prefix):
+ fields[0] = fields[0][len(prefix):]
+ if fields[-1].startswith(prefix):
+ fields[-1] = fields[-1][len(prefix):]
+
if fields[0] == 'out':
self.tile.read([prefix + fields[0]] + fields[1:])
elif fields[-1].startswith('in_'):
@@ -955,6 +962,13 @@ class IOBlock:
self.tile.ic.extra_bits.add(bit[0])
elif len(fields) >= 3 and (fields[1] == '->' or fields[1] == '<->'):
prefix = 'io_%d/' % self.index
+
+ # Strip prefix if it is given
+ if fields[0].startswith(prefix):
+ fields[0] = fields[0][len(prefix):]
+ if fields[-1].startswith(prefix):
+ fields[-1] = fields[-1][len(prefix):]
+
if fields[0] in ('D_IN_0', 'D_IN_1'):
self.tile.read([prefix + fields[0]] + fields[1:])
elif fields[-1] in ('cen',