Build it.
[AROS-Contrib.git] / rexx / progs / banner.r
blob671371d55e20e8ede382b38d6271ea2e2ec188e2
1 /** BIG_PRINT EXEC, DO NOT alter the following lines until comment close
2 -07080300080300070400050800040A0003040304000303000303040400030B00040900060300060300060300
3 .11070300060500070300
4 <080A0400080400070400050400030400030400040400060400070400080400
5 (070A0300080400070400060400050400040400040300040300040300040300040400050400070300
6 +08080300080300070400070300030B00030B00070300060400060300060300
7 |05080300080300080300080300070400070300070300070300070300070300070300060400060300060300060300060300060300
8 &070704000605000503010300040302030004030103000505000406000307010300020402050002030403000203040300020A000306010300
9 !0707050007050007050007050006050007030007030007030001000100070300060400060300
10 $06080300080300050800040A0004030304000403000408000607000A04000304040300040A00050800060300060300
11 *08030305030004030303000503010300060500030B00030B00060500050301030004030303000303050300
12 )070703000804000904000A03000A03000A03000A0300090400080400070400060400050400040300
13 ;0A07030006040006030001000100060300050400050400050300040300030300
14 ^0C040900040900090400090300
15 -0C050800040800
16 /080C03000B04000A0300090300080300070300060300050300040300020400020300
17 ,0F060300050400050400050300040300030300
18 %07050403030004050203000306010300030501030003040104000803000703000603000503020400040302050003030206000203030500080400
19 _15010F00010F00
20 >080504000604000704000904000A04000A0400080400060400050400030400
21 ?07070700060900050304030004030503000A040007060006040006030006030001000100050300040400040300
22 :0B090300080400080300010001000100070300060400060300
23 #0706030103000603010300C404010300030C00030C00C403010400C403010300020C00020C000403020300040301030004030103000403010300
24 @0706060005080004030403000C03000C03000B040004060103000307010300020302030103000203010301040002030103010300030A000405010300
25 '07070300060400070200070200060200050200050100
26 =09050800050800010001000100040800040800
27 "070603030300050402040006020402000602040200050204020004020402000401050100
28 a0B0604010200050202030004020402000402040200030204020003020402000302030300030202040101000404010300
29 b0706030007020007020006020006020104000604020200050205020005020502000402060200040205020004020402000402030200050500
30 c0B0705000602030200050204020005020004020004020004020501000502020200060400
31 d070A04000B03000C02000B02000604010200050201040004020402000302050200030205020002020502000202050200020203040101000305010400
32 e0B0804000702020200060203020005020302000407000402000402000402030200050500
33 f0709050008020202000802000702000507000702000602000602000602000502000502000502000502000402000102010200010400
34 g0B0705000602030300050204020005020302000502030200060400050200050400040202030003020502000302050200040700
35 h07050400070200070200060200060202030005020202010200050201020202000504020200040205020004020402000402040200030205020102000302040500
36 i080A02000A020001000803000902000902000802000802000802000702000702010100070400
37 -060A05000A0500090300090300080400080300050500050500080300080300070300070300070500070500
38 -070A04000805000704000505000404000404000504000604000704000804000100030A00020A00
39 -01070200070200070200070200070200070200070200070200070200070200070200070200010F00070200070200070200070200070200070200070200070200070200070200070200
40 j080B02000B020001000804000A02000A02000902000902000902000802000802000702000401020200050300
41 k07050400070200070200060200060201040005020302000502020200050500040201020004020202000402020200030204020101000302050300
42 l070804000A02000A02000902000902000802000802000802000702000702000602000602010100060400
43 m0B0203020302030003020107010200030402030202000303030203020002020402030200020204020302000103030203020001020402030201010001020402040300
44 n0B0503020400050201060005040302000403050200040205020004020502000402040200030205020101000302060300
45 o0B0605000403030200030206020002020702000202060200020206020002020502000302030200040500
46 p0B040401040005050202000503040200050205020004020502000402050200040204020003050102000302020300020200020200020400
47 q0B080401020006030203000502040200040205020004020502000302050200030204030003020204000404010200090200080200080400
48 r0B060302020007020104000704010100060300060200060200050200050200050200
49 -06070500070500090300080300080300080300080500080500070300070300070300060300030600030600
50 -07080300080300080300040A00040A0007030007030007030001000100040900030900
51 -09040900040900040900040900040900040900040900
52 s0B070401010006020203000602030100070200080200090200050103020004030202000401010400
53 t080A01000902000902000509000802000702000702000702000602000602000602010100070300
54 u0B040205020002040402000402040200030204020003020402000302040200020203030002080101000304020300
55 v0B0303030300040204020004020402000402030200040203020004020202000402010200040400050200
56 w0B01020A0300020204020402000202040204020002020303030200020202020102020200030402020102000303030201020003020404000302050200
57 x0B040304030006020202010100060201020007030007020006040005020102020100020101020303000203050200
58 y0B0404030300060204020006020402000602030200060202020006020102000604000603000602000502000201010200020300
59 z0B0508000502020300050103020008020007020006020005020401000403020200030800
60 -01070200070200070200070200070200070200070200070200070200070200070200070200070900
61 -0D070900070200070200070200070200070200070200070200070200070200070200070200
62 [07080700080700070200070200060200060200050200050200050200040200040200030200030200020700020700
63 -070504000605000705000904000A04000A04000805000605000504000304000100030A00020A00
64 -0B060500050700040900040900050700060500
65 -050606000502040200040206020004020602000402060200040206020004020502000502030200060500
66 -05050600090200090200090200080200080200080200080200040900
67 -05070600050304020005020502000B0300090300070300050300040300040900
68 -050608000C02000B02000903000804000B020003020602000402040200050600
69 -05080300070200060200050205020004020502000402040200040900090200080200
70 ¹050608000602000602000607000C02000C020004020602000402050200050700
71 -05080300060300050300040300040900040206020004020602000502040200060600
72 -050609000D02000D02000C02000B02000A0200090200080200070200
73 -05070600060204020005020602000602040200050800040304030004020602000403040300050800
74 ½050706000503030300050205020005020502000503030300060700090300080300070300
75 -01070200070200070200070200070200070200070200070200070200070200070200070200010800
76 -0D010800070200070200070200070200070200070200070200070200070200070200070200
77 ]070807000807000C02000C02000B02000B02000A02000A02000A0200090200090200080200080200020700020700
78 -08090300080400080300030B00030B00070300060300030A00030A00050400050300050300
79 -0D010F00
80 A070E01000D02000C03000B04000A020102000902020200080203020007020402000609000502060200040207020003020802000105050500
81 B070509000602050200060205020005020602000502050200050204020004080004020502000402060200030207020003020602000302050200010A00
82 C07070601010005030403000402070200030307020002030002030001030001030001020001020002020702000203040300030800
83 D07040A0005030403000602050300050206030005020603000502060300040207030004020703000402060300030207030003020603000203050300010A00
84 E07040B0005030502000602060100050200050203010005020202000407000402030100040200030207010003020602000203050200010B00
85 F07040B0005030502000602060100050200050203010005020202000407000402030100040200030200030200020300010500
86 G07070601010005030403000402070200030308010002030002030001030001030506000102080200010208020002020702000203050200030800
87 H07040502050005030403000602050200050205020005020502000502050200040900040205020004020502000302050200030205020002030403000105020500
88 I07070600080400090200080200080200080200070200070200070200060200060200050400040600
89 -01070200070200070200070200070200070200070200070200070200070200070200070200010F00
90 -0D010F00070200070200070200070200070200070200070200070200070200070200070200
91 J070806000904000A020009020009020009020008020008020008020007020003010302000202030200020600
92 K0704060204000503050200060204020005020402000502020200050500040500040202020004020202000302040200030205020002030503000105030600
93 L07050700060300070200060200060200060200050200050200050200040208010004020701000403050200020B00
94 M07010507030003030702000304050300030404040002020102030500020202020202010200020202020102020200020203030202000202030203020002020301040200010208020001020802000103050500
95 N07030504040005020602000402060200040206020004030502000302010203020003020102030200030202020202000302020202020003020302010200020205030002020503000103060200
96 O0707070005030403000402070200030307030002030803000203080300010308030001030803000102090200010208020002020702000203040300030800
97 P07040A0005030403000602050300050206030005020602000502050200040900040200040200030200030200020300010600
98 Q0707070005030403000402070200030307030002030803000203080300010308030001030803000102090200010208020002020702000203040300030800040207010003050402000202010800
99 R07040A0005030403000602050300050206030005020602000502050200040900040202030004020302000302050200030206020002030603000104050600
100 -07090400080201030007020302000602050100050500050201030004020402000503010200060500020105020002020302000203010200030400
101 \080203000204000403000503000603000703000803000903000A03000B04000C0300
102 S0706050103000502030400050205020005020501000503000504000605000804000903000301060200020206020002040402000103010600
103 T07020D000202030204020001020402030200060200060200060200060200050200050200050200050200040300030500
104 U07020504050003020702000302070200020208020002020702000202070200010208020001020702000102070200010207020001020602000202040200030600
105 V07020504050003030602010100030206020003020602000302050200030204020003020302000302020200030500030400030300030200030100
106 W0701050703000203040103030002020402040200020204020402000202030304020002020204030200020201020102030200020201020102020200020402020102000203030400020204030002020402000201050100
107 X070306020500050304020006020302000602020200060201020007030007020006040005020102000402020200030204020002020502000104020600
108 Y0702050404000303060200040205020004020402000502020200050500060300060200060200050200050200040300020700
109 Z07040C00030306030002020702000A020009020008020007020006020005020004020003020802000203060300010C00
110 -01070200070200070200070200070200070200070200070200070200070200070200070200070900070200070200070200070200070200070200070200070200070200070200070200
111 -01070200070200070200070200070200070200070200070200070200070200070200070200010800070200070200070200070200070200070200070200070200070200070200070200
112 00708040006020302000502050200040206020004020602000302070200030206020003020602000302050200030205020003020402000302030200040400
113 1070A02000804000A0200090200090200090200080200080200080200070200070200060300040600
114 207080400060301030005020502000C02000C02000B02000A020009020008020007020006020401000403040100030900
115 30708050007020302000C02000C02000B02000903000704000A02000A02000A02000A02000302040200040600
116 4070B02000A030009040008040007020102000602020200050202020004020302000302040200020B00080200080200070200
117 5070707000706000602000602000604000902000A02000B02000B02000A02000A02000303030200040600
118 6070A0300080300070200060200050200040700040203030003020502000302050200030205020003020502000402030200050500
119 70705090004030303000301060200090200080200080200070200070200060200060200050200050200040200
120 807080600070204020006020502000602040200060203020007050005060004020402000302060200020207020002020602000302040200040600
121 907070500060203020005020402000402060200040206020004020502000502030300060600090200080200060300040300030200
123 parse arg msg
124 if msg = '' then do
125 say "syntax: [rx.exe] banner.r <message>"
126 say "author: Bill N. Vlachoudis 1989"
127 exit
129 Char. = ''
130 Do Line = 2 by 1
131 if Sourceline(Line) = '*/' then Leave
132 a = C2D(Left(Sourceline(Line),1))
133 Char.a = X2C(Substr(Sourceline(Line),2))
136 call big msg
137 do i = 6 to 22
138 say lines.i
140 exit
142 big: procedure expose char. lines.
143 parse arg msg
144 Drop lines.
145 lines. = ''
146 Do k = 1 to length(Msg)
147 Drop Letter.
148 Letter. = copies(' ',18)
149 i = C2d(Substr(Msg,k,1))
150 flag = ' ' ; line = '' ; lprt = C2D(Left(Char.i,1))
151 Do j = 2 to length(Char.i)
152 c = C2d(Substr(Char.i,j,1))
153 if c = 0 then do
154 Letter.Lprt = Overlay(Line,Letter.Lprt,1)
155 line = '' ;
156 flag = 0 ; lprt = lprt + 1
158 Line = Line || Copies(flag,C)
159 if Flag == ' ' ;then flag = '*' ;else flag = ' '
162 lef = 18 ; rig = 1
163 Do j = 6 to 22
164 p = POS('*',Letter.j)
165 if p = 0 then ITERATE
166 if p < lef then lef = p
167 p = LASTPOS('*',Letter.j)
168 if p > rig then rig = p
170 len = rig-lef+1
171 if len < 1 then do ; len = 6 ; lef = 1 ; end
172 Do j = 6 to 22
173 Lines.j = lines.j Substr(Letter.j,lef,len)
176 return