#-h- addr.r 1636 asc 08-may-81 08:40:50 [002,100] #-h- main 1304 asc 08-may-81 08:37:44 [002,100] DRIVER(addr) character buffer(513), buf(MAXLINE), outbuf(MAXLINE) integer int, i, j, k, l, m, n integer open, readf string accnt "LB0:[0,0]RSX11.SYS" call query("usage: addr [>file].") int = open(accnt, READ) if (int == ERR) call cant(accnt) while (readf(buffer, 512, int) == 512) for (j=1; j <= 512; j=j+128) { k = j for (l=1; l <= 128; l=l+1) { buf(l) = buffer(k) k = k + 1 } if (buf(1) == 0) break 2 l = 1 call jcopy(buf, 13, 14, outbuf, l) call chcopy(BLANK, outbuf, l) call jcopy(buf, 47, 4, outbuf, l) call jcopy(':[', 1, 2, outbuf, l) call jcopy(buf, 1, 3, outbuf, l) call chcopy(COMMA, outbuf, l) call jcopy(buf, 4, 3, outbuf, l) call jcopy('] [', 1, 8, outbuf, l) call jcopy(buf, 1, 3, outbuf, l) call chcopy(COMMA, outbuf, l) call jcopy(buf, 4, 3, outbuf, l) call jcopy('] "', 1, 8, outbuf, l) n = 0 for (m=27; m <= 38 & buf(m) != BLANK; m=m+1) n=n+1 if (n > 0) { call jcopy(buf, 27, n, outbuf, l) call chcopy(BLANK, outbuf, l) } n = 0 for (m=13; m <= 26 & buf(m) != BLANK; m=m+1) n = n + 1 if (n > 0) call jcopy(buf, 13, n, outbuf, l) call chcopy(DQUOTE, outbuf, l) call fold(outbuf) call putlin(outbuf, STDOUT) call putch(NEWLINE, STDOUT) } call close(int) DRETURN end #-h- jcopy 208 asc 08-may-81 08:37:46 [002,100] subroutine jcopy(in, start, n, out, i) character in(ARB), out(ARB) integer start, n, i, j, k k = start for (j=1; j <= n; j=j+1) { out(i) = in(k) k = k + 1 i = i + 1 } return end