GS Here is the Bouncing DVD Logo that you found when you put your favorite DVD movie on pause. The display is in full screen like a screensaver. When the logo hit a side, the color will change between red, green and blue. Hit ESCAPE to exit.
# dvdlogo.tcl # Author: Gerard Sookahet # Date: 1 Oct 2022 # Description: Bouncing DVD logo package require Tk namespace import ::tcl::mathop::* wm geometry . +0+0 wm attributes . -fullscreen 1 focus . bind all <Escape> {exit} set g { R0lGODlh8AB1AHAAACwAAAAA8AB1AIEBBgIo+RYAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G4kiW5om m6sq27gvH8kzX9o3n+s73/g8MCofEYiuATCqXzKbzCY1Kmayp9ToFBH7YrvdrXYHHYx35jMaq0mx1rQ 2PI1Hy+pNmz5dP+n5S5heYZSIYCFOI6FSSaFjF+Dg3AunnOJkoaUmZkskYwqlJ91noKdrHVyoIggpKR LnHcablqWVnlFD7qhG7GWerIEfrBbsr1ub7a5xrQezCdrzgrFzB3JwmQjYcKz1BvL1M3YGdvef90F1O Yf0hPl6GzsDMvoFG+rW+CzYtH2zvAa77Lh2+fBKo7Zt3ECBBf+ICHgDnkFvCDBElvlpo7uBEDLb/OFY syC7gv40ePzogeeFcvwYdTUZAKRBjOHkykdV8eFNhzpQ7KSortxGmPpfwiJ7UuPIWOqExezYVpgopVK VOjR51+rRLvZrSUFpl+ZXq1Hs3f75jahFrWq1RvWGEiRZkWJxq144V64bf3aJ15faFEBcwSYIR5+Jly /BvxrP2Chumq3jxXp9eL718rHcy5aQ61Y6ymxchZgOB+Tpu5Bex6NGZQ5esmAr0lXaRBXP+Rk82nKG3 ef+zbj37dWlTvlVn/Q08TPGOV+vwVLzFGKa60XcLl45bMzRgJOhFl0X8urPs+b5X10NoVZTV2JerV3L qvSLazG3LXxLqPvzE6sTL56XfFm3l5p96awTYHYEFlnLEfYvUl9oq1RgYX202SfgChQD2Rt4ngIgyoX bHTfJGJh8atxmJNqiIB4opjiIgDjCa4Rp7ecjyTI6XKadjjz4iENyPQuo4yJBG5ijFkUoes96SThYBx ZNSttLElFYGUeWVWvZAxZZe7oDfl2LesN+YZs7wx5lqArJmm4e4CSc84FWXnCt0fhenD+cFCEyMeZLF 53s4/nlLnYEeOoefXu6JaKONHclfqKOSJsPkpJZ+xsWlmkIi46aemhjDp6IyeOCoYST6EC2Gmppkeqz ipyh9r2Z5zayxPmjrfPyZGmquXc7Eaou+pinrpsIOe+tzvKKJbLILXnoislstW0yzkdQ666DYWutU7K 6+avvSqsM2yG25HJZqbrqKdJuhuukK4W6uRIobr6BORlqviexOaV6+6O37J77+rksaodeQJi2eBnNRc CeoFrxwxBJPTHHFFl+MccYab8zxkgUAADs= } set b { R0lGODlh8AB1AHAAACwAAAAA8AB1AIEBAQQAJvsAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G4kiW5om m6sq27gvH8kzX9o3n+s73/g8MCofEYiuATCqXzKbzCY1Kmayp9ToFBH7YrvdrXYHHYx35jMaq0mx1rQ 2PI1Hy+pNmz5dP+n5S5heYZSIYCFOI6FSSaFjF+Dg3AunnOJkoaUmZkskYwqlJ91noKdrHVyoIggpKR LnHgYZpZ5Qw+6pxthZHqyCn9QVL5gLH29v2C5wR+8JWvNB8a5Eb00wKFjx9jTGN7NWxrBq9na1dwS2M LZ7e5bGs/sDd7f0dv87eTj4/UY9O/z5ezt68f8/EEZTWz18yfHsOIuDnkEK9DREl9gvoYGJCgbluFOp jWM7hRHn3PmzEVXHfRYzG3qVUyVLZywjxYj78NxPCSIAfQfbECdSmzJwMTlI8adPoAaVDhZojmhHpwp tOSV4RwRRhVa0sY2a1Gsba1KNbnyYd+/Ur17Eo2ZI9+1GtWrNuefbkGLagvrlzYZaV0BdwVm0VoTYIT NNwy6rXCiteXNduR7xXoyIS/Dfx41qbDYCzzEpnZ7CTKUvxGJlzI8x3Jbdum5p15lR+X1vcCbuk69iq 89C1Lf87c23dv3OaKl56+OjewIsSQ35sbXKdpJs3te65Ou/DdXYP0vxcFrAt5LVo/yy9GvSr5dvrIbQ qytvo6eMvgW+/iU/0t/PfP+WfEibRd0GA/wEYoFi4gZegLg0qKJxe/lWS3yILBrfKEfaF0lmFzGTo4H aioQKIKMNE6JyJM6j4IXHXQXLDJDZghyFtOYyyxY3TvWiLMz4qp8iPQg7J3B1EHjlkXkguWcxpTD7Ji 3xQTlkEFFRe2Yp+WG4JhJZcfskDFWCOucOBZJ75xh9orolHJGy+SQ2cch4yZ51FmTfHHzDqiaedPrhn 4C5u+jlgoBXmSGgt5xnKaHlnktdopMJgIHokpJJe6gulVWLK6ShddgoqjDGGSmomJZaK6idipMqeo9n lyepyKcYqoKam0aomVrjaauGuQe6HKjW+iolaqW0Om+t8wa6IbLK5LXsqsuHEGq2001JLYbO8Fhvstt wOUYugtN7eqa2V2ZaLLo29psuukTq2264Q8ILro6XzXnrlvRuO+6W9+vaYaEaL/stnwJJ4pm12BnOxl L/v5bnUwhJPTHHFFl+MccYab8xxx84UAAA7 } set r { R0lGODlh8AB1AHAAACwAAAAA8AB1AIEHAQH3AgIAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G4kiW5om m6sq27gvH8kzX9o3n+s73/g8MCofEYiuATCqXzKbzCY1Kmayp9ToFBH7YrvdrXYHH4x35jMam0mx1rQ 2PI1Hy+pNmz5dP+r4S5hcYViIYqPVSmOhEqOh31Ag5NxLpKEYJKXJpuKaZmNnZpwLqCTJayWgq6JF6O rTFurRKdmiwRVtrEWp0YKcF1nEmGrerIOfrxYH2yEZc3HaMnBGMyNzsrLyHMQ2Y9vm70Z2dOwsdDb79 QX5OLj6Bri6tnN4eH0wP8X5/IT//1b+njwG6cl3++TNYUBa7gxIGwkv2cB1DYAsnPhhI8EopjMTaAnb M9g1fxIgaONYzpzCkx1okSZZ0OS4kRXUrTa6MKVMiypkyc16ziADmR6AnE27MGRCm0H1LKTSt4JBoRj cLnjq1KtKnzp1TpVT1iNXdTbFaX9I7W7OsWak4uW41GhRpWrVD2baFC1Ffz5thI5i8S5UnW5Vj+1403 ABxYqHfxnb1etQuYI0pJf9yrPhrZs2Syc4t1NCx380/3TJ9Ctoz3rWdoYp2wO/wptB0Vbe+eht2bNm6 aOde/LfoanePKfvuhfs3/+fXx4c3r73cmGvoAquFMDxscjftWaZv93b7FZy647lDHp190qxXh2abZ85 rffvi38HDWsS6vvf7VPjwbyLYbsn994cJBMZSWXC8HSgMg9fp994onBConoD73VfFf7c8qGBW/C3DCh 2ksQQLNyFOqFx1qchgigvwRXfJG53EkKKKMdpACY7ORZiHGarYgsOOp7lnTZG6DWJkkkrG1d2SThrZ5 JNSWnPelFYaEcWVWmJ5x5ZeCtHll2Jy0d+YZvJQ5plq5oDgmm7qCOSbcs6QxJx20nlnnnruyWZ74s04 B3tx8qnDnwfWsSGhydB3aI6DKopLo5J69aiZhk6KqT+VQl3JaKaeatrMp6KSQuaopmJyw6mqgkLjqq5 K2OCrYQjqZ6eyQmHgrVRsKpyuYSIkqyW+4hdZsNQMm2Z+ruKBbJtvqcpss3UGCG200ha7bKvSSpLgqy Bui4quiWJ7La9T1A47Lmx+bktsrOy++yK58M4LoLnH0osvmPg2y+m+pm55qb8t5hmwwL3YS6igBmuEM KQl2fovew4DYUvBjkjc8MQab8xxxx5/DHLIIo9McsnWFAAAOw== } proc every {ms body} { uplevel #0 $body after $ms [list every $ms $body] } lassign [wm maxsize .] W H set dx 10 set dy 10 pack [canvas .c -width $W -height $H -bg black] -fill both -expand yes set pic [image create photo -data $g] set tag [.c create image 10 10 -anchor nw -image $pic] lassign [.c bbox $tag] xo yo x1 y1 set wd [- $W $x1] set ht [- $H $y1] set R {G g} set G {B b} set B {R r} set l $R every 40 { .c move $tag $dx $dy lassign [.c coords $tag] x y if {$x > $wd || $x < 0} then { set dx [- 0 $dx] set l [set [lindex $l 0]] $pic configure -data [set [lindex $l 1]] } if {$y > $ht || $y < 0} then { set dy [- 0 $dy] set l [set [lindex $l 0]] $pic configure -data [set [lindex $l 1]] } }
If you prefer a Bouncing Tcl/Tk Logo, just replace those data in the above code.
set g {R0lGODlh8ABHAHAAACwAAAAA8ABHAIEAAwAA+SAAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G 4kiW5omm6sq27gvH8kzXNhUAwZ7z/X5T/YA+HTCIlPiWzGNy1Iw6n9SENFoVXZunrfe7dIF5mXHuYE5 zFWaU+h1mpTFzA/x+RrdNeLh4b1HX54dQVzKo9jd2YYhoqLfI5xgpB4gDOEkJCdaV+aXIWfHo+WllCU W61fI4MZp6ZapJ8ioFWnopS1tbeKqlu1YpG+H6G8crHFLMZOsleqpsvHk7C0222vvAWm19HHq4ndeqm o3dkNgNzVb+AR7uQBjrrdTbHj9tL49ePIynjvxODxy+cQveMNgGAZG/fOSQIVx4TxrDeev49SlYEWKz QP8ZMTo8x4gVrosaCSbs6PEfwI8ixaFMSVLfRosTT76UCWvgzJA3ccKTaLJhTZsqDwZsOTIiTYU6dy3 dmVTpSoYg6SAVOggmVHM9m2Jxluuqy6JGJ2kNypVsWrUlc9qparWrEbNtnU6V+nQr0Wlw47L1eafu17 16Kf4FSrCv36Fl6QIGhrVwXrSRE4sFy/jsvR46NNtdi3eyW8OlDHZQfDc0aMmPl5WRK+hyVNaeB2NWP TdzZcq7a6FejNsr5NmjGwdfTbs2F9m3j789LNx1at5jdUfPCuK3cunNqSP+zLHrr2TMW0cjDv56kQ3a t/cjL17u88zlkXs3nglVz/qCh6t15/YabKlQs598uTHGH37J9ReYftAl+J1tDJ4H3ILmNQifdRcCiJ6 E/00RIHQHeuJLfCJG6N+GIFZYnGiOZKghitx1mOJ8zk13n3vvsZOggSNSB6GO69G4TJA4tnhkeoQB6e OHKy65S3vd5ajik1Aq+SOSPIkY/1uTEw5ZnYVOKqjlljHaOJOUpN2IZkxVkolleGe26ZaaLnp45U8yU phlnFOWaZ9TprEHIYlfckinn0TOeOd5dvam6KFUYWMknJG+WaU7LAJq6aB7gvkpoho8mqiEnprJZqgR iVRppzUG6iGpQoraKEuTngjpq7D6d+qfl0pKGateOqlpnrzKSmyIO2KqarGjFvoPspk+62apx+KaJJ7 ZMmqttrXyuSha2gwLrLO7ctsnp+ei6+uqz5A7Zrvs9votqNS2RMyca1IZ76y0JjRXwGRYqex9Ayt58B BGEDhEw52hulyuRZibhRUPV4xxxhpvzHHHHn8Mcsgij0xyySafjAZyyionUAAAOw== } set b {R0lGODlh8ABHAHAAACwAAAAA8ABHAIEAAQQAJfoAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G 4kiW5omm6sq27gvH8kzXNhXk+s4Hd9oL5n7EifBYLB2FyeZiyXSGoL0T9YrVtbLaC/fADSMRYpP4XGW VLWEw+p1Yk9707ZfdBtDh5LtyL7eSVzEIeBbnN2eYCDRoVLiYpeA4EimpRhkhZ4mFyDjFeWX3CeEYSu V5qXi6NNpJCMk65qa6KhvkKgpbeztrkAnay+MC7BAonNZXW4m8k6v7uNzsnApt27wLZVzMEKg3PaS8P KlX7nNu3g0e/lBXbV36ue4j/jrp/Tsfz1cPvy2/7h2qe/jyTWsHiKA9TaQCCmz15BAeUhIiKfTXoCBC bv/qxn3juNEjQ0MXMXYU+Q/lyYUGQaZkGS3hQ4j7VGZ0OdNXS5svYY4kmTNKTZ9DTd5kJBFD0phA+2m rSDEkz6DJdk49GnVlU1pESw7MdpUrvKVecFLFZ9as169QeWnEodaqTKdPpRq1y/anPbJK4360eHZY0b oTw8qty7ew4b+L1tLE2nUwYb26EiuO7FgbOsGBu+B9DBZzZlyMRbdd/Lbn5IhZP692zcRy2dajqzK9e 1hn6LyUNfuFLbT3a8mga9vePRwyKxCpjVO7zLuz59moezFvLp0e9OLZtfel3f038ODEyd9Onls3XL+3 RGCny124evjmkaNnHYoZeLG4tUZz5//feffhx4l+holXWoAJxrdedcu5FxeCb7033nEV8vOBbAQqqBq DC85nH4j+AXZdhPs5N113HGi4YYElHijehCd2OGB4M8onIoopnkYUhRc+x+ODHvj4YY4jxoegjuwEiQ qRPwJZXn1RWliklNt52CJELPEKWCOA0aGT5XxOHomlkukZySSHNq5WTJLhhUhalXFu4OQpZirpnQZbZ udll08umSaGZ845KJXUmUafUHtOaahye+AJ6ZDsmTLmm3CilYmbkXJJ3qKOqoknmwDdSGOZfCaK5qem hslXpqSWmmqf5nnKqpV/TuZNparGWihnsvK66ZWuIvUqrIQy6muvjd6q51y/zqnrrrbWSiWtqB7boKB yJhstmdPeGWqega5qrKhuFSvtt6eGe2h/475G6WI4AsuNtc8mS2dUo7orLLZPlouvFHF885HABh+McM IKL8xwww4/DHHEEk9MccUWX4xxAgUAADs= } set r {R0lGODlh8ABHAHAAACwAAAAA8ABHAIEEAAD6AAAAAAAAAAAC/4SPqcvtD6OctNqLs968+w+G 4kiW5omm6sq27gvH8kzXNhXk+s4HN9oL7n5EifBYLB2FyeZiyXSCoMET9YrVtbLaC/fADSMRYpP43Nu GvV8D+u0jr5VwtDrLbtft8jZpX3aHlTfoBjgH5vd3iMcSiIPI2JioOCJZuPI48Xh5laAp0unpiLipKA r1WRqKuiQ4CunX6to3aTkblVkZUYqba2h76zv0SlWhOcyjsMqanFNsHIsJ7Ky6G+LcZRrNAPoAmv1cO 718HS7+/VZ+3cB8bh1Maf6erg5P7uBNL48PwLeerB4cgLB4zat2j9s4dgL7GTlEUGHDgg+Z5bP475hF g/+AIkq8yLDdRpG7MmoMCXKPx1Qc47V0SDKYSWkuIUhaScvmyJQwu62auQ3lk5sJWb78eJSizlNnNDS l2bFozolIlwqVOobaVZ5KrULE+our0ZNbtRZ86nTnUKILq4ING7Tn2klAycrFaa/t2JhdK9bkO6ou1L 6AVb6tQnXvYMWJaaFNq/YwEx+UiUm2LHaqBW+NkTyG/NdnWb1ZCzP2GxrvZM4YWJsuHZcwP7dJT7++9 MH13Lu7ZfuLnFmzV1RTgM+23RnuZcybjR/HnVu36jSEfEsfTrs39OjOf6e+jRh8+Oq8SX/l/t288tqw pysDnf45o2bxzWYXHfp68vHso2Jr696devwth04G+gk4EH3l2SccaoQdGFx7+yVYHICjIcgcgXFsACG D81U4WoDyreddfeINOCGFHnTY4YgkiqgdcjFu1wGLMLLWIn4LeshWjRZeyON6MM4oYYSrAXkidQ7eRy SKJe5opJNJDvH1mYE2YuSPjlXl2CSJWrJUZWtX9hikkhqu2GIkXLr3Xmz+uWgmnHFa+SNda2q4oZsql jnnnWxmmKJlYTYHJI18tiknohwGiIyfT0L5aB1/apMopRyk2Yujg0bpTklDdinll5oJ1p+XnMbTqYnY MVmppaSu2mCpP82K5JSWwtreq6cCumSV4NRqa4Gy9rkprqYGKlyjwIoaa7B5tnprrzIim2sljk4qrLE o6grqnITOlOmy3SqqLbmHeluuueS5FC6k6aobLLPTyhvqtw+iqqq0x2Lr7LNSfPKbd/8OTHDBBh+McM IKL8xwww4/DHHEEk9MccUJFAAAOw== }
Jeff Smith 2022-10-18 : Below is an online demo using CloudTk. This demo runs "Bouncing DVD Logo" in an Alpine Linux Docker Container. It is a 27.4MB image which is made up of Alpine Linux + tclkit + Bouncing-DVD-Logo.kit + libx11 + libxft + fontconfig + ttf-linux-libertine. It is run under a user account in the Container. The Container is restrictive with permissions for "Other" removed for "execute" and "read" for certain directories.
Click on the "v" in the upper left corner to view the "Bouncing Tcl/Tk Logo" demo.
Please Note : This demo has a run time of 2 minutes.