|))FSAVEFLOADFLFLLDELETEEXPANDNFILLCLEARPPBBPLMXWLPSCOLCLTOSSDSCROLICCOICBADICBLESCOK}FMMWLLLHLSSSWIDLINPISPEEQPOPSHIVERDFLOAMMXDLDLFSAV}@ @ @ @ @ @} !"#$}%&'()*+,-./01234 }56789hh;@ ,;@ ,;@@,;@ ,;A,;A,;@, };A0,;@&, GG9@,9@,9@,9@,9@,9@,d6-F:A, 6-&@@ }.6-%@<6-$AVJ6-AV$X6-%AdAx6-@6-A4'6-A636-A@=+ }L6-F:AY,X6-Apd6-A@x6. No equivalentb6-A#-@<'@"P:'@,J }6-%@V"Ab6-Au 68,- %68,-:68@,-@O68@,-Apd68@},-AUu6-C:hhhLV,#o #Ap!-@+"468,-=68,-F68,-O68,-S e@A}o A(l @@-)@:)@G)@T)@d6-%AV$l6-$-}9-@@,)@58,9 2L%%@%>%%@@%P:'AV,L%}7*%@6-?:<,'@*$<d0@@D1:TEMPFILE.PIX=*@J*@W*}@d*@Aa-@@2*@F:8,,6 aF:A,%AV$F:A,F:A,FP}%%@%B%%@@%P:+$,'AV,P%K*%@6-?:<,'@*$P++}$&, ,$U[6-?:C:,,:AF:F:A,%AV$F:A,,LB2y@XA@[$Z++$&, ,$_}P6-%$&&@(6-P:'AV,86-&AV$DAPAd00+F:A,%AV$F:A,,F:A,}iB6-?:C:,,!A3B2y@?A@B$n<AF:,$AA!0AY<6-@}s26-F:B2y,"@( A2 Ax[6-F:A2,6-?:<,) @;@w?I A@}[B2y@},F:AS,"@" A@, A7"@AP#"@- @`7 A A}[ A5[+"A,%@$+"A,%@$+"AF,@@Ap8"@`6-&@Y}.6-P:'@d,8 A%7-"@1)"@0)"@&)"@P7 A 1"@3'6-@$+",1 A}="@9'6-AU$+",3A= A5$;6-?:C:,<,#A8AF:A},;$ A$ Al6-F:A2,!6-F:AD,;6-%@$+"@,I6-&@X6-F:B2y,l}"@Au!! )!@Ag6-@$%,'@"P:'@,]8,F:8,,&@%AV}$+F:8,, @,g A>48,F:8,,%@&AV$+F:8,,!AS,> AF 6.-@B:,(6-@:}7<,,<"@XAE@ F6.F 6.-@B:,(6-@:7<,,<"@FAP@ F6.)B:,!@ })6.7@<@,B:, @Ae;6-@:7@<@,,;!@) @eA`B:, @!} A@\-@B:,"6-@:7<,,X+!@) @e,*+!@W) @H,AU\ + 6.D1:67@"},.(6-+$6.7%@"@ApJ6-@M$"m A*@@E( is already on disk.m(#Unless'} you change the name, the old'm:(2file will be lost. To change the namepress RETURNb(#Or press any other key to continu(}e.m@,M F:AS,@A* A5>"@AJ6-M$1 6- $6@6-)}$;) (} #(&()(@k A(U(@What file should hold your finished screen? (Eight char*}acters)gAdAUkE> 6. AA %6.>67B:,%@,..PIXJ 6. AA O+}U 6. (U(CWould you like to edit a screen you have already saved? (Y or N) T? A5!"@5A5"@C,}AE? A@YL(6(+What is the name of the saved screen file? HAdAUL^1 6. A'"-}AU1 A5c" 6."67B:,%@,..PIXhp 6. ApA5<@@I)@.}V)@c)@p)@m*@6-@*6-%AV$rb(( was saved as:+(Mode /},@(with  linesb(of  characters per line.wp;(3If you wish to these parameterspress RETURN.p(0To le0}ave them press any other key.|> F:AS,@A* A5>"@A- 6-6-&@1}6-#6-- AE6-(,(!What Antic made will you work in?/(D(AnticGraphicsV(@@2}h(@ @{(A (10)@(B (11)@U(C (12)#(D (13)@0(E (14)C(F (15)@3}UAdAUy A-@@K::)@E@y @V)+!@W* @e,)!@4}pA96-&@H+6-&@$+!@ ,96-&@X((How wide a line?9( (Minimum 8, byt5}esX( maximum 8, bytes)@AdAU A #,6-P:,6 A@@ AET(.(#How many lines do6} you want to edit?T( (Minimum 8, , Maximum ) A0; 6-P:,!*8,A@;6-$+!,%8,$+7} 8,,$6-P:'AV,$6-&AV$B (}(You have chosen:0( Save file--B( Load file--0(Mode 8}0( lines of  charactersKK(CIf this is right, press To make changes, press SI+F:B2y,"9}@,%+@$+F:B2y,"@,,AeAS A`==(5}Just a minute while I get myself together . . :}.A 6-%++$,!,$+&P:',$,16-P:'AV,A6-&AV$WAp&@?At&@%AV$+";},WAu&+"AU,pAx8,&@1A8,&@FA8@,UA8,dA<}8,pAK AU A! A+ AP5 A0AAK Al.@@ D1=}:CLEARS.SUBB-@@&O)@]67<,.>:,a l@6-?:C:,<,$" 6-6. @@6->}"$f6-%@6-%@3-@A%AE V6-P:'AV,f6-&$AVC-AA?}@%3%@7 C6-Q(-%@%@$8,@26-%$@@d%Q6-P:'AV@},;%@)%@&AV$76-%@;  <@e#%@9%@'AV<$NA}-@@ D:SCROLL.SUB>6-P:'AV,N6-&AV$?%%@%1%%@@?B}%'%@6-?:<,'@!7A`)Aa'AV4@7$&T.F:A,%AC}V$F:A,F:A,8 @`B+TAdAU+d*("Screen is saved as D1:TEMPFILE.SCR-(S(!Do you wanD}t to save the screen asd( ? (Y or N)0K A5+@C*@5A`7"@CA AK Ap56-E}::(((Do you want to quit? (Y or N):AdAU?S A5+@C*@5Au?"@5AF}S"@CADk(=(2To return to edit the same screen, press @(k(&To start SCREENBYTER over, press G}IR6-F:B2y,H++"@,%+@$+"@,,,AAR AN#A+# @ S7H}A%6.D1:TEMPFILE.PIX1"@76.XQ AU @@! A3A`GAa'AVQ I}A].A!AdAU++.b6-@ A6@@A@f@6J}@@3@ A g@l<6.D1:TEMPFILE.PIX-6.7@K}:,a l@l.@@ D:EXPANDS.SUBB-@N}AO)@]67<,.>:,a l@^+@@ D:FILL.SUB?-@A0L)@O}Z67<,.>:,^ e@6-C:,(6-P:'AV,86-&$AVJA@vVAbAe$P}; A;@6@D1:*.PIX((((Currently saved screen files.X6.D1:*.PIX/@Q}@C-@PP@T(X @$0-@)B2y@- 0$R};;6-+"@1,%@$+"@0,%@$+"@&,XB2y@$A8,=8,"@*!I6-S}@XA8,$>6-+"AU,;2A$@$@$>$-@ $T}8,"8,6-8,$6-P:',$c-AwA@+/ K-AA@Q_%U}@c >&6-A(%@d$+8,"@,2A>ALAr'Av36-V}= A5IAL$222,10,170,24,1,10,85,48,2,20,85,48,1,20,42,96441,20,21,192,2,40,42,96,2,40,40,192,1,40,40,1W}92 D4:P170L3.BAS$222,10,170,24,1,10,85,48,2,20,85,48,1,20,42,96441,20,21,192,2,40,42,96,2,40,40,192,1,40,40,13H//@@D1:EXPANDS.SUB>-@A"(*@, 7Y}@;(>""104,56,165,205,237,163,6,133""203,165,206,233,0,133,204,56!!173,138,6,237,140,6,133,207!!17Z}3,139,6,237,141,6,133,208""165,208,240,5,162,255,24,144!!2,166,207,172,163,6,177,203$$145,205,136,208,249,202,240[},31 ""56,165,205,237,163,6,133,205(""165,206,233,0,133,206,56,1650##203,237,163,6,133,203,165,2048""233,0,133,204\},24,144,212,165@!!208,208,206,172,163,6,169,0H145,203,136,208,251,96 D4:P177L4.BAS,165,2048""233,0,133,204bt//@@D1:DELETES.SUB>-@A"(*@, 7^}@;(> 104,56,173,152,6,237,136,6!!133,203,173,153,6,233,0,133""204,24,165,203,109,163,6,133""205,_}165,204,105,0,133,206,56!!173,138,6,237,140,6,133,207!!173,139,6,237,141,6,133,208""165,208,240,5,162,255,24,144`} !!2,166,207,172,163,6,177,205($$145,203,136,208,249,202,240,310""24,165,205,109,163,6,133,2058""165,206,105,0,133a},206,24,165@##203,109,163,6,133,203,165,204H""105,0,133,204,24,144,212,165P!!208,208,206,172,163,6,169,0X145,20b}5,136,208,251,96 D4:P178L5.BAS,165,204H""105,0,133,204,24,144,212,165P!!208,208,206,172,163,6,169,0X145,20&~ ..@@ D1:SCROLL.SUB>-@AP"(*@, 7 d}@;(>##104,104,104,141,161,6,173,152!!6,133,207,173,153,6,133,208160,0,140,158,6,173,154,6 145,2 e}07,173,161,6,41,8,24092,173,161,6,41,4,208,71 172,157,6,173,160,6,42,176!!8,136,208,250,141,160,6,240 !!54, f}42,136,208,252,141,148,6( 173,136,6,208,2,240,40,1730 148,6,141,160,6,56,173,13686,233,1,141,136,6,56,173@1 g}52,6,233,1,141,152,6,173H153,6,233,0,141,153,6,173P143,6,240,6,206,143,6,24X144,99,173,158,6,9,8,141`158, h}6,24,144,88,172,157,6h!!173,160,6,106,176,8,136,208p""250,141,160,6,240,71,106,136x!!208,252,141,148,6,173,136,6 i} 205,134,6,208,2,240,54,173 148,6,141,160,6,24,173,1366,105,1,141,136,6,24,173152,6,105,1,141,152,6,173 j}153,6,105,0,141,153,6,173143,6,205,142,6,240,6,238143,6,24,144,8,173,158,69,4,141,158,6,173,161,641 k},1,240,83,173,161,6,41 2,208,62,173,140,6,205,1386,208,8,173,141,6,205,139 6,240,124,24,173,140,6,1051, l}141,140,6,173,141,6,1050,141,141,6,24,173,152,6!!109,163,6,141,152,6,173,1536,105,0,141,153,6,173,1456, m}205,144,6,240,6,238,1456,24,144,75,173,158,6,91,141,158,6,24,144,64,173140,6,208,5,173,141,6,240 54,56 n},173,140,6,233,1,141(140,6,173,141,6,233,0,1410 141,6,56,173,152,6,237,16386,141,152,6,173,153,6,233@0,141 o},153,6,173,145,6,240H6,206,145,6,24,144,8,175P158,6,9,2,141,158,6,173X!!152,6,133,207,173,153,6,133` 208,173 p},132,2,240,36,160,0h!!177,207,141,154,6,73,255,45p160,6,141,155,6,173,160,6x73,255,45,154,6,13,6 141,155,6, q}173,158,6,240,40""208,41,160,0,177,207,141,1556,173,156,6,45,160,6,141161,6,173,160,6,73,255,45155,6,14 r}1,155,6,13,161,6141,154,6,173,158,6,208,324,144,98,41,8,240,17,56173,150,6,233,1,141,150,6173,151,6,2 s}33,0,141,151,6173,158,6,41,4,240,17,24173,150,6,105,1,141,150,6173,151,6,105,0,141,151,6173,158,6,41, t}1,240,18,24!!173,150,6,109,163,6,141,1506,173,151,6,105,0,141,1516,173,158,6,41,2,240,24 56,173,150,6,23 u}7,163,6,141150,6,173,151,6,233,0,141151,6,24,144,3,24,144,67!!173,150,6,133,203,173,151,6 133,204,24,173 v},48,2,105,4(""133,205,173,49,2,133,206,1740!!162,6,160,0,165,203,145,2058$$200,165,204,145,205,24,165,205@!!105,3 w},133,205,165,206,105,0H""133,206,24,165,203,109,163,6P##133,203,165,204,105,0,133,204X!!202,208,215,173,155,6,160,0 x}`##145,207,173,159,6,201,255,208h8,173,132,2,208,3,32,166p 6,96 D4:P178L6.BAS202,208,215,173,155,6,160,0 ` ..@@ D1:CLEARS.SUB>-@@&"(*@, 7z}@;(>$$104,104,104,133,208,162,32,169##0,133,207,160,255,145,207,136%%208,251,145,207,230,208,202,208{} 238,96 D4:P181L7.BAS,133,208,162,32,169##0,133,207,160,255,145,207,136%%208,251,145,207,230,208,202,208 )>EN,,@@ D1:FILL.SUB=-@A0"(*@}}, 7@=(!!173,136,6,141,135,6,173,154!!6,141,146,6,165,207,133,203##165,208,133,204,162,0,173,160~}6,141,148,6,172,157,6,78""148,6,176,52,136,208,248,173146,6,45,148,6,141,149,6 173,156,6,45,148,6,205,149}  6,240,20,141,149,6,173,148(6,73,255,45,146,6,13,1490 6,141,146,6,24,144,205,1738 146,6,129,207,141,154,6,9}6@!!173,135,6,205,134,6,240,247H 238,135,6,24,165,203,105,1P##133,203,165,204,105,0,133,204X!!161,203,141,148,6,}173,165,6` 141,164,6,173,164,6,45,148h6,141,149,6,173,164,6,45p 156,6,205,149,6,240,13,172x 157,6,78,164,6,1}76,193,136""208,248,240,223,172,157,6,14""164,6,176,29,136,208,248,173164,6,45,156,6,141,149,6173,164,6,7}3,255,45,148,613,149,6,141,148,6,24,144!!219,162,0,173,148,6,129,203!!173,146,6,129,207,141,154,6 56,173,1}35,6,237,136,6,240 12,168,136,240,8,173,156,6145,207,136,208,251,96 D4:P181L8.BAS7,141,154,6 56,173,1d0 REM ******* PROGRAM1 *******10 GRAPHICS 020 SCR1=PEEK(88)+256*PEEK(89)30 PNTR=PEEK(560)+256*PEEK(561)+435 SCR2=PEEK(PNT}R)+256*PEEK(PNTR+1)40 ? SCR1,SCR245 FOR PAUSE=1 TO 500:NEXT PAUSE50 FOR LOOP=0 TO 25560 POKE SCR2+LOOP,LOOP70 NEXT LOOP}80 GOTO 80(PNTR+1)40 ? SCR1,SCR245 FOR PAUSE=1 TO 500:NEXT PAUSE50 FOR LOOP=0 TO 25560 POKE SCR2+LOOP,LOOP70 NEXT LOOP 0 REM PROGRAM 210 GRAPHICS 020 FOR LOOP=1 TO 2030 ? "LEFT"40 NEXT LOOP50 FOR PAUSE=1 TO 500:NEXT PAUSE60 ? CHR$(125)70} FOR LOOP=1 TO 2080 ? "LEFT"90 POKE 88,PEEK(88)+1100 NEXT LOOP110 GOTO 110OR PAUSE=1 TO 500:NEXT PAUSE60 ? CHR$(125)70O0 REM PROGRAM 310 GRAPHICS 020 FOR LOOP=1 TO 10030 POSITION RND(1)*30,RND(1)*20:? "*":REM FILL SCREEN WITH ASTERISKS40 NE }XT LOOP50 PNTR=PEEK(560)+256*PEEK(561)+4:REM LOCATION OF READ POINTER60 X=PEEK(PNTR):REM STARTING POINT OF SCREEN70 FOR LO }OP=0 TO 25580 POKE PNTR,LOOP:REM CHANGE ADDRESS IN POINTER90 FOR PAUSE=1 TO 10:NEXT PAUSE100 NEXT LOOP110 GOTO 70 FOR LO v100 DL=PEEK(560)+256*PEEK(561)110 MEMTOP=PEEK(742)120 SCREEN1=PEEK(89):SCREEN2=MEMTOP-5140 POKE 89,SCREEN2:POKE 106,SCREEN$}2+4:? CHR$(125)150 FOR X=1 TO 22:? "********* THIS IS SCREEN 2 *********":NEXT X160 POKE 89,SCREEN1:POKE 106,SCREEN1+4:? CH$}R$(125)170 FOR X=1 TO 22:? "-------- SCREEN 1 GOES HERE --------":NEXT X190 OPEN #1,4,0,"K:":GET #1,X:CLOSE #1:X=X-48:IF X<$}1 THEN 190200 ON X GOTO 220,230210 GOTO 190220 POKE DL+5,SCREEN1:GOTO 190230 POKE DL+5,SCREEN2:GOTO 190E #1:X=X-48:IF X<$l10 GRAPHICS 8:COLOR 120 SETCOLOR 1,0,14:SETCOLOR 2,0,030 FOR X=0 TO 318 STEP 440 PLOT X,0:DRAWTO X+1,159:NEXT X50 FOR X=0(} TO 308 STEP 460 PLOT X,0:DRAWTO X+9,159:NEXT X199 REM *** CHANGE HUE ***200 OPEN #1,4,0,"K:"210 ? :? "ASSIGNED HUE IS NO(}W ";H220 ? "HIT H KEY TO CHANGE HUE"230 GET #1,X:IF X<>72 THEN 230240 H=H+1:IF H=16 THEN H=0250 SETCOLOR 2,H,0:GOTO 210O(|10 GRAPHICS 2420 SETCOLOR 1,0,14:SETCOLOR 2,0,030 FOR X=0 TO 318 STEP 340 COLOR 1:PLOT 159,0:DRAWTO X,19160 NEXT X70 GOT,}O 70APHICS 2420 SETCOLOR 1,0,14:SETCOLOR 2,0,030 FOR X=0 TO 318 STEP 340 COLOR 1:PLOT 159,0:DRAWTO X,19160 NEXT X70 GOT,100 GRAPHICS 0:POKE 82,5:POSITION 9,2:? "*** THE PYRAMID ***":PRINT 112 ? "ADJUST TV CONTRAST AND"113 ? "BRIGHTNESS TO MINI0}MUM."114 ? "ADJUST TV COLOR AND TINT"115 ? "TO SUIT INDIVIDUAL TASTE.":? 120 ? "YOUR CHOICE:"130 ? " (0) RANDOM PARAMETE0}RS"140 ? " (1) USER CONTROLLED PARAMETERS"150 TRAP 150:INPUT CHOICE:IF CHOICE=0 THEN GRAPHICS 24:GOTO 500160 IF CHOICE<>10} THEN 150170 ? :? "DRAW BACKGROUND OF VERTICAL LINES?"180 ? " (0) EVEN LINES"190 ? " (1) ODD LINES"200 ? " (2) NO BACK0}GROUND"210 TRAP 210:INPUT LIGHT:IF LIGHT=2 THEN 230220 IF LIGHT<>0 AND LIGHT<>1 THEN 210230 ? :? "DRAW PYRAMID IN MODE"240}0 ? " (0) FROM CENTER OUTWARD"250 ? " (1) FROM LEFT TO RIGHT"260 TRAP 260:INPUT MODE270 IF MODE<>0 AND MODE<>1 THEN 2600}280 ? :? "FOR APEX OF PYRAMID USE"290 ? " (0) ONE POINT"300 ? " (1) TWO POINTS"310 TRAP 310:INPUT APEX320 IF APEX<>0 AN0}D APEX<>1 THEN 310330 ? :? "SPACING OF RAYS FROM APEX?"340 ? "(USUALLY AN INTEGER: 2 TO 6)"350 TRAP 350:INPUT SPACE:IF SPA0}CE<1 THEN 350360 ? :? "DRAW DARK VERTICAL LINES?"370 ? " (0) EVEN LINES"380 ? " (1) ODD LINES"390 ? " (2) NO LINES"400}0 TRAP 400:INPUT DARK:IF DARK=2 THEN 420410 IF DARP<>0 AND DARK<>1 THEN 400420 ? :? "WHEN FINISHED"430 ? " (0) GOTO RAND0}OM PARAMETERS"440 ? " (1) HOLD THE PATTERN"450 TRAP 450:INPUT HOLD455 IF HOLD=0 THEN GRAPHICS 24:GOTO 600460 IF HOLD<>0 0}AND HOLD<>1 THEN 450470 POKE 82,2:? :? "WHEN PATTERN IS FINISHED"475 ? "HIT Ƞ TO CHANGE HUE."480 ? :? "READY? HIT STA0}RT KEY."490 IF PEEK(53279)<>6 THEN 490495 TRAP 40000:GRAPHICS 24:GOTO 600497 REM 498 REM *** RANDOM PARAMETERS***499 REM0} 500 LIGHT=INT(RND(0)*8)510 MODE=INT(RND(0)*2)520 APEX=INT(RND(0)*2)530 SPACE=2+INT(RND(0)*5)535 IF MODE=M AND APEK=A AN0}D SPACE=S THEN 510540 DARK=INT(RND(0)*8)545 HUE=INT(RND(0)*16)550 POKE 77,0:REM RESET ATTRACT MODE597 REM 598 REM *** PR0}OGRAM EXECUTION ***599 REM 600 SETCOLOR 2,HUE,0:SETCOLOR 1,0,14620 IF LIGHT>1 THEN 640630 COLOR 1:B=LIGHT:GOSUB 1000640 0}IF MODE=0 THEN GOSUB 2000650 IF MODE=1 THEN GOSUB 3000660 REM *** DRAWTO SIDES ***670 FOR K=191 TO 1 STEP -SPACE680 COLOR0} 1:PLOT 159,APEX:DRAWTO 318,K:PLOT 159,APEX:DRAWTO 0,K690 COLOR 0:PLOT 159,0:DRAWTO 318,K-1:PLOT 159,0:DRAWTO 0,K-1:NEXT K70}00 IF DARK>1 THEN 720710 COLOR 0:B=DARK:GOSUB 1000720 IF HOLD=1 THEN 4000730 IF RND(0)<0.2 THEN GRAPHICS 24740 M=MODE:A=A0}PEX:S=SPACE750 GOTO 500998 REM 999 REM *** SUBROUTINE VERTICAL LINES1000 FOR K=B TO 319 STEP 21010 PLOT K,0:DRAWTO K,1910}:NEXT K1020 RETURN 1998 REM 1999 REM *** SUB STARTS FROM CENTER2000 FOR K=0 TO 158 STEP SPACE2010 COLOR 1:PLOT 159,0:DRA0}WTO 159+K,191:PLOT 159,0:DRAWTO 159-K,1912020 COLOR 0:PLOT 159,APEX:DRAWTO 160+K,191:PLOT 159,APEX:DRAWTO 158-K,1912030 NEX0}T K:RETURN 2998 REM 2999 REM *** SUB DRAWS LEFT TO RIGHT3000 FOR K=0 TO 318 STEP SPACE3010 COLOR 1:PLOT 159,APEX:DRAWTO K0},1913020 COLOR 0:PLOT 159,0:DRAWTO K+1,191:NEXT K:RETURN 4000 REM 4001 REM *** ALLOWS USER TO CHANGE4002 REM *** HUE WHEN0} PATTERN IS ON4003 REM *** HOLD BY HITTING H KEY.4010 OPEN #1,4,0,"K:"4020 GET #1,X:IF X=72 THEN HUE=HUE+14030 IF HUE=16 0}THEN HUE=04040 SETCOLOR 2,HUE,0:GOTO 4020 H KEY.4010 OPEN #1,4,0,"K:"4020 GET #1,X:IF X=72 THEN HUE=HUE+14030 IF HUE=16 0+40 REM *** PR06RAM 4: JEWELED CROSS50 GRAPHICS 0:POSITION 8,2:? "THE JEWELED CROSS":? :? 55 ? "WHEN PATTERN IS FINISHED--":4}? 60 ? "TURN ROOM LIGHTS DOWN TO GET"70 ? "THE EFFECT OF A STAINED GLASS"80 ? "WINDOW.":? 90 ? "HIT H KEY TO CHANGE HUE A4}ND/OR"95 ? "ADJUST TV TINT CONTROL.":? 100 ? "DIAMETER OF SQUARE?"110 ? "(MAXIMUM OF 4*47--TRY 4*46)"120 TRAP 150:? "4*";4}:INPUT DIAM:DIAM=4*DIAM130 IF DIAM<1 OR DIAM>188 THEN 150140 TRAP 40000:GOTO 300150 PRINT CHR$(253):GOTO 50300 REM *** DE4}FINE CORNERS OF SQUARE310 XLO=INT(159.5-DIAM/2):XHI=XLO+DIAM320 YLO=INT(95.5-DIAM/2):YHI=YLO+DIAM349 REM 350 REM *** DRAW4} BACKGROUND ***360 GRAPHICS 24:SETCOLOR 2,0,0:SETCOLOR 1,0,14:COLOR 1410 FOR X=XLO TO XHI420 PLOT X,YLO:DRAWTO X,YHI:NEXT 4}X449 REM 450 REM *** DRAW CROSS ***460 COLOR 0:FOR K=0 TO DIAM STEP 4470 PLOT XLO,YLO:DRAWTO XHI,YHI-K480 PLOT XLO,YLO:D4}RAWTO XHI-K,YHI490 PLOT XHI,YLO:DRAWTO XLO,YHI-K500 PLOT XHI,YLO:DRAWTO XLO+K,YHI510 PLOT XHI,YHI:DRAWTO XLO,YLO+K520 PLO4}T XHI,YHI:DRAWTO XLO+K,YLO530 PLOT XLO,YHI:DRAWTO XHI,YLO+K540 PLOT XLO,YHI:DRAWTO XHI-K,YLO550 NEXT K599 REM 600 REM **4}* CHANGE HUE:HIT H KEY ***610 OPEN #1,4,0,"K:"620 GET #1,X:IF X=72 THEN HUE=HUE+1630 IF HUE=16 THEN HUE=0640 SETCOLOR 2,H4}UE,0:GOTO 6201000 GOTO 10000 OPEN #1,4,0,"K:"620 GET #1,X:IF X=72 THEN HUE=HUE+1630 IF HUE=16 THEN HUE=0640 SETCOLOR 2,H4>6KSCRPNTSCRPAUSLOO******* PROGRAM1 ******* +%%68}-F:@,%AV$F:@,--6-F:A`,%AV$F:Aa,%@#!!6-F:,%AV$F:%@,( (--8}@A 2-AU< %F P @ D4:P189L1.BAS$F:%@,( (--8_  LOOPAUSPROGRAM 2 +-@@  (LEFT( 2-@<}A <(>:A%,F-@@ P (LEFTZ @F:@,%@d n A D4:<}P189L2.BAS<(>:A%,F-@@ P (LEFTZ @F:@,%@d n A D4:< /LOOPAUSPNTPROGRAM 3 +-@AN+-H:@@},$@0H:@,$@ 1(*NFILL SCREEN WITH ASTERISKS( 2H-6-F:A`,%AV$F:Aa,%@HLOCATI@}ON OF READ POINTER<' 6-F:,'STARTING POINT OF SCREENF-AUP% %CHANGE ADDRESS IN POINTERZ-@}@@ d n @p D4:P189L3.BAS-AUP% %CHANGE ADDRESS IN POINTERZ-@=@6KMEMTOSCREENSCREENDd%%6-F:A`,%AV$F:Aa,n6-F:D}AB,x 6-F:@, 6-&@0@#A%@0(>:A%,D-@@"@($********* D}THIS IS SCREEN 2 *********D 0@#A%@0(>:A%,D-@@"@($-------- SCREEN 1 GD}OES HERE --------D ]#@@K:0)@;@I6-&@H] @AAD} A0 A%@ A%@ A D4:P192L1.BASAADe  +@@70@@70@-H}A@(',#/%@AY' 2-A@<',#/%@ AY' H}*** CHANGE HUE ***##@@K:!(!(ASSIGNED HUE IS NOW (HIT H KEY TO CHANGE HUEH}$)@$@rA0)6-%@"@)6-!0@! A D4:P196L1H}.BAS@$@rA0)6-%@"@)6-!0@! A D4:P196L1H  +@$70@@70@-A@(L}+ @,AY+/A< F @p D4:P196L2.BAS-A@(LR12 CHOICLIGHMODAPESPACDARDARHOLAPEHUP} dL +@@1-@ @I(*** TP}HE PYRAMID ***L p(ADJUST TV CONTRAST ANDq(BRIGHTNESS TO MINIMUM.r (ADJUST TV COLOR AND TINTs$!(TO SUIT P}INDIVIDUAL TASTE.$(x( YOUR CHOICE:( (0) RANDOM PARAMETERS((( (1) USER CONTROLLED PARAMETERS1 APP}"'+@$1 A@AP-(-("DRAW BACKGROUND OF VERTICAL LINES?( (0) EVEN LINP}ES( (1) ODD LINES( (2) NO BACKGROUND% A%"@A0!!*@AP}((DRAW PYRAMID IN MODE!!( (0) FROM CENTER OUTWARD ( (1) FROM LEFT TO RIGHT A`!!P}*@A`"("(FOR APEX OF PYRAMID USE"( (0) ONE POINT,( (1) TWO POINTS6 A@!!P}*@AJ%(%(SPACING OF RAYS FROM APEX?T$$((USUALLY AN INTEGER: 2 TO 6)^% AP% @P}APh$($(DRAW DARK VERTICAL LINES?r( (0) EVEN LINES|( (1) ODD LINES( (2) NO LINES% AP}%"@A !!*@A((WHEN FINISHED$$( (0) GOTO RANDOM PARAMETERSP}( (1) HOLD THE PATTERN AP#"+@$# A!!*@AP5@P}@(5(WHEN PATTERN IS FINISHED (HIT Ƞ TO CHANGE HUE.!(!(READY? HIT START KEY. F:B2y,@P}A! B+@$! A*** RANDOM PARAMETERS***6-P:H:,$@,6-P:HP}:,$@,6-P:H:,$@,%%6-@%P:H:,$@,"*"*"A6-P:H:P},$@,!6-P:H:,$@,&*@w*RESET ATTRACT MODEUV*** PROGRAM EXECUTION ***WP}X10@10@@l!@A@v @6- A" A P}"@ A0*** DRAWTO SIDES ***-A@6= @,AY%/A1,AYP}=/] ,AY3/A&@E,AYY/&@] !@P}A  6- A"@A@"H:, ? "+@$ 6-6-6- AP}##*** SUBROUTINE VERTICAL LINES-A@,/A $ *** SUB P}STARTS FROM CENTER-AXY @,AY3/AY%AE,AYY/AY&P}AM ,AY-/A`%A9,AYM/AX&A   $  !!*** SUB DRAWS LEFT P}TO RIGHT -A % @,AY%/A : ,AY3/%@A7 P}:$*** ALLOWS USER TO CHANGE *** HUE WHEN PATTERN IS ON *** HOLD BY HITTING H KEY.##@@P}K:*)@"@r*6-%@"@6-!0@! A@  DP}4:P196L3.BAS:*)@"@r*6-%@"@6-!0@! A@  DP VDIAXLXHYLYHHU(""*** PR06RAM 4: JEWELT}ED CROSS2; +-@@5(THE JEWELED CROSS8(;(7%"(WHEN PATTERN IS FINISHED--%(<$$(TURN ROOM LIGT}HTS DOWN TO GETF%%(THE EFFECT OF A STAINED GLASSP(WINDOW.(Z&&(HIT H KEY TO CHANGE HUE AND/OR_"(ADJUST TVT} TINT CONTROL."(d(DIAMETER OF SQUARE?n##((MAXIMUM OF 4*47--TRY 4*46)x' AP(4*'6-@$!!T} @)!AAP B A >:AS, @P,""*** DEFINE CORNERS OF SQUARE6$6-P:AYPT}&'@,$6-%@$6-P:@P&'@,$6-%]^*** DRAW BACKGROUND ***hK +@$'0@T}A0@@K@ - ,/ *** DRAW CROSS ***# #-T}@ ,/& ,/& ,/& ,/% ,/% ,/% ,/T}% ,/&& WX""*** CHANGE HUE:HIT H KEY ***b##@@K:l*)@"T}@r*6-%@v"@6-!0@! A  A D4:P199L4.BAS"Tt90 REM ٠Λ100 REM ** LOAD MACHINE LANGUAGE SUBROUTINE **110 PGMSIZ=24:DIM SUBR$(PGMSIZ)120 FOR I=1 TO PGMSIZX}130 READ BYTE140 SUBR$(I)=CHR$(BYTE)150 NEXT I200 REM ** GET AMOUNT OF MEMORY TO PROTECT **210 ? "How many bytes do you X}want to protect";220 INPUT PROTECT230 HI=INT(PROTECT/256):LOW=PROTECT-256*HI240 SUBR$(6,6)=CHR$(LOW)250 SUBR$(14,14)=CHR$X}(HI)300 REM ** REINITIALIZE BASIC WITH THE NEW LOW MEMORY POINTER **310 Z=USR(ADR(SUBR$))400 REM ** MACHINE LANGUAGE SUBROX}UTINE **410 REM MEMLO =$02E7;BOTTOM OF AVAILABLE USER MEMORY420 REM WARMST=$08;WARM START FLAG430 REM CARTA =$A000;BASIC CX}ARTRIDGE ENTRY POINT440 REM 450 REM THE PROGRAM IS COMPLETELY RELOCATABLE. SO NO STARTING ADDRESS IS PROVIDED470 REM 500 X}REM CLC ;INITIALIZE FOR ADDITION510 DATA 24520 REM LDA MEMLO ;ADD LEAST-SIGNIFICANT BYTES530 DATA 173,231,2540 REM ADC #PX}ROTECT&$FF550 DATA 105,0560 REM STA MEMLO570 DATA 141,231,2580 REM LDA MEMLO+1 ;ADD MOST-SIGNIFICANT BYTES590 DATA 173,2X}32,2600 REM ADC #PROTECT/256610 DATA 105,0620 REM STA MEMLO+1630 DATA 141,232,2640 REM LDA #0 ;RESET THE WARM START FLAGX}650 DATA 169,0660 REM STA WARMST670 DATA 133,8680 REM JUMP CARTA ;START BASIC OVER AGAIN690 DATA 76,0,160999 END FLAGXx10 ? "FREE RAM = ";FRE(0)20 RAMTOP=PEEK(106):? "RAMTOP = ";RAMTOP;" PAGES":? "LAST ADDRESS = ";RAMTOP*25630 FOR W=1 TO 1000]}:NEXT W40 SMALLRAM=RAMTOP-450 POKE 106,SMALLRAM60 GRAPHICS 070 RAMTOP=PEEK(106)80 ? "NEW FREE RAM = ";FRE(0)90 ? "NEW R]}AMTOP = ";RAMTOP;" PAGES":? "LAST ADDRESS = ";RAMTOP*256100 ? "RESERVED MEMORY BEGINS AT ";RAMTOP*256+1";FRE(0)90 ? "NEW R\i50 REM STEP UP VARIABLES FOR CALLS60 CHECK=1000:SCREEN=2000:QUIT=3000:DIM AN$(10):? CHR$(125)100 REM MOVE DOWN RAMTOP110 Ra}AMTOP=PEEK(106)120 ? "MOVE DOWN RAMTOP";:INPUT AN$:IF AN$(1,1)="N" THEN 200130 RAMTOP=RAMTOP-5:POKE 106,RAMTOP140 GRAPHICSa} 0200 REM FILL 900 BYTES ABOVE RAMTOP210 FIRST=RAMTOP*256+1:LAST=RAMTOP*256+900220 ? "FILL MEMORY ABOVE RAMTOP";:INPUT AN$a}:IF AN$(1,1)="N" THEN 300230 POKE 559,0:REM TURN OFF SCREEN REFRESHER240 FOR POSITION=FIRST TO LAST250 IF VALUE=255 THEN Va}ALUE=0260 VALUE=VALUE+1270 POKE POSITION,VALUE280 NEXT POSITION290 POKE 559,34:REM TURN ON SCREEN300 REM CHOOSE ACTION3a}10 ? :? "WHAT ACTION?":? " TO CHECK RAM":? " TO PLAY WITH SCREEN":? " TO QUIT"320 INPUT ACTION330 ON ACTION GOSUB SCREENa },CHECK,QUIT340 GOTO 3001000 REM SCREEN PLAY1010 ? "CLEAR SCREEN":INPUT AN$1020 IF AN$(1,1)="Y" THEN ? CHR$(125)1030 ? "Ca }HANGE GRAPHICS MODE";:INPUT AN$1040 IF AN$(1,1)="Y" THEN ? "WHAT MODE";:INPUT MODE:GRAPHICS MODE1050 IF MODE<>0 THEN ? "ENTa }ER ANSWERS UNTIL DONE, THEN NO";:INPUT AN$1060 IF AN$(1,1)<>"N" THEN GOTO 10501070 IF MODE<>0 THEN GRAPHICS 01100 RETURN a }2000 REM CHECK MEMORY2010 ? :? "FIRST POSITION = ";FIRST:? "LAST = ";LAST:? "ENTER POSITIONS TO CHECK OR 0,0 TO RETURN"2a }020 INPUT START,FINISH:IF START=0 THEN GOTO 21002030 POKE 82,7:POKE 201,11:? :REM MOVE MARGIN, SET TAB2040 FOR POSITION=STAa}RT TO FINISH2050 VALUE=PEEK(POSITION):? POSITION;" = ";VALUE,2055 HALT=PEEK(53775):IF HALT=251 THEN GOTO 20552060 NEXT POSa}ITION2070 POKE 82,2:REM RESTORE MARGIN2075 POKE 764,2552080 GOTO 20002100 RETURN 3000 REM QUIT3010 ? "NORMAL END OF JOBa}":END 070 POKE 82,2:REM RESTORE MARGIN2075 POKE 764,2552080 GOTO 20002100 RETURN 3000 REM QUIT3010 ? "NORMAL END OF JOB`10000 PROTOP=PEEK(14)+256*PEEK(15)10010 MEMSTART=PROTOP+24+1:REM START OF YOUR MEMORY; ALLOWS FOR 2 GOSUBS AND 1 FOR/NEXT10e}100 MEMTOP=PEEK(741)+256*PEEK(742)10110 MEMFINISH=MEMTOP:REM END OF YOUR MEMORY AREA; ALLOWS FOR 2 GOSUBS AND 1 FOR/NEXT10dV^PGMSISUBRBYTPROTECHLOZ٠i}Λd,,** LOAD MACHINE LANGUAGE SUBROUTINE **n6-@$;,x-@"67,.>:, ++**i} GET AMOUNT OF MEMORY TO PROTECT **..(%How many bytes do you want to protect$6-P:'AV,$6-&AV$i}67@<@,.>:,67@<@,.>:,,>>** REINITIALIZE BASIC WITH THE NEW LOW MEMORY POINTER **66i}-?:C:,,''** MACHINE LANGUAGE SUBROUTINE **22MEMLO =$02E7;BOTTOM OF AVAILABLE USER MEMORY WARMST=$08;WARM STARTi} FLAG..CARTA =$A000;BASIC CARTRIDGE ENTRY POINTOOTHE PROGRAM IS COMPLETELY RELOCATABLE. SO NO STARTING ADDRESS i}IS PROVIDED""CLC ;INITIALIZE FOR ADDITION24,,LDA MEMLO ;ADD LEAST-SIGNIFICANT BYTES173,231,2Ai}DC #PROTECT&$FF& 105,00STA MEMLO:141,231,2D--LDA MEMLO+1 ;ADD MOST-SIGNIFICANT BYTESN173,232,2XADCi} #PROTECT/256b 105,0lSTA MEMLO+1v141,232,2''LDA #0 ;RESET THE WARM START FLAG 169,0STA WARMSTi} 133,8((JUMP CARTA ;START BASIC OVER AGAIN76,0,160 D4:P209L1.BAS FLAG 169,0STA WARMSThZ(}RAMTOSMALLRA ( FREE RAM = I:,I6-F:A,+( RAMTOP =  PAGEm}SI(LAST ADDRESS = $AV-@A (6-&@2A< +F6-F:A,P"m}"(NEW FREE RAM = I:,Z> ( NEW RAMTOP =  PAGES>(LAST ADDRESS = $AVd44(RESERVED MEMORY BEGINS ATm } $AV%@ D4:P214L1.BAS RAMTOP =  PAGES>(LAST ADDRESS = $AVd44(RESERVED MEMORY BEGINS ATl)GH4CHECSCREEQUIANRAMTOFIRSLASPOSITIOVALUACTIOMODSTARFINISHALq"} 2!!STEP UP VARIABLES FOR CALLS<A6-A6-q#}A '6-A04;@,A(>:A%,dMOVE DOWN RAMTOPn6-F:A,x>(MOVE DOWN RAMTOP>7@q$}<@,4NA6-&@A +!!FILL 900 BYTES ABOVE RAMTOP/6-$AV%@/6q%}-$AV%A F!(FILL MEMORY ABOVE RAMTOP%F7@<@,4NA1AY1TURN OFF SCRq&}EEN REFRESHER -"AU6-6-%@  "&AY@4&TURN ON SCREEN,q'}CHOOSE ACTION6R(( WHAT ACTION?*( TO CHECK RAMD( TO PLAY WITH SCREENR( TO QUIT@J T q(}ASCREEN PLAY( CLEAR SCREEN)7@<@,4Y)(>:A%,!(CHANGE GRAPHICS MODE!3q)}7@<@,4Y+( WHAT MODE/3+:6(!ENTER ANSWERS UNTIL DONE, THEN NO:$&7@<@q*},0N& AP.+L$CHECK MEMORY]((FIRST POSITION = ,(LAST = ](,ENTER POSq+}ITIONS TO CHECK OR 0,0 TO RETURN " A!A@@'A@*(AMOVE MARGIN, Sq,}ET TAB - 6-F:,( = (6-F:B7u,"AQ( A U  &@@&RESTORE MARGq-}INAdAU  A 4$ QUIT (NORMAL END OF JOB D4:P215L2.BAS@&RESTORE MARGpf>PROTOMEMSTARMEMTOMEMFINIS'%%6-F:@,%AV$F:@,'T6-%@$u/}%@TSTART OF YOUR MEMORY; ALLOWS FOR 2 GOSUBS AND 1 FOR/NEXTt'%%6-F:AA,%AV$F:AB,~'# 6-#END Ou0}F YOUR MEMORY AREA D4:P217L3.BASOWS FOR 2 GOSUBS AND 1 FOR/NEXTt'%%6-F:AA,%AV$F:AB,~'# 6-#END Ot(BTP170L3 BASBXP177L4 BASB]P178L5 BASBcP178L6 BASByP181L7 BASB |P181L8 BASBP189L1 LSTBP189L2 LSTBP189L3 LSTBP192L1 LSTBP196L1 LSTBP196L2 LSTBP196L3 LSTB P199L4 LSTBP189L1 BASBP189L2 BASBP189L3 BASBP192L1 BASBP196L1 BASBP196L2 BASBP196L3 BASB P199L4 BASB P209L1 LSTBP214L1 LSTBP215L2 LSTBP217L3 LSTB P209L1 BASBP214L1 BASB !P215L2 BASB.P217L3 BAS