10 REM QUILT SQUARES 20 GOTO 310 30 POKE A,103:POKE A+1,103:POKE A+40,103:POKE A+41,103:CC=C(1):RETURN 40 POKE A,103:POKE A+1,100:POKE A+40,100:POKE A+41,96:CC=C(1):RETURN 50 POKE A,102:POKE A+1,103:POKE A+40,96:POKE A+41,102:CC=C(1):RETURN 60 POKE A,101:POKE A+1,96:POKE A+40,103:POKE A+41,101:CC=C(1):RETURN 70 POKE A,96:POKE A+1,99:POKE A+40,99:POKE A+41,103:CC=C(1):RETURN 80 POKE A,96:POKE A+1,96:POKE A+40,96:POKE A+41,96:CC=C(1):RETURN 90 POKE A,160:POKE A+1,160:POKE A+40,160:POKE A+41,160:CC=C(1):RETURN 100 POKE A,160:POKE A+1,163:POKE A+40,163:POKE A+41,103:CC=C(1):RETURN 110 POKE A,160:POKE A+1,163:POKE A+40,163:POKE A+41,103:CC=C(2):RETURN 120 POKE A,165:POKE A+1,160:POKE A+40,167:POKE A+41,165:CC=C(1):RETURN 130 POKE A,167:POKE A+1,164:POKE A+40,164:POKE A+41,160:CC=C(2):RETURN 140 POKE A,167:POKE A+1,164:POKE A+40,164:POKE A+41,160:CC=C(1):RETURN 150 POKE A,166:POKE A+1,167:POKE A+40,160:POKE A+41,166:CC=C(1):RETURN 160 POKE A,166:POKE A+1,167:POKE A+40,160:POKE A+41,166:CC=C(2):RETURN 170 POKE A,165:POKE A+1,160:POKE A+40,167:POKE A+41,165:CC=C(2):RETURN 180 POKE A,224:POKE A+1,224:POKE A+40,224:POKE A+41,224:CC=C(1):RETURN 190 POKE A,224:POKE A+1,227:POKE A+40,227:POKE A+41,231:CC=C(1):RETURN 200 POKE A,224:POKE A+1,227:POKE A+40,227:POKE A+41,231:CC=C(2):RETURN 210 POKE A,224:POKE A+1,227:POKE A+40,227:POKE A+41,231:CC=C(3):RETURN 220 POKE A,229:POKE A+1,224:POKE A+40,231:POKE A+41,229:CC=C(1):RETURN 230 POKE A,229:POKE A+1,224:POKE A+40,231:POKE A+41,229:CC=C(2):RETURN 240 POKE A,229:POKE A+1,224:POKE A+40,231:POKE A+41,229:CC=C(3):RETURN 250 POKE A,231:POKE A+1,228:POKE A+40,228:POKE A+41,224:CC=C(3):RETURN 260 POKE A,231:POKE A+1,228:POKE A+40,228:POKE A+41,224:CC=C(2):RETURN 270 POKE A,231:POKE A+1,228:POKE A+40,228:POKE A+41,224:CC=C(1):RETURN 280 POKE A,230:POKE A+1,231:POKE A+40,224:POKE A+41,230:CC=C(1):RETURN 290 POKE A,230:POKE A+1,231:POKE A+40,224:POKE A+41,230:CC=C(2):RETURN 300 POKE A,230:POKE A+1,231:POKE A+40,224:POKE A+41,230:CC=C(3):RETURN 310 PRINT "[147]":PRINT "TRANSFERRING CHARACTER SET" 320 PRINT "PLEASE WAIT..." 330 REM TRANSFER CHARACTER SET TO RAM 340 POKE 56334,0:POKE 1,51 350 FOR C=2048 TO 6143 360 POKE C,PEEK(C+51200) 370 NEXT C 380 POKE 1,55:POKE 56334,129:POKE 53272,19 390 REM 400 POKE 53281,15 410 PRINT "[147][151]":PRINT TAB(13)"QUILT SQUARES" 420 DIM S(16),Q(28),R(28) 430 PRINT "USE F1 TO MOVE TO THE QUILT SQUARE" 440 PRINT "DESIRED, THEN PRESS ." 450 PRINT "FILL IN THE SAMPLE SQUARES." 460 REM REDEFINE CHARACTERS 470 FOR C=2048+8*35 TO 2048+8*42-1 480 READ G:POKE C,G 490 NEXT C 500 FOR C=2048+27*8 TO 2048+30*8-1:READ G:POKE C,G:NEXT C 510 DATA 0,1,3,7,15,31,63,127 520 DATA 255,254,252,248,240,224,192,128 530 DATA 128,192,224,240,248,252,254,255 540 DATA 127,63,31,15,7,3,1,0 550 DATA 255,255,255,255,255,255,255,255 560 DATA 255,128,128,128,128,128,128,128 570 DATA 255,1,1,1,1,1,1,1 580 DATA 128,128,128,128,128,128,128,255 590 DATA 255,129,129,129,129,129,129,255 600 DATA 1,1,1,1,1,1,1,255 610 REM SOUND 620 FOR C=54272 TO 54296:POKE C,0:NEXT 630 POKE 54296,15:POKE 54277,190:POKE 54278,248 640 HF=54273:LF=54272:W=54276 650 A$="()()()()" 660 B$="[][][][]" 670 FOR I=1 TO 16:READ S(I):NEXT I 680 DATA 1352,1354,1356,1358,1432,1434,1436,1438 690 DATA 1512,1514,1516,1518,1592,1594,1596,1598 700 FOR I=1 TO 28:READ Q(I),R(I):NEXT I 710 DATA 1142,103,1262,100,1382,102,1379,101,1259,99,1139,96 720 DATA 1136,160,1256,163,1376,163,1496,165,1499,164,1502,164 730 DATA 1622,166,1619,166,1616,165 740 DATA 1133,224,1253,227,1373,227,1493,227,1613,229,1733,229,1853,229 750 DATA 1856,228,1859,228,1862,228,1742,230,1739,230,1736,230 760 QQ(2)=6:QQ(3)=15:QQ(4)=28 770 PRINT "CHOOSE NUMBER OF COLORS: 2, 3, OR 4" 780 GOSUB 2020 790 GET E$:IF E$<"2" OR E$>"4" THEN 790 800 N=VAL(E$) 810 FOR I=1 TO N 820 PRINT "CHOOSE COLOR ";I 830 PRINT "[144] [146]  [146]  [146] [159] [146] [156] [146]  [146]  [146] [158] [146] [129] [151]" 840 PRINT "0 1 2 3 4 5 6 7 8" 850 GOSUB 2020 860 GET E$:IF E$<"0" OR E$>"8" THEN 860 870 C(I)=VAL(E$) 880 PRINT TAB(3*C(I))"^" 890 NEXT I 900 PRINT "[147]" 910 POKE 53282,C(2):POKE 53283,C(3):POKE 53284,C(4) 920 POKE 53265,PEEK(53265) OR 64 930 REM PRINT POSSIBLE SQUARES 940 REM TWO COLORS 950 CC=C(1) 960 POKE 1139,96:POKE 1139+LF,CC 970 POKE 1142,103:POKE 1142+LF,CC 980 POKE 1259,99:POKE 1259+LF,CC 990 POKE 1262,100:POKE 1262+LF,CC 1000 POKE 1379,101:POKE 1379+LF,CC 1010 POKE 1382,102:POKE 1382+LF,CC 1020 IF N=2 THEN 1260 1030 POKE 1136,160:POKE 1136+LF,CC 1040 POKE 1256,163:POKE 1256+LF,CC 1050 POKE 1376,163:POKE 1376+LF,C(2) 1060 POKE 1496,165:POKE 1496+LF,CC 1070 POKE 1499,164:POKE 1499+LF,C(2) 1080 POKE 1502,164:POKE 1502+LF,CC 1090 POKE 1616,165:POKE 1616+LF,C(2) 1100 POKE 1619,166:POKE 1619+LF,C(2) 1110 POKE 1622,166:POKE 1622+LF,CC 1120 IF N=3 THEN 1260 1130 POKE 1133,224:POKE 1133+LF,CC 1140 POKE 1253,227:POKE 1253+LF,CC 1150 POKE 1373,227:POKE 1373+LF,C(2) 1160 POKE 1493,227:POKE 1493+LF,C(3) 1170 POKE 1613,229:POKE 1613+LF,CC 1180 POKE 1733,229:POKE 1733+LF,C(2) 1190 POKE 1853,229:POKE 1853+LF,C(3) 1200 POKE 1736,230:POKE 1736+LF,C(3) 1210 POKE 1739,230:POKE 1739+LF,C(2) 1220 POKE 1742,230:POKE 1742+LF,C(1) 1230 POKE 1856,228:POKE 1856+LF,C(3) 1240 POKE 1859,228:POKE 1859+LF,C(2) 1250 POKE 1862,228:POKE 1862+LF,CC 1260 PRINT "" 1270 FOR I=1 TO 4 1280 PRINT TAB(8)A$:PRINT TAB(8)B$ 1290 NEXT I 1300 FOR T=1 TO 16 1310 GOSUB 2020 1320 POKE S(T),63 1330 FOR I=1 TO QQ(N) 1340 GOSUB 2020 1350 PP=0 1360 P=PEEK(Q(I)+LF):IF P=0 THEN PP=1 1370 POKE Q(I),28:POKE Q(I)+LF,PP:POKE Q(I),R(I):POKE Q(I)+LF,P 1380 GET E$:IF E$="" THEN 1370 1390 IF ASC(E$)=13 THEN 1430 1400 IF E$<>"[133]" THEN 1370 1410 NEXT I 1420 GOTO 1330 1430 A=S(T) 1440 IF I>14 THEN 1470 1450 ON I GOSUB 30,40,50,60,70,80,90,100,110,120,130,140,150,160 1460 GOTO 1480 1470 ON I-14 GOSUB 170,180,190,200,210,220,230,240,250,260,270,280,290,300 1480 GOSUB 2040 1490 NEXT T 1500 PRINT "" 1510 PRINT "PRESS F1 TO CHANGE" 1520 PRINT " F7 TO PRINT QUILT" 1530 GOSUB 2020 1540 GET E$:IF E$="[136]" THEN 1880 1550 IF E$<>"[133]" THEN 1540 1560 FOR I=1744 TO 1766:POKE I,32:POKE I+40,32:NEXT I 1570 PRINT "[145][145]PRESS RETURN--NO CHANGE" 1580 PRINT TAB(6)"F1 TO CHANGE, THEN" 1590 PRINT TAB(9)"PROCEED AS BEFORE" 1600 FOR T=1 TO 16 1610 PS=0:A=S(T):GOSUB 2020 1620 PT=PEEK(A+LF):IF PT=0 THEN PS=1 1630 GOSUB 2050 1640 POKE A,40:POKE A+1,41:POKE A+40,27:POKE A+41,29 1650 GOSUB 2060 1660 GET E$:IF E$="" THEN 1640 1670 IF ASC(E$)=13 THEN 1850 1680 IF E$<>"[133]" THEN 1640 1690 POKE A,40:POKE A+1,41:POKE A+40,27:POKE A+41,29 1700 FOR I=1 TO QQ(N) 1710 GOSUB 2020 1720 PP=0 1730 P=PEEK(Q(I)+LF):IF P=0 THEN PP=1 1740 POKE Q(I),28:POKE Q(I)+LF,PP:POKE Q(I),R(I):POKE Q(I)+LF,P 1750 GET E$:IF E$="" THEN 1740 1760 IF ASC(E$)=13 THEN 1800 1770 IF E$<>"[133]" THEN 1740 1780 NEXT I 1790 GOTO 1700 1800 IF I>14 THEN 1830 1810 ON I GOSUB 30,40,50,60,70,80,90,100,110,120,130,140,150,160 1820 GOTO 1840 1830 ON I-14 GOSUB 170,180,190,200,210,220,230,240,250,260,270,280,290,300 1840 GOSUB 2040 1850 NEXT T 1860 FOR I=1744 TO 1769:POKE I,32:POKE I+40,32:POKE I+80,32:NEXT I 1870 GOTO 1500 1880 FOR T=1 TO 16 1890 A=S(T) 1900 GOSUB 2050 1910 CC=PEEK(A+LF) 1920 FOR B=S(T)-320 TO S(T)+320 STEP 320 1930 FOR A=B-8 TO B+24 STEP 8 1940 GOSUB 2060:GOSUB 2040 1950 NEXT A,B 1960 NEXT T 1970 PRINT "PRESS F7 TO END PROGRAM."; 1980 GOSUB 2020 1990 GET E$:IF E$="[136]" THEN 2070 2000 GOTO 1990 2010 STOP 2020 POKE 198,0:POKE HF,84:POKE LF,125 2030 POKE W,17:FOR D=1 TO 60:NEXT D:POKE W,0:RETURN 2040 L=A+LF:POKE L,CC:POKE L+1,CC:POKE L+40,CC:POKE L+41,CC:RETURN 2050 A1=PEEK(A):A2=PEEK(A+1):A3=PEEK(A+40):A4=PEEK(A+41):RETURN 2060 POKE A,A1:POKE A+1,A2:POKE A+40,A3:POKE A+41,A4:RETURN 2070 PRINT"[147]" 2080 PRINT "PRESS RUN/STOP - RESTORE" 2090 PRINT "BEFORE RUNNING PROGRAM AGAIN." 2100 END