C PAINTVAX.FOR C THIS PROGRAM WILL PAINT THE WORD "VAX" ON THE TERMINAL. C C C SET UP ALL V CHARACTERS C c *** CHARACTER TEXTV1, c *** 1 TEXTV2*2, c *** 2 TEXTV3*3, c *** 3 TEXTV4*4, c *** 4 TEXTV5*5, c *** 5 TEXTV6*6, c *** 6 TEXTV7*7, c *** 7 TEXTV8*8, c *** 8 TEXTV9*9 CHARACTER TEXTV1*1/'V'/, 1 TEXTV2*2/'VV'/, 2 TEXTV3*3/'VVV'/, 3 TEXTV4*4/'VVVV'/, 4 TEXTV5*5/'VVVVV'/, 5 TEXTV6*6/'VVVVVV'/, 6 TEXTV7*7/'VVVVVVV'/, 7 TEXTV8*8/'VVVVVVVV'/, 8 TEXTV9*9/'VVVVVVVVV'/ C C SET UP ALL A CHARACTERS C c *** CHARACTER TEXTA1, c *** 1 TEXTA2*2, c *** 2 TEXTA3*3, c *** 3 TEXTA4*4, c *** 4 TEXTA5*5, c *** 5 TEXTA6*6, c *** 6 TEXTA7*7, c *** 7 TEXTA8*8, c *** 8 TEXTA9*9 CHARACTER TEXTA1*1/'A'/, 1 TEXTA2*2/'AA'/, 2 TEXTA3*3/'AAA'/, 3 TEXTA4*4/'AAAA'/, 4 TEXTA5*5/'AAAAA'/, 5 TEXTA6*6/'AAAAAA'/, 6 TEXTA7*7/'AAAAAAA'/, 7 TEXTA8*8/'AAAAAAAA'/, 8 TEXTA9*9/'AAAAAAAAA'/ C C SET UP ALL X CHARACTERS C c *** CHARACTER TEXTX9*9 CHARACTER TEXTX9*9/'XXXXXXXXX'/ C C C ERASE THE SCREEN C ILINE = 1 ICOL = 1 IAA = LIB$ERASE_PAGE(ILINE,ICOL) C C START AT LINE 1,COLUMN 6. DRAW VERTICAL DOWNSTROKE OF THE V C J = 1 K = 6 DO 10 I = 1,23 IAB = LIB$PUT_SCREEN(TEXTV8,J,K) 10 J = J+1 C C FILL IN THE BOTTOM OF THE V C IAC = SCR$PUT_SCREEN(TEXTV1,%VAL(22),%VAL(14)) IAD = SCR$PUT_SCREEN(TEXTV2,%VAL(21),%VAL(14)) IAE = SCR$PUT_SCREEN(TEXTV3,%VAL(20),%VAL(14)) IAF = SCR$PUT_SCREEN(TEXTV4,%VAL(19),%VAL(14)) IAG = SCR$PUT_SCREEN(TEXTV5,%VAL(18),%VAL(14)) IAH = SCR$PUT_SCREEN(TEXTV6,%VAL(17),%VAL(14)) IAJ = SCR$PUT_SCREEN(TEXTV7,%VAL(16),%VAL(14)) IAK = SCR$PUT_SCREEN(TEXTV8,%VAL(15),%VAL(14)) C C START AT LINE 14, COLUMN 14. DRAW THE UPSTROKE OF THE V C J = 14 L = 14 DO 20 I = 1,14 IAL = LIB$PUT_SCREEN(TEXTV9,J,L) J = J-1 20 L = L+1 C C START AT LINE 23, COLUMN 16. DRAW THE UPSTROKE OF THE A C J = 23 L = 16 DO 30 I = 1,22 IAM = LIB$PUT_SCREEN(TEXTA9,J,L) J = J-1 30 L = L+1 IBA = SCR$PUT_SCREEN(TEXTA8,%VAL(1),%VAL(38)) C C FILL IN THE TOP OF THE A C IBC = SCR$PUT_SCREEN(TEXTA1,%VAL(2),%VAL(45)) IBD = SCR$PUT_SCREEN(TEXTA2,%VAL(3),%VAL(44)) IBE = SCR$PUT_SCREEN(TEXTA3,%VAL(4),%VAL(43)) IBF = SCR$PUT_SCREEN(TEXTA4,%VAL(5),%VAL(42)) IBG = SCR$PUT_SCREEN(TEXTA5,%VAL(6),%VAL(41)) IBH = SCR$PUT_SCREEN(TEXTA6,%VAL(7),%VAL(40)) IBJ = SCR$PUT_SCREEN(TEXTA7,%VAL(8),%VAL(39)) C C START AT LINE 9, COLUMN 38. DRAW THE DOWNSTROKE OF THE A C J = 9 L = 38 DO 40 I = 1,15 IBK = LIB$PUT_SCREEN(TEXTA8,J,L) 40 J = J+1 C C DRAW THE CROSSPIECE OF THE A FROM LEFT TO RIGHT C IBL = SCR$PUT_SCREEN(TEXTA1,%VAL(19),%VAL(29)) IBM = SCR$PUT_SCREEN(TEXTA1,%VAL(18),%VAL(30)) IBN = SCR$PUT_SCREEN(TEXTA1,%VAL(19),%VAL(30)) IBO = SCR$PUT_SCREEN(TEXTA1,%VAL(17),%VAL(31)) IBP = SCR$PUT_SCREEN(TEXTA1,%VAL(18),%VAL(31)) IBQ = SCR$PUT_SCREEN(TEXTA1,%VAL(19),%VAL(31)) L = 32 DO 60 I = 1,6 J = 16 DO 50 K = 1,4 IBR = LIB$PUT_SCREEN(TEXTA1,J,L) 50 J = J+1 60 L = L+1 C C START AT LINE 1, COLUMN 47. DRAW THE FIRST STROKE OF THE X C FROM UPPER LEFT TO LOWER RIGHT C J = 1 L = 47 DO 70 I = 1,23 ICA = LIB$PUT_SCREEN(TEXTX9,J,L) J = J+1 70 L = L+1 C C START AT LINE 1, DIRECTLY ABOVE THE END OF THE FIRST STROKE. C DRAW THE SECOND STROKE OF THE X FROM UPPER RIGHT TO LOWER LEFT C J = 1 L = L-1 DO 80 K = 1,23 ICB = LIB$PUT_SCREEN(TEXTX9,J,L) J = J+1 80 L = L-1 C C PUT THE CURSOR IN THE LOWER LEFT CORNER OF THE SCREEN C IDA = SCR$SET_CURSOR(%VAL(24),%VAL(1)) C C END