|  | # 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> | 
|  | """ |