ms-cats - various - Various utilities developed at bitreich.
(HTM) git clone git://bitreich.org/various/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/various/
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Tags
---
ms-cats (10058B)
---
1 #!/bin/sh
2 #
3 # From: https://devblogs.microsoft.com/oldnewthing/20220208-00/?p=106232
4 #
5
6 frame1=" * ,MMM8&&&. *
7 MMMM88&&&&& .
8 MMMM88&&&&&&&
9 * MMM88&&&&&&&&
10 MMM88&&&&&&&&
11 ‘MMM88&&&&&&’
12 ‘MMM8&&&’ *
13 |\___/| /\___/\
14 ) ( ) ~( . ‘
15 =\ /= =\~ /=
16 )===( ) ~ (
17 / \ / \
18 | | ) ~ (
19 / \ / ~ \
20 \ / \~ ~/
21 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
22 | | | |( ( | | | )) | | | | | |
23 | | | | ) ) | | |//| | | | | | |
24 | | | |(_( | | (( | | | | | | |
25 | | | | | | | |\)| | | | | | |
26 | | | | | | | | | | | | | | | "
27
28 frame2=" * ,MMM8&&&. *
29 MMMM88&&&&& .
30 MMMM88&&&&&&&
31 * MMM88&&&&&&&&
32 MMM88&&&&&&&&
33 ‘MMM88&&&&&&’
34 ‘MMM8&&&’ *
35 |\___/| /\___/\
36 ) ( ) ~( . ‘
37 =\ /= =\~ /=
38 )===( ) ~ (
39 / \ / \
40 | | ) ~ (
41 / \ / ~ \
42 \ / \~ ~/
43 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
44 | | | |) )| | | (( | | | | | | |
45 | | | ( ( | | | |\\\\| | | | | | |
46 | | | |)_) | | |))| | | | | | |
47 | | | | | | | |\)| | | | | | |
48 | | | | | | | | | | | | | | | "
49
50 frame3="
51 * ,MMM8&&&. *
52 MMMM88&&&&& .
53 MMMM88&&&&&&&
54 * MMM88&&&&&&&&
55 MMM88&&&&&&&&
56 ‘MMM88&&&&&&’
57 |\___/| /\___/\
58 ) ( ) ~( . ‘
59 =\ /= =\~ /=
60 )===( ) ~ (
61 / \ / \
62 | | ) ~ (
63 / \ / ~ \
64 \ / \~ ~/
65 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
66 | | | |) )| | | (( | | | | | | |
67 | | | ( ( | | | |\\\\| | | | | | |
68 | | | |)_) | | |))| | | | | | |
69 | | | | | | | |\)| | | | | | |
70 | | | | | | | | | | | | | | | "
71
72 frame4="
73
74 * ,MMM8&&&. *
75 MMMM88&&&&& .
76 MMMM88&&&&&&&
77 * MMM88&&&&&&&&
78 MMM88&&&&&&&&
79 |\___/| /\___/\
80 ) ( ) ~( . ‘
81 =\ /= =\~ /=
82 )===( ) ~ (
83 / \ / \
84 | | ) ~ (
85 / \ / ~ \
86 \ / \~ ~/
87 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
88 | | | |) )| | | (( | | | | | | |
89 | | | ( ( | | | |\\\\| | | | | | |
90 | | | |)_) | | |))| | | | | | |
91 | | | | | | | |\)| | | | | | |
92 | | | | | | | | | | | | | | | "
93
94 frame5="
95
96
97 * ,MMM8&&&. *
98 MMMM88&&&&& .
99 MMMM88&&&&&&&
100 * MMM88&&&&&&&&
101 |\___/| /\___/\
102 ) ( ) ~( . ‘
103 =\ /= =\~ /=
104 )===( ) ~ (
105 / \ / \
106 | | ) ~ (
107 / \ / ~ \
108 \ / \~ ~/
109 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
110 | | | |) )| | | (( | | | | | | |
111 | | | ( ( | | | |\\\\| | | | | | |
112 | | | |)_) | | |))| | | | | | |
113 | | | | | | | |\)| | | | | | |
114 | | | | | | | | | | | | | | | "
115
116 frame6="
117
118
119
120 * ,MMM8&&&. *
121 MMMM88&&&&& .
122 MMMM88&&&&&&&
123 |\___/| /\___/\
124 ) ( ) ~( . ‘
125 =\ /= =\~ /=
126 )===( ) ~ (
127 / \ / \
128 | | ) ~ (
129 / \ / ~ \
130 \ / \~ ~/
131 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
132 | | | |) )| | | (( | | | | | | |
133 | | | ( ( | | | |\\\\| | | | | | |
134 | | | |)_) | | |))| | | | | | |
135 | | | | | | | |\)| | | | | | |
136 | | | | | | | | | | | | | | | "
137
138 frame7="
139
140
141
142
143 MMMM88&&&&& .
144 MMMM88&&&&&&&
145 |\___/| /\___/\
146 ) ( ) ~( . ‘
147 =\ /= =\~ /=
148 )===( ) ~ (
149 / \ / \
150 | | ) ~ (
151 / \ / ~ \
152 \ / \~ ~/
153 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
154 | | | |) )| | | (( | | | | | | |
155 | | | ( ( | | | |\\\\| | | | | | |
156 | | | |)_) | | |))| | | | | | |
157 | | | | | | | |\)| | | | | | |
158 | | | | | | | | | | | | | | | "
159
160 frame8="
161
162
163
164
165
166 MMMM88&&&&&&&
167 |\___/| /\___/\
168 ) ( ) ~( . ‘
169 =\ /= =\~ /=
170 )===( ) ~ (
171 / \ / \
172 | | ) ~ (
173 / \ / ~ \
174 \ / \~ ~/
175 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
176 | | | |) )| | | (( | | | | | | |
177 | | | ( ( | | | |\\\\| | | | | | |
178 | | | |)_) | | |))| | | | | | |
179 | | | | | | | |\)| | | | | | |
180 | | | | | | | | | | | | | | | "
181
182 frame9="
183
184 __________________
185 |Good Night Moon!|
186 \ ==============
187 | /
188 \/
189 |\___/| /\___/\
190 ) ( ) ~( . ‘
191 =\ /= =\~ /=
192 )===( ) ~ (
193 / \ / \
194 | | ) ~ (
195 / \ / ~ \
196 \ / \~ ~/
197 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_
198 | | | |) )| | | (( | | | | | | |
199 | | | ( ( | | | |\\\\| | | | | | |
200 | | | |)_) | | |))| | | | | | |
201 | | | | | | | |\)| | | | | | |
202 | | | | | | | | | | | | | | | "
203
204 print_frame() {
205 tput cup 0 0
206 printf "%s" "${1}"
207 sleep 1
208 }
209
210 trap "reset; exit;" SIGINT SIGABRT SIGTERM
211
212 tput init
213 tput civis
214 tput clear
215
216 while /bin/true;
217 do
218 print_frame "${frame1}"
219 print_frame "${frame2}"
220 print_frame "${frame3}"
221 print_frame "${frame4}"
222 print_frame "${frame5}"
223 print_frame "${frame6}"
224 print_frame "${frame7}"
225 print_frame "${frame8}"
226 print_frame "${frame9}"
227 print_frame "${frame8}"
228 print_frame "${frame7}"
229 print_frame "${frame6}"
230 print_frame "${frame5}"
231 print_frame "${frame4}"
232 print_frame "${frame3}"
233 print_frame "${frame2}"
234 done
235