Mercurial > hg > demos > bussi
changeset 0:f339a3903bc9
Initial import.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 21 May 2015 22:52:30 +0300 |
parents | |
children | 7f6f64ca58f6 |
files | LICENSE.txt Makefile README.txt assets/graffat.svg config.mak data/SetupData.txt data/SetupFont.dmf data/SetupImage.png data/SetupMenuBar.png data/ap.png data/aurinko.png data/auto.png data/bussi_logo.png data/dosa.png data/pas2.xm data/presents.png data/puu_pv_1.png data/puu_pv_2.png data/rengas.png data/tausta_pv.png demo.c file_id.diz |
diffstat | 22 files changed, 1628 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LICENSE.txt Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,50 @@ +DMLIB - Demo engine / development and utility framework +Programmed and designed by Matti Hämäläinen (ccr/TNSP) +(C) Copyright 2002-2015 Tecnic Software productions (TNSP) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + 3. The name of the author may not be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING +IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +----------------------------------------------------------------------- + +stb_image - public domain JPEG/PNG reader by various authors +http://nothings.org/stb_image.c + +----------------------------------------------------------------------- + +The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library +designed to make it easy to write multi-media software, such as games and +emulators. + +The Simple DirectMedia Layer library source code is available from: +http://www.libsdl.org/ + +This library is distributed under the terms of the GNU LGPL license: +http://www.gnu.org/copyleft/lesser.html + +-----------------------------------------------------------------------
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,27 @@ +# +# Generic build target +# +DMLIB = ./dmlib/ +MAKE ?= make + +export DMLIB + +unix: + $(MAKE) -f $(DMLIB)Makefile EXEEXT=.bin + +mingw-win32: + $(MAKE) -f $(DMLIB)Makefile.cross-mingw \ + OBJPATH=./obj/win32/ \ + MINGW_PREFIX=i686-w64-mingw32- \ + MINGW_PATH=/usr/i686-w64-mingw32 + +mingw-win64: + $(MAKE) -f $(DMLIB)Makefile.cross-mingw \ + OBJPATH=./obj/win64/ \ + MINGW_PREFIX=x86_64-w64-mingw32- \ + MINGW_PATH=/usr/x86_64-w64-mingw32 + +clean: + -$(MAKE) -f $(DMLIB)Makefile clean EXEEXT=.bin + -$(MAKE) -f $(DMLIB)Makefile.cross-mingw clean + \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.txt Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,9 @@ +anciat productionz - bussi +a modern platform demo @ simulaatio 6 +2015 + +gfx & code by ccr +musics by fgcl + + +maybe works on linux 64, win 64?
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/assets/graffat.svg Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,790 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="640" + height="480" + viewBox="0 0 640.00001 480" + id="svg2" + version="1.1" + inkscape:version="0.91 r13725" + sodipodi:docname="graffat.svg" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/tausta_pv.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <defs + id="defs4"> + <linearGradient + inkscape:collect="always" + id="linearGradient6291"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop6293" /> + <stop + style="stop-color:#452b2b;stop-opacity:1" + offset="1" + id="stop6295" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient6281"> + <stop + style="stop-color:#ffdd29;stop-opacity:1" + offset="0" + id="stop6283" /> + <stop + id="stop6289" + offset="0.5" + style="stop-color:#ff6672;stop-opacity:1;" /> + <stop + style="stop-color:#8a003c;stop-opacity:1" + offset="1" + id="stop6285" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient6273"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop6275" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop6277" /> + </linearGradient> + <filter + style="color-interpolation-filters:sRGB" + inkscape:label="Drop Shadow" + id="filter4947-1"> + <feFlood + flood-opacity="1" + flood-color="rgb(111,6,6)" + result="flood" + id="feFlood4949-3" /> + <feComposite + in="flood" + in2="SourceGraphic" + operator="in" + result="composite1" + id="feComposite4951-3" /> + <feGaussianBlur + in="composite1" + stdDeviation="0.5" + result="blur" + id="feGaussianBlur4953-2" /> + <feOffset + dx="2" + dy="2" + result="offset" + id="feOffset4955-6" /> + <feComposite + in="SourceGraphic" + in2="offset" + operator="over" + result="composite2" + id="feComposite4957-1" /> + </filter> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Drop Shadow" + id="filter5077"> + <feFlood + flood-opacity="1" + flood-color="rgb(0,0,0)" + result="flood" + id="feFlood5079" /> + <feComposite + in="flood" + in2="SourceGraphic" + operator="in" + result="composite1" + id="feComposite5081" /> + <feGaussianBlur + in="composite1" + stdDeviation="0.2" + result="blur" + id="feGaussianBlur5083" /> + <feOffset + dx="1" + dy="1" + result="offset" + id="feOffset5085" /> + <feComposite + in="SourceGraphic" + in2="offset" + operator="over" + result="composite2" + id="feComposite5087" /> + </filter> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Drop Shadow" + id="filter5089"> + <feFlood + flood-opacity="1" + flood-color="rgb(0,0,0)" + result="flood" + id="feFlood5091" /> + <feComposite + in="flood" + in2="SourceGraphic" + operator="in" + result="composite1" + id="feComposite5093" /> + <feGaussianBlur + in="composite1" + stdDeviation="0.2" + result="blur" + id="feGaussianBlur5095" /> + <feOffset + dx="1" + dy="1" + result="offset" + id="feOffset5097" /> + <feComposite + in="SourceGraphic" + in2="offset" + operator="over" + result="composite2" + id="feComposite5099" /> + </filter> + <filter + inkscape:collect="always" + style="color-interpolation-filters:sRGB" + id="filter6098" + x="-0.11021281" + width="1.2204256" + y="-0.11551158" + height="1.2310232"> + <feGaussianBlur + inkscape:collect="always" + stdDeviation="4.3323541" + id="feGaussianBlur6100" /> + </filter> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6273" + id="linearGradient6279" + x1="80.621593" + y1="229.48217" + x2="557.79482" + y2="229.48217" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6281" + id="linearGradient6287" + x1="244.19302" + y1="130.19644" + x2="369.93765" + y2="287.33929" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6291" + id="radialGradient6297" + cx="92.216095" + cy="95.9478" + fx="92.216095" + fy="95.9478" + r="277.83355" + gradientTransform="matrix(2.206919,0.19977447,-0.04307567,0.28930687,-107.16434,122.8543)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Drop Shadow" + id="filter6335"> + <feFlood + flood-opacity="1" + flood-color="rgb(0,0,0)" + result="flood" + id="feFlood6337" /> + <feComposite + in="flood" + in2="SourceGraphic" + operator="in" + result="composite1" + id="feComposite6339" /> + <feGaussianBlur + in="composite1" + stdDeviation="0.9" + result="blur" + id="feGaussianBlur6341" /> + <feOffset + dx="1.3" + dy="1.7" + result="offset" + id="feOffset6343" /> + <feComposite + in="SourceGraphic" + in2="offset" + operator="over" + result="composite2" + id="feComposite6345" /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.7" + inkscape:cx="252.01978" + inkscape:cy="220.30674" + inkscape:document-units="px" + inkscape:current-layer="layer5" + showgrid="false" + units="px" + inkscape:window-width="1278" + inkscape:window-height="992" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + fit-margin-bottom="-0.5" /> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:groupmode="layer" + id="layer5" + inkscape:label="tausta päivä" + style="display:inline"> + <rect + style="opacity:1;fill:#cdcdff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + id="rect5602" + width="648.98187" + height="318.87228" + x="-0.15820791" + y="-3.0075693" + rx="3.6606297" + ry="3.66063" /> + <path + style="opacity:1;fill:#008325;fill-opacity:1;fill-rule:nonzero;stroke:#363636;stroke-width:7.35969019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m -16.651945,307.50827 14.0914372,-0.0213 99.7554988,-1.63891 c 78.745479,-6.48624 200.862189,-1.58456 258.924359,-5.64518 125.14022,-8.75177 163.56406,7.31108 293.22981,7.31108 7.13934,0 11.01266,-0.006 18.40679,-0.006 2.1634,0 3.90502,1.81928 3.90502,4.0791 l 0,199.27124 c 0,2.25983 -1.74162,4.07911 -3.90502,4.07911 l -684.407895,0 c -2.163384,0 -3.905026,-1.81928 -3.905026,-4.07911 l 0,-199.27124 c 0,-2.25982 1.741733,-4.10014 3.905026,-4.0791 z" + id="rect5600" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccssssssssssc" /> + <g + id="g6102" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/aurinko.png" + inkscape:export-xdpi="90.154968" + inkscape:export-ydpi="90.154968" + transform="translate(-302.85714,-232.85714)"> + <path + d="M 557.1981,56.744335 A 47.170788,45.006958 0 0 1 510.05119,101.75129 47.170788,45.006958 0 0 1 462.85655,56.789896 47.170788,45.006958 0 0 1 509.95569,11.737429 47.170788,45.006958 0 0 1 557.198,56.653214" + sodipodi:open="true" + sodipodi:end="6.2811607" + sodipodi:start="0" + sodipodi:ry="45.006958" + sodipodi:rx="47.170788" + sodipodi:cy="56.744335" + sodipodi:cx="510.02731" + sodipodi:type="arc" + id="path5605" + style="opacity:1;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + style="opacity:1;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1;filter:url(#filter6098)" + id="path5672" + sodipodi:type="arc" + sodipodi:cx="510.02731" + sodipodi:cy="56.744335" + sodipodi:rx="47.170788" + sodipodi:ry="45.006958" + sodipodi:start="0" + sodipodi:end="6.2811607" + sodipodi:open="true" + d="M 557.1981,56.744335 A 47.170788,45.006958 0 0 1 510.05119,101.75129 47.170788,45.006958 0 0 1 462.85655,56.789896 47.170788,45.006958 0 0 1 509.95569,11.737429 47.170788,45.006958 0 0 1 557.198,56.653214" /> + </g> + <g + id="g6237" + transform="matrix(0.57468849,0,0,0.67705684,-65.691873,66.295383)" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/puu_pv_1.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <g + id="g6255"> + <g + id="g6246"> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142" + d="m -264.30865,-7.3538841 c -17.3839,1.835498 -39.88532,-3.7117619 -52.26172,11.7597658 -12.87486,20.2443283 -8.22244,50.6980283 -31.40625,63.9980473 -15.39727,7.431279 -40.12346,-2.560103 -54.21717,8.22308 -16.24661,8.105521 19.96569,64.197641 22.28185,84.177981 -0.98231,18.16807 -20.26952,52.99142 -2.23506,59.78353 25.44982,12.6061 30.37972,-23.83982 56.61415,-15.18157 23.83664,5.61039 30.64699,32.99001 56.63637,31.24217 18.258,2.59451 36.62699,-33.91227 54.69336,-34.08467 20.76746,7.54819 40.34892,0.29678 50.60742,13.22852 24.91621,20.00379 59.37403,23.99789 90.177731,19.51367 19.086488,-1.97248 30.239605,-21.85752 27.478516,-39.76172 -2.418071,-17.96398 -3.435271,-39.12522 14.267578,-49.9414 C -16.07674,130.76698 0.66015517,111.45475 -4.1445312,88.15625 -6.034775,72.963501 -10.173315,54.841345 -26.490234,49.125 -61.688169,29.242601 -99.19414,9.7416657 -137.434,9.3290097 c -17.50452,-6.543462 -23.25477,-30.3286437 -43.60156,-33.1874997 -23.87587,-5.577331 -48.81104,-3.768255 -73.15235,-5.306641 -7.07776,-0.143705 -3.03963,21.7271041 -10.12074,21.8112469 z M -79.851968,9.8407287 c 3.660968,0.0219 -2.573987,0.04807 0,0 z" + style="opacity:1;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6106" + d="m -241.08594,81.003906 c -7.72577,0.01936 -16.76332,-0.270507 -22.58984,5.6875 -1.85659,1.571296 -22.3886,7.696826 -17.25335,6.503628 2.31478,0.02332 0,0 20.23437,-1.046596 l -1.64397,21.430522 c 5.25514,1.74833 2.98106,-17.578493 7.86412,-20.793804 3.36756,-5.637315 9.82912,-10.175046 16.63672,-8.642578 5.90171,1.101691 11.08238,4.293083 15.33398,8.441406 l -1.86328,0.03906 c 0.70456,5.258041 5.58486,8.052546 9.74024,10.451176 5.11183,3.47809 10.834,6.76964 14.16992,12.15039 2.47587,4.75111 -3.72889,7.42816 -5.65039,10.98828 -3.36644,4.278 -4.23041,9.69212 -3.66992,14.96875 -2.34857,2.93257 -4.6747,5.60919 -6.95704,7.55469 -1.30013,-2.93541 -2.83597,-5.90772 -3.9375,-8.25 -3.79527,-4.95114 -7.52249,-10.46173 -13.51171,-13 -10.90784,-4.65536 -23.14,-4.15823 -34.76758,-4.18555 -7.09274,-0.15308 -13.75776,3.25086 -20.86133,2.14844 -3.68998,-0.51114 -19.86543,-7.3921 -22.88281,-9.63421 l -0.84571,6.92327 c 6.92907,5.83153 16.49189,5.27413 24.97852,5.19922 -8.52586,4.08983 -15.2124,11.53741 -24.59375,13.95898 -10.58475,2.70533 -21.7556,3.56716 -32.57813,1.8711 -7.43711,-0.4079 -15.03861,-1.08258 -22.39062,0.44922 l 9.5,1.30664 c -3.98174,0.0127 -4.70286,0.0194 -0.3125,0.20703 16.86935,2.05883 34.03537,1.83515 50.89258,-0.24805 9.87422,-1.09635 18.4362,-6.47506 26.15234,-12.36719 4.30932,-2.42635 8.95405,-6.07773 14.1582,-4.86132 10.52025,1.50158 22.03862,2.35485 30.55665,9.39453 5.31532,9.31824 4.69769,20.63967 9.53711,30.18164 0.87002,1.90932 1.75998,3.85107 2.71289,5.76562 0.10577,1.89771 0.26577,3.80115 0.46289,5.70899 -8.47697,-2.21624 -17.25302,-2.12945 -25.99805,-1.96289 -4.40709,-0.22112 -8.7997,-0.7323 -13.16797,-1.3418 -5.72327,-0.65184 -16.91136,-10.21621 -21.67327,-13.45117 l 7.53488,13.62109 c -1.2751,0.22587 -16.49868,-4.93982 -13.70927,-3.90625 5.26412,3.69504 11.57488,5.45945 17.91211,6.10156 8.30467,1.26353 16.68637,1.27834 25.06446,1.17969 0.67598,0.0272 1.32224,0.0576 1.68359,0.0957 6.60563,0.70379 13.68088,1.63538 19.14258,5.74024 1.61412,1.41024 3.16108,2.89104 4.66601,4.41602 4.6784,27.56566 15.17083,55.1706 8.98829,76.5664 -3.96649,15.60448 -10.91208,30.24086 -17.33594,44.93945 -2.98414,5.93359 -7.65404,13.0587 -8.9668,18.60547 55.23011,6.96037 40.18885,2.27216 84.42774,1.52344 -2.8222,-14.37948 -13.67413,-27.13559 -11.05469,-42.46484 2.55306,-25.75794 2.54613,-50.13201 3.49219,-74.32422 4.46102,-9.16662 9.51247,-18.04675 13.80273,-27.3086 3.75667,-7.30548 6.85867,-15.00002 11.30859,-21.91796 2.65787,-2.67365 6.06525,-4.73252 9.31836,-6.62696 6.51761,-2.53677 13.72853,-0.22472 20.33594,-2.53906 4.18758,-1.15676 8.00912,-3.28892 11.531251,-5.79492 5.473117,-0.40986 10.211412,-3.34303 14.347656,-6.71875 3.085818,-3.12428 6.408901,0.87323 9.894531,-0.41797 l 10.4375,-1.27148 c -4.159251,-1.76062 -8.615148,-2.91056 -13.144531,-3.03321 -7.158284,0.52541 -15.439598,-1.25375 -21.265625,4.08789 -3.738852,3.84518 -8.897602,2.52123 -12.986332,4.97852 -9.37282,-0.38969 -19.38734,0.25853 -27.28711,5.89648 -4.45857,3.10149 -9.66522,5.08116 -13.50195,9.02539 -3.5285,1.22439 -6.42899,2.88967 -8.83594,4.85938 0.24233,-1.62712 0.49366,-3.256 0.76563,-4.88867 5.53786,-4.00372 7.54269,-10.90301 8.86328,-17.26758 1.56617,-4.75843 5.2694,-8.46906 10.10352,-9.80664 7.63724,-3.60172 15.36116,-8.74777 18.89257,-16.70313 3.63577,-4.72688 4.123,-10.66247 4.48047,-16.38086 0.91853,-6.413374 8.19782,-9.41519 13.97852,-9.283203 3.374153,-0.180569 6.535592,1.612119 9.779295,1.570312 l 12.042969,-1.332031 c -7.368073,-3.378431 -15.724073,-2.412316 -23.597654,-2.6875 -1.90564,-0.02069 -3.81097,-0.06159 -5.7168,-0.03711 -6.82989,0.05191 -15.12888,1.101668 -18.72656,7.773437 -0.11791,3.260595 -2.83618,2.148795 -5.01367,2.093755 -3.11494,3.85114 -1.52861,8.91022 -0.40235,13.17187 1.1328,4.47917 -2.68179,7.88342 -5.73828,10.47852 -5.4757,4.31442 -12.28678,6.68408 -17.3457,11.56836 -7.89109,3.1814 -18.43993,-3.50546 -24.54297,2.73437 -0.0545,0.051 -1.40975,-6.44026 -2.5,-11.5957 1.11145,-3.93062 1.64299,-7.97428 0.50195,-12.0293 -1.95335,-7.50046 -9.77963,-10.43334 -15.39843,-14.69335 -8.21674,-5.804005 -14.02679,-15.55057 -24.39844,-17.865243 -5.74578,-1.514356 -11.70247,-1.662892 -17.60938,-1.677731 z m 167.150393,60.259764 c 3.871731,0.221 -0.881519,0.1356 -2.25,0.1211 l 1.119141,-0.10157 z m -47.669923,16.09766 c 3.58804,0.0273 -2.38749,0.10874 0,0 z" + style="opacity:1;fill:#552200;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4" + d="m -296.78862,-14.063159 c -6.14361,0.648679 -14.09578,-1.311764 -18.46969,4.1559906 -4.55008,7.154496 -2.90587,17.917066 -11.09921,22.6173964 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.7737404 -7.89714,-13.7939404 -12.43922,-7.02659 -25.69411,-13.91837 -39.20837,-14.064205 -6.18623,-2.3125086 -8.21841,-10.7183726 -15.40912,-11.7287146 -8.43791,-1.971071 -17.25019,-1.33173 -25.8526,-1.875407 -2.50133,-0.05079 -1.07423,7.678524 -3.57674,7.70826 z m 65.18839,6.0767066 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-0" + d="m -167.48909,-5.8054488 c -6.14361,0.648679 -14.09578,-1.311764 -18.46969,4.1559908 -4.55008,7.154496 -2.90587,17.917066 -11.09921,22.617396 -5.44151,2.62627 -14.17994,-0.90476 -19.16077,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99417,4.4551 10.73643,-8.42517 20.00788,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.745306,-0.69709 10.686906,-7.72461 9.711116,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 C -95.881484,7.1280278 -109.13637,0.23624802 -122.65063,0.09041302 -128.83686,-2.222096 -130.86904,-10.62796 -138.05975,-11.638302 c -8.43791,-1.971071 -17.25019,-1.33173 -25.8526,-1.875407 -2.50133,-0.05079 -1.07423,7.6785242 -3.57674,7.7082602 z m 65.18839,6.07670682 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5" + d="m -116.98147,122.48392 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.042273,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.439223,-7.02659 -25.694113,-13.91837 -39.208373,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5-7" + d="m -165.46879,19.448363 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.127947 8.99416,4.4551 10.73642,-8.425167 20.00787,-5.365277 8.42405,1.98276 10.83088,11.658917 20.01572,11.041217 6.45252,0.91692 12.94426,-11.984847 19.32905,-12.045777 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.069487 20.98323,8.481037 31.869491,6.896277 6.74531,-0.69709 10.68691,-7.724607 9.71112,-14.052087 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.43922,-7.02659 -25.694111,-13.91837 -39.208371,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.293811,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5-7-0" + d="m -352.34701,132.58545 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.43922,-7.02659 -25.69411,-13.91837 -39.20837,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + </g> + </g> + </g> + <g + style="display:inline" + id="g6237-2" + transform="matrix(-0.36912126,0,0,0.50086084,-308.46763,410.34937)" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/puu_pv_2.png" + inkscape:export-xdpi="90.133705" + inkscape:export-ydpi="90.133705"> + <g + id="g6255-3"> + <g + id="g6246-9"> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-3" + d="m -264.30865,-7.3538841 c -17.3839,1.835498 -39.88532,-3.7117619 -52.26172,11.7597658 -12.87486,20.2443283 -8.22244,50.6980283 -31.40625,63.9980473 -15.39727,7.431279 -40.12346,-2.560103 -54.21717,8.22308 -16.24661,8.105521 19.96569,64.197641 22.28185,84.177981 -0.98231,18.16807 -20.26952,52.99142 -2.23506,59.78353 25.44982,12.6061 30.37972,-23.83982 56.61415,-15.18157 23.83664,5.61039 30.64699,32.99001 56.63637,31.24217 18.258,2.59451 36.62699,-33.91227 54.69336,-34.08467 20.76746,7.54819 40.34892,0.29678 50.60742,13.22852 24.91621,20.00379 59.37403,23.99789 90.177731,19.51367 19.086488,-1.97248 30.239605,-21.85752 27.478516,-39.76172 -2.418071,-17.96398 -3.435271,-39.12522 14.267578,-49.9414 C -16.07674,130.76698 0.66015517,111.45475 -4.1445312,88.15625 -6.034775,72.963501 -10.173315,54.841345 -26.490234,49.125 -61.688169,29.242601 -99.19414,9.7416657 -137.434,9.3290097 c -17.50452,-6.543462 -23.25477,-30.3286437 -43.60156,-33.1874997 -23.87587,-5.577331 -48.81104,-3.768255 -73.15235,-5.306641 -7.07776,-0.143705 -3.03963,21.7271041 -10.12074,21.8112469 z M -79.851968,9.8407287 c 3.660968,0.0219 -2.573987,0.04807 0,0 z" + style="opacity:1;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6106-5" + d="m -241.08594,81.003906 c -7.72577,0.01936 -16.76332,-0.270507 -22.58984,5.6875 -1.85659,1.571296 -22.3886,7.696826 -17.25335,6.503628 2.31478,0.02332 0,0 20.23437,-1.046596 l -1.64397,21.430522 c 5.25514,1.74833 2.98106,-17.578493 7.86412,-20.793804 3.36756,-5.637315 9.82912,-10.175046 16.63672,-8.642578 5.90171,1.101691 11.08238,4.293083 15.33398,8.441406 l -1.86328,0.03906 c 0.70456,5.258041 5.58486,8.052546 9.74024,10.451176 5.11183,3.47809 10.834,6.76964 14.16992,12.15039 2.47587,4.75111 -3.72889,7.42816 -5.65039,10.98828 -3.36644,4.278 -4.23041,9.69212 -3.66992,14.96875 -2.34857,2.93257 -4.6747,5.60919 -6.95704,7.55469 -1.30013,-2.93541 -2.83597,-5.90772 -3.9375,-8.25 -3.79527,-4.95114 -7.52249,-10.46173 -13.51171,-13 -10.90784,-4.65536 -23.14,-4.15823 -34.76758,-4.18555 -7.09274,-0.15308 -13.75776,3.25086 -20.86133,2.14844 -3.68998,-0.51114 -19.86543,-7.3921 -22.88281,-9.63421 l -0.84571,6.92327 c 6.92907,5.83153 16.49189,5.27413 24.97852,5.19922 -8.52586,4.08983 -15.2124,11.53741 -24.59375,13.95898 -10.58475,2.70533 -21.7556,3.56716 -32.57813,1.8711 -7.43711,-0.4079 -15.03861,-1.08258 -22.39062,0.44922 l 9.5,1.30664 c -3.98174,0.0127 -4.70286,0.0194 -0.3125,0.20703 16.86935,2.05883 34.03537,1.83515 50.89258,-0.24805 9.87422,-1.09635 18.4362,-6.47506 26.15234,-12.36719 4.30932,-2.42635 8.95405,-6.07773 14.1582,-4.86132 10.52025,1.50158 22.03862,2.35485 30.55665,9.39453 5.31532,9.31824 4.69769,20.63967 9.53711,30.18164 0.87002,1.90932 1.75998,3.85107 2.71289,5.76562 0.10577,1.89771 0.26577,3.80115 0.46289,5.70899 -8.47697,-2.21624 -17.25302,-2.12945 -25.99805,-1.96289 -4.40709,-0.22112 -8.7997,-0.7323 -13.16797,-1.3418 -5.72327,-0.65184 -16.91136,-10.21621 -21.67327,-13.45117 l 7.53488,13.62109 c -1.2751,0.22587 -16.49868,-4.93982 -13.70927,-3.90625 5.26412,3.69504 11.57488,5.45945 17.91211,6.10156 8.30467,1.26353 16.68637,1.27834 25.06446,1.17969 0.67598,0.0272 1.32224,0.0576 1.68359,0.0957 6.60563,0.70379 13.68088,1.63538 19.14258,5.74024 1.61412,1.41024 3.16108,2.89104 4.66601,4.41602 4.6784,27.56566 15.17083,55.1706 8.98829,76.5664 -3.96649,15.60448 -10.91208,30.24086 -17.33594,44.93945 -2.98414,5.93359 -7.65404,13.0587 -8.9668,18.60547 55.23011,6.96037 40.18885,2.27216 84.42774,1.52344 -2.8222,-14.37948 -13.67413,-27.13559 -11.05469,-42.46484 2.55306,-25.75794 2.54613,-50.13201 3.49219,-74.32422 4.46102,-9.16662 9.51247,-18.04675 13.80273,-27.3086 3.75667,-7.30548 6.85867,-15.00002 11.30859,-21.91796 2.65787,-2.67365 6.06525,-4.73252 9.31836,-6.62696 6.51761,-2.53677 13.72853,-0.22472 20.33594,-2.53906 4.18758,-1.15676 8.00912,-3.28892 11.531251,-5.79492 5.473117,-0.40986 10.211412,-3.34303 14.347656,-6.71875 3.085818,-3.12428 6.408901,0.87323 9.894531,-0.41797 l 10.4375,-1.27148 c -4.159251,-1.76062 -8.615148,-2.91056 -13.144531,-3.03321 -7.158284,0.52541 -15.439598,-1.25375 -21.265625,4.08789 -3.738852,3.84518 -8.897602,2.52123 -12.986332,4.97852 -9.37282,-0.38969 -19.38734,0.25853 -27.28711,5.89648 -4.45857,3.10149 -9.66522,5.08116 -13.50195,9.02539 -3.5285,1.22439 -6.42899,2.88967 -8.83594,4.85938 0.24233,-1.62712 0.49366,-3.256 0.76563,-4.88867 5.53786,-4.00372 7.54269,-10.90301 8.86328,-17.26758 1.56617,-4.75843 5.2694,-8.46906 10.10352,-9.80664 7.63724,-3.60172 15.36116,-8.74777 18.89257,-16.70313 3.63577,-4.72688 4.123,-10.66247 4.48047,-16.38086 0.91853,-6.413374 8.19782,-9.41519 13.97852,-9.283203 3.374153,-0.180569 6.535592,1.612119 9.779295,1.570312 l 12.042969,-1.332031 c -7.368073,-3.378431 -15.724073,-2.412316 -23.597654,-2.6875 -1.90564,-0.02069 -3.81097,-0.06159 -5.7168,-0.03711 -6.82989,0.05191 -15.12888,1.101668 -18.72656,7.773437 -0.11791,3.260595 -2.83618,2.148795 -5.01367,2.093755 -3.11494,3.85114 -1.52861,8.91022 -0.40235,13.17187 1.1328,4.47917 -2.68179,7.88342 -5.73828,10.47852 -5.4757,4.31442 -12.28678,6.68408 -17.3457,11.56836 -7.89109,3.1814 -18.43993,-3.50546 -24.54297,2.73437 -0.0545,0.051 -1.40975,-6.44026 -2.5,-11.5957 1.11145,-3.93062 1.64299,-7.97428 0.50195,-12.0293 -1.95335,-7.50046 -9.77963,-10.43334 -15.39843,-14.69335 -8.21674,-5.804005 -14.02679,-15.55057 -24.39844,-17.865243 -5.74578,-1.514356 -11.70247,-1.662892 -17.60938,-1.677731 z m 167.150393,60.259764 c 3.871731,0.221 -0.881519,0.1356 -2.25,0.1211 l 1.119141,-0.10157 z m -47.669923,16.09766 c 3.58804,0.0273 -2.38749,0.10874 0,0 z" + style="opacity:1;fill:#552200;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-6" + d="m -296.78862,-14.063159 c -6.14361,0.648679 -14.09578,-1.311764 -18.46969,4.1559906 -4.55008,7.154496 -2.90587,17.917066 -11.09921,22.6173964 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.7737404 -7.89714,-13.7939404 -12.43922,-7.02659 -25.69411,-13.91837 -39.20837,-14.064205 -6.18623,-2.3125086 -8.21841,-10.7183726 -15.40912,-11.7287146 -8.43791,-1.971071 -17.25019,-1.33173 -25.8526,-1.875407 -2.50133,-0.05079 -1.07423,7.678524 -3.57674,7.70826 z m 65.18839,6.0767066 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-0-3" + d="m -167.48909,-5.8054488 c -6.14361,0.648679 -14.09578,-1.311764 -18.46969,4.1559908 -4.55008,7.154496 -2.90587,17.917066 -11.09921,22.617396 -5.44151,2.62627 -14.17994,-0.90476 -19.16077,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99417,4.4551 10.73643,-8.42517 20.00788,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.745306,-0.69709 10.686906,-7.72461 9.711116,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 C -95.881484,7.1280278 -109.13637,0.23624802 -122.65063,0.09041302 -128.83686,-2.222096 -130.86904,-10.62796 -138.05975,-11.638302 c -8.43791,-1.971071 -17.25019,-1.33173 -25.8526,-1.875407 -2.50133,-0.05079 -1.07423,7.6785242 -3.57674,7.7082602 z m 65.18839,6.07670682 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5-0" + d="m -116.98147,122.48392 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.042273,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.439223,-7.02659 -25.694113,-13.91837 -39.208373,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5-7-3" + d="m -165.46879,19.448363 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.127947 8.99416,4.4551 10.73642,-8.425167 20.00787,-5.365277 8.42405,1.98276 10.83088,11.658917 20.01572,11.041217 6.45252,0.91692 12.94426,-11.984847 19.32905,-12.045777 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.069487 20.98323,8.481037 31.869491,6.896277 6.74531,-0.69709 10.68691,-7.724607 9.71112,-14.052087 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.43922,-7.02659 -25.694111,-13.91837 -39.208371,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.293811,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccc" + inkscape:connector-curvature="0" + id="path6142-4-5-7-0-4" + d="m -352.34701,132.58545 c -6.14361,0.64868 -14.09578,-1.31176 -18.46969,4.156 -4.55008,7.15449 -2.90587,17.91706 -11.09921,22.61739 -5.44151,2.62627 -14.17993,-0.90476 -19.16076,2.9061 -5.74167,2.86455 7.05603,22.68794 7.87458,29.74914 -0.34716,6.42073 -7.16341,18.72757 -0.78989,21.12795 8.99416,4.4551 10.73642,-8.42517 20.00787,-5.36528 8.42405,1.98276 10.83088,11.65892 20.01572,11.04122 6.45252,0.91692 12.94426,-11.98485 19.32905,-12.04578 7.33938,2.66759 14.25962,0.10489 17.88505,4.67506 8.80558,7.06949 20.98323,8.48104 31.86949,6.89628 6.74531,-0.69709 10.68691,-7.72461 9.71112,-14.05209 -0.85456,-6.34861 -1.21405,-13.82715 5.04227,-17.64967 5.51144,-5.24335 11.42639,-12.06844 9.72837,-20.30231 -0.66802,-5.36923 -2.13061,-11.77374 -7.89714,-13.79394 -12.43922,-7.02659 -25.69411,-13.91837 -39.20837,-14.0642 -6.18623,-2.31251 -8.21841,-10.71838 -15.40912,-11.72872 -8.43791,-1.97107 -17.25019,-1.33173 -25.8526,-1.87541 -2.50133,-0.0508 -1.07423,7.67853 -3.57674,7.70826 z m 65.18839,6.07671 c 1.29381,0.008 -0.90967,0.017 0,0 z" + style="opacity:0.53899997;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + </g> + </g> + </g> + </g> + <g + inkscape:label="bussi" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-572.36216)" + style="display:none" + sodipodi:insensitive="true"> + <g + id="g5203"> + <g + id="g5198"> + <g + transform="matrix(0.93617981,0,0,0.93617981,268.1913,40.112675)" + id="g4209-1"> + <path + sodipodi:open="true" + d="m 199.98711,868.14984 a 31.656208,31.656208 0 0 1 -31.64019,31.65621 31.656208,31.656208 0 0 1 -31.67221,-31.62417 31.656208,31.656208 0 0 1 31.60813,-31.68821 31.656208,31.656208 0 0 1 31.70421,31.59209" + sodipodi:end="6.281161" + sodipodi:start="0" + sodipodi:ry="31.656208" + sodipodi:rx="31.656208" + sodipodi:cy="868.14984" + sodipodi:cx="168.3309" + sodipodi:type="arc" + id="path4150-4" + style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.55186492;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.47162512;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + id="path4152-7-4-7" + sodipodi:type="arc" + sodipodi:cx="168.69548" + sodipodi:cy="869.01953" + sodipodi:rx="17.962099" + sodipodi:ry="17.962099" + sodipodi:start="0" + sodipodi:end="6.281161" + d="m 186.65758,869.01953 a 17.962099,17.962099 0 0 1 -17.95301,17.9621 17.962099,17.962099 0 0 1 -17.97118,-17.94392 17.962099,17.962099 0 0 1 17.93482,-17.98026 17.962099,17.962099 0 0 1 17.98933,17.92572" + sodipodi:open="true" /> + </g> + </g> + </g> + <g + id="g4209" + transform="translate(-11.616754,-13.637059)" + inkscape:export-xdpi="89.555908" + inkscape:export-ydpi="89.555908" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/rengas.png"> + <path + sodipodi:open="true" + d="m 199.98711,868.14984 a 31.656208,31.656208 0 0 1 -31.64019,31.65621 31.656208,31.656208 0 0 1 -31.67221,-31.62417 31.656208,31.656208 0 0 1 31.60813,-31.68821 31.656208,31.656208 0 0 1 31.70421,31.59209" + sodipodi:end="6.281161" + sodipodi:start="0" + sodipodi:ry="31.656208" + sodipodi:rx="31.656208" + sodipodi:cy="868.14984" + sodipodi:cx="168.3309" + sodipodi:type="arc" + id="path4150" + style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.55186492;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.47162512;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + id="path4152-7-4" + sodipodi:type="arc" + sodipodi:cx="168.69548" + sodipodi:cy="869.01953" + sodipodi:rx="17.962099" + sodipodi:ry="17.962099" + sodipodi:start="0" + sodipodi:end="6.281161" + d="m 186.65758,869.01953 a 17.962099,17.962099 0 0 1 -17.95301,17.9621 17.962099,17.962099 0 0 1 -17.97118,-17.94392 17.962099,17.962099 0 0 1 17.93482,-17.98026 17.962099,17.962099 0 0 1 17.98933,17.92572" + sodipodi:open="true" /> + </g> + <g + id="g5252" + inkscape:export-xdpi="90.085808" + inkscape:export-ydpi="90.085808" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/auto.png"> + <rect + ry="3.66063" + rx="3.6606302" + y="845.7229" + x="97.921669" + height="14.836616" + width="12.500637" + id="rect5101" + style="opacity:1;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <rect + ry="3.66063" + rx="3.6606302" + y="730.97583" + x="98.363602" + height="14.836616" + width="12.500637" + id="rect5101-6" + style="opacity:1;fill:#ff5555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <path + id="rect4136" + transform="translate(0,572.36216)" + d="m 104.93359,157.23828 c -4.47761,0.0323 -3.93554,0.52281 -3.93554,6.3125 l 0,119.60156 c 0,6.61678 -1.242777,6.95704 3.5,6.95704 l 15.85909,0 c 2.31307,-2.1643 0.60848,-4.37944 4.92929,-5.14177 17.19306,-3.03345 47.19461,-3.04094 62.74798,-0.22812 3.29022,0.59503 1.59726,3.61683 3.03702,5.36989 l 203.64568,0 c 7.10269,-2.9299 52.53654,-3.26238 60.86169,0 l 17.263,0 c -0.47509,-40.30589 0.20459,-6.61496 -0.0723,-46.92188 1.18269,-7.14949 -18.32425,-85.94922 -31.00195,-85.94922 l -328.3418,0 -6.25,0 c -0.86073,0 -1.60253,-0.005 -2.24219,0 z m 8.31446,14.65039 35.71289,0 c 2.02799,0 3.66015,1.63217 3.66015,3.66016 l 0,34.35547 c 0,2.02799 -1.63216,3.66015 -3.66015,3.66015 l -35.71289,0 c -2.02799,0 -3.66016,-1.63216 -3.66016,-3.66015 l 0,-34.35547 c 0,-2.02799 1.63217,-3.66016 3.66016,-3.66016 z m 56.64648,0 35.71289,0 c 2.02799,0 3.66016,1.63217 3.66016,3.66016 l 0,34.35547 c 0,2.02799 -1.63217,3.66015 -3.66016,3.66015 l -35.71289,0 c -2.02799,0 -3.66018,-1.63216 -3.66015,-3.66015 l 0,-34.35547 c 0,-2.02799 1.63216,-3.66016 3.66015,-3.66016 z m 54.01172,0 35.71289,0 c 2.02799,0 3.66016,1.63217 3.66016,3.66016 l 0,34.35547 c 0,2.02799 -1.63217,3.66015 -3.66016,3.66015 l -35.71289,0 c -2.02799,0 -3.66016,-1.63216 -3.66016,-3.66015 l 0,-34.35547 c 0,-2.02799 1.63217,-3.66016 3.66016,-3.66016 z m 57.96289,0 35.71289,0 c 2.02799,0 3.66016,1.63217 3.66016,3.66016 l 0,34.35547 c 0,2.02799 -1.63217,3.66015 -3.66016,3.66015 l -35.71289,0 c -2.02799,0 -3.66016,-1.63216 -3.66016,-3.66015 l 0,-34.35547 c 0,-2.02799 1.63217,-3.66016 3.66016,-3.66016 z m 56.56836,0 35.71289,0 c 2.02799,0 3.66016,1.63217 3.66016,3.66016 l 0,34.35547 c 0,2.02799 -1.63217,3.66015 -3.66016,3.66015 l -35.71289,0 c -2.02799,0 -3.66016,-1.63216 -3.66016,-3.66015 l 0,-34.35547 c 0,-2.02799 1.63217,-3.66016 3.66016,-3.66016 z" + style="opacity:1;fill:#d40000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.66445178;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + inkscape:connector-curvature="0" + sodipodi:nodetypes="sssscsscccccscssssssssssssssssscsssssssssssssssssssssssssssss" /> + <path + sodipodi:nodetypes="sssssssss" + inkscape:connector-curvature="0" + id="rect4147" + d="m 403.69332,763.05131 23.14689,0 c 0.76662,0 19.10705,5.914 19.12621,14.59382 l 0.15363,69.61197 c 0.004,1.64915 -1.40457,2.97679 -3.14925,2.97679 l -39.27748,0 c -1.74467,0 -3.14923,-1.32764 -3.14923,-2.97679 l 0,-81.22899 c 0,-1.64914 1.40456,-2.9768 3.14923,-2.9768 z" + style="opacity:1;fill:#550000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.8956213;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <text + sodipodi:linespacing="89.999998%" + id="text4234" + y="818.32178" + x="290.04675" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:28.8438549px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter5077)" + xml:space="preserve"><tspan + y="818.32178" + x="290.04675" + id="tspan4236" + sodipodi:role="line">simulaatio 6</tspan></text> + <g + style="display:inline;opacity:1;filter:url(#filter4947-1)" + transform="matrix(0.60345607,0,0,0.60345607,108.06329,787.2865)" + id="g4707-3"> + <path + style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:0.68000034" + d="m 25.837004,42.073124 c 12.50294,-8.536854 25.93082,-15.69318 39.684771,-21.984083 5.773888,-2.766362 12.223271,-3.075065 18.494436,-2.564463 4.3539,0.30233 8.92568,0.465998 13.03847,1.827715 10.479389,10.970616 20.958779,21.941232 31.438169,32.911848 -3.56271,3.148444 -7.12543,6.296888 -10.68814,9.445332 -10.60528,0 -21.210569,0 -31.815849,0 -1.82278,7.373988 -3.645569,14.747975 -5.468353,22.121963 -4.474105,4.474105 -8.948209,8.94821 -13.422314,13.422315 -12.345215,0.248561 -24.690431,0.497123 -37.035646,0.745684 -1.822783,-2.071345 -3.645567,-4.142689 -5.46835,-6.214034 2.632994,-8.24508 6.022592,-16.336439 8.172169,-24.681517 -0.07274,-1.963845 -0.14547,-3.927689 -0.218205,-5.891533 -3.231298,-0.579977 -6.462596,-1.159953 -9.693894,-1.73993 -1.574222,-1.822783 -3.148444,-3.645567 -4.722666,-5.46835 2.568467,-3.976982 5.136935,-7.953965 7.705402,-11.930947 z" + id="path4622-8" + inkscape:connector-curvature="0" /> + <path + style="display:inline;opacity:1;fill:#ff0000;fill-opacity:1" + d="M 86.450321,12.303159 C 80.883839,12.428916 74.67325,13.860679 67.940555,16.592221 41.153364,27.46013 19.780488,41.144018 14.924931,50.533628 c -3.543861,6.85307 1.193611,13.330625 10.890625,14.890624 2.595156,0.417491 4.716797,0.963407 4.716797,1.212891 0,0.24946 -2.02761,5.356125 -4.507813,11.347656 -6.244292,15.084611 -5.04092,20.845522 4.830078,23.103521 2.244871,0.51349 12.394728,0.86788 22.552735,0.78515 23.597355,-0.19226 23.27177,0.0162 31.431638,-20.265624 3.29967,-8.201519 6.72894,-16.241821 7.61914,-16.80664 0.89021,-0.564826 8.242839,-0.167196 16.341799,-0.177735 15.54393,-0.02033 19.56557,-1.001695 22.36718,-5.457031 2.35215,-3.740619 1.6852,-11.865174 -1.38086,-16.826172 -3.37512,-5.461063 -21.48108,-22.181876 -28.69335,-26.498047 -4.153389,-2.485603 -9.076079,-3.66482 -14.642579,-3.539062 z m -0.55865,7.239285 c 0.69804,-0.02892 3.56844,0.378265 3.61911,0.979501 0.14737,1.748769 -2.310642,5.448638 -1.34562,6.32211 1.92111,0 -0.964894,0.321621 5.740396,0.321621 4.9079,0 6.690153,-0.07546 8.911873,1.671096 L 106.6593,31.86958 86.577271,31.644971 C 75.158649,31.518219 62.065079,31.265855 59.290165,31.223081 l -4.146484,-0.06445 3.482422,-2.418748 c 1.915079,-0.86506 7.664276,-1.574222 12.77539,-1.574222 6.117681,0 8.503416,-0.255877 10.129749,-0.255877 1.237137,-2.109663 0.772354,-4.89581 1.926968,-6.882981 0.21097,-0.352572 1.735421,-0.455442 2.433461,-0.484359 z m -4.992131,0.778293 c 0.586709,0.01557 0.607451,0.510259 0.115235,1.792969 -0.255599,0.666069 -0.854321,2.838461 -1.681642,3.173828 -0.975978,0.395632 -5.753633,0.308593 -7.710937,0.308594 -5.717027,0 -2.566654,-1.378952 4.097656,-3.607422 2.734814,-0.914495 4.42534,-1.687984 5.179688,-1.667969 z m 11.684535,0.62441 c 2.280539,1.298944 1.338746,0.64951 4.083046,2.725199 2.31901,1.754007 2.08722,1.937981 -1.4375,1.886719 -1.78201,-0.02592 -4.809405,0.111334 -5.026325,-0.361484 0.335189,-1.355948 1.69924,-3.808906 2.380779,-4.250434 z M 52.573368,33.22894 c 1.782168,0.02003 2.031441,1.176479 2.44336,5.746094 1.917584,21.27282 6.858785,21.206025 19.517577,21.216797 l 7.47461,0.0059 -5.416016,13.460938 c -2.978935,7.402438 -6.365572,14.902804 -7.523438,16.669921 l 0,0.002 c -2.087778,3.186392 -2.24293,3.211826 -18.748046,3.113282 -9.153606,-0.05462 -17.349789,-0.385304 -18.214843,-0.734375 -0.865051,-0.349053 -1.574219,-1.89433 -1.574219,-3.435547 0,-2.694518 4.591931,-15.56113 7.242187,-20.296875 1.208251,-2.159024 1.373953,-2.133387 2.984375,0.445312 1.074478,1.720508 2.977424,2.730469 5.144532,2.730469 4.885988,0 7.32806,-5.28448 7.09375,-15.349609 l -0.183594,-7.927735 -0.832031,9.017578 c -0.457749,4.959393 -1.576746,9.911831 -2.486328,11.007813 -4.031113,4.85719 -9.829625,0.06219 -8.423829,-6.966797 0.713165,-3.565822 0.633889,-3.624881 -5.220703,-3.771484 C 21.178449,57.795181 18.463788,54.742079 26.3429,47.467309 c 6.326046,-5.840825 18.809474,-13.14087 23.875,-13.96289 0.996932,-0.16178 1.761415,-0.282067 2.355468,-0.275391 z m 12.117187,0.302734 4.183594,0 c 0.350434,0 0.667808,0.311487 0.71289,0.699219 l 2.595704,22.318359 c 0.04508,0.387733 -0.200348,0.701172 -0.550782,0.701172 l -4.183594,0 c -0.350431,0 -0.669761,-0.313434 -0.714843,-0.701172 l -2.59375,-22.318359 c -0.04508,-0.387732 0.200347,-0.699219 0.550781,-0.699219 z m 7.384766,0 4.183593,0 c 0.350434,0 0.669762,0.311487 0.714844,0.699219 l 2.59375,22.318359 c 0.04508,0.387733 -0.200347,0.701172 -0.550781,0.701172 l -4.183594,0 c -0.350434,0 -0.667811,-0.313435 -0.71289,-0.701172 L 71.524539,34.230893 c -0.04508,-0.387732 0.200348,-0.699219 0.550782,-0.699219 z m 7.572266,0 4.183594,0 c 0.350434,0 0.66406,0.312694 0.70312,0.701172 l 2.24415,22.316406 c 0.0391,0.388479 -0.21207,0.701172 -0.5625,0.701172 l -4.183598,0 c -0.350434,0 -0.664063,-0.31269 -0.703125,-0.701172 L 79.085086,34.232846 c -0.03906,-0.388478 0.212066,-0.701172 0.562501,-0.701172 z m -22.537109,0.08008 c 0,0 2.573823,0.01953 5.306639,0.01953 0.890972,5.98874 1.883726,16.878368 2.705079,23.429687 -6.431989,0.212976 -8.011718,-15.154477 -8.011718,-23.449217 z m 29.923823,0.0078 4.18165,0 c 0.35043,0 0.66587,0.312708 0.70507,0.701172 l 2.24219,22.228515 c 0.0392,0.388464 -0.21011,0.701172 -0.56055,0.701172 l -4.18359,0 c -0.35043,0 -0.66392,-0.312706 -0.70312,-0.701172 l -2.24415,-22.228504 c -0.0392,-0.388464 0.21207,-0.701172 0.5625,-0.701172 z m 14.769529,0 3.78814,0 c 0.35043,0 0.66391,0.312708 0.70312,0.701172 l 2.6396,22.228515 c 0.0392,0.388464 -0.21207,0.701172 -0.5625,0.701172 l -4.18164,0 c -0.35043,0 -0.66587,-0.312708 -0.70508,-0.701172 l -2.24219,-22.228515 c -0.0392,-0.388464 0.21012,-0.701172 0.56055,-0.701172 z m -7.384759,0.08789 4.18359,0 c 0.35044,0 0.66378,0.312722 0.70313,0.701172 l 2.244139,22.140624 c 0.0393,0.38845 -0.21207,0.701172 -0.5625,0.701172 l -4.183589,0 c -0.35044,0 -0.66378,-0.312722 -0.70313,-0.701172 l -2.24414,-22.140624 c -0.0393,-0.38845 0.21207,-0.701172 0.5625,-0.701172 z m 14.126949,0.08398 c 0.12334,0.01111 0.24364,0.05662 0.3418,0.140625 2.77569,3.196448 3.74381,4.359958 5.75585,7.455078 0.8518,4.764032 1.336,14.667175 1.43946,14.646485 0.0554,0.497588 -0.31533,0.889626 -0.83203,0.898437 l -3.64453,0.0625 c -0.51678,0 -0.97782,-0.400849 -1.03321,-0.898437 L 107.8136,34.39494 c -0.0416,-0.373192 0.36239,-0.636855 0.73242,-0.603516 z m -58.61523,0.613281 c -1.806369,0 -2.481257,3.913274 -0.941406,5.453125 1.295034,1.295034 2.607202,0.99764 3.244141,-0.734375 0.86612,-2.355222 -0.287871,-4.71875 -2.302735,-4.71875 z m 66.58203,8.328125 c 0.34539,-0.188189 3.32162,3.156737 5.46289,7.822266 0.45495,1.811816 1.23382,4.984987 0.043,6.175781 -1.23349,0.08857 -2.16111,0.03906 -4.22656,0.03906 -0.44209,-4.840273 -1.25866,-12.215835 -1.3125,-13.951172 -0.001,-0.0446 0.0102,-0.07339 0.0332,-0.08594 z" + id="path4140-5-8" + inkscape:connector-curvature="0" + sodipodi:nodetypes="sssssscsssssssszscsccccccscczsssssscssccsscccccscsssscccssssssssccssccsssccssccsscssssssscsccssccssccsssscssccsssccssccsscscccccssscsccccccccc" /> + </g> + <text + sodipodi:linespacing="89.999998%" + id="text4977" + y="838.6604" + x="286.90036" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:22.14336014px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter5089)" + xml:space="preserve"><tspan + y="838.6604" + x="286.90036" + id="tspan4979" + sodipodi:role="line">partybus</tspan></text> + <rect + ry="3.66063" + rx="3.6606302" + y="846.01526" + x="463.03537" + height="14.836616" + width="12.500637" + id="rect5101-6-6" + style="opacity:1;fill:#e3dbdb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + <rect + ry="1.8749303" + rx="1.8749303" + y="848.51532" + x="452.32111" + height="10.597798" + width="8.9292088" + id="rect5101-6-6-6" + style="opacity:1;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" /> + </g> + </g> + <g + inkscape:groupmode="layer" + id="layer2" + inkscape:label="anciat prodz" + style="display:none" + sodipodi:insensitive="true"> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.31172562px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="288.35004" + y="479.40714" + id="text5311-2-5-9" + sodipodi:linespacing="89.999998%" + transform="scale(1.1820549,0.84598439)" + inkscape:export-xdpi="91.234283" + inkscape:export-ydpi="91.234283" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/presents.png"><tspan + sodipodi:role="line" + id="tspan5313-8-7-5" + x="288.35004" + y="479.40714">presents</tspan></text> + <g + id="g4263" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/ap.png" + inkscape:export-xdpi="89.909584" + inkscape:export-ydpi="89.909584"> + <g + inkscape:export-ydpi="300.27301" + inkscape:export-xdpi="300.27301" + id="g5526" + style="display:inline;stroke:#000000;stroke-width:6.80000019;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + transform="translate(12.121829,3.0304569)"> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 161.33125,128.3596 c -4.23833,47.93019 -13.52158,56.51519 -27.74921,90.23072 -9.69892,27.56932 -22.70458,53.79877 -34.836732,80.33959 -6.598361,-0.0175 -18.172905,2.20688 -6.183845,2.6902 10.569247,-0.4965 -3.987566,12.25331 -4.201002,17.50802 -4.743096,9.76687 -12.684171,22.94882 -3.535078,32.58694 7.769559,6.05753 17.775287,8.40943 26.266517,13.38592 5.73303,3.3249 11.12943,6.40667 17.84872,4.59187 2.67216,-0.88424 12.57762,0.54155 9.40821,-2.20826 -10.78426,-6.32464 -22.63197,-10.72719 -33.63569,-16.56598 -10.700577,-8.09393 -1.85612,-21.68752 2.46602,-30.92631 4.94491,-9.65627 7.89221,-22.39268 21.49737,-19.2835 46.67352,-2.76629 93.0376,-9.0627 139.53316,-13.76527 7.0843,-0.67352 10.47322,-1.26477 1.88338,-2.07085 -7.1528,-1.12969 -14.31045,-2.57683 -21.47959,-0.42092 -43.36263,4.27128 -86.57621,10.20212 -130.08106,12.93712 10.79928,-24.1599 22.51632,-47.96459 31.63281,-72.83593 -0.9876,22.30585 1.67049,44.55582 4.84571,66.59179 l 18.6875,-0.28711 c -4.92272,-29.15474 -6.63597,-58.86653 -3.69821,-88.32998 1.88586,-24.30427 6.23083,-48.30154 10.34274,-72.29111 -1.00134,-3.10683 -15.09518,-1.87695 -19.01172,-1.87695 z" + id="path5270-5" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccccccccccccccccccc" /> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 262.00923,96.95118 c -5.95065,0.16183 -11.5535,0.10097 -13.07438,2.43624 -23.59246,25.72762 -34.1838,89.55984 -42.6633,123.25848 0.15008,-22.80312 1.90226,-45.65706 3.24153,-68.40129 0.19772,-6.16978 4.65615,-49.60151 4.44888,-55.63586 -4.6644,-0.58403 -14.09569,-0.65123 -18.229,-0.37248 -3.56994,20.22993 -5.75169,78.3626 -7.17986,98.86591 -0.72942,20.38175 -1.8977,41.15861 1.03235,61.30973 4.75509,0.56257 12.50343,0.42226 16.89964,0.30184 2.95135,-0.90565 3.52927,-3.50657 4.85827,-7.59247 2.04233,-9.51465 4.61688,-19.17816 6.33857,-28.93938 6.77472,-32.82353 14.53971,-66.01434 31.19673,-95.43331 -9.55084,51.07704 -17.18541,102.49854 -22.95723,154.13891 2.62189,3.93854 9.58899,0.93085 13.9471,1.95551 5.83022,0.21164 5.21612,-7.34141 5.23236,-11.3012 4.77737,-40.20443 10.33558,-80.34184 17.9384,-120.12291 2.86811,-17.40041 7.71584,-34.69274 9.01817,-52.34615 -1.00109,-4.28235 -5.97672,-2.2323 -10.04823,-2.12157 z" + id="path5276-9" + inkscape:connector-curvature="0" + sodipodi:nodetypes="sccccccccccccccccs" /> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 294.57748,109.58513 c -22.32051,53.05854 -37.11084,126.89446 -8.48652,174.71795 5.01141,7.89182 13.37368,14.4747 23.19542,13.75625 8.1988,-0.53654 17.94283,1.39352 24.23849,-5.29373 13.97749,-14.42706 18.29809,-35.03255 20.80437,-54.29846 -6.26953,-0.0658 -12.53906,-0.13151 -18.80859,-0.19727 -2.3411,18.41982 -0.28794,33.53139 -13.70029,47.2986 -5.18382,3.93693 -16.14721,-1.95594 -19.15644,-5.7501 -18.63353,-43.53145 -19.25202,-96.08897 -3.79828,-140.35387 6.43924,-17.57348 7.72306,-30.88373 18.20691,-30.7627 10.48384,0.12103 8.92183,3.30422 9.76042,8.31417 l 15.27557,0 c -1.52776,-7.55681 -4.91496,-16.70843 -15.39453,-16.83789 -10.47957,-0.12946 -24.8386,-2.3197 -32.13653,9.40705 z" + id="path5282-1" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccczcczc" /> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 328.09887,139.47268 c -1.86539,27.20645 3.45317,52.84426 3.73523,78.59485 8.20649,-0.0237 16.413,-0.0475 24.6195,-0.0712 -3.15025,-26.55051 -3.92378,-53.03122 -3.43794,-78.52371 l -24.91679,0 z" + id="path5284-3" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccc" /> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 402.31378,88.73262 c -8.60611,25.36144 -14.09854,56.02647 -17.65676,80.44559 -4.27162,-7.59602 -8.56385,-15.18073 -12.75067,-22.824 l -15.25499,0.77869 c 8.09627,14.35221 16.13305,28.73763 24.21314,43.09883 0.0749,6.61929 -21.37811,76.84147 -20.60803,79.69811 l 14.03233,1.30493 c 4.27404,-9.34705 8.73914,-57.45085 16.19127,-68.78942 19.18619,32.82019 50.75138,86.92977 68.47151,120.59658 3.83687,0.48334 17.64054,2.82081 17.63112,1.84098 -12.83135,-27.65174 -18.45992,-57.88611 -29.73942,-86.13294 -11.91275,-32.44627 -21.15185,-66.10049 -23.91429,-100.66294 -2.2049,-15.62172 -2.2283,-31.65908 -6.20781,-46.96225 -4.888,-0.19172 -9.74197,-0.90324 -14.4074,-2.39216 z m 4.55999,41.40365 c 2.46589,25.15553 6.14617,50.26359 13.57103,74.49004 5.57095,20.05954 13.26721,39.43327 19.65315,59.23024 -15.25007,-24.23849 -29.58165,-49.03103 -43.79259,-73.88759 3.96526,-19.86717 5.97809,-40.07931 10.56841,-59.83269 z" + id="path5286-6" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccccccccccccc" /> + <path + style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:6.80000019;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 520.13383,171.03931 c -0.37061,12.7895 -4.84137,28.47882 -4.0535,41.17635 13.29632,4.77475 30.10148,5.30785 41.52106,13.84827 2.45255,2.54126 -19.19791,6.64365 -20.81013,6.74744 -6.05808,-4.98239 -13.34377,-8.21847 -20.50781,-11.30274 0.39862,23.29843 1.19742,46.61717 0.23828,69.91016 l -18.62304,-0.0684 c 1.21554,-25.60603 0.2124,-51.25857 -0.36914,-76.87109 -37.51723,-12.504 -23.98398,-0.54975 -62.17969,-10.64461 l -0.0466,-22.66594 c 31.90101,8.3969 30.244,15.74575 61.90989,25.01953 -0.79859,-10.775 -3.85419,-30.79921 -4.18661,-41.58873 8.69953,0.43229 17.44355,6.62141 27.1073,6.43976 z" + id="path5288-4" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccccccc" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.31172562px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#999999;fill-opacity:1;stroke:#000000;stroke-width:6.80000019;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + x="245.23929" + y="397.45227" + id="text5311-2" + sodipodi:linespacing="89.999998%" + transform="scale(1.1820549,0.84598438)"><tspan + sodipodi:role="line" + id="tspan5313-8" + x="245.23929" + y="397.45227">productions</tspan></text> + </g> + <g + inkscape:export-ydpi="89.840431" + inkscape:export-xdpi="89.840431" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/ap.png" + id="g5526-7" + style="display:inline;fill:url(#linearGradient6287);fill-opacity:1;stroke:none" + transform="translate(10.101525,1.0101519)"> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 161.33125,128.3596 c -4.23833,47.93019 -13.52158,56.51519 -27.74921,90.23072 -9.69892,27.56932 -22.70458,53.79877 -34.836732,80.33959 -6.598361,-0.0175 -18.172905,2.20688 -6.183845,2.6902 10.569247,-0.4965 -3.987566,12.25331 -4.201002,17.50802 -4.743096,9.76687 -12.684171,22.94882 -3.535078,32.58694 7.769559,6.05753 17.775287,8.40943 26.266517,13.38592 5.73303,3.3249 11.12943,6.40667 17.84872,4.59187 2.67216,-0.88424 12.57762,0.54155 9.40821,-2.20826 -10.78426,-6.32464 -22.63197,-10.72719 -33.63569,-16.56598 -10.700577,-8.09393 -1.85612,-21.68752 2.46602,-30.92631 4.94491,-9.65627 7.89221,-22.39268 21.49737,-19.2835 46.67352,-2.76629 93.0376,-9.0627 139.53316,-13.76527 7.0843,-0.67352 10.47322,-1.26477 1.88338,-2.07085 -7.1528,-1.12969 -14.31045,-2.57683 -21.47959,-0.42092 -43.36263,4.27128 -86.57621,10.20212 -130.08106,12.93712 10.79928,-24.1599 22.51632,-47.96459 31.63281,-72.83593 -0.9876,22.30585 1.67049,44.55582 4.84571,66.59179 l 18.6875,-0.28711 c -4.92272,-29.15474 -6.63597,-58.86653 -3.69821,-88.32998 1.88586,-24.30427 6.23083,-48.30154 10.34274,-72.29111 -1.00134,-3.10683 -15.09518,-1.87695 -19.01172,-1.87695 z" + id="path5270-5-8" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccccccccccccccccccc" /> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 262.00923,96.95118 c -5.95065,0.16183 -11.5535,0.10097 -13.07438,2.43624 -23.59246,25.72762 -34.1838,89.55984 -42.6633,123.25848 0.15008,-22.80312 1.90226,-45.65706 3.24153,-68.40129 0.19772,-6.16978 4.65615,-49.60151 4.44888,-55.63586 -4.6644,-0.58403 -14.09569,-0.65123 -18.229,-0.37248 -3.56994,20.22993 -5.75169,78.3626 -7.17986,98.86591 -0.72942,20.38175 -1.8977,41.15861 1.03235,61.30973 4.75509,0.56257 12.50343,0.42226 16.89964,0.30184 2.95135,-0.90565 3.52927,-3.50657 4.85827,-7.59247 2.04233,-9.51465 4.61688,-19.17816 6.33857,-28.93938 6.77472,-32.82353 14.53971,-66.01434 31.19673,-95.43331 -9.55084,51.07704 -17.18541,102.49854 -22.95723,154.13891 2.62189,3.93854 9.58899,0.93085 13.9471,1.95551 5.83022,0.21164 5.21612,-7.34141 5.23236,-11.3012 4.77737,-40.20443 10.33558,-80.34184 17.9384,-120.12291 2.86811,-17.40041 7.71584,-34.69274 9.01817,-52.34615 -1.00109,-4.28235 -5.97672,-2.2323 -10.04823,-2.12157 z" + id="path5276-9-3" + inkscape:connector-curvature="0" + sodipodi:nodetypes="sccccccccccccccccs" /> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 294.57748,109.58513 c -22.32051,53.05854 -37.11084,126.89446 -8.48652,174.71795 5.01141,7.89182 13.37368,14.4747 23.19542,13.75625 8.1988,-0.53654 17.94283,1.39352 24.23849,-5.29373 13.97749,-14.42706 18.29809,-35.03255 20.80437,-54.29846 -6.26953,-0.0658 -12.53906,-0.13151 -18.80859,-0.19727 -2.3411,18.41982 -0.28794,33.53139 -13.70029,47.2986 -5.18382,3.93693 -16.14721,-1.95594 -19.15644,-5.7501 -18.63353,-43.53145 -19.25202,-96.08897 -3.79828,-140.35387 6.43924,-17.57348 7.72306,-30.88373 18.20691,-30.7627 10.48384,0.12103 8.92183,3.30422 9.76042,8.31417 l 15.27557,0 c -1.52776,-7.55681 -4.91496,-16.70843 -15.39453,-16.83789 -10.47957,-0.12946 -24.8386,-2.3197 -32.13653,9.40705 z" + id="path5282-1-7" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccczcczc" /> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 328.09887,139.47268 c -1.86539,27.20645 3.45317,52.84426 3.73523,78.59485 8.20649,-0.0237 16.413,-0.0475 24.6195,-0.0712 -3.15025,-26.55051 -3.92378,-53.03122 -3.43794,-78.52371 l -24.91679,0 z" + id="path5284-3-1" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccc" /> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 402.31378,88.73262 c -8.60611,25.36144 -14.09854,56.02647 -17.65676,80.44559 -4.27162,-7.59602 -8.56385,-15.18073 -12.75067,-22.824 l -15.25499,0.77869 c 8.09627,14.35221 16.13305,28.73763 24.21314,43.09883 0.0749,6.61929 -21.37811,76.84147 -20.60803,79.69811 l 14.03233,1.30493 c 4.27404,-9.34705 8.73914,-57.45085 16.19127,-68.78942 19.18619,32.82019 50.75138,86.92977 68.47151,120.59658 3.83687,0.48334 17.64054,2.82081 17.63112,1.84098 -12.83135,-27.65174 -18.45992,-57.88611 -29.73942,-86.13294 -11.91275,-32.44627 -21.15185,-66.10049 -23.91429,-100.66294 -2.2049,-15.62172 -2.2283,-31.65908 -6.20781,-46.96225 -4.888,-0.19172 -9.74197,-0.90324 -14.4074,-2.39216 z m 4.55999,41.40365 c 2.46589,25.15553 6.14617,50.26359 13.57103,74.49004 5.57095,20.05954 13.26721,39.43327 19.65315,59.23024 -15.25007,-24.23849 -29.58165,-49.03103 -43.79259,-73.88759 3.96526,-19.86717 5.97809,-40.07931 10.56841,-59.83269 z" + id="path5286-6-1" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccccccccccccc" /> + <path + style="opacity:1;fill:url(#linearGradient6287);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.69999999;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:20;stroke-opacity:1" + d="m 520.13383,171.03931 c -0.37061,12.7895 -4.84137,28.47882 -4.0535,41.17635 13.29632,4.77475 30.10148,5.30785 41.52106,13.84827 2.45255,2.54126 -19.19791,6.64365 -20.81013,6.74744 -6.05808,-4.98239 -13.34377,-8.21847 -20.50781,-11.30274 0.39862,23.29843 1.19742,46.61717 0.23828,69.91016 l -18.62304,-0.0684 c 1.21554,-25.60603 0.2124,-51.25857 -0.36914,-76.87109 -37.51723,-12.504 -23.98398,-0.54975 -62.17969,-10.64461 l -0.0466,-22.66594 c 31.90101,8.3969 30.244,15.74575 61.90989,25.01953 -0.79859,-10.775 -3.85419,-30.79921 -4.18661,-41.58873 8.69953,0.43229 17.44355,6.62141 27.1073,6.43976 z" + id="path5288-4-6" + inkscape:connector-curvature="0" + sodipodi:nodetypes="ccccccccccccc" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:38.31172562px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:url(#linearGradient6287);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="245.23929" + y="397.45227" + id="text5311-2-8" + sodipodi:linespacing="89.999998%" + transform="scale(1.1820549,0.84598438)"><tspan + style="fill:url(#linearGradient6287);fill-opacity:1;stroke:none" + sodipodi:role="line" + id="tspan5313-8-2" + x="245.23929" + y="397.45227">productions</tspan></text> + </g> + </g> + </g> + <g + inkscape:groupmode="layer" + id="layer4" + inkscape:label="logo" + style="display:none" + sodipodi:insensitive="true"> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:41.97342682px;line-height:89.99999762%;font-family:'Arial Black';-inkscape-font-specification:'Arial Black, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter6335)" + x="502.11761" + y="325.43094" + id="text5466" + sodipodi:linespacing="89.999998%" + transform="scale(0.88518958,1.1297015)" + inkscape:export-xdpi="89.743538" + inkscape:export-ydpi="89.743538" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/dosa.png"><tspan + sodipodi:role="line" + id="tspan5468" + x="502.11761" + y="325.43094">"dösä 2"</tspan></text> + <g + id="g6347" + inkscape:export-xdpi="90.103607" + inkscape:export-ydpi="90.103607" + inkscape:export-filename="/usr/src/prj/demos/bussi/data/bussi_logo.png"> + <text + transform="scale(0.88301905,1.1324784)" + sodipodi:linespacing="89.999998%" + id="text5462" + y="283.18753" + x="363.21094" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:233.38017273px;line-height:89.99999762%;font-family:'Mister Pixel 16 pt - Old Style Figure';-inkscape-font-specification:'Mister Pixel 16 pt - Old Style Figure';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:9.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + xml:space="preserve"><tspan + y="283.18753" + x="363.21094" + id="tspan5464" + sodipodi:role="line">BUSSI</tspan></text> + <text + transform="scale(0.88301905,1.1324784)" + sodipodi:linespacing="89.999998%" + id="text5462-2" + y="279.29361" + x="362.35492" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:233.38017273px;line-height:89.99999762%;font-family:'Mister Pixel 16 pt - Old Style Figure';-inkscape-font-specification:'Mister Pixel 16 pt - Old Style Figure';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:url(#radialGradient6297);fill-opacity:1;stroke:none;stroke-width:9.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + xml:space="preserve"><tspan + style="fill:url(#radialGradient6297);fill-opacity:1" + y="279.29361" + x="362.35492" + id="tspan5464-0" + sodipodi:role="line">BUSSI</tspan></text> + </g> + </g> +</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config.mak Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,88 @@ +# Additional binaries (aka the demo) +DEMO_BIN=demo +DEMO_OBJS=demo.o dmsimple.o + +TOOL_BINPATH=bin/ +TESTS_BINPATH=$(TOOL_BINPATH) + +DM_CFLAGS += -fopenmp +DM_LDFLAGS += -lgomp + +#DM_DEBUG=yes + +# Build engine tests and tools? (Please notice that what +# actually gets built it also affected by other options) +DM_BUILD_TESTS=no +DM_BUILD_TOOLS=no + +# Timeline support? (required for editor and complex demos) +DM_USE_TIMELINE=no + +# Build Qt based demo editor? +DM_BUILD_EDITOR=no + +# Build with runtime asserts? +DM_USE_ASSERTS=yes + +# Use plain C routines? +DM_USE_C=yes + +# Use MMX/SSE SIMD assembler routines? +DM_USE_SIMD=yes + +DM_USE_TREMOR=no + +DM_USE_PACKFS=yes +DM_USE_STDIO=yes +DM_USE_MEMIO=no + +DM_GFX_BM_TEXT=yes +DM_GFX_TTF_TEXT=no +DM_GFX_LINES=no +DM_GFX_BLITS=yes +DM_GFX_MISC=yes + +DM_GFX_8BIT=yes +DM_GFX_32BIT=yes + + +### +### General build options for miniJSS +### +JSS=yes + +# Build a special "light"/minimized version by removing all +# error messages and few other things. (disabled by DM_DEBUG=yes) +JSS_LIGHT=yes + +# Build with extra debugging code? (disabled by JSS_LIGHT=yes) +JSS_DEBUG=yes + + +### Support loading of XM-format module files +JSS_SUP_XM=yes +#JSS_SUP_JSSMOD=yes + +# Enable support for different pattern storage modes +# in the JSSMOD _loader_. Saving in xm2jss is not affected. +#JSSMOD_FLAGS = -DJM_SUP_PATMODE_ALL + +# If SUP_PATMODE_ALL is not defined, then you can enable modes individually +# by uncommenting lines below. Refer to 'xm2jss --help' for mode information. +#JSSMOD_FLAGS += -DJM_SUP_PATMODE_1 +#JSSMOD_FLAGS += -DJM_SUP_PATMODE_2 +#JSSMOD_FLAGS += -DJM_SUP_PATMODE_3 +JSSMOD_FLAGS += -DJM_SUP_PATMODE_4 +#JSSMOD_FLAGS += -DJM_SUP_PATMODE_5 + +# Enable ext. instrument, instrument header and sampledata loading: +# (if you disable these, you better know what you are doing.) +JSSMOD_FLAGS += -DJM_SUP_EXT_INSTR +JSSMOD_FLAGS += -DJM_SUP_INSTR +JSSMOD_FLAGS += -DJM_SUP_SAMPLES + + +### +### Locking/thread support +### +JSS_SUP_THREADS=yes
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/data/SetupData.txt Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,31 @@ +# Tässä määritellään videomoodikonfiguraatiovalikon elementit. +# Taustakuvat on aina SetupImage.png, jonka PITÄÄ olla kokoa 640x480 +# Haluttu fontti on SetupFont.dmf, jonka voi luoda fontconv-ohjelmalla +# esim. Truetype TTF-fonttitiedostosta (kaikki TTF-fontit eivät kyllä +# konvertoidu kauniisti.) + +# Koot ja koordinaatit määritetään desimaalilukuina, esim. +# X (vaaka)-koordinaatti 0.5 on ruudun puoliväli. Koossa 0.5 +# tarkoittaa luonnollisesti puolta (50%) koko ruudusta. + +# Resoluutiovalikon sijainti +menuPos 0.1 0.35 + +# Resoluutiovalikon koko +menuDim 0.8 0.4 + +menuBarOffs 0 -0.002 + +menuBarDimAdj 0 0.01 + +# Fullscreen/windowed -tekstin sijainti +text1Pos 0.04 0.9 + +# "Enter to start" tekstin sijainti +text2Pos 0.25 0.85 + +# Keskitetäänkö valikon tekstit (0 = ei, 1 = kyllä) +menuCenter 1 + +# Tiivistetäänkö fontti: +textCondensed 1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/demo.c Thu May 21 22:52:30 2015 +0300 @@ -0,0 +1,628 @@ +#include "dmengine.h" +#include "dmtext.h" +#include "dmfft.h" +#include "dmvecmat.h" +#include <math.h> + +static int demoInit(DMEngineData *engine); +static void demoShutdown(DMEngineData *engine); +static int demoRender(DMEngineData *engine); + + +int demoPreInit(DMEngineData *engine) +{ + dmInitProg("bussi", + "Bussi by AnCiat ProDz", + "0", "ENGINE INITTIALISSSIZING!!!!!", NULL); + + engine->optPackFilename = "bussi.dat"; + engine->optDataPath = NULL; + engine->optResFlags = DRF_USE_PACK | DRF_PRELOAD_RES | DRF_USE_STDIO; + + engine->optAudioSetup = DM_ASETUP_JSS; + + engine->optVidSetup = DM_VSETUP_ASPECT; + engine->optVidWidth = 640; + engine->optVidHeight = 480; + engine->optVidDepth = 32; + engine->optVFlags = SDL_SWSURFACE; + + engine->demoInit = demoInit; + engine->demoRender = demoRender; + engine->demoShutdown = demoShutdown; + + return DMERR_OK; +} + + +#define FFT_SIZE 128 +DMFFTContext fft; + + +static int demoInit(DMEngineData *engine) +{ + int i; + JSSModule *mod = NULL; + + dmInitializeFFT(&fft, FFT_SIZE); + + engineGetResModule(engine, mod, "pas2.xm"); + + if ((i = jssConvertModuleForPlaying(mod)) != DMERR_OK) + { + dmErrorMsg("Could not convert module for playing, %d: %s\n", + i, dmErrorStr(i)); + return DMERR_INIT_FAIL; + } + + jvmSetCallback(engine->jssDev, jmpExec, engine->jssPlr); + jmpSetModule(engine->jssPlr, mod); + jmpPlayOrder(engine->jssPlr, 0); + jvmSetGlobalVol(engine->jssDev, 55); + + // Jne + srand(15); + + return DMERR_OK; +} + + +static void demoShutdown(DMEngineData *engine) +{ + (void) engine; + dmEndFFT(&fft); +} + + +static inline float dmCX(DMEngineData *engine, const float x) +{ + return (x * engine->screen->w); +} + + +static inline float dmCY(DMEngineData *engine, const float y) +{ + return (y * engine->screen->h); +} + + +static inline float dmQX(DMEngineData *engine, SDL_Surface *img, const float x) +{ + return engine->optVidNative ? (img->w * x) : (img->w * engine->screen->w * x) / 640.0f; +} + + +static inline float dmQY(DMEngineData *engine, SDL_Surface *img, const float y) +{ + return engine->optVidNative ? (img->h * y) : (img->h * engine->screen->h * y) / 480.0f; +} + + +typedef struct +{ + char *filename; + float xc, yc; + SDL_Surface *img; +} DMTextItem; + + +static DMTextItem textItems[] = +{ + { "text01.png", 0.05, 0.10, NULL }, + { "text02.png", 0.10, 0.30, NULL }, + { "text03.png", 0.60, 0.30, NULL }, + { "text04.png", 0.20, 0.60, NULL }, + { "text05.png", 0.30, 0.70, NULL }, +}; + +static const int ntextItems = sizeof(textItems) / sizeof(textItems[0]); + + +static DMTextItem textItems2[] = +{ + { "text11.png", 0.05, 0.10, NULL }, + { "text02.png", 0.30, 0.25, NULL }, + { "text12.png", 0.10, 0.40, NULL }, + { "text13.png", 0.20, 0.60, NULL }, + { "text14.png", 0.30, 0.70, NULL }, +}; + +static const int ntextItems2 = sizeof(textItems2) / sizeof(textItems2[0]); + + +static DMTextItem textItems3[] = +{ + { "teki.png" , 0.25, 0.20, NULL }, + { "mitvit.png" , 0.05, 0.40, NULL }, + { "ja.png" , 0.05, 0.65, NULL }, + { "kemisti.png", 0.15, 0.65, NULL }, +}; + +static const int ntextItems3 = sizeof(textItems3) / sizeof(textItems3[0]); + + + + +#define DM_RADIAL_BLUR(YC, XC) \ + DMVector p1 = { xc, yc, 0, 0 }, p2 = { cx, cy, 0, 0 }, v; \ + dm_vector_sub_r(&v, &p2, &p1); \ + dm_vector_scale(&v, scale); \ + dm_vector_add(&v, &p1); \ + if (v.y YC || v.x XC) continue; \ + DMColor *dp = pix + xc, \ + *q = ((DMColor *)img->pixels) + ((int)(v.y) * pitch) + (int)v.x; \ + dp->r = (q->r + dp->r) / 2; \ + dp->g = (q->g + dp->g) / 2; \ + dp->b = (q->b + dp->b) / 2; + + + +void dmRadialBlur(SDL_Surface *img, const int cx, const int cy, const DMFloat scale) +{ + const int pitch = img->pitch / sizeof(DMColor); + int xc, yc; + +#pragma omp parallel private(yc, xc) shared(img) + { +#pragma omp sections nowait + { +#pragma omp section + for (yc = cy; yc >= 0; yc--) + { + DMColor *pix = ((DMColor *)img->pixels) + yc * pitch; + for (xc = cx + 1; xc < img->w; xc++) + { + DM_RADIAL_BLUR(< 0, >= img->w) + } + } + +#pragma omp section + for (yc = cy; yc >= 0; yc--) + { + DMColor *pix = ((DMColor *)img->pixels) + yc * pitch; + for (xc = cx; xc > 0; xc--) + { + DM_RADIAL_BLUR(< 0, < 0) + } + } + +#pragma omp section + for (yc = cy + 1; yc < img->h; yc++) + { + DMColor *pix = ((DMColor *)img->pixels) + yc * pitch; + for (xc = cx; xc > 0; xc--) + { + DM_RADIAL_BLUR(>= img->h, < 0) + } + } + +#pragma omp section + for (yc = cy + 1; yc < img->h; yc++) + { + DMColor *pix = ((DMColor *)img->pixels) + yc * pitch; + for (xc = cx + 1; xc < img->w; xc++) + { + DM_RADIAL_BLUR(>= img->h, >= img->w) + } + } + } + } +} + + +static int hitlerText(DMEngineData *engine, const int dt, float fftPow, DMTextItem *items, const int nitems, BOOL *nollattu) +{ + int i, vis; + if (!(*nollattu)) + { + for (i = 0; i < nitems; i++) + engineGetResImage(engine, items[i].img, items[i].filename); + + *nollattu = TRUE; + } + + float q = fftPow * 0.05f; + vis = dt / 1000; + for (i = 0; i < nitems; i++) + { + DMTextItem *item = &items[i]; + if (i < vis) + { + dmScaledBlitSurface32to32TransparentGA( + item->img, + dmCX(engine, item->xc - q), + dmCY(engine, item->yc - q), + + dmQX(engine, item->img, 1.0f + q * 2.0f), + dmQY(engine, item->img, 1.0f + q * 2.0f), + + engine->screen, + + 100 + 80 * fftPow); + } + } + + return DMERR_OK; +} + + +static int demoRender(DMEngineData *engine) +{ + float t = engineGetTimeDT(engine); + static DMScaledBlitFunc cblit = NULL; + + // Do FFT + DMFFTType fftPow = 0; + BOOL fftOK = FALSE; + static DMFFTType fftAmp[FFT_SIZE / 2]; + static DMFFTType fftData[FFT_SIZE]; + + dmMutexLock(engine->audioStreamMutex); + if (engine->audioStreamBuf != 0 && engine->audioStreamLen > FFT_SIZE) + { + int i; + Sint16 *buf = (Sint16 *) engine->audioStreamBuf; + for (i = 0; i < FFT_SIZE; i++) + { + fftData[i] = *buf; + buf += 2; + } + fftOK = TRUE; + } + dmMutexUnlock(engine->audioStreamMutex); + + if (fftOK) + { + dmRealFFT(&fft, fftData); + dmConvertFFTtoPowerAndSum(&fft, fftData, fftAmp, 1.0, &fftPow, 0.00004f); + } + + +#if 1 + // Demokoodi + if (t < 5) + { + // Alkufeidi sisään + int dt = engineGetTime(engine, 0); + static DMLerpContext fadeLerp; + static SDL_Surface *tausta = NULL; + static BOOL nollattu = FALSE; + if (!nollattu) + { + engineGetResImage(engine, tausta, "tausta.jpg"); + cblit = dmGetScaledBlitFunc(tausta->format, engine->screen->format, DMD_NONE); + + dmLerpInit(&fadeLerp, 0, 255, 5000); + nollattu = TRUE; + } + + dmClearSurface(engine->screen, dmMapRGB(engine->screen, 0,0,0)); + + dmScaledBlitSurface32to32TransparentGA(tausta, + 0, + 0, + + dmQX(engine, tausta, 1.0f), + dmQX(engine, tausta, 1.0f), + + engine->screen, + dmLerpSCurveClamp(&fadeLerp, dt + 150500 * fftPow)); + } +#endif +#if 0 + else + if (t < 25) + { + static BOOL nollattu = FALSE; + static SDL_Surface *tausta = NULL; + if (!nollattu) + { + engineGetResImage(engine, tausta, "tausta.jpg"); + } + + cblit(tausta, + 0, + 0, + + dmQX(engine, tausta, 1.0f), + dmQX(engine, tausta, 1.0f), + + engine->screen); + } + + if (t <= 7) + { + int dt = engineGetTime(engine, 2); + static DMLerpContext fadeLerp; + static SDL_Surface *logo1 = NULL, *logo2 = NULL; + static BOOL nollattu = FALSE; + if (!nollattu) + { + engineGetResImage(engine, logo1, "iso.png"); + engineGetResImage(engine, logo2, "forevisar.png"); + + dmLerpInit(&fadeLerp, 0, 255, 2500); + nollattu = TRUE; + } + + int fade; + if (dt < 2500) + { + fade = dmLerpSCurveClamp(&fadeLerp, dt + fftPow * 1000); + } + else + if (dt > 4500) + { + fade = 255 - dmLerpSCurveClamp(&fadeLerp, dt - 4500 + fftPow * 1000); + } + else + { + fade = 255; + } + + float d = fftPow * 0.1f; + + dmScaledBlitSurface32to32TransparentGA(logo1, + dmCX(engine, 0.1f), + dmCY(engine, 0.22f), + + dmQX(engine, logo1, 1.0f), + dmQY(engine, logo1, 1.0f), + + engine->screen, + fade); + + dmScaledBlitSurface32to32TransparentGA(logo2, + dmCX(engine, 0.2f - d), + dmCY(engine, 0.72f - d), + + dmQX(engine, logo2, 1.0f + d * 2.0f), + dmQY(engine, logo2, 1.0f + d * 2.0f), + + engine->screen, + fade); + } + else + if (t <= 15) + { + int dt = engineGetTime(engine, 7); + static DMLerpContext fadeLerp; + static SDL_Surface *logo1 = NULL, *logo2 = NULL; + static BOOL nollattu = FALSE; + if (!nollattu) + { + engineGetResImage(engine, logo1, "hitler_on_kiva.png"); + engineGetResImage(engine, logo2, "hitler.png"); + + dmLerpInit(&fadeLerp, 0, 255, 2500); + nollattu = TRUE; + } + + int fade; + if (dt < 2500) + { + fade = dmLerpSCurveClamp(&fadeLerp, dt + fftPow * 1000); + } + else + if (dt > 4500) + { + fade = 255 - dmLerpSCurveClamp(&fadeLerp, dt - 4500 + fftPow * 1000); + } + else + { + fade = 255; + } + + dmScaledBlitSurface32to32TransparentGA(logo1, + dmCX(engine, 0.1f), + dmCY(engine, 0.22f), + + dmQX(engine, logo1, 1.0f), + dmQY(engine, logo1, 1.0f), + + engine->screen, + fade); + + float q = fftPow * 0.2; + dmScaledBlitSurface32to32TransparentGA(logo2, + dmCX(engine, 0.15f), + dmCY(engine, 0.47f - q), + + dmQX(engine, logo2, 1.0f + q), + dmQY(engine, logo2, 1.0f + q), + + engine->screen, + fade); + } + + if (t <= 15) + { + int dt = engineGetTime(engine, 0); + static DMLerpContext posLerp, posLerp2; + static SDL_Surface *mainos = NULL; + static BOOL nollattu = FALSE; + if (!nollattu) + { + engineGetResImage(engine, mainos, "radio.png"); + + dmLerpInit(&posLerp, 1, -1, 15000); + dmLerpInit(&posLerp2, 0.3, 0.7, 15000); + nollattu = TRUE; + } + + dmScaledBlitSurface32to32TransparentGA(mainos, + dmCX(engine, dmLerpSCurveClamp(&posLerp2, dt)), + dmCY(engine, dmLerpSCurveClamp(&posLerp, dt)), + + dmQX(engine, mainos, 1.0f), + dmQY(engine, mainos, 1.0f), + + engine->screen, + 50); + } + else + if (t <= 25) + { + int dt = engineGetTime(engine, 15); + static DMLerpContext posLerp, posLerp2; + static DMScaledBlitFunc qblit = NULL; + static SDL_Surface *mainos = NULL, *mainos2 = NULL, *hitler = NULL, *sydan = NULL; + static BOOL nollattu = FALSE; + if (!nollattu) + { + engineGetResImage(engine, mainos, "lasi.jpg"); + engineGetResImage(engine, mainos2, "nigrolin.jpg"); + engineGetResImage(engine, hitler, "hitler2.png"); + engineGetResImage(engine, sydan, "sydan.png"); + + qblit = dmGetScaledBlitFunc(hitler->format, engine->screen->format, DMD_TRANSPARENT); + + dmLerpInit(&posLerp, 1, -1, 20000); + dmLerpInit(&posLerp2, -0.5, -0.2, 20000); + + nollattu = TRUE; + } + + dmScaledBlitSurface32to32TransparentGA(mainos, + dmCX(engine, dmLerpSCurveClamp(&posLerp2, dt)), + dmCY(engine, dmLerpSCurveClamp(&posLerp, dt + fftPow * 250)), + + dmQX(engine, mainos, 1.0f), + dmQY(engine, mainos, 1.0f), + + engine->screen, + 50); + + dmScaledBlitSurface32to32TransparentGA(mainos2, + dmCX(engine, dmLerpSCurveClamp(&posLerp, dt)), + dmCY(engine, dmLerpSCurveClamp(&posLerp2, dt + fftPow * 250)), + + dmQX(engine, mainos2, 1.0f), + dmQY(engine, mainos2, 1.0f), + + engine->screen, + 50); + + float d = fftPow * 0.1f; + + qblit(hitler, + dmCX(engine, 0.4 - d), + dmCY(engine, 0.3 - d), + + dmQX(engine, hitler, 1.0f + d * 2.0f), + dmQY(engine, hitler, 1.0f + d * 2.0f), + + engine->screen); + + + + if (t > 17) + { + static BOOL xnollattu = FALSE; + + if (t > 19) + { + float z = sin(t * 2.0f + fftPow) * 0.1f; + qblit(sydan, + dmCX(engine, 0.7) + dmQX(engine, sydan, 0.5f - z), + dmCY(engine, 0.55) + dmQX(engine, sydan, 0.5f - z), + + dmQX(engine, sydan, 1.0f + z * 2.0f), + dmQY(engine, sydan, 1.0f + z * 2.0f), + + engine->screen); + } + + hitlerText(engine, engineGetTime(engine, 17), fftPow, textItems, ntextItems, &xnollattu); + } + } + else + if (t <= 60) + { + int dt = engineGetTime(engine, 25); + static SDL_Surface *tekstur, *poni1, *poni2; + static BOOL nollattu = FALSE; + static DMScaledBlitFunc qblit = NULL; + if (!nollattu) + { + engineGetResImage(engine, tekstur, "disco.jpg"); + engineGetResImage(engine, poni1, "poni1.png"); + engineGetResImage(engine, poni2, "poni2.png"); + + qblit = dmGetScaledBlitFunc(poni1->format, engine->screen->format, DMD_TRANSPARENT); + + nollattu = TRUE; + } + + float m = t*2.0f; + float q = sin(m) * 0.3f, + q2 = sin(m + 0.2) * 0.4f, + z = sin(m) * 0.3f + 2.0f, + z2 = sin(m + 0.1f) * 0.3f + 2.0f; + + dmScaledBlitSurface32to32TransparentGA(tekstur, + dmCX(engine, sin(q) * 0.1f - 0.2f), + dmCY(engine, cos(q) * 0.1f - 0.2f), + + dmQX(engine, tekstur, z), + dmQY(engine, tekstur, z), + + engine->screen, + 130); + + dmScaledBlitSurface32to32TransparentGA(tekstur, + dmCX(engine, sin(q2) * 0.1f - 0.2f), + dmCY(engine, cos(q2) * 0.1f - 0.2f), + + dmQX(engine, tekstur, z2), + dmQY(engine, tekstur, z2), + + engine->screen, + 130); + + + qblit(poni1, + dmCX(engine, 0.2f), + dmCY(engine, 0.07f), + + dmQX(engine, poni1, 1.0f), + dmQY(engine, poni1, 1.0f), + + engine->screen); + + + dmScaledBlitSurface32to32TransparentGA(poni2, + dmCX(engine, 0.2f), + dmCY(engine, 0.07f), + + dmQX(engine, poni2, 1.0f), + dmQY(engine, poni2, 1.0f), + + engine->screen, + 50 + fftPow * 400); + + dmRadialBlur(engine->screen, + dmCX(engine, 0.5f + sin(m) * 0.1f), + dmCY(engine, 0.5f + cos(m) * 0.1f), + 0.035f); + + if (t >= 30 && t <= 37) + { + static BOOL xnollattu = FALSE; + hitlerText(engine, engineGetTime(engine, 30), fftPow + 0.2, textItems2, ntextItems2, &xnollattu); + } + else + if (t >= 38 && t <= 47) + { + static BOOL xnollattu = FALSE; + hitlerText(engine, engineGetTime(engine, 38), fftPow + 0.2, textItems3, ntextItems3, &xnollattu); + } + else + if (t > 50) + return 1; + } + +#endif + + return DMERR_OK; +}