blob: c9e7c0eb5e68680916059cd1b6e78b2951b4c0d1 [file] [log] [blame]
# Copyright lowRISC contributors.
# Licensed under the Apache License, Version 2.0, see LICENSE for details.
# SPDX-License-Identifier: Apache-2.0
#
# Svg data for I2C display
# constants in svg tag
svgtag_consts = """
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
overflow="hidden"
"""
# styles
svgstyle = """
<style type="text/css">
text { font-size: 11pt; font-style: normal; font-variant:
normal; font-weight: bold; font-stretch: normal;
text-align: center; text-anchor: middle; fill-opacity: 1; font-family:
Helvetica }
.tt {
text-anchor: start; font-weight: normal; font-size: 10pt;
font-family: monospace
}
.shost {
fill: none;
stroke: #000;
stroke-width: 1;
stroke-linecap: round;
stroke-linejoin: miter;
stroke-miterlimit: 4;
stroke-opacity: 1;
stroke-dasharray: none
}
.dash {
fill: none;
stroke: #000;
stroke-width: 1;
stroke-linecap: butt;
stroke-linejoin: miter;
stroke-miterlimit: 4;
stroke-opacity: 1;
stroke-dasharray: 8;
}
.sdev {
fill: #CCC;
stroke: #000;
stroke-width: 1;
stroke-linecap: round;
stroke-linejoin: miter;
stroke-miterlimit: 4;
stroke-opacity: 1;
stroke-dasharray: none
}
</style>
"""
# width of the svg
svgw = 1000
# svg defs are made with a bit-box 20,40 so set constants based on that
bitw = 20
bith = 40
bytew = 160
# text is offset from the top of a bit
txty = 25
# formatting:
wrap = 880 # the wrap point for long transactions
cindent = 60 # the indentation for continuation lines
linesep = 50 # separation between lines
svg_defs = """
<defs>
<g id="start">
<path d="M0,0 h 20 m0,40 h -20 v -40" class="shost" />
<text x="10" y="25">S</text>
</g>
<g id="pstop">
<path d="M0,0 h 20 v 40 h -20 M0,0" class="shost" />
<text x="10" y="25">P</text>
</g>
<g id="ackh">
<path d="M0,0 h 20 v 40 h -20 v -40" class="shost" />
<text x="10" y="25">A</text>
</g>
<g id="ackd">
<path d="M0,0 h 20 v 40 h -20 v -40" class="sdev" />
<text x="10" y="25">A</text>
</g>
<g id="nackh">
<path d="M0,0 h 20 v 40 h -20 v -40" class="shost" />
<text x="10" y="25">N</text>
</g>
<g id="nackd">
<path d="M0,0 h 20 v 40 h -20 v -40" class="sdev" />
<text x="10" y="25">N</text>
</g>
<g id="norackd">
<path d="M0,0 h 20 v 40 h -20 v -40" class="sdev" />
<text x="5" y="15">A/</text>
<text x="15" y="35">N</text>
</g>
<g id="skip">
<path d="M0,0 h 8 l-5,30 l5,-10 l-5,20 h -3 v -40" class="shost" />
<path d="M17,0 h 3 v 40 h -8 l5,-30 l-5,10 l5,-20" class="shost" />
</g>
<g id="hbyte">
<path d="M0,0 h 160 m0,40 h -160 v -40" class="shost" />
</g>
<g id="dbyte">
<path d="M0,0 h 160 v 40 h -160 v -40" class="sdev" />
</g>
<g id="adr0">
<path d="M0,0 h 160 m0,40 h -160 v -40" class="shost" />
<path d="M140,0 v 40" class="dash" />
<text x="80" y="25">Adr</text>
<text x="150" y="25">wr</text>
</g>
<g id="adr1">
<path d="M0,0 h 160 m0,40 h -160 v -40" class="shost" />
<path d="M140,0 v 40" class="dash" />
<text x="80" y="25">Adr</text>
<text x="150" y="25">rd</text>
</g>
<g id="adr2">
<path d="M0,0 h 160 m0,40 h -160 v -40" class="shost" />
<path d="M140,0 v 40" class="dash" />
<text x="80" y="25">Adr</text>
<text x="150" y="25">d</text>
</g>
</defs>
"""