Bell 32V release
[unix-history] / usr / src / cmd / bcd.c
CommitLineData
3b600ead
TL
1int chtab[] = {
200000, /* */
303004, /* ! */
402404, /* " */
502040, /* sharp */
602042, /* $ */
702104, /* % */
800001, /* & */
903002, /* ' */
1002201, /* ( */
1102202, /* ) */
1202102, /* * */
1300005, /* + */
1402044, /* , */
1500002, /* - */
1602041, /* . */
1700014, /* / */
1800004, /* 0 */
1900010, /* 1 */
2000020, /* 2 */
2100040, /* 3 */
2200100, /* 4 */
2300200, /* 5 */
2400400, /* 6 */
2501000, /* 7 */
2602000, /* 8 */
2704000, /* 9 */
2802200, /* : */
2902402, /* ; */
3002401, /* < */
3102204, /* = */
3202400, /* > */
3303000, /* ? */
3402100, /* at */
35 011,
36 021,
37 041,
380101,
390201,
400401,
4101001,
4202001,
4304001,
44012,
45022,
46042,
470102,
480202,
490402,
5001002,
5102002,
5202002,
53024,
54044,
550104,
560204,
570404,
5801004,
5902004,
6004004,
6102020, /* [ */
6203001, /* \ */
6302101, /* ] */
6400006, /* ^ */
6502024 /* _ */
66};
67 char s[128];
68 char *sp = {&s[0]};
69main(argc, argv)
70char *argv[];
71{
72 char *spp;
73 int i;
74 int j;
75 int c;
76 int l;
77
78 if (argc<2) {
79 puts("% ");
80 while ((c=getchar())!='\0'&c!='\n')
81 *sp++ = c;
82 *sp = 0;
83 sp = &s[0];
84 } else
85 sp = *++argv;
86 puts("\n\n\n\n");
87 puts(" ________________________________");
88 puts("________________\n");
89 spp = sp;
90 while(*spp++);
91 spp--;
92 l = spp - sp;
93 putchar('/');
94 puts(sp);
95 i = 49 - l;
96 while(--i>0) putchar(' ');
97 puts("|\n");
98 j = 0;
99 spp = sp;
100 while (j++<12) {
101 putchar('|');
102 i = 0;
103 spp = sp;
104 while (i<48) {
105 if(i>l) c = 0;
106 else c = *spp++ - 040;
107 i++;
108 if (c>='a'-040) c = c - 040;
109 if (c<0 | c>137) c = 0;
110 if ((chtab[c]>>(j-1))&1)
111 puts("[\b\ 1\ 1\ 1\ 1\ 1]");
112 else
113 putchar(j>3?'0'+j-3:' ');
114 }
115 puts("|\n");
116 }
117 putchar('|');
118 puts("____________");
119 puts("____________________________________");
120 puts("|\n");
121 puts("\n\n\n\n");
122}
123
124puts(ss) char *ss; {
125 int i;
126 char t;
127 i = 0;
128 while(t = *ss++) {
129 if(t >= 'a' && t <= 'z')
130 t += 'A'-'a';
131 putchar(t);
132 }
133}