þþª#X;JS15G:USED TO LOAD GUN DRAWINGX;INTO PLAYER MEMORY …JS15GQ>F;;VERT ENDING POSP„END1;;OF GUN DRAWINGS P„END1(Q>>;;VERT START POS2P„TOP1;;OF GUN DRAWINGS< P„TOP1F"PÐ;;SAVE HORIZ POS OF PLAYER3PQ>·;;HORIZ POS OFZPÐ;;PLAYER2d$$>;;POINTER TO GUN DRAWING BYTEn‚G1QƒGUN9;;LOAD DRAWING BYTEx$P„PL3R>9;;SAVE IN PLAYER MEMORY‚Q„GUN29;;DRAWING BYTEŒ$P„PL2R>9;;SAVE IN PLAYER MEMORY–0;;NEXT BYTE "I‚G1;;IF<0 THEN ALL BYTES MOVEDª:«X;¬$X;T12P3:LOADS ADDRESS OF PLAYER 3­X;INTO TEMP12´"…T12P3Q>„PL3R;;LOAD ADDRESS¾P†TEMP12;;OF PLAYER3È Q>„PL3Rÿ;;INTO TEMP POINTERÒ P†TEMP12Ü:ÝX;Þ$X;T12MS:LOADS ADDRESS OF PLAYER 2ßX;INTO TEMP12æ"…T12MSQ>„PL2R;;LOAD ADDRESSðP†TEMP12;;OF PLAYER2ú Q>„PL2Rÿ;;INTO TEMP POINTER P†TEMP12:X;"X;JOYSTG0:MOVES GUN (DRAWING INX;PLAYER MEMORY) UP OR DOWNX;)‡JOYSTG0Q@…TEMPS7;;LOAD JOYSTICK VALUE"R> ;;TEST FOR POS 13,HƒG14;;BRANCH TO TEST FOR 146$Q„END19;;LOAD VERT END POS OF GUN@R>À;;IS IT AT LOWER LIMITJE…EXITG;;IF >OR= THEN EXITT#„END19;;ELSE ADD 1 TO^#„TOP19;;VERT POS OF GUNh($> ;;#OF BYTES OF GUNDRAWING TO MOVEr?;;LOAD ENDING POS OF GUN|#…DOWNG1;;SET TO BYTE TO BE MOVED† Q@†TEMP1273;;SET TO DESTINATIONš P@†TEMP127¤1;;NEXT BYTE TO MOVE®0;;DEC # OF BYTES TO MOVE¸ H…DOWNGÂ:Ì!ƒG14R>;;IS JOYSTICK VALUE 14ÖH…EXITG;;IF NOT THEN EXITà!Q„TOP19;;VERT START POS OF GUNêR>@;;IS IT AT UPPER LIMITôD…EXITG;;IF < THEN EXITþ"„END19;;ELSE SUB 1 FROM"„TOP19;;GUN'S VERT POS$?;;LOAD VERT START OF GUN DRAWING-$> ;;#OF BYTES OF GUN DRAWING TO BE MOVED&*ƒUPG3;;SET TO POINT TO BYTE TO BE MOVED0 Q@†TEMP127:1;;SET TO DESTINATION BYTED P@†TEMP127N3;;NEXT BYTE TO BE MOVEDX0;;DEC #OF BYTES TO BE MOVEDbHƒUPGl …EXITG:mX;n X;FIREBOMB:MOVES MISSILE BOMBoX;OR EXPLODES MISSILEv%ˆFIREBOMBQ‚P0;;LOAD COUNTER FOR€!F„FIRE;;HOW LONG BOMB EXPLODESŠ "‚P0” Q‚P0žH†EXIT84;;IF = THEN¨;;;SUB 2 TO FIND²Q‚P0;;LOWEST POS¼S>;;OF EXPLODING DRAWINGÆ?Ð!$>;;# OF BYTES TO BE CLEAREDÚQ>ä„DISPP„PL0R8;;CLEAR EXPLODEî3;;DRAWING IN PLAYER0ø0;;ALL BYTES CLEARED I„DISPQ>PÒ :4„FIREQ…TEMP1;;TEST FLAG FOR BOMB ALREADY FIRED  F†EXIT84*%>;;CLEAR Y4Q@ƒT1Y7;;LOAD TRIGGER VALUE> H†EXIT84;;IF NOT PRESSED EXITH&P…TEMP1;;SET FLAG FOR BOMB FIREDR,\$ƒT15f Q„TOP19;;START OF GUN DRAWINGpO>;;FIND MIDDLE OF GUNz?„QƒT16;;POS WHERE BOMB STARTSŽPÐ;;SAVE BOMB HORIZ POS˜P‚P0;;SAVE IN POINTER¢Q>;;BOMB DRAWING¬!P„PL0R8;;SAVE IN PLAYER MEMORY¶ '‚P0ÀQ>Ú;;SET BOMB COLORÊPÀËQ> ÌP‡SDELAY1Ô †EXIT84:ÕX;Ö X;MOVEBOMB:MOVES BOMB TO LEFT×X;AND EXPLODES BOMBØX;Þ'ˆMOVEBOMBQ…TEMP1;;IF FLAG= 0 THENèFƒMOV;;MOVE BOMBò:üƒMOV"‚P0;;SET NEW POS"‚P0Q‚P0;;HAS BOMB REACHEDR>?;;LEFT LIMIT,IF YES$D‡EXPLODE;;THEN EXPLODE BOMB.PÐ;;ELSE SAVE NEW POS/"‡SDELAY10Q‡SDELAY11PÒ8:B'‡EXPLODEQ>;;SET FLAG FOR EXPLOSIONL P…TEMP1V;;;SET VERT POS FOR`Q‚P0;;WHERE BOMBjS>;;WILL EXPLODEt?~%$>;;#OF BYTES IN EXPLODE DRAWINGˆ(„EXPLQ…EXPLD9;;LOAD EXPLODE DRAW BYTE’!P„PL0R8;;SAVE IN PLAYER MEMORYœ3;;NEXT STORAGE BYTE¦0;;NEXT DRAWING BYTE° I„EXPLºQ>;;SET FLAG FOR HOWÄ%P‚P0;;LONG EXPLODE DRAWING LASTÎQ>;;SET EXPLODE COLORØPÀÙQ>úÚPÒâ:ãX;ä$X;MOVEBOM2:MOVES MISSILE TO RIGHTåX;AND EXPLODES MISSILEìˆMOVEBOM2Q…TEMP1ö F„MOV2: „MOV2#‚P0;;SET NEW POS#‚P0Q‚P0;;HAS IT REACHED THE(R>·;;RIGHT LIMIT,IF YES2E‡EXPLODE;;THEN EXPLODE BOMB<PÐ;;ELSE SAVE NEW POS="‡SDELAY1>Q‡SDELAY1?PÒF:PˆFIREVAR1Q>AZPƒT16dQ>„nPƒT1YxQ>‚PƒT15Œ:–ˆFIREVAR2Q>· PƒT16ªQ>…´PƒT1Y¾Q>ÈPƒT15Ò: