110 LPRINT CHR$(2^N);120 NEXT X: RETURN

On the first pass of the loop (line SO), N equals X and the exponents increase in order from 0 to 6. The second time the routine is called, N equals 6 minus X, which reverses the order (from 6 down to 0). The flag F of line 50 activates the change of direction, and line 90 reflects the value for the exponent.

This two-directional slash routine can be repeated indefinitely. For an interesting variation, alternate the direction of the slashes each time a pair is printed by changing the flag F in line 50:

20 FOR L=l TO 230 FOR J=0 TO 950 GOSUB 80: F=1-F: GOSUB 8060 NEXT J: LPRINT: NEXT L

In this version of the program, Line 50 makes F alternate between zero and one. The J loop repeats pairs of diagonals on one line, while the L loop adds a second line.

Wave pattern

For most graphics programs, you’ll want to change from the normal l2-dot line spacing to 7-dot--or B-dot spacing if you can use the top pin. Add line 10 to make your listing look like this:

10 F=0: LPRINT CHR$(27)"1"20 FOR L=1 TO 2

30 FOR J=0 TO 9

40 LPRINT CHR$(27)"K"CHR$(14)CHR$(0);

50 GOSUB 80: F=1-F: GOSUB 80

60 NEXT J: LPRINT: NEXT L

70 LPRINT CHR$(27)"@": END

80 FOR X=0 TO 6

90 N=X: IF F=1 THEN N=6-X

110 LPRINT CHR$(2^N);

120 NEXT X: RETURN

140