0 'OPEN"O",#1,"MERGE/BAS":FORH=0TO12:PRINTH;:PRINT#1,STR$(H+100)"0 DATA";:FORG=1TO10:Y=-G:FORX=-G TOG-1:GOSUB120:NEXT:FORY=-G TOG-1:GOSUB120:NEXT:FORX=G TO-G+1STEP-1:GOSUB120:NEXT:FORY=G TO-G+1STEP-1:GOSUB120:NEXT:NEXT:PRINT#1,CHR$(8):NEXT:END 10 WIDTH32:CLEAR1000,16384:POKE65442,48:POKE65443,49 30 HSCREEN2:POKE65432,130:POKE65439,128:A$="00022123081129064854043453075663":FORG=0TO15:PALETTEG,VAL(MID$(A$,G*2+1,2)):NEXT 32 LOADM"MAP":POKE65497,0 35 FORY=16384TO32767STEP256:FORX=0TO127:POKEX+Y,PEEK(Y+X*2+1):NEXT:FORX=Y+128TOY+255:POKEX,0:NEXT:NEXT 50 'V=1:C=255:FORX=0TO127:Y=0:GOSUB140:Y=1:GOSUB140:Y=62:GOSUB140:Y=63:GOSUB140:NEXT:FORY=2TO61:X=0:GOSUB140:X=127:GOSUB140:NEXT 51 X=64:Y=32:C=238:V=0 52 Q$=INKEY$:IFQ$="U"THENY=Y-1ELSEIFQ$="N"THENY=Y+1ELSEIFQ$="H"THENX=X-1ELSEIFQ$="K"THENX=X+1ELSEIFQ$="J"THENV=(V+1)AND1 53 GOSUB140:IFQ$=" "THENINPUTQ,W:C=Q*16+W:ELSEIFQ$="Q"THEN60 54 GOTO52 60 FORY=16384TO32767STEP256:FORX=127TO0STEP-1:A=PEEK(Y+X):IFA=0THENPOKEY+X*2,0:POKEY+X*2+1,A:ELSEPOKEY+X*2,128:POKEY+X*2+1,A 61 NEXT:NEXT 70 PRINT"DIFFERENCE TABLE":FORG=17156TO31995STEP2:IFPEEK(G)>127THENNEXT:GOTO100 80 RESTORE:FORH=0TO144:READA,B:IFPEEK(G+A)<128THENNEXTELSEH=999:NEXT 90 POKEG,B 100 NEXT 110 POKE65496,0:SAVEM"MAP",16384,32767,3584:POKE65442,58:POKE65443,59:CLEAR1000,32768:END 120 A=INT(SQR(X*X+Y*Y)*2-1.8284271):IFA=H THENA$=STR$(X*2+Y*256):B$=STR$(A):B$=RIGHT$(B$,LEN(B$)-1):IFLEFT$(A$,1)=" "THENPRINT#1,RIGHT$(A$,LEN(A$)-1);",";B$",";:ELSEPRINT#1,A$","B$","; 130 RETURN 140 A=16384+X+Y*256:B=PEEK(A):POKEA,C:IFV=1ORV=3THENRETURNELSEIFV=0THENPOKEA,0:RETURNELSEPOKEA,B:RETURN 141 RETURN 1000 DATA-256,0,256,0,-2,0,2,0 1010 DATA-258,1,-254,1,258,1,254,1 1020 DATA-514,2,-512,2,-510,2,-252,2,4,2,260,2,514,2,512,2,510,2,252,2,-4,2,-260,2 1030 DATA-516,3,-508,3,516,3,508,3 1040 DATA-770,4,-768,4,-766,4,-250,4,6,4,262,4,770,4,768,4,766,4,250,4,-6,4,-262,4 1050 DATA-772,5,-764,5,-506,5,518,5,772,5,764,5,506,5,-518,5 1060 DATA-774,6,-762,6,774,6,762,6,-1026,6,-1024,6,-1022,6,-248,6,8,6,264,6,1026,6,1024,6,1022,6,248,6,-8,6,-264,6 1070 DATA-1028,7,-1020,7,-504,7,520,7,1028,7,1020,7,504,7,-520,7 1080 DATA-1030,8,-1018,8,-760,8,776,8,1030,8,1018,8,760,8,-776,8,-1284,8,-1282,8,-1280,8,-1278,8,-1276,8,-502,8,-246,8,10,8,266,8,522,8,1284,8,1282,8,1280,8,1278,8,1276,8,502,8,246,8,-10,8,-266,8,-522,8 1090 DATA-1032,9,-1016,9,1032,9,1016,9,-1286,9,-1274,9,-758,9,778,9,1286,9,1274,9,758,9,-778,9 1100 DATA-1288,10,-1272,10,-1014,10,1034,10,1288,10,1272,10,1014,10,-1034,10,-1540,10,-1538,10,-1536,10,-1534,10,-1532,10,-500,10,-244,10,12,10,268,10,524,10,1540,10,1538,10,1536,10,1534,10,1532,10,500,10,244,10,-12,10,-268,10,-524,10 1110 DATA-1542,11,-1530,11,-756,11,780,11,1542,11,1530,11,756,11,-780,11 1120 DATA-1290,12