‚ƒ ((P0¤P1¤P2¤P3¤M¤X¨Y¨L¨XM¨YM¨LM¨ÔØÉÒÙÓNÐNÍDÙÐD0¤D1¤D2¤D3¤DØB¤ÚMOVÅÍDM°DM±DM²ÂDM³REÓPMBASÅBYTÅDM0¤DM1¤DM2¤DM3¤VTAÂATAÂOFFSEÔV³V²ÊMOVE¤€€€€€@@@@@ @ €€€€€ !"#$%€&€'€(€)*+,-./€0~~€;@,;@,‚;@,ƒ;@,„;@,…9@,†9@,‡9@,ˆ9@,‰9@,Š9@, k +@-@@=(@A SELF-MODIFYINGO-@@k(@PLAYER-MISSILE \-@@ 3(@GRAPHICS UTILITYE-@@\(@ ken grace ‹-@A  ‹ o +(o(ZTHIS UTILITY ASKS SEVERAL QUESTIONS ABOUT THE P-M GRAPHICS SITUATION YOU WANT TO SET UP.e(:(/IT THEN MODIFIES ITSELF INTO A PROGRAMSKELETON.=(e(#SUBROUTINES FOR PLAYER AND MISSILE q(MOTION ARE INCLUDED.(D( YOU ADD THE REST OF THE PROGRAM.G(q(%ANIMATION IS POSSIBLE BY COPYING NEW `&(SHAPE STRINGS INTO THE STRINGS@(DEFINING THE PLAYERS.C(F(`(PRESS ÓÔÁÒÔ TO BEGIN.&6Œ-F:B2y,&Œ@@3 AP!-@@%() 3 AUU(>:A%,(G(/ENTER THE ÂÁÓÉà GRAPHICS MODE FOR THE PLAYFIELDQ(GR. UŒ' AP( 9000 GR. Œ' AU['(RESOLUTION DESIRED FOR PLAYERS:;(0 = DOUBLE-LINEW(1 = SINGLE-LINE (FINER)[ŽH6-P:Œ'@,$6Œ-Œ&@$0Œ@H6-@$+@%Ž,%Œ"@%6-@%@$Ž%Œ"@%6-@%@$Ž %Œ"@%6-@$%@$Ž"%Œ"@%6-@6%@$Ž$G AP%( 9010 RES=Ž:S=/ AUG6-A($+@%Ž,&; AP)-@@6@-(1 ; AU(,((NUMBER OF PLAYERS TO BE DEFINED,‘*]‘ @ AP'-‘@;(A…%@P$O(A%@P$S ] AU,I‘ @ AP'-‘@;(A–%@$? I AU0; AP)-@8@D@-(1 ; AU2-‘&@4R(>:A%,(L(1COLOR (0 - 15) AND INTENSITY (0 - 15) FOR PLAYER RŒ6F AP<(AP% POKE A%,@$Œ%F AU8`(WIDTH OF PLAYER :-( 0 = NORMALB(1 = TWICE NORMAL\(3 = FOUR TIMES NORMAL`Œ:< AP2(A`% POKE B2V%,Œ< AU<fb(>INITIAL HORIZONTAL POSITION (0 - 255) FOR LEFT EDGE OF PLAYER  (45 TO 210ON SCREEN)fŒ>W APM(A€%@P$X()=Œ:REM HORIZ POS OF PLAYER W AU@A-("VERTICAL LENGTH (BYTES) OF PLAYER 1Œ>(>:A%,A(BQM(4INITIAL VERTICAL POSITION OF TOP OF PLAYER (1 TO &Œ&@)QDk APa(A‚%@P$Y()=:L()=Œ%@:REM VERT POS AND LENGTHk AUF€€( USE LINES A‘%@P$ TO A‘ %@P$# TO ENTER DATA STATEMENTS WITH THE Œ BYTES DEFINING PLAYER H&(#(TYPE ÃÏÎÔ WHEN FINISHED.&&J N; AP)-@H@t@-(1 ; AUP8(4((HOW MANY MISSILES TO BE DEFINED (0 TO 4)8’R?’" AP--A€Aˆ1(5 ? AUT?’" AP--AA˜1(5 ? AUV]’ @ AP'-’@;(A’…%@P$O(A’%@P$S ] AUX; AP)-@x@†@-(1 ; AUZ&’"(>:A%,& A\%6-%-’&@^O(>:A%,(+(WIDTH OF MISSILE :( 0 = NORMALO(1 = TWICE NORMAL`>(3 = FOUR TIMES NORMAL!Œ>6-P:@#%?,$Œ%b. AP$(9064 POKE 53260,. AUd62('INITIAL HORIZONTAL POSITION OF MISSILE 6ŒfY APO(A’€%@P$XM()=Œ :REM MISSILE  HORIZ POSY AUh>-(#VERTICAL LENGTH (BYTES) OF MISSILE 1Œ>(>:A%,je(a(4INITIAL VERTICAL POSITION OF TOP OF MISSILE (1 TO A($+@%Ž,&Œ&@)eln APd(A’‚%@P$ YM()=:LM()=Œ%@:REM VERT POS AND LENGTHn AUnzz( USE LINE A“%@P$ (TO A“ %@P$$) TO ENTER DATA STATEMENTS WITH THE Œ 'BYTES' DEFININGpr(MISSILE +6Œ-P:@#%?,.(l(ALLOWED VALUES ARE 0, Œ, @$Œ, OR @$Œo(r&r w; AP)-@ˆA@-(1 ; AUxI’ @ AP'-’@;(A–P%@$? I AU}O’" AP--@A(A—%@$E O AU/ AP(119(120%(125/ AU‚G(PRIORITY SCHEDULE :(G($1 - PLAYERS 0-3,PLAYFLDS 0-3,BACKGNDƒ@(@(52 - PLAYERS 0-1,PLAYFLDS 0-3,PLAYERS 2-3,BACKGND„.(.(#4 - PLAYFLDS 0-3,PLAYERS 0-,BACKGND…@(@(58 - PLAYFLDS 0-1,PLAYERS 0-3,PLAYFLDS 2-3,BACKGND†`(`(UALSO, THE NUMERICAL SUMS OF THE ABOVE CHOICES ARE ALLOWED, GIVING BLACK FOR OVERLAPS.‡?(,(!ABOVE +32 GIVES COLOR IN OVERLAPS/(;(CHOICE?Œˆ, AP"(9045 POKE 623,Œ, AU‰I(1(&WHEN YOU SEE ÒÅÁÄÙ YOU MAY LIST OR RUNEŒ-@A I ŒŒ3 AP!-A)A7%() 3 AU‘t( ((140(145!(150)(1551(156M(POKE 842,12:? CHR$(125)_-qAB@t&–00@@ @*(>:A%,-(0$›9( ((CONT$-6AB@9&œBAB@"(>:A%,%(?0@@ @B$Ÿ A llMOTION OF PLAYER P. X(P) AND Y(P) ARE X,Y POSITIONS. DX AND DY ARE CHANGES. USE FOR DY=-2,-1,O,1 OR 2.›¡! Ah!“"Ag¢//”%@AcAdAeAf£6€7†8”,%“,.• Ag¤67†8”,%“,.– Ag¥6‚7†8”,%“,.— Ag¦6ƒ7†8”,%“,.˜§MB2H%”…8”,%™$6…8”,-…8”,%™26†8”,-†8”,%“>6™-J6“-M$¨%6™-6“-% Aaª88MOTION OF PLAYER P. USE FOR DY >2 OR <-2 (OR 0).›«9 Aw9”%@ArAsAtAu¬2 6€.šB2H…8”,%™(6€7†8”,%“,.•2 Av­2 6.šB2I…8”,%™(67†8”,%“,.–2 Av®2 6‚.šB2P…8”,%™(6‚7†8”,%“,.—2 Av¯( 6ƒ.šB2Q…8”,%™(6ƒ7†8”,%“,.˜°:6…8”,-…8”,%™6†8”,-†8”,%“+6™-76“-:$±%6™-6“-% Aq´ddMOTION OF MISSILE P. XM(P),YM(P) ARE X,Y COORDS. DX,DY ARE CHANGES.USE FOR DY=-2,-1,0,1 OR 2.›µL AX6‰8”,%“ @)‰8”,%“%Š8”,!)“"B6“-L A‡¶//”%@AƒA„A…A†·4*6›-?:œ<%‰8”,%“<ž<Š8,<AR,4 A‡¸4*6›-?:œ<%‰8”,%“<Ÿ<Š8@,<AC,4 A‡¹4*6›-?:œ<%‰8”,%“< <Š8@,<A,4 A‡º**6›-?:œ<%‰8”,%“<¢<Š8@,<@c,»MB2R%”ˆ8”,%™$6ˆ8”,-ˆ8”,%™26‰8”,-‰8”,%“>6™-J6“-M$¼/6™-6“-,B2R%”ˆ8”,/$¾66MOTION OF MISSILE P. USE FOR DY>2 OR <-2 (OR 0).›¿B A˜6‰8”,%“ @)‰8”,%“%Š8”,!)“"B6“-À//”%@A“A”A•A–Á^"6›-?:œ<%‰8”,<¡<Š8”,<AR,3B2Rˆ8”,%™T6›-?:œ<%‰8”,%“<ž<Š8”,<AR,^ A—Â^"6›-?:œ<%‰8”,<¡<Š8”,<AC,3B2Sˆ8”,%™T6›-?:œ<%‰8”,%“<Ÿ<Š8”,<AC,^ A—Ã^"6›-?:œ<%‰8”,<¡<Š8”,<A,3B2Tˆ8”,%™T6›-?:œ<%‰8”,%“< <Š8”,<A,^ A—ÄT"6›-?:œ<%‰8”,<¡<Š8”,<@c,3B2Uˆ8”,%™T6›-?:œ<%‰8”,%“<¢<Š8”,<@c,Å:6‰8”,-‰8”,%“6ˆ8”,-ˆ8”,%™+6™-76“-:$Æ%6™-6“-% A‘È A7#AY@F%@$£<#.6¤-F:A,& BBy¤.6¤-¤$AVF#9B2w@!6-A(-£"@96-AUn#L š;,6¡-C:š,+6š7@,.>:,=6š7,.>:,L6š7@,.š}#B•;‡8,,-6•.š7@<‡8,,BB2H…8,‚#B #A‘,-@‡8,&@0"¥>6•7<,.>:¥,B ¯#B–;‡8@,,-6–.š7@<‡8@,,BB2I…8@,´#B #A‘P,-@‡8@,&@0"¥>6–7<,.>:¥,B á#B—;‡8@,,-6—.š7@<‡8@,,BB2P…8@,æ#B #A’,-@‡8@,&@0"¥>6—7<,.>:¥,B $B˜;‡8@,,-6˜.š7@<‡8@,,BB2Q…8@,$B #A’P,-@‡8@,&@0"¥>6˜7<,.>:¥,B E$B¦;Š8,,-6¦.š7@<Š8,,BB2Rˆ8,J$K #A“,-@Š8,&@0"¥>6¦7<,.>:¥,B K6ž-C:¦,w$B§;Š8@,,-6§.š7@<Š8@,,BB2Sˆ8@,|$K #A“P,-@Š8@,&@0"¥>6§7<,.>:¥,B K6Ÿ-C:§,©$B¨;Š8@,,-6¨.š7@<Š8@,,BB2Tˆ8@,®$b #A”,-@Š8@,&@bREAD BYTE:DM2$(I,I)=CHR$(BYTE):NEXT I:DM2=ADR(DM2$)›Û$B©;Š8@,,-6©.š7@<Š8@,,BB2Uˆ8@,à$K #A”P,-@Š8@,&@0"¥>6©7<,.>:¥,B K6¢-C:©,%G%6ª-F:A4,%AV$F:A5,G6«-F:A@,%AV$F:AA,!%6¬-¤%A$+@%£,&«&%-@0%$6­-P:¬'AV,$6®-¬&AV$­:%ª%@®ª%@­D%1#ª%@A($+@&£,1ª%@£N%1#ª%@A($+@&£,1ª%@£X%% 6ª-ª%¡%6¬-¬%A($+@%£,b%+"@+6¬-¤%A„$+@%£,&«l% €% 6€.š6€7†8,,.•Š% 6.š67†8@,,.–”% 6‚.š6‚7†8@,,.—ž% 6ƒ.š6ƒ7†8@,,.˜²%8 6„.š6„7‰8,,.¦86„7‰8,%Š8,,.š¼%W-@Š8@,36¯-‰8@,%&@S6„7¯<¯,.>:@:„7¯<¯,,%@:§7<,,,W Æ%W-@Š8@,36¯-‰8@,%&@S6„7¯<¯,.>:@:„7¯<¯,,%@:¨7<,,,W Ð%W-@Š8@,36¯-‰8@,%&@S6„7¯<¯,.>:@:„7¯<¯,,%@:©7<,,,W ä%*°;@8,6œ-C:°,*6-C:„,&@î% #A—0ø%--@@7"¥)6°7<,.>:¥,- &YY104,104,133,204,104,133,203,104,133,206,104,133,205,104,104,133,207,104,104,133,208› &AA160,0,177,203,37,208,113,205,145,203,200,196,207,208,243,96›' A€ D4:P144L1.BAS