diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index c395afb4..7865e9e2 100644 --- a/htmlgen/htmlgen.py +++ b/htmlgen/htmlgen.py @@ -147,27 +147,45 @@ for segtype in segbits.keys(): else: label = m.group(1) + "?" + if re.search(r"\.[ABCD]5?FF\.", bit_name): + bgcolor = "#aaffaa" + m = re.search(r"\.([ABCD]5?)FF\.([A-Z]+)", bit_name) + if m.group(2) == "ZINI": + label = m.group(1) + "Z" + else: + label = m.group(1) + "?" + + if re.search(r"\.[ABCD]LUT5$", bit_name): + bgcolor = "#cccc88" + label = bit_name[-5] + "5" + print("%s" % (bgcolor, "\n".join(title), label), file=f) print("", file =f) - - - prefix = "" - - for bit_name, bit_pos in sorted(segbits[segtype].items()): - bit_prefix = ".".join(bit_name.split(".")[0:-1]) - - if prefix != bit_prefix: - trstyle = "" - prefix = bit_prefix - print("", file =f) - print("

", file =f) - print("

%s

" % prefix, file =f) - print("", file =f) - print("", file=f) - - trstyle = " bgcolor=\"#dddddd\"" if trstyle == "" else "" - print("" % (trstyle, bit_name, bit_pos), file=f) - print("
Bit NamePosition
%s%s
", file =f) + + + bits_by_prefix = dict() + + for bit_name, bit_pos in segbits[segtype].items(): + prefix = ".".join(bit_name.split(".")[0:-1]) + + if prefix not in bits_by_prefix: + bits_by_prefix[prefix] = set() + + bits_by_prefix[prefix].add((bit_name, bit_pos)) + + for prefix, bits in sorted(bits_by_prefix.items()): + print("

", file =f) + print("

%s

" % prefix, file =f) + print("", file =f) + print("", file=f) + + trstyle = "" + for bit_name, bit_pos in sorted(bits): + trstyle = " bgcolor=\"#dddddd\"" if trstyle == "" else "" + print("" % (trstyle, bit_name, bit_pos), file=f) + + print("
Bit NamePosition
%s%s
", file =f) + print("", file=f)