Version 0 of Bouncing DVD Logo

Updated 2022-10-15 12:28:16 by gs

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 ESC to exit.

IMG_BouncingDVDLogo.jpg

 # dvdlogo.tcl
 # Author:      Gerard Sookahet
 # Date:        1 Oct 2022
 # Description: Bouncing DVD logo
 
 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.

IMG_BouncingTclTkLogo.jpg

 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==
 }