qr~!!BASABALLBALLCHSEDLISSCPPADDIFDDBBTTTPOSCORSCOREBLOCKXPOFLIWHERDONADDLINENBIRDBhd((@BhdBr@$B @ Bx By6 ?P@$@@$PBd@@P@@@ !"#dĠnxY +.6-+F:A,&@,$AV8 A`Yremove old players from screenD;@@,;@,-@86.* D6-@? 6- F:%@ ,AR* A?If not initializedK +AR@1AYKTurn off cursor, screenH-6-F:A`,%AV$F:Aa,%@Hlocation of display listb-@@$%%@) bChange mode zero lines to IRG 4 (multicolor character)N&@@%@d3%@@Ntop two lines GRAPHICS 1/AV'AV/turn on character setG0@70@@@Gwhite and red #A@draw brick areaF-$(7@<,Fdisplay # of balls (birds) leftPattern of wall:1,1,2,3,14,129,130,131<%6-F:@,%AV$F:@,<locate screen memoryput bricks on screenE#-%A %A@@'"7-%@9=A E .-@.(@ "-6-%A$6-%@H-player zero,V=A@(%Av$+"@,%@$+"@,VGold, green, or violet6)BBy'AV)sinle-line res.@B2w@OB2V@&@$+"@,&@$+"@,Start P/M DMA, select width according to difficultyJ #ApT<-@!%%) <clear out player^Y--@$+@&,@&1"G-@&Q%%U Y hbird patternr0,24,8,107,28,8,0,0|EF:AG,@'6-?:A6,Eturn on VBLANK if necessaryWAY@b APWturn on screen (single-line res. P/M), wait for STARTU6-@6-?P0H:@,!?P=6-6?PUSet up ball directiona6-P:@@$H:,,?6-P:@$H:,%@,aselect random starting position𠛮2T:,"" A2allow thunder*R:,@*@w! 6-%6-%!update ball4 @ A# A04check for missC!@ 6-6 A * A0Ccheck for breakthrough2 )!@9 6-62bounce off wall+6-%%@@$+check for obstaclesLF:,"@6%%@@$<6-B6-L A0""Rebound tiles (lasered down)=F:,"@ A*6-&@P36-O:,= A`) 6-6O:,"H:,!?P)6-6B -@6@>2$@@B &D6-%+&@,$@+6-%@Dscore according to row0>1-@)&B:=:,,'@>(  :$"A A$BREAK-OUT!D A N AXHit bird?b-F:B2R,6-6#6-@- A0l A`vB -@6@>2%@@B +%%@@$#6-%+6-%B2xAU$$$ball out of bounds (past bird)%%@@$ -A6@<2@@@ ^-"A@z2@@~ 2B2xAU$6-&@-$( !AŠҠ%-@%( Gm Oe  AP%7F:B2y,"@*-@ 4( 7$4F:@ ,!@ *-@ 4(PRESSFF:@ ,!@@*-@ 4(F@   APҠΛ \,6-+F:Ad,&@H,'@%@86-\equate player pos. to screen pos.*)-@@)6-%%@@$47 6-F:,@%(6-@&7zig-zag line>R)2$@@&>AF:B7p,Rscintillate colorH RD-@@/%%@@$3 Derase lighting\6-%@$@@%=2Q&@@e%@@q@lay down tilesf 0@@ @ $psound effect:z-A@@0E2@@&'@s2@%@@@&'@w 22@$break-through  $V-@A,B2tF:B7p,R2@&'@V o%27-@H( Z-@"o(1000 point -@@)-@"2(1000F-@@ J \-@"e( y-@@ }  O-@'( 9-@"O( s-@@3-@@a2@P%@&@&e s6-%A2%-@)&B:=:,,'@2(   6-@$ Ado "BLAST"`-@@P+-@BA%F:B7p,F `6-$+ @,%@O#2%@'@K2@%%@@'@O Q%2G2@Q A`A +@-@A(@   point $-@AF2F:B7p,@&'@~A+@&$@,$@%$@%@6-@& .36-%B328)6-%@!@)6-@B APL'@@'-@@V$$(!!!! # ... `""(! ! # . . j(! ! . t""(!!!! # ... ~(! ! # ""(! ! # . . &&(!!!! #### ... @$曺g@)@'AV/(}A+@%@gCLEARS OUT P/M AND CHARACTER MEMORY-@.(@ @-@@V(@patienceh-@@(@ READING ML #A`M-A6A"72@@CAIM 6-?:A6, A104,173,34,2,141,746,173,35,2,141,756,169,6,162,6,160 23,32,92,228,96,24173,128,6,141,0,208173,124,2,208,6,206(128,6,206,128,6,1732125,2,208,6,238,128<6,238,128,6,173,128F6,201,1,176,5,169P200,141,128,6,201,250Z144,5,169,32,141,128d6,76,73,6nx0-@@0(@ Ǡf-A(A*%F:BsD%,N2'@@@bA'@f  #A`[""6@62X2@[$}-@"72@@[2@%@@@gAy%$@%}  A0""1,0,252,168,84,252,168,252,0##2,0,168,168,252,252,168,168,0##3,0,216,120,184,228,180,212,04,0,0,0,219,150,0,0,05,0,0,0,16,32,0,0,06,192,192,48,48,12,12,3,37,3,3,12,12,48,48,192,192##10,24,40,24,153,126,255,20,34$$14,0,126,126,126,126,126,126,0-1KILL P/M GRAPHICS"AB2w)-@=B2a%A ,$";@,6-"(}D6-D+4EDIT,%+4ERASE,$@B'0B'Ec(>:A%,26-F:A6,%F:A7,$AV@-_6-%F:%@,$+!,c \!6-F:,%F:%@,$AV/6-%@;B'R(* END OF LISTING *\ B'<6-%@(6-%F:%@,< @B' B'( WHAT LINE #d(>:A%,"-@@&)(,(/(9(CONT=O-@aAB@d&-AB@#6-&@- B'V(>:A%,"-@@>-B'B'P@B(F V( POKE 842,12*-@'AB@*&D2:THUNDER.BAS