I wrote this as two programs so long ago, I don't remember how they work :)
I thought for sure that I lost these, but stumbled across them today so I wanted to post them here for posterity. I espcially like version 2.
If I get really ambitious I might try to write version 2 into assembly... not sure I remember assembly quite that well yet (I can read it well enough, but can I still write it???)
1 TEXT : HOME
2 ? "Lo Res Graphics Fun by Gregg"
5 ? "Which Version 1 or 2 (3 to quit): ";: GET K$
6 IF K$ = "2" THEN 10
7 IF K$ = "1" THEN 510
8 IF K$ = "3" THEN HOME : ? "Bye!" : END
9 GOTO 1
10 TEXT : HOME : GR :T = 0:X = 1:Y = 38:C1 = 1:Z = 0:C2 = 2:XX = 0:YY = 0
12 X1 = 19:Y1 = 20:C3 = 4
13 X2 = 19:Y2 = 20:C4 = 6
15 VTAB 22: PRINT "HIT ESC TO EXIT"
20 COLOR= C1: HLIN X,Y AT X: HLIN X,Y AT Y: VLIN X,Y AT X: VLIN X,Y AT Y
30 X = X + 1:Y = Y - 1:T = T + 1: IF T = 9 THEN XX = 1:YY = 38:Z = 1
40 IF X = 20 THEN X = 1:Y = 38:C1 = C1 + 2: IF C1 > 15 THEN C1 = 1
50 IF Z < > 1 THEN 80
60 COLOR= C2: HLIN XX,YY AT XX: HLIN XX,YY AT YY: VLIN XX,YY AT YY: VLIN XX,YY AT XX
70 XX = XX + 1:YY = YY - 1: IF XX = 20 THEN XX = 1:YY = 38:C2 = C2 + 2: IF C2 > 14 THEN C2 = 2
80 COLOR= C3: HLIN X1,Y1 AT X1: HLIN X1,Y1 AT Y1: VLIN X1,Y1 AT X1: VLIN X1,Y1 AT Y1
90 X1 = X1 - 1:Y1 = Y1 + 1:
100 IF X1 = 0 THEN X1 = 19:Y1 = 20:C3 = C3 + 2: IF C3 > 15 THEN C3 = 1
105 IF Z < > 1 THEN 20
110 COLOR= C4: HLIN Y2,X2 AT X2: HLIN Y2,X2 AT Y2: VLIN Y2,X2 AT X2: VLIN Y2,X2 AT Y2
120 X2 = X2 - 1:Y2 = Y2 + 1
130 IF X2 = 0 THEN X2 = 19:Y2 = 20:C4 = C4 + 2: IF C4 > 15 THEN C4 = 1
200 K = PEEK ( - 16384): IF K < > 155 THEN 20
210 POKE - 16368,0: TEXT : HOME : GOTO 1
510 TEXT : HOME : GR :T = 0:X = 1:Y = 38:C1 = 1:Z = 0:C2 = 2:XX = 0:YY = 0
520 COLOR= C1: HLIN X,Y AT X: HLIN X,Y AT Y: VLIN X,Y AT X: VLIN X,Y AT Y
530 X = X + 1:Y = Y - 1:T = T + 1: IF T = 9 THEN XX = 1:YY = 38:Z = 1
540 IF X = 39 THEN X = 1:Y = 38:C1 = C1 + 2: IF C1 > 15 THEN C1 = 1
550 IF Z < > 1 THEN 520
560 COLOR= C2: HLIN XX,YY AT XX: HLIN XX,YY AT YY: VLIN XX,YY AT YY: VLIN XX,YY AT XX
570 XX = XX + 1:YY = YY - 1: IF XX = 39 THEN XX = 1:YY = 38:C2 = C2 + 2: IF C2 > 14 THEN C2 = 2
580 VTAB 22: PRINT "HIT 'ESC' TO EXIT":K = PEEK ( - 16384): IF K < > 155 THEN 520
590 POKE - 16368,0: TEXT : HOME : GOTO 1