diff options
author | Tim 'mithro' Ansell <me@mith.ro> | 2018-05-30 12:41:51 -0700 |
---|---|---|
committer | Tim 'mithro' Ansell <me@mith.ro> | 2018-05-30 12:42:57 -0700 |
commit | 353a3385056a9637d31a9c9d125bc284c811a876 (patch) | |
tree | 4e96a3076353b086296a00dfc07a2a946e3f204f | |
parent | 816c47ce83e330d0b293cd5e0a2e82885fb9f74e (diff) | |
download | icestorm-353a3385056a9637d31a9c9d125bc284c811a876.tar.gz icestorm-353a3385056a9637d31a9c9d125bc284c811a876.tar.bz2 icestorm-353a3385056a9637d31a9c9d125bc284c811a876.zip |
Support both `abc/123` and `123` forms of specifying tracks.
Kind of fixes #145.
-rwxr-xr-x | icebox/icebox_hlc2asc.py | 14 |
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', |