A basic program that shifts the 2068 into 64-column mode. Too slow to be useful, but it is educational.
Content
Source Code
10 GO TO 40
20 LET s=15616+8*(k-32)
25 FOR d=df TO df+1792 STEP 256
30 POKE d,ABS (i-PEEK s): LET s=s+1
35 NEXT d: RETURN
40 IF PEEK 23746=128 THEN GO TO 100
50 CLEAR 63205: LET u=63206
55 DATA 10,11,12,13,14,15
60 READ a,b,c,d,e,f
65 LET u$="*2100603600237cfe7820f8c9f33e01d3f4dbffcbffd3ff3e80f5fbcd8e0ef3dbffcbbfd3ffafd3f4f1fe80200332c25cfbc9"
70 FOR n=2 TO LEN u$-1 STEP 2
75 POKE u,16*VAL u$(n)+VAL u$(n+1)
80 LET u=u+1: NEXT n
85 RANDOMIZE USR 63218
90 FOR a=63256 TO 63263
95 POKE a,248: POKE (a+8),255-PEEK (a+16): POKE (a+16),255: NEXT a
100 ON ERR GO TO 9990
105 OUT 255,14
110 LET df=16384: LET b=24: LET c=65: LET i=0
120 LET s=63256+8*(PEEK 23658=8): GO SUB 25
130 LET k=CODE INKEY$
135 IF k=0 THEN GO TO 130
145 IF k=6 THEN POKE 23658,8*(PEEK 23658=0)
155 IF k=5 THEN LET i=255
160 IF k=4 THEN LET i=0
170 IF k=12 THEN GO TO 250
180 IF k<32 OR k>122 THEN GO TO 115
190 GO SUB 15: IF b=1 AND c=2 THEN GO TO 115
200 LET df=df+8192*(df<22528)-8191*(df>24575)
205 LET c=c-1
210 IF c>1 THEN GO TO 115
220 LET b=b-1: LET c=64
225 GO TO 115
230 LET l=df-256*INT (df/256)
235 IF l<>0 THEN GO TO 115
240 LET df=df+1792
245 GO TO 115
255 LET s=15616*(i=0)+63272*(i=255)
260 GO SUB 25
270 IF b=24 AND c=65 THEN GO TO 115
275 IF c<65 THEN GO TO 285
280 LET c=1: LET b=b+1
285 IF c>1 THEN GO TO 305
300 LET df=df-1792
305 LET c=c+1
310 LET df=df-8192*(df>24575)+8191*(df<22528)
315 GO TO 115
9989 STOP
9990 OUT 255,128
9991 RANDOMIZE USR 63206
9992 ON ERR RESET
9998 SAVE "64 col" LINE 10
Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.
