RT STRINGS TO USABLE FORM"&#& PH0 ES%: VC0 EV%'#&A$ME$(PH,VC):ME$(PH,VC)""9#& I1 (A$)M#&X%((A$,I,1))r#& X%72 X%X%64: X%0 X%0#& X%192 X%200 X%X%178#& X%176 X%8#& X%191 X%9#& X%188 434343434343434" u% PHRASE 7 !v%MD$(7)"000000000000000")!w%ME$(7,0)"FFFGAFGEC@@@C@@"H!x%MV$(7,0)"6 7 "g!y%ME$(7,1)"FCECDBCC@A@CF@"!z%MV$(7,1)"45454 5 4 5 "!{%ME$(7,2)"FAEADBCFFGRA@"!|%MV$(7,2)"34343434343435 "!% P EAF"^%MV$(4,2)"3535353534353535"a% PHRASE 5%b%MD$(5)"000000000000000000"Gc%ME$(5,0)"CFG@G@@GAFG@@@@@@@"id%MV$(5,0)"6 "e%ME$(5,1)"@BGEGFGE@BFECCAFGC"f%MV$(5,1)" 4 54545 4 5453 "g%ME$(5,2)"@AECDBECGACFCAFGF" 5)"5 4 5 45 4 "& CONVERT STRINGS TO USABLE FORM&0& PH0 ES%J&A$ME$(PH):ME$(PH)""\& I1 (A$)p&X%((A$,I,1))& X%72 X%X%64: X%0 X%0& X%192 X%200 X%X%178& X%176 X%8& X%191 004000000006";%ME$(1)"FEFDDBBGGGAGFEDC"/<%MV$(1)"6 5 6 ">C% PHRASE 2^D%MD$(2)"000000015000000015"~E%ME$(2)"GC@GC@GC@GCDCB@CD@"F%MV$(2)"34 34 34 34 3 4 "M% PHRASE 3N%MD$(3)"000000015000000015"O%ME$(3)"GB@G HRASE 8!%MD$(8)"00000000000000000""%ME$(8,0)"DC@CAFGDF@@@F@@@"4"%MV$(8,0)"7 6 7 "U"%ME$(8,1)"CACA@C@CFDCA@F@"v"%MV$(8,1)"5 46 5 4 ""%ME$(8,2)"DCFCFCACFAGF@F@""%MV$(8,2)"545354 3435 3 ""&"& CONVE X%10#& X%172 X%11#& X%177 X%12$& X%187 X%13$$& X%165 X%147$& X%21 X%0h$&V$(MV$(PH,VC),I,1): V$" " Y%21(V$)$& X%0 X%X%Y%$&ME$(PH,VC)ME$(PH,VC)(X%)$&::$&PH0$'"& CONVE h%MV$(5,2)" 4 54 534343 2 1" k% PHRASE 6 l%MD$(6)"0000000000000000"> m%ME$(6,0)"FFFGAFG@FFFGAFGE"^ n%MV$(6,0)"6 "~ o%ME$(6,1)"CCDCGDCCCCDCGDCC" p%MV$(6,1)"4545354545453545" q%ME$(6,2)"FAEAGBCFADAGBC" r%MV$(6,2)"3X%9& X%188 X%10& X%172 X%11& X%177 X%122& X%187 X%13G& X%165 X%14Z& X%21 X%0&V$(MV$(PH),I,1): V$" " Y%21(V$)&X%X%Y%&ME$(PH)ME$(PH)(X%)&:&PH0'DCBAG"d%MV$( B@GB@GBCBA@BC@" P%MV$(3)"3 43 4 "W% PHRASE 4>X%MD$(4)"11111111151111111115"`Y%ME$(4)"DDDAAACCCBDDDAAACCCB"Z%MV$(4)"5 4 5 45 4 5 4"a% PHRASE 5b%MD$(5)"1111111115111111118"c%ME$(5)"DDDAAACCCBDDEDCBAG"d%MV$( , NO MATTER HOW MANY VOICESH.% EACH PHRASE HAS ONE ME$(PH%,VC%) & ONE MV$(PH%,VC%) STRING PER VOICEW/% PHRASE 0y0%MD$(0)"00000000040000000004"1%ME$(0)"GGEECBCGEFGABCDEFD"2%MV$(0)"6 565 6 "9% PHRASE 1:%MD$(1)"0000000 d"": 53280,0: 53281,4\n 3)"        "x 3)"        ̯" 3)"         " " TIONAL INC"2 (L$,20)9)"RETURN OR CHOOSE NO.";Q 198,0: AN$:AN(AN$):B0d AN$"" 100 : CH1 AN: PR$: CH "": 53280,0: 53281,0 (L$,15)10)"LOADING "PR$"" "LOAD";(34);PR$;(34);",8,1" "RUNBG 4.46  DUCK SHOOT,TOWERS OF HANOI,SPEEDY,SCREEN MAGIC,END: AN$:AN(AN$):B0d AN$"" 100 : CH1 AN: PR$: CH "": 53280,0: 53281,0 (L$,15)10)"LOADING "PR$"" "LOAD";(34);PR$;(34);",8,1" "RUN   96, 32, 205, 189, 169, 13, 32, 210, 255, 32X  204, 255, 169, 4, 76, 195, 255, 147, 83, 67  82, 69, 69, 78, 32, 79, 82, 32, 80, 82  73, 78, 84, 69, 82, 32, 63, 32, 0, 76  44, 193, 234, 177, 251, 201, 32, 240, 6, 138 113, 251, 4, 2303  251, 208, 2, 230, 252, 76, 11, 192, 169, 153e  160, 192, 32, 30, 171, 166, 63, 165, 64, 76  231, 192, 96, 76, 73, 78, 69, 83, 58, 32  0, 169, 247, 160, 192, 32, 30, 171, 169, 3  133, 254, 32, 228, 255, 201, 83, 240, 6, 201 0, 0, 0, 205, 189, 169, 13, 32, 210, 255, 32X  204, 255, 169, 4, 76, 195, 255, 147, 83, 67  82, 69, 69, 78, 32, 79, 82, 32, 80, 82  73, 78, 84, 69, 82, 32, 63, 32, 0, 76  44, 193, 234, 177, 251, 201, 32, 240, 6, 138 113, 251,  251, 208, 2:  230, 252, 76, 43, 192, 76, 73, 78, 69, 32j  35, 32, 0, 169, 35, 160, 192, 32, 30, 171  160, 0, 177, 251, 170, 230, 251, 208, 2, 230  252, 177, 251, 32, 205, 189, 169, 58, 32, 210  255, 169, 0, 133, 253, 230, 254, 32, HARP)#X%6: 9190:Y%19: 9195L# 102,1,204,2,152,5,48,11,96,22,193,44,131,89,6,179T# Gd#X%7: 9190# 145,1,35,3,71,6,143,12,30,25,60,50,121,100,243,200# A#X%1: 9190# 195,1,134,3,12,7,24,14,49,28,99,56,199,112,143,225 125,2,251,4,247,9,239,19,223,39,191,79,126,1593# G-FLAT (F-SHARP)Q#X%14: 9190:Y%20: 9195# 123,1,246,2,237,5,218,11,181,23,107,47,214,94,172,189# A-FLAT (G-SHARP)#X%8: 9190:Y%21: 9195# 169,1,83,3,167,6,78,13,156,26,57,53, ,2,48,4,97,8,195,16,135,33,15,67,30,134,255,255F# I0 147 21:PI%(I,0)0:PI%(I,1)0:Q# 9200d# READ PITCHES# I0 147 21: PI%(IX%,0),PI%(IX%,1)::# IDENTICAL PITCHES# I0 147 21:PI%(IY%,0)PI%(IX%,0):PI%(IY%,1)  "- L$"":TA11Q AA1:BB1: PR$: A9 TA10o (L$,B7)TA)""A"-"PR$ B10 175 150 A20 :A0 (L$,22)" DISKS REPRODUCED WITH MSD SUPER DRIVES " (L$,24)7)"(C) ION INTERNA ": "")  631,13: 632,13: 198,2:l  64 BUG REP,VIC BUG REP,FLANKSPEED,F-SPEED OVER,SCREEN DUMP I  SCREEN DUMP II,RUPERT 1,ONE VOICE PLAYER,3 VOICE PLAYER,BROKEN MELODY  QP MENU,QP COM.1526,QP EPSON/GEMINI,6510 SIMULATOR,MAPPIN %: 54294,Y%\$ FILTER ON?]$ VOICE 1 ON=1^$X%06f$ FILTER RESONANCEYg$ PEAK VOLUME (0=LOW, 15=HIGH)ch$Y%14m$Y%Y%16: 54295,X% Y%p$ SELECT FILTER TYPEq$ LOW-PASS=1;BAND-PASS=2;HIGH-PASS=4;LO-BAND=3;HI-BAND=6;ALL=7r$X%  69, 254, 170, 138, 76, 88, 192, 0D 0, 0, 0, 230, 251, 208, 2, 230, 252, 96u 170, 177, 251, 201, 34, 208, 6, 165, 2, 73 255, 133, 2, 165, 2, 208, 218, 177, 251, 201 32, 208, 212, 198, 254, 76, 29, 193, 0, 169 13, 76, 210, 255, +  80, 208, 245, 230, 254, 32, 210, 255, 169, 4_  166, 254, 160, 255, 32, 186, 255, 169, 0, 133  63, 133, 64, 133, 2, 32, 189, 255, 32, 192  255, 166, 254, 32, 201, 255, 76, 73, 193, 96  32, 210, 255, 173, 141, 2, 41, 1, 208, 249& 1w$X%X%16y$z$ SELECT OVERALL VOLUME){$ 15=HIGH, 0=LOW3|$Y%15G$ 54296,X% Y%M%^% SET MELODYd%%% HOW MANY PHRASES? (MINUS ONE)&%ES%5*%+% MELODY STRINGS,%-% EACH PHRASE HAS ONLY ONE DU%(PH%) STRING  37, 1937  234, 165, 253, 160, 0, 76, 13, 193, 133, 253k  177, 251, 208, 237, 165, 253, 41, 240, 74, 74  74, 74, 24, 105, 65, 32, 210, 255, 165, 253  41, 15, 24, 105, 65, 32, 210, 255, 169, 13  32, 220, 192, 230, 63, 208, 2, 230, 6 # B#X%2: 9190A# 250,1,244,3,233,7,210,15,165,31,75,63,151,126,46,253X# D-FLAT (C-SHARP)v#X%11: 9190:Y%17: 9195# 28,1,56,2,112,4,225,8,195,17,134,35,12,71,24,142# E-FLAT (D-SHARP)#X%12: 9190:Y%18: 9195# 62,1, 115,106,230,212# B-FLAT (A-SHARP)/#X%9: 9190:Y%15: 9195l# 221,1,187,3,119,7,239,14,223,29,190,59,124,119,248,238y# C-FLAT#X%10: 9190# 4,1,250,1,244,3,233,7,210,15,165,31,75,63,151,126# B-SHARP#X%16: 9190# 24 PI%(IX%,1)#:## SET UP DURATIONS#8# I0 9: DU%(I):a# 16,32,48,64,96,128,160,192,256,320gP$Q$ SET FILTER AND VOLUMER$ FILTER FREQUENCYS$ LOW BYTE (0-7) X%; HIGH BYTE (0-255) Y%T$X%0:Y%100Y$ 54293,X  85P22:39%P22:392P1:39@P23:39N P21:39[ P1:39i P21:39w P23:39E2,241:OO7:E,241:FF1:FZ52E,135:E2,0:48"":V36878:V,15:V9,255:V1,8:E36876:A7911:B30720:ZZ5:P0  D!ЍЩ Ѝ  f ȩDžDž h hمDž h hȩDž hLv `Ǚ>>@.ЩpЩ'ЩЩ `éЭ píI)o)rkd] VbɅvɉuɆtɊsɇQɈ_ɌX LL fЭȭV LC©L­ Щ^L fЭȭ L©LV­ ЩNL í VAǁ'ЁEBDC)LIAL'LAǮȎAnjL¬'ЮȎ'ЌL­ְвi8 LAiAL i(iL@!Р éDž h pL éDž^ h vŭC ^Ţ ! Ţ  .ЩpЦ pLL/Ġ éDžv h vŭթ ^Ţ 8(` ŢȱȈȱȑȑȭȑȑ L Ţȱȱȱȑ 눭ȑȑ Lۅȱ űȱ ŭȑȑ & ŭȑȑжL űȱ űȱ ŭȑȑ,141,61,3,169,255,141,34,145,96e]60,126,219,255,231,189,66,60,255,126,90,255,165,189,129,255,255,90,126,231,255^129,189,255,255,145,145,159,249,137,137,255,137,74,44,224,7,52,82,145,0,0cS7:RL1:72;:EC JEC1EC1572 K30U52z,0,5,14,2,169  0,11,233,64,53,86,32,239) 188,32,21,64,32,5,128,64@ 0,85,0,0,0,0,0,0T 0,0,0,0,0,0,0,1,17,0,1,85 0,1,17,0,0,146,0,0 40,0,0,0,0,0,0,0  0,0,0,0,0,0,0,0 0,0,0,0,0,0,0  0,0,0,0,0,0,0,0* 0, SCREEN";RL:RL50;"BONUS.":"HIT A KEY TO TRY AGAIN"A EA$:A$""69Y FP0:O0:F0:Z0:99 H36879,8:"SPEEDY":"BYKEVINDEWEY" I36869,240:"SKILL LEVEL(1-15)";:EC JEC1EC1572 K30U52 RLRL1:E,241:T1900::E,.:E2,.:E1,.< 6SS1:P0:F0:30r 8E,0:G,32:A,.:AB,2:E,155:59:E,0:59:E,200 959:E,0:59:E,241:59:E,0:59:E,135:OOFEC:P0 :43 ;T1100:: <G,32:A,4:AB,7:T1501:V,T:E1,225T::ɒ ˒  @*   ܨ   ͒ ̿+ ϒ-[] ߒ<> ߩ() ABCDEFGH IJKLMNOP QRSTUVWX YZ$'.#01 23456789  SCREEN MAGIC BY BOB SPIRKOȑ J TT((1)400)7746:TT,3 T1ZEC2:E,135:TT((1)418)7746:TTB,4:TT,2:E,0: "T1Z:E,241:TT((1)418)7746:(TT)1FF1 #TTB,5:TT,1:E,0: $T1500::E,135:E1,1356 & HG.ɝ-ɑ/(96 ɓ1_BAIXXgLLL LFLLL.LLLLLLXLLL;LvLƭEIELDIDAǍLCIC'ЍL DЍ Щ! t fȭ(L' fȭ0  AǑ'БL80JJJ mȢ . .ȅȭiЍ8ȭJnȭJJeiiԅ`Ȉ`B ``( ۩` 'Ѝ`!Э!) L!L í ^ ( LF©VЩЭiLé0LéVЩLF©^ЩЩ0  ! ũȩ ȑ ȑȭ ȭLĠ àF L5 0:8/B pLȠȢ  `  `ș `ө L{ũ؅`i(ii(i`8(  ŭȑȑпLiPiiPi`8P8P`  CURSOR VELOCITY (0-9) SAVE> LOAD>  <<<<<< DISK ERROR >>>>>> 00000000       631,13: 632,13: 198,2:\  64 BUG REP,VIC BUG REP,FLANKSPEED,F-SPEED OVER,SCREEN DUMP I  SCREEN DUMP II,RUPERT 1,ONE VOICE PLAYER,3 VOICE PLAYER,BROKEN MELODY  QP MENU,QP COM.1526,QP EPSON/GEMINI,6510 SIMULATOR,MAPPING 4.4&  DUCK S0HOOT,TOWERS OF HANOI,SPEEDY,SCREEN MAGIC,END INT'L INC."c (L$,19)1)"CHOOSE # OR RETURN";w AN$:AN(AN$) AN$"" B0: 100 : A1 AN: PR$: A "" "LOAD";(34);PR$;(34);",8"  "RUN":"" ,28:56,28:: A828 881:B:A,B:PVI71687679:I,(I25600)::C71687208:B:C,B:Z 0,0,0,169,127,141,34,145,169,0,141,19,145,173,32,145,74,74,41,32,141,62,3[ 173,17,145,41,28,13,62,3,74, 74,73,15,141,60,3,173,17,145,41,32\ 73,32 E1,0 >SS1:S065& ?P0:F0:ZZ5:30k AOORL50:" GAME OVER":T11000::OLLO B36879,24:"YOURSCORE=";O:"HIGHSCORE=";L COLLO50"CLOSE,BUT NOT CLOSE ENOUGH."/ D"YOU GOT TO &~ X 49152 49488 : Y: X,Y:H"":53280,0:53281,6:646,1q" 64 BUG REPELLANT INSTALLED": 32, 161, 192, 165, 43, 133, 251, 165, 44, 133 252, 160, 0, 132, 254, 32, 37, 193, 234, 177  251, 208, 3, 76, 138, 192, 230, AB,2:A,.:G,32:D(828):831:D4,5,6,7,8,9,10,11,12,13o 'GA:AAP:"SCORE=";O;" CLONES=";S:Q(A):Q115{ )Q260 *Q356 +A8142AA484 ,A7724AA484 038 4G,32:A,.:AB,2:E2,241:T1500::E1,241:T1500:& 5 9,0,133,80,133,78,169,208=133,81,169,48,133,79,162,8,160,0,177,80,145,78,136,192,0,208,247,202240,7,230,81,230,79,76,189,192,165,1,9,4,133,1,173,14,220,9,1,141,14220,173,24,208,41,240,9,12,141,24,208,96169,80,133,80,169,0,160,0,162 !(142):HS0:1100:53280,0] ""8)"יייייייייי"7)" ߒ"6)"ў  ߒ"(5)"מ  ߒ" 24)"ў # n5)""g x5)"       " 5)"        " 5)"       "; 5)"̤ ͤ"B 8)""f 8)" " D11228812350:S1:D1,S1: D21235212414:S2:D2,S2: D31241612478:S3:D3,S3: V53248:S54272:V39,13:V40,7:V21,3 1,2041,P2:P2P21:P2194P2193"6500M@JV1JV5JV9Y1Y14:Y168Y1Y14zJJV2JV6JV10Y1Y14:Y1118Y1Y14TJV4JV5JV6X1X14:X190X1X14^JV8JV9JV10X1X14:X1240X1X14cFR0(V30)11600h 700280*L110:W0:Y((1)12)12:X((1)5)5U783,(783)254:781,X:782,Y:O:""^500JV1JV5JV9Y1Y14:Y168Y1Y14JV2JV6JV10Y1Y14:Y1118Y1Y14JV4JV5JV6X1X14:X190X1X14JV8JV (V31)11L,4783,(783)254:781,X:782,Y:O:" ":280[V21,1:CSSC25TG:""14)"SCORE:"CSlCSHSHSCSxL110""14)"GAME OVER":G150:G""14)"GAME OVER":G150:GL:""11)" 2:945 ""14)" "+""14)" "S""9)" "{""11)" "255L53281,7:53280,0`""13)"***WELCOME***"t""14)"DUCK--SHOOT"8)"A SHOOH80,200,208,2518230,81,202,208,246,145,80,200,192,177,208,249,96,177,208,248,96x169,80,133,78,169,51,133,79,169,0,133,80,234,234,234,234,162,5,160,0177,78,17,80,145,80,200,208,247,230,81,230,79,202,208,240,177,78,17 80,145,80,200,1 ILL GO"5)"WHEN YOU MISS 4 DUCKS IN A ROW"25)"THE GAME IS OVER"R5)"USE JOYSTICK--PORT #2"""8)"PRESS ANY KEY TO BEGIN":L190:""8)"PRESS ANY KEY TO BEGIN":L110: ,51,134,81,145,80,136,208,251,232,224,55.208,244,153,80,55,200,192,177,208,248,96x169,80,133,78,169,51,133,79,169,0,133,80,234,234,234,234,162,5,160,0177,78,17,80,145,80,200,208,247,230,81,230,79,202,208,240,177,78,17 80,145,80,200,1   ߒ"@ <4)"מ  "o F4)"ў  " P4)"מ  " Z4)"ў  " d4)"מߙ" 5)"        "{ 5)"      " 5)"" 5)"ϣПSHOOTING GALLERYϣ" 5)" Σ " :S24,15:S,220, M56320:O65520:SC0:TG0:B0:R0d S1,68:S5,15:S6,215:S7,120:S8,100:S12,15 S13,215:P1192:P2193:P3195:X1100:Y1100:X270:H2 Y2((1)40)70:RR1:V21,3:HH.4:H33HH2.4 X270255H "2040,P V,X1:V1,Y1rV2,X2:V3,Y2,X2:R3V21,1:9005280AJV(M)NFRJV16`JV15(JV15)fXV21,1:S4,129:S4,128:R0](V30)11610bV2,70:V3,90vSCSC1:SC10SC20SC30SC40SC50SC60SC70SC80 9JV10X1X14:X1240X1X14(FR0(V31)118002WW1RSC40W30O:" ":L:" "sSC40W25O:" ":L:" "V,X1:V1,Y1L11705 " ":280 S4,33:S4,32:783,(783)254:781,X:782,Y:O:" "%TGTG50* HIGH SCORE:"HS Y2((1)25)75X27525552V2,X2:V3,Y2@2041,193zA$""""9)"HIT ANY KEY TO START":G150:""9)"HIT ANY KEY TO START":G150:2041,194A$:A$""1000A$""1020X TING GALLERY GAME"!5)"DUCKS ARE WORTH 25 PTS EACH"I5)"WHEN YOU SHOOT DOWN 10 DUCKS"s5)"YOU ENTER A TIMED TARGET ROUND"5)"TARGETS ARE WORTH 50 PTS EACH"5)"THE MORE DUCKS YOU SHOOT DOWN"5)"THE FASTER THEY W 0,0,0,0,0,0,04 0,160,0,1,80,0,1,31!> 0,2,213,0,5,0,2,169@H 0,11,233,64,53,86,32,238_R 236,32,21,64,32,5,128,64v\ 0,85,0,0,0,0,0,0f 0,0,0,0,0,0,0p 0,0,0,0,0,0,0,0z 0,0,0,0,0,0,0,0 0,160,0,1,80,0,1,31 0,2,240 A$:A$""1250"":53281,6   0,0,0,0,0,0,0,06 0,0,0,0,0,0,0,0M 0,0,0,0,0,0,40,0g 0,146,0,1,17,0,1,85 0,1,17,0,0,146,0,0 40,0,0,0,0,0,0,0  0,0,0,0,0,0,0,0 0,0,0,0,0,0,0  0,0,0,0,0,0,0,0* 0, 92,177,208,245,96,169,80,133,78,169,51,133,79,169,0Q133,80,234,234,234,234,162,5,160,0,177,80,17,78,145,78,200,208,247$230,81,230,79,202,208,240,177,80,17,78,145,78,200,192,177,208,245,96.169,0,133,80,234,234,234,234,162,5,160,0,169,0,145, d"": 53280,6: 53281,1<n 3)"D I R E C T O R Y"aL$""wAA1:BB1: PR$ (L$,B5)0)"";A;"- "PR$ B10 175 150 A20 :A0 (L$,21)" DISKS REPRODUCED WITH" (L$,22) " MSD SUPER DRIVES"9 (L$,24)1)"(C)ION INT'L INC."c (L$,19)1)"CHOOSE # OR RETURN";w AN$:AN(AN$) AN$"" B0: 100 : A1 AN: PR$: A "" "LOAD";(34);PR$;(34);",8"  "RUN":"" ) *********************************Q * MAPPING 4.4 *y * BY * * J.M.MARCANO * ********************************* 8/29/84 ****** CENTRAL SECTI X) <210- FK260,790,490,280,810,830,850,60S d *** DIRECTORY FOR F'S KEYS ****o n(19)(30):I120:: s" F1:GRAPHIC CLEANER F2:STORE(M+)" x" F3:RANGE CHANGER F4:RECALL" " F5:FUNCTION CHANGER F6:CLEAR MRY"0 70)(0)- AD1 (T$):891AD,((T$,AD,1)):AD6 875< a ****** INPUT SUBROUTINE ******j 205} K$:K$""220 K$(133)K$(134)K$(135)K$(136)240 K$(137)K$(138)K$(139)K$(140)240 220 K(K$)1 @IJ23J39:I,32:I:J:0J *** CLEAR WORK AREA ***KTI15441743:I,32::j^ *** SET UP DATA AREA ***h(19)(159)::23)"X0=";X0r23)"XM=";XM|23)"Y0=";Y023)"YM=";YM:23)"PIXELS:";DX:23)"DATA FROM " ER THE 2DN MEMBER OF THE F'N ON X ")A$:(A$)29510b"MUST HAS LESS THAN 29 CHARACTERS":I01000::495330:430:(19)(144):I114:::;"55DFNF(X)=";A$"RUN50&631,13:632,13:633,13:198,3:0 ***INPUT RANGE SUBRO "MUST BE >0":I01000::630. **** FUNCTION EVALUATER ****C(X0)(XM)670jXX0119(XMX0):Y0795:750:(Y0)(YM)700YY079(YMY0)79:X01195:750:SX(XMX0)DXIX0XMSXFF(I):FY0FYM740 :650:350:60* **** STORE (F2-ROUTINE) ****%/81,197d449416:X1X0:X2XM:Y1Y0:Y2YM:DMDX:55296,5:1024,13:60> **** RECALL **** (F4-ROUTINE)H81,197:49464:X1X260JD$"MEMORY":300:X0X1:XMX2:Y0Y1:YMY2:DXDM:350:60R E FUNCTION IS TOO COMPLEX. REDEFINE IT"BEN15"NUMBER TOO SMALL OR TOO HIGH.REDIFINE IT"tEN5"DEVICE NOT PRESENT. REPEAT OPERATION"|50 ** MACHINE LANGUAGE ROUTINES ** 49152-SET UP THE FORMAT 49309-MOVE CHARACTERS RAM_R 0,185,124,3,153,0,2,240,3,200,208,245,162,255?\160,1,76,134,164,169,60,141,0,3,169,3,141,1Qf3,96,108,0,3p169,61,162,40,157,223,5,157,207,6,202,208,247,169,4,162,40,157,223,217z157,207,218,157,31,219,202,208,244,169,45,162,40,157,31,7,2 57,28,217,157,68,217,157,108,217,157,148,217,208,5,162,16^76,86,192,169,69,162,15,157,188,5,202,208,250,169,82,162,15,157,4,4202,208,250,169,13,162,15,157,188,217,157,4,216,202,208,247,96,173,14220,41,254,141,14,220,165,1,41,251,133,1,16 ON ******( 53280,8:53281,0:D$"? ? ?"R (147):I111:::(158)17)"WAIT"r  AD828888:VA:AD,VA:AD I4915249543:C:I,C: (49309:49385:81,197:49512:160:49152:100:350 2 ** ALL THE FUNCTIONS COME HERE ** 7F(X)( " F7:COMPARE WITH MRY F8:NO DEFINED"(19)(154)6 ] **TRANSFER THE CHAR. TO SCREEN**v C55341:J1069:L106 I014:JI,L:CI,1:LL1: CC40:JJ40:J1464180 *** SET UP ERROR TRAPPING IN 870*** T$"GOTO"(8 32 !  **CLEAR CHAR.** (F1 ROUTINE)0 49385:60W  **CLEAR OPERATION** (F7 ROUTINE)f N290,295 "81,202:49512:81,202:49416:81,197:49464:N2:60 '49385:81,202:49464:N1:60 , *** CLEAR DATA AREA *** 6J1064142440 (154);D$' *** SET UP THE FUNCTION AREA ***@I039:1784I,32:g(19)(159):I118:::" Y=";A$m **** POSITION ON WORK AREA ****(19):I113::: **INPUT FUNCTION **(F5 ROUTINE)330:470(159)"ENT UTINE***:(154):330:470:"X0,XM";X0,XM*DX0XM600PN"MUST BE X0"EN20"DIVISION BY ZERO. CHANGE RANGE" EN25"TH OM 49385-CLEAR THESE CHARACTERS! 49416-STORE ROUTINE< 49464-RECALL ROUTINEV 49512-CLEAR ROUTINEr 00875-SET UP TRAPPING>169,139,141,0,3,169,227,141,1,3,165,58,141,123H3,201,255,240,39,165,57,141,122,3,142,121,3,160R 02,208,2502169,72,162,0,157,44,4,157,84,4,157,124,4,157,164,4,157,204,4,157,244}4,157,28,5,157,68,5,157,108,5,157,148,5,208,5,162,16,169,71,76,43,192169,13,162,0,157,44,216,157,84,216,157,124,216,157,164,216,157,204,216157,244,216,1 %" INITIALIZING...". 540k53280,0:53281,0:646,15:" QUAD-PRINT"B$(4):" (C) 1984 BY M. BEUTJER"(B0B1:702" PIC 1 (UPPER LEFT ) : "B$(1):" PIC 2 (UPPER RIGHT) : "B$(2)5 <" PIC 3 208,193,96,169,40,141,30,192)\ 160,0,162,0,120,169,46,133Kf 1,177,251,141,34,192,169,47jp 133,1,88,14,34,192,62,21z 192,232,224,8,208,245,200,192 8,208,223,24,165,251,105,8 133,251,165,252,105,0,133,252 162,0,189,21,1 192,134,252,132,253,174,0,192( 134,254,142,34,192,238,34,192K 200,192,32,208,248,160,0,120n 169,46,133,1,177,253,145,251 169,47,133,1,88,200,208,239 230,252,230,254,165,254,205,34$ 192,208,228,173,3,192,133,252. 173, ,169,25 141,29,192,32,163,192,169,0; 133,251,169,128,133,252,169,0_ 141,32,192,169,160,141,31,192 169,25,141,29,192,32,163,192 169,27,32,210,255,169,64,32 210,255,169,4,32,195,255,32 204,255,96,162,200,32,176,193R92,32,225,255,208  3,76,169,194,206,29,192,208( 237,32,45,194,96,256 210,255,169,13,32,210,255,32p( 174,255,32,204,255,32,231,2552 96,162,4,32,201,255,169,254< 32,210,255,32,174,255,32,204F 255,238,116,193,96,162,0,189P5SUM61145"ERROR IN DATA STATEMENTS.":: SUM=61166 FOR 10X96R: 0,0,0,0,0,60,162,0tD 32,126,197,169,76,44,169,96N 133,138,169,44,133,0,0,0X 0,0,0,0,0,0,0,0b 0,0,0,0,173,17,208,73l 32,141,17,208,173,24,208,73 v 8,,32,204  255,32,109,194,96,32,197,193) 162,6,32,201,255,169,24,32L 210,255,169,13,32,210,255,32p( 174,255,32,204,255,32,231,2552 96,162,4,32,201,255,169,254< 32,210,255,32,174,255,32,204F 255,238,116,193,96,162,0,189P 49152,32:49153,16(2B2):49155,224(A1)4:49154,4; 49490] A$B$(A):B$(A)B$(B):B$(B)A$e 40  GET FILENAME AND LOAD IT. AA4:" ENTER FILENAME OF PIC"A": ";:A$ (A$)16450 B$(A)A$49156,(A$):49152,32:4915 162,6,32,201,255,169,21,32"~ 210,255,169,13,32,210,255,32D 174,255,32,204,255,162,4,32g 201,255,169,13,32,210,255,32 174,255,32,204,255,169,0,141 116,193,96,32,93,194,240,105 162,4,32,201,255,169,141,32 210,255,320:49490:49188:280 A64310+ A133150: A140150T AA132:A4440:40k 520:49490:49188 A$:A$""250 A$:A$""260 49188:40 A$:A(A$(0)):A3249188:40 "A133A136280 ,AA132:520:49490:28 (LOWER LEFT ) : "B$(3):" PIC 4 (LOWER RIGHT) : "B$(4)h F" F1 = DISPLAY 1  F2 = LOAD 1 " P" F3 = DISPLAY 2  F4 = LOAD 2 " Z" F5 = DISPLAY 3  F6 = LOAD 3 " d" F7 = DISPLAY 4  F8 = LOAD 92,77,33,192 32,210,255,232,224,8,208,2429 206,30,192,208,187,96,169,1Z 162,8,160,0,32,186,255,173{ 4,192,162,5,160,192,32,189 255,169,0,170,160,28,32,213 255,169,1,32,195,255,32,204 255,96,160,0,132,251,174,12,192,133,254,162,4,1208 169,40,133,1,177,253,145,251DB 200,208,249,230,252,230,254,202eL 208,242,169,47,133,1,88,96V 142,188,193,142,195,193,160,0` 162,0,232,189,200,193,32,210j 255,138,217,200,193,48,243,96opq  32,227,192,165,251,72,165,2521 72,173,32,192,133,251,173,31V  192,133,252,32,227,192,165,251z* 141,32,192,165,252,141,31,1924 104,133,252,104,133,251,169,13> 32,210,255,32,225,255,208,5H 104,104,76,144,192,206,29,192R PRINTER CONTROL CODESrs't * EPSON PRINTER MODULE *E~ 5,27,42,6,128,2,0,0,0,0_ 3,27,65,8,0,0,0,256 * GEMINI PRINTER MODULE * 4,27,76,128,2,0,0,0,0,0 3,27,51,16,0,0,0,25608,228,173,3,192,133,252. 173,141,24,208,96,169,255,208( 2,169,0,141,33,192,169,4I 162,4,160,0,32,186,255,169k 0,32,189,255,32,192,255,162 4,32,201,255,169,0,133,251 169,64,133,252,169,0,141,32 192,169,96,141,31,192,162,210 32,176,193,32,210,255 21,192,221,123,194,208,5,232Z 224,8,208,243,96,162,0,189?d 21,192,157,123,194,232,224,8`n 208,245,96,0,169,255,208,2x 169,0,141,33,192,32,117,193 169,0,133,251,173,0,192,133 252,169,25,141,29,192,32,197 193,32,178,13,16(2A2)'X1(A$):49156X,((A$,X,1)):X49454:49155,224(A1)4:49154,28:49490:49153,32:49152,16(2A2):49154,224(A1)4:49155,4: POKE IN ML ROUTINEI49152&A:A2565650SUMSUMA: I,A:II1:5503,174,255,32,204,255 162,5,32,201,255,162,0,1896 21,192,77,33,192,32,210,255Y 232,224,8,208,242,32,174,255| 162,4,32,201,255,174,116,193 240,9,169,32,32,210,255,202 76,16,194,238,116,193,169,254 32,210,255,32,174,2550! 6"ENTER THE NUMBERS OF THE SCREENS"@ @"YOU WANT TO SWAP (1-4)."W J"1ST SCREEN : ";An T"2ND SCREEN : ";B ^A1A4B1B4310 h520:49490 r49153,16(2A2):49152,16(2B2) |49155,224(B1)4:49154,224(A1)4 494900 4 "4 n" \ = DUMP POS  _ = DUMP NEG "_ x"  * = QUICK VIEW SCREENS " "  @ = SWAP SCREENS " A$:A$""140 A$:A$""150 A(A$) A9249209:40 A9549205:40 A42A1:52 5" QUAD PRINT (C) 1984 BY MICHAEL BEUTJER "F 55,0:56,28m"SELECT YOUR PRINTER TYPE.""PRESS F1 FOR EPSON RX/FX 80 OR 100."("PRESS F3 FOR COMMODORE 1526."2A$:A$""50 <(A$)133B$"QP E*":" L %" INITIALIZING...". 570n53280,0:53281,0:646,15:" QUAD-PRINT 1526"B$(4):" (C) 1984 BY M. BEUTJER"(B0B1:702" PIC 1 (UPPER LEFT ) : "B$(1):" PIC 2 (UPPER RIGHT) : "B$(2)8 <" PI AD 4 "7 n" \ = DUMP POS  _ = DUMP NEG "b x"  * = QUICK VIEW SCREENS " "  @ = SWAP SCREENS " "  ^ = SINGLE PRINT " A$:A$""150 A$:A$""160 A(A$) A9249 49188:40 6A133A1363005 @AA132:540:49430:300] J"ENTER THE NUMBERS OF THE SCREENS"| T"YOU WANT TO SWAP (1-4)." ^"1ST SCREEN : ";A h"2ND SCREEN : ";B rA1A4B1B4330 |540:49430 49153,16(2A2):49152,16(2(A$)16470B$(A)A$<49156,(A$):49152,32:49153,16(2A2)cX1(A$):49156X,((A$,X,1)):49394:49155,224(A1)4:49154,28:49430:49153,32:49152,16(2A2):49154,224(A1)4:49155,4:&"ENTER NO. OF PICTURE TO P)" 5 4545 4545" I%ME$(2,2)"DGDCEFDGDCEF"*J%MV$(2,2)"3535353535353535"9M% PHRASE 3UN%MD$(3)"00000000000000"sO%ME$(3,0)"CDCA@@@@@"P%MV$(3,0)"6 7 676 "Q%ME$(3,1)"FAFGEFFFAFGF"R%MV$(3,1)"45454545454545"S%ME,96l 133,138,169,44,133,0,0,0(v 0,0,0,0,0,0,0,0D 0,0,0,0,173,17,208,73f 32,141,17,208,173,24,208,73 8,141,24,208,96,169,255,208 2,169,0,141,33,192,32,117 193,169,0,133,251,169,64,133 252,169,0,141,32,192,169,96,1)"CCDCGDCCCCDCGDCC"4%MV$(0,1)"4545354545453545"05%ME$(0,2)"FAEAGBCFADAGBC"P6%MV$(0,2)"3434343434343434"_9% PHRASE 1}:%MD$(1)"0000000000000000";%ME$(1,0)"FFFGAFGEF@@@@@@@"<%MV$(1,0)"6 "=%ME$(1,1)"FCECDBCCFCEC,251,173,31,192,133,252,32+  178,192,165,251,141,32,192,165P 252,141,31,192,104,133,252,104s  133,251,32,225,255,208,5,104* 104,76,117,192,206,29,192,2084 200,96,169,40,141,30,192,160> 0,162,0,120,169,46,133,1H 177,251,14  160,192,32,189,255,169,0,170+ 160,28,32,213,255,169,1,32M 195,255,32,204,255,96,160,0q 132,251,174,1,192,134,252,132 253,174,0,192,134,254,142,34 192,238,34,192,200,192,32,208 248,160,0,120,169,46,133,1 177,25OADING EPSON/GEMINI VERSION"f F(A$)134B$"QP C*":" LOADING COMMODORE 1526 VERSION"t KB$""50 P53280,6:53281,14:"LOAD"(34)B$(34)",8" Z"":198,5:X04:A:631X,A:: 13,31,82,213,13ICE PLAYERC 3 (LOWER LEFT ) : "B$(3):" PIC 4 (LOWER RIGHT) : "B$(4)k F" F1 = DISPLAY 1  F2 = LOAD 1 " P" F3 = DISPLAY 2  F4 = LOAD 2 " Z" F5 = DISPLAY 3  F6 = LOAD 3 " d" F7 = DISPLAY 4  F8 = LO209:40 A9549205:40< A42A1:540:49430:49188:300J A64330X A94550g A133160v A140160 AA132:A4460:40 540:49430:49188 A$:A$""270 A$:A$""280 "49188:40 ,A$:A(A$(0)):A32B2)% 49155,224(B1)4:49154,224(A1)40 49430l 49152,32:49153,16(2B2):49155,224(A1)4:49154,4w 49430 A$B$(A):B$(A)B$(B):B$(B)A$ 40  GET FILENAME AND LOAD IT. AA4:" ENTER FILENAME OF PIC"A": ";:A$RINT (1-4) : ";A/+"PRESS P FOR POSITIVE, N FOR NEGATIVE "J0A$:A$"N"A$"P"560f2P49788:A$"P"P49792549152,16(2A2):P:40:I49152D A: A256 N I,A:II1:580X 0,0,0,0,0,60,162,0b 32,126,197,169,76,44,169 $(3,2)"DADGCFDADGD" T%MV$(3,2)"35353535353535"W% PHRASE 46X%MD$(4)"0000000000000000"VY%ME$(4,0)"FC@C@@@DC@@@@@"vZ%MV$(4,0)"6 7 67 "[%ME$(4,1)"FFFAGAADGFAGAA"\%MV$(4,1)"45454545 4 54545"]%ME$(4,2)"FDFFGEAFFFFG 141,31,192,169,25,141,29,1923 32,121,192,169,0,133,251,169V 128,133,252,169,0,141,32,192z 169,160,141,31,192,169,25,141 29,192,32,121,192,32,45,194 96,32,197,193,32,178,192,165 251,72,165,252,72,173,32,192 133DACA">%MV$(1,1)"45454 545454 5"?%ME$(1,2)"FAEADBCFAEADFCF"=@%MV$(1,2)"3434343434343435"LC% PHRASE 2jD%MD$(2)"0000000000000000"E%ME$(2,0)"CDC@CDCA"F%MV$(2,0)"6 7 67 6 7 676"G%ME$(2,1)"@F@FCGFF@F@FCGFF"H%MV$(2,1 1,34,192,169,47,133R 1,88,14,34,192,62,21,192>\ 232,224,8,208,245,200,192,8af 208,223,24,165,251,105,8,133p 251,165,252,105,0,133,252,162z 0,32,219,193,206,30,192,208 198,96,169,1,162,8,160,0 32,186,255,173,4,192,162,53,145,251,169,47,133,1! 88,200,208,239,230,252,230,254F 165,254,205,34,192,208,228,173h 3,192,133,252,173,2,192,133 254,162,4,120,169,40,133,1 177,253,145,251,200,208,249,230 252,230,254,202,208,242,169,47$ 133,1,88,96,0,169,4,170. 160,255,32,186,255,169,0,3288 189,255,32,192,255,176,40,169YB 6,168,162,4,32,186,255,169{L 0,32,189,255,32,192,255,176V 22,169,5,168,162,4,32,186` 255,169,0,32,189,255,32,192j 255,176,4,32,176,193,24,96t "":53280,0:53281,69 "BROKEN MELODY....":t "THREE VOICES WAIT FOR USER INPUT BETWEEN PHRASES": "USE THIS ROUTINE FOR A SERIES OF REWARDS" "PLAYS I'M ON MY WAY (FROM PAINT YOUR WAGON BY LERNER & LOEWE)" :" 250,1,244,3,233,7,210,15,165,31,75,63,151,126,46,2536# D-FLAT (C-SHARP)T#X%11: 9190:Y%17: 9195# 28,1,56,2,112,4,225,8,195,17,134,35,12,71,24,142# E-FLAT (D-SHARP)#X%12: 9190:Y%18: 9195# 62,1,125,2,251,4,247,9,239,19,223 97,8,195,16,135,33,15,67,30,134# D%#X%4: 9190]# 45,1,90,2,180,4,104,9,209,18,162,37,69,75,139,150n# E (F-FLAT)#X%5: 9190:Y%13: 9195# 81,1,163,2,71,5,143,10,31,21,62,42,125,84,250,168# F (E-SHARP)#X%6: 9190:Y%19: (A-SHARP) #X%9: 9190:Y%15: 9195J# 221,1,187,3,119,7,239,14,223,29,190,59,124,119,248,238W# C-FLATh#X%10: 9190# 4,1,250,1,244,3,233,7,210,15,165,31,75,63,151,126# B-SHARP#X%16: 9190# 24,2,48,4,97,8,195,16,135,33,1(I):j#k# SET UP GATES<l# WAVEFORMS, VOICES 0,1,2 (ADD VALUES):m# TRIANGLE ON=16; SAWTOOTH ON=32; PULSE ON=64 (SET WIDTH!); NOISE ON=128n#WF%(0)32:WF%(1)64:WF%(2)64s# I0 2:G%(I)1 WF%(I):UG%(I)G%(I) 254:u#v# SET PU%(I):# 10,128,256,384,512,640,768,1024,1152,1280P$;Q$ SET FILTER AND VOLUMERR$ FILTER FREQUENCYS$ LOW BYTE (0-7) X%; HIGH BYTE (0-255) Y%T$X%0:Y%100Y$ 54293,X%: 54294,Y%\$ FILTER ON?]$ VOICE 1 ON=1; 2 ON=2; 3 ON=4; ER FROM 0 TO 15; LOWER NUMBER=SOFTER VOLUME DURING SUSTAINO F#SN%(0)0:SN%(1)0:SN%(2)0p K# I0 2:SN%(I)SN%(I)16:v M# N# RELEASE--VOICES 0,1,2 O# NUMBER FROM 0 TO 15; LOWER NUMBER=FASTER DROP TO SILENCE AT END P#RE%(0)0:RE%(1)3:RE%(281200T4100h" ":14)A$*r:A$"":"FILENAME";A$:wA$""4210S|:"TAPE OR DISK?":yB$:T1:B$"D"T8:A$"@0:"A$:B$"T"4230B$"CONTINUE FROM ADDRESS":2010:ADB2515:B04500:110\B$"BEGIN S (653)0 120 60 100% %#> &# SET UP SOUND SHAPED '# (# MD$(23),ME$(23,2),MV$(23,2),G%(2),GR(2),FR(2,1),AD(2) )# DU%(9),PI%(168,1),AK%(2),DY%(2),SN%(2),RE%(2),WF%(2) /# 0# ATTACK--VOICES 0,1,2 1# NUMBER FROM 0 TO 15; z$ SELECT OVERALL VOLUME{$ 15=HIGH, 0=LOW|$Y%15-$ 54296,X% Y%3%K% SET MELODIES HEREQ%t% HOW MANY VOICES? (MINUS ONE)~%EV%2$%%% HOW MANY PHRASES? (MINUS ONE)&%ES%8*%+% MELODY STRINGS,%-% EA ONE MOMENT PLEASE..."% 9000: 100< < N1 (MD$(PH))M = VC0 EV% > GR(VC),UG%(VC): NORMAL NOTES; DON'T POKE UG% FOR LEGATO ? I0 1 @ FR(VC,I),PI%(((ME$(PH,VC),N,1)),I) A: B VCEV% 0 1: GR(VC),G%(VC): C ,39,191,79,126,159# G-FLAT (F-SHARP)/#X%14: 9190:Y%20: 9195k# 123,1,246,2,237,5,218,11,181,23,107,47,214,94,172,189# A-FLAT (G-SHARP)#X%8: 9190:Y%21: 9195# 169,1,83,3,167,6,78,13,156,26,57,53,115,106,230,212# B-FLAT 9195*# 102,1,204,2,152,5,48,11,96,22,193,44,131,89,6,1792# GB#X%7: 9190{# 145,1,35,3,71,6,143,12,30,25,60,50,121,100,243,200# A#X%1: 9190# 195,1,134,3,12,7,24,14,49,28,99,56,199,112,143,225# B#X%2: 9190#5,67,30,134,255,255# 9200# READ PITCHESH# I0 147 21: PI%(IX%,0),PI%(IX%,1)::`# IDENTICAL PITCHES# I0 147 21:PI%(IY%,0)PI%(IX%,0):PI%(IY%,1)PI%(IX%,1)#:## SET UP DURATIONS## I0 9: DULSE WIDTHS#w# VOICES 0,1,2; LOW BYTE, HIGH BYTEAx# GR(0)2,200: GR(0)1,3_y# GR(1)2,200: GR(1)1,3}z# GR(2)2,200: GR(2)1,3## SET UP PITCH ARRAY# EACH NOTE, IN ALL ITS OCTAVES# C#X%3: 9190 # 12,1,24,2,48,4, 1&2 ON=3; 2&3 ON=6; ALL ON=7^$X%0f$ FILTER RESONANCE?g$ PEAK VOLUME (0=LOW, 15=HIGH)Ih$Y%14fm$Y%Y%16: 54295,X% Y%p$ SELECT FILTER TYPEq$ LOW-PASS=1;BAND-PASS=2;HIGH-PASS=4;LO-BAND=3;HI-BAND=6;ALL=7r$X%1w$X%X%16y$)5 W#X# SET SOUND ADDRESSESY#KZ#FR(0,0)54272:FR(1,0)54279:FR(2,0)54286_# I0 2:FR(I,1)1FR(I,0):GR(I)FR(I,0)4:AD(I)GR(I)1:a#b# POKE ADSR ENVELOPESc#d# I0 2: AD(I),AT%(I) DY%(I)i# AD(I)1,SN%(I) RE%CAN AT ADDRESS":2010:ADBa2515:B04700$b:4740ZfB07:AC(ADB):3030:ADBENADSR:1080:110gk" ";:Bup:ADAD8zB$:B$(136)1103010:": ";:4710"**LOAD**":420061,T,0,A$:690:1@ST64110J1070:TLOWER NUMBER=SHARPER ATTACK2 2#AK%(0)0:AK%(1)0:AK%(2)0S 7# I0 2:AK%(I)AK%(I)16:Y 9#s :# DECAY--VOICES 0,1,2 ;# NUMBER FROM 0 TO 15; LOWER NUMBER=FASTER DECLINE <#DY%(0)7:DY%(1)3:DY%(2)3 C# D# SUSTAIN--VOICES 0,1,20 E# NUMBCH PHRASE HAS ONLY ONE DU%(PH) STRING, NO MATTER HOW MANY VOICESc.% EACH PHRASE HAS ONE ME$(PH,VC) & ONE MV$(PH,VC) STRING PER VOICEr/% PHRASE 00%MD$(0)"0000000000000000"1%ME$(0,0)"FFFGAFG@FFFGAFGE"2%MV$(0,0)"6 "3%ME$(0I0 DU%(((MD$(PH),N,1))):\ D FOR VC=0 TO EV%:POKE GR(VC),UG%(VC):NEXT:REM STACCATO NOTESz E:PHPH1: PHES% PH0 F VC0 EV%: GR(VC),UG%(VC):: d "PRESS SHIFT FOR PHRASE "PH n "ANY OTHER KEY TO STOP" x (203)64   ONE VOICE PLAYER (FAST)? PLAYS "MEXICAN HAT DANCE"E`"":53280,0:53281,6:" ONE VOICE PLAYER":" MEXICAN HAT DANCE..." 9000: 120< N1 (MD$(PH))=D%((MD$(PH),N,1))' @ GR,UG % X 828 1023 : Y: X,Y::W 169, 0, 133, 63, 133, 64, 165, 43, 133, 251 165, 44, 133, 252, 160, 0, 132, 254, 32, 228 3, 234, 177, 251, 208, 3, 76, 208, 3, 230 251, 208, 2, 230, 252, 169, 244, 160, 3, 32  30, 203, 16 253, 177, 251, 208, 226, 165, 253, 41R  240, 74, 74, 74, 74, 24, 105, 65, 32, 210  255, 165, 253, 41, 15, 24, 105, 65, 32, 210  255, 169, 13, 32, 210, 255, 173, 141, 2, 41  1, 208, 249, 230, 63, 208, 2, 230, 64, 230  251, 208, 2, 53280,12:53281,11M" FLANKSPEED ";~ " MISTAKEPROOF ML ENTRY PROGRAM "" CREATED BY G. F. WHEAT "" COPR. 1984, ION INTERNATIONAL INC. "A5427254296:A,0:/ ((2)T(1)161 ZB$"ENDING ADDRESS IN HEX":2010:ENBC _2510:B080j `254,T(2)T(1)16:BT(4)1T(3)16 aB255BB255:254,(254)1 b253,B: d GET HEX LINE n3010:": ";:A08 xB01:210 }B A%(A)T(1)T(0)16:ADA4100 A$(135)" ":45001 A$(136)" ":4700W A$"@"A$"G"T(B)(A$)55:250} A$"/"A$":"T(B)(A$)48:250 1100:210 A$""; 125 A0280 A1:B1290 140 B0(20);(20);:AA1 AA1 "WTOOTH ON=32; PULSE ON=64 (SET WIDTH!); NOISE ON=1285 n#WF%32Q s#G%1 WF%:UG%G% 254W u#m v# SET PULSE WIDTH w# LOW BYTE, HIGH BYTE x# GR2,200: GR1,3 # # SET UP PITCH ARRAY # EACH NOTE, IN ALL ITS OCTAVES # C #X%3:1100#:"INPUT A 4 DIGIT HEX VALUE!":1100T:"ENDING IS LESS THAN STARTING!":B0:1100:"ADDRESS NOT WITHIN SPECIFIED RANGE!":B0:1100:"NOT ZERO PAGE OR ROM!":B0:1100$"?ERROR IN SAVE":1100."?ERROR IN LOAD":11008 0 TO 15; LOWER NUMBER=FASTER DECLINE) <#DY%5/ C#= D# SUSTAIN E# NUMBER FROM 0 TO 15; LOWER NUMBER=SOFTER VOLUME DURING SUSTAIN F#SN%1 K#SN%SN%16 M# N# RELEASE O# NUMBER FROM 0 TO 15; LOWER NUMBER=FASTER DROP TO SILENCE AT END "@"A$"G"T(A)(A$)55:-A$"/"A$":"T(A)(A$)48:; T(A)16:N ADRESS CHECK^ ADEN1030r BSRBEN1040 B256(B40960B49152)B532471050  ADDRESS TO HEX ACAD:A4096:3070 A256:3070 A16:3070%: NORMAL NOTES; DELETE POKES FOR LEGATOX A I0 1: FR(I),PI%(((ME$(PH),N,1)),I):d B GR,G% C I0 DU%(((MD$(PH),N,1))): D POKE GR,UG%:REM STACCATO NOTES E:PHPH1: PHES% PH0 F GR,UG: d 60 n (653)0  x0, 0, 177, 251, 170, 230, 251, 208S  2, 230, 252, 177, 251, 32, 205, 221, 169, 58  32, 210, 255, 169, 0, 133, 253, 230, 254, 32  228, 3, 234, 165, 253, 160, 0, 170, 177, 251  201, 32, 240, 6, 138, 113, 251, 69, 254, 170"  138, 133, 230, 252, 76, 74, 3, 169, 236H  160, 3, 32, 30, 203, 166, 63, 165, 64, 32|  205, 221, 169, 13, 32, 210, 255, 96, 230, 251  208, 2, 230, 252, 96, 0, 76, 73, 78, 69  83, 58, 32, 0, 76, 73, 78, 69, 32, 35  32, 0, 0, 0, 0, 08, 133,54272,4:54273,48:54277,0:54278,249:54296,15H FA680699:B:A,B:s K169,251,166,253,164,254,32,216,255,96 L169,0,166,251,164,252,32,213,255,96 PB$"STARTING ADDRESS IN HEX":2010:ADB:SRB U2520:B080 V251,T(4)T(3)16:252,T1EN310 " ";0 A:TAD((AD256)256):" "T A07:TTA%(A):T255TT255Z s A%(8)T1010:110 A07:ADA,A%(A)::ADAD8:110 GET HEX INPUT A$:A$""210 A$(20)270 A$(133)4000 A$(134)(20);:140 , LAST LINE0 6" ":TAD((AD256)256)V @B0A1:TTA%(B):T255TT255\ Ju TA%(A)T1010:110 ^B0A1:ADB,A%(B): h:"YOU ARE FINISHED!":4000  BELL AND ERROR MESSAGES :"LINE ENTERED INCORRECTLY"::  9190/# 12,1,24,2,48,4,97,8,195,16,135,33,15,67,30,1347# DG#X%4: 9190# 45,1,90,2,180,4,104,9,209,18,162,37,69,75,139,150# E (F-FLAT)#X%5: 9190:Y%13: 9195# 81,1,163,2,71,5,143,10,31,21,62,42,125,84,250,168# F (E-S ::"END OF ML AREA":"L54276,17:54276,16:B15,8,15:15,A,A$:15:A$:[ GET FOUR DIGIT HEXj:B$;:T$(T$)41020:2010A14:A$(T$,A,1):2060:T(A)161020:2010:B(T(1)4096)(T(2)256)(T(3)16)T(4):  A$P#RE%0 W# X# SET SOUND ADDRESSES% Y#5 Z#FR(0)54272Z _#FR(1)1FR(0):GRFR(0)4:ADGR1` a#y b# POKE ADSR ENVELOPE c# d# AD,AT% DY% i# AD1,SN% RE% j# k# SET UP GATE l# WAVEFORMS (ADD VALUES):* m# TRIANGLE ON=16; SA A1:3070 % T(ACA):T9A$(T55):30904 A$(T48)I A$;:ACACAT:aA$"**SAVE**":4200w1,T,1,A$:680:1ST01060:T812004000A$"**LOAD**":420061,T,0,A$:690:1@ST64110J1070:T "PHRASE "PH 100 %#1 &# SET UP SOUND SHAPE7 '#[ (# MV$(23),MD$(23),ME$(23),FR(1)s )# DU%(9),PI%(168,1)y /# 0# ATTACK 1# NUMBER FROM 0 TO 15; LOWER NUMBER=SHARPER ATTACK 2#AK%0 7#AK%AK%16 9# :# DECAY ;# NUMBER FROMA l `JUNE852A 64 BUG REPVIC BUG REPFLANKSPEED F-SPEED OVERSCREEN DUMP ISCREEN DUMP IIRUPERT 1ONE VOICE PLAYER 3 VOICE PLAYERBROKEN MELODYQP MENUQP COM.1526QP EPSON/GEMINI6510 SIMULATOR, MAPPING 4.4MENU C-64 DUCK SHOOTTOWERS OF HANOI" SPEEDY SCREEN MAGIC MENU-VICSCREEN MAG. BOOT  4,4. 4," "S 4," "x 4," " 4," Ϸ "4," SAVE "4," " 4,"  "4 4," CONTINUE "Y 4," "~ 4," " 4," " 4," " 4," SCAN " 4,"  F BEFORE LOADING THIS PROGRAM YOU MUST POKE44,64:POKE16384,0:NEW\B8192 :53272,24v 53265,(53265) 32 I0 7999 : BI,0 : ( J1024 2043 :J,1:d X 0 319 .4iY(100(100(X05))(X240))CHAR(X8) ------------------------------------------"(10)U L0 24: (27) (76) (249) (2);z I1 119: (0);:I: (245); CR 0 39: P 0 7:PBYT0:E2(7P) LC 0 7 PBYT PBYT(((BLC) E)0)2(7LC) LC: (F BEFORE LOADING THIS PROGRAM YOU MUST POKE44,64:POKE16384,0:NEWS0 (46)256 (45) : S1 S0210 : S2 S0150 : B 8192 S1d X 0 319 .4iY(100(100(X05))(X240))CHAR(X8)ROW(Y8)LINEY 7"  ";F "------------------------------------------------------"(10)o L0 24: (27) (76) (250) (2);x S2  (245) (10);  L: (27)"@" " "; "------------------------------------------------------" 4,: << RR18-1 >>6 RUPERT REPORT #18H LISTINGc BIT MAP GRAPHICSi SB(N)(MM) 2N RB(N)(MM) (2552N)VV53248 : VIC-II REGISTER 0 #: >>> PUT BIT MAP AT 8192 <<< (SET BIT 3 OF V# U: >>> SELECT COLORS C1 AND C0 <<<C ZC11 : C00 : CC16C1 C0j _: >>FILL SCREEN MEMORY WITH COLOR d MM1024 2023: MM,CC: : :::: MAIN PROGRAM :: : N1 1000 X(0)320 : Y(0)200 400 : P1 300(BIT) LECT COLORS C1 AND C0 <<<C ZC11 : C00 : CC16C1 C0j _: >>FILL SCREEN MEMORY WITH COLOR d MM1024 2023: MM,CC: : :::: MAIN PROGRAM :: : N1 1000 X(0)320 : Y(0)200 400 : P1 300 "THREE VOICE PLAYER"K PLAY 1, 2, OR 3 VOICES WITH THIS ROUTINE ADD IT TO YOUR PROGRAMS: ADJUST THE DURATIONS AT 9200-9210 AS NEEDED PLAYS "GOD SAVE THE KING" ("MY COUNTRY, 'TIS OF THEE")"":53280,0:53281,6  "1 4," "V 4," "{ 4," LOAD " 4," " 4," " 4," " 4," ̤ "7 4," "\ 4," FLANKSPEED " !4," " "4," " (4 " 4," " 4,"  ROW(Y8) LINEY 7B BYTE B ROW320 CHAR8 LINET BIT7(X 7)r BYTE, (BYTE) (2BIT)z X A$: A$(133) 190 4,4,5:4: (10) (10) (27)"@": (27) (51) (16) " ";, "------------PBYT) (PBYT);  P : BB82  CR: (245) (10);E  L: (27)"@"X " "; "------------------------------------------------------" 4,:4 "(10) (27)"@": (27) (51) (16) " ";, "------------BYTE B ROW320 CHAR8 LINE4 BIT7(X 7)R BYTE, (BYTE) (2BIT)Z Xw A$: A$(133) 190 251,0 : 252,32 I 0 7 : 2048I,2I : 4,4,5:4: (10) (10) (27)"@": (27) (51) (16) " 4 "Щ ЍЩ @` x    8  8   -  m    ԭ     Ы e(Ѝ`@": (27) (51) (16) " IC REGISTER 24)( (MMVV24 : MM,SB(3)r -: >>> SELECT BIT MAP MODE <<< (SET BIT 5 OF VIC REGISTER 17) 2MMVV17 : MM,SB(5) <BASE8192 : START BIT MAP MEMORY A: >>> CLEAR BIT MAP <<< F MMBASE BASE7999 P MM,0 : MM0 :  &: (:- ,: >>> RESET BIT MAP MODE <<<H 6MMVV17 : MM,RB(5)n @: >>> RESTORE SCREEN MEMORY BASE JMMVV24 : MM,RB(3)  : >>> TURN ON PIXEL AT (X,Y) BIT7(X 7) MMBASE320(Y8)8(X8)(Y 7)  MM,SB:10)"THREE VOICE PLAYER": :10)"GOD SAVE THE KING"K 9000: 120b < N1 (MD$(PH))s = VC0 EV% > GR(VC),UG%(VC): NORMAL NOTES; DON'T POKE UG% FOR LEGATO ? I0 1 @ FR(VC,I),PI%(((ME$(PH,VC),N,1)),I) A: B VC TER VOLUME DURING SUSTAIN/ F#SN%(0)12:SN%(1)8:SN%(2)9P K# I0 2:SN%(I)SN%(I)16:V M#r N# RELEASE--VOICES 0,1,2 O# NUMBER FROM 0 TO 15; LOWER NUMBER=FASTER DROP TO SILENCE AT END P#RE%(0)0:RE%(1)3:RE%(2)5 W# X# SET SOUND ADDRES l# WAVEFORMS, VOICES 0,1,2 (ADD VALUES):im# TRIANGLE ON=16; SAWTOOTH ON=32; PULSE ON=64 (SET WIDTH!); NOISE ON=128n#WF%(0)64:WF%(1)64:WF%(2)32s# I0 2:G%(I)1 WF%(I):UG%(I)G%(I) 254:u#v# SET PULSE WIDTHSw# VOICES 0,1,2;  # D#X%4: 9190=# 45,1,90,2,180,4,104,9,209,18,162,37,69,75,139,150N# E (F-FLAT)k#X%5: 9190:Y%13: 9195# 81,1,163,2,71,5,143,10,31,21,62,42,125,84,250,168# F (E-SHARP)#X%6: 9190:Y%19: 9195 # 102,1,204,2,152,5,4 ,75,63,151,126,46,253# D-FLAT (C-SHARP)4#X%11: 9190:Y%17: 9195k# 28,1,56,2,112,4,225,8,195,17,134,35,12,71,24,142# E-FLAT (D-SHARP)#X%12: 9190:Y%18: 9195# 62,1,125,2,251,4,247,9,239,19,223,39,191,79,126,159# G-FLAT : 9195*# 221,1,187,3,119,7,239,14,223,29,190,59,124,119,248,2387# C-FLATH#X%10: 9190# 4,1,250,1,244,3,233,7,210,15,165,31,75,63,151,126# B-SHARP#X%16: 9190# 24,2,48,4,97,8,195,16,135,33,15,67,30,134,255,255# 9200640,768,1024,1152,1280P$Q$ SET FILTER AND VOLUME1R$ FILTER FREQUENCY_S$ LOW BYTE (0-7) X%; HIGH BYTE (0-255) Y%oT$X%0:Y%100Y$ 54293,X%: 54294,Y%\$ FILTER ON?]$ VOICE 1 ON=1; 2 ON=2; 3 ON=4; 1&2 ON=3; 2&3 ON=6; ALL ON=7^$ 15=HIGH, 0=LOW|$Y%15 $ 54296,X% Y%%*% SET MELODIES HERE0%S% HOW MANY VOICES? (MINUS ONE)]%EV%2c$%%% HOW MANY PHRASES? (MINUS ONE)&%ES%1*%+% MELODY STRINGS,%-% EACH PHRASE HAS ONLY ONE DU%(PH) ST1)"5 4 5"5%ME$(0,2)"FACCCFDCCDCCA"/6%MV$(0,2)"3 234 34 343 ">9% PHRASE 1e:%MD$(1)"2224022224022000040200228";%ME$(1,0)"CCCCAAGAAGFACDAGF"<%MV$(1,0)"6 5 6 5 "=%ME$(1,1)"AAAAGFGGGGFEFF@F@FEV% 0 1: GR(VC),G%(VC):@ C I0 DU%(((MD$(PH),N,1))): D FOR VC=0 TO EV%:POKE GR(VC),UG%(VC):NEXT:REM STACCATO NOTES E:PHPH1: PHES% PH0 F VC0 EV%: GR(VC),UG%(VC):: d 60 n (653)0 x "PHRASE "PH K%(0)2:AK%(1)2:AK%(2)22 7# I0 2:AK%(I)AK%(I)16:8 9#R :# DECAY--VOICES 0,1,2 ;# NUMBER FROM 0 TO 15; LOWER NUMBER=FASTER DECLINE <#DY%(0)4:DY%(1)6:DY%(2)6 C# D# SUSTAIN--VOICES 0,1,2 E# NUMBER FROM 0 TO 15; LOWER NUMBER=SOFSES Y#+Z#FR(0,0)54272:FR(1,0)54279:FR(2,0)54286k_# I0 2:FR(I,1)1FR(I,0):GR(I)FR(I,0)4:AD(I)GR(I)1:qa#b# POKE ADSR ENVELOPESc#d# I0 2: AD(I),AT%(I) DY%(I)i# AD(I)1,SN%(I) RE%(I):j#k# SET UP GATESLOW BYTE, HIGH BYTE!x# GR(0)2,200: GR(0)1,3?y# GR(1)2,200: GR(1)1,3]z# GR(2)2,200: GR(2)1,3c#|# SET UP PITCH ARRAY# EACH NOTE, IN ALL ITS OCTAVES# C#X%3: 9190# 12,1,24,2,48,4,97,8,195,16,135,33,15,67,30,1348,11,96,22,193,44,131,89,6,179# G"#X%7: 9190[# 145,1,35,3,71,6,143,12,30,25,60,50,121,100,243,200c# As#X%1: 9190# 195,1,134,3,12,7,24,14,49,28,99,56,199,112,143,225# B#X%2: 9190# 250,1,244,3,233,7,210,15,165,31(F-SHARP)#X%14: 9190:Y%20: 9195K# 123,1,246,2,237,5,218,11,181,23,107,47,214,94,172,189b# A-FLAT (G-SHARP)#X%8: 9190:Y%21: 9195# 169,1,83,3,167,6,78,13,156,26,57,53,115,106,230,212# B-FLAT (A-SHARP)#X%9: 9190:Y%15# READ PITCHES(# I0 147 21: PI%(IX%,0),PI%(IX%,1)::@# IDENTICAL PITCHES# I0 147 21:PI%(IY%,0)PI%(IX%,0):PI%(IY%,1)PI%(IX%,1)#:## SET UP DURATIONS## I0 9: DU%(I):# 0,128,256,384,512,X%0f$ FILTER RESONANCEg$ PEAK VOLUME (0=LOW, 15=HIGH)(h$Y%14Em$Y%Y%16: 54295,X% Y%^p$ SELECT FILTER TYPEq$ LOW-PASS=1;BAND-PASS=2;HIGH-PASS=4;LO-BAND=3;HI-BAND=6;ALL=7r$X%1w$X%X%16y$z$ SELECT OVERALL VOLUME{$RING, NO MATTER HOW MANY VOICESB.% EACH PHRASE HAS ONE ME$(PH,VC) & ONE MV$(PH,VC) STRING PER VOICEQ/% PHRASE 0o0%MD$(0)"2224022224022228"1%ME$(0,0)"FFGEFGAAAGFGFEF"2%MV$(0,0)"5 "3%ME$(0,1)"CCDCDECFGFEADAGC"4%MV$(0,'d ******* 6510 SIMULATOR ********in ASL,BRK,CLC,CLD,CLI,CLV,DEX,DEY,INX,INY,LSR,NOP,PHA,PHP,PLAx PLP,ROL,ROR,RTI,RTS,SEC,SED,SEI,TAX,TAY,TSX,TXA,TXS,TYA ADC,AND,CMP,CPX,CPY,EOR,LDA,LDX,LDY,ORA,SBC ADC,AND,ASL,BCC,BCS,BEQ,BIT,BM 100 %# &# SET UP SOUND SHAPE# '#_ (# MD$(23),ME$(23,2),MV$(23,2),G%(2),GR(2),FR(2,1),AD(2) )# DU%(9),PI%(168,1),AK%(2),DY%(2),SN%(2),RE%(2),WF%(2) /# 0# ATTACK--VOICES 0,1,2 1# NUMBER FROM 0 TO 15; LOWER NUMBER=SHARPER ATTACK 2#A OC$A$:OCL: 1350 L: 300T *** IMMEDIATE, ABSOLUTE & ACCUMULATOR ADDRESS MODES ***pOC$(A$,3):OP$(A$,5) (OP$,1)"#" (OP$,2,1)"$" FLAG$"AH": 530 (OP$,1)"#" FLAG$"AD": 620 (OP$,1)"$" FLAG$"IH":  :X$(OP$,L,1): X$Z$ X$"F" 3000D X$"9" X$"A" 300LN (OP$)1 OP$Z$OP$mXOH$OP$: 1030:OP$OD$: 670b *** DECIMAL OPERAND, ABSOLUTE ADDRESSING ***lOP$(OP$,2)v L30 40: OC$N$(L) OCL: 650 L: 300  ):X$(OP$,L,1): X$Z$ X$"F" 300. X$"9" X$"A" 3006 LbOH$OP$: 1030:OP$OD$:OP$(((OP$)))vOCOC40: 1430  *** ACCUMULATOR ADDRESSING ***OP$"A"  L72 75: OC$N$(L) OCL71: 820* L: 3004 OC  *** DECIMAL-TO-HEXADECIMAL CONVERSION ***3 L1 4:HEX$(L)"": LQ L1 5:T$(OD$,L): LcNR(OD$):X4TMPNR:NR(NR16):TMPTMPNR16 TMP10 HEX$(X)((TMP),1): 980HEX$(X)(TMP10("A")) NR0 XX1: 9 L:OD$(NR):. *** BINARY-TO-DECIMAL CONVERSION ***F8 L8 1 1:B$(L)(OB$,L,1): LtB L1 8:BIT(L)(B$(L)): L:OD0:NR256L L1 8:NRNR2:ODODBIT(L)NR: LVOD$(OD):` *** DECIMAL-TO-BINARY CONVERSION *** jODEX$(L)(OH$,L,1)# L: HEX$(2)"" HEX$(2)HEX$(1):HEX$(1)Z$R L1 16: HEX$(1)H$(L) BIT$(1)B$(L) L: L1 16: HEX$(2)H$(L) BIT$(2)B$(L) L:OB$BIT$(1)BIT$(2):: *** BINARY-TO-HEX CONVERSION *** L1 8:BIT$HEX$(1)HEX$(2): < *** ON/GOTO DATA ***GF OC 1510,1560,1570,1580,1590,1600,1610,1650,1690,1730PNROC10: NR 1760,1780,1780,1780,1780,1780,1790,1810,1830,1840dNRNR10: NR 1850,1860,1870,1880,1900,1920,1930,1940,1950,1840xNRI,BNE,BPL,BVC,BVS,CMP,CPX,CPY] DEC,EOR,INC,JMP,JSR,LDA,LDX,LDY,LSR,ORA,ROL,ROR,SBC,STA,STXw STY,ASL,LSR,ROL,ROR 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 0000,0001,0010,0011,0100,0101,0110,0111 1000,1001,1010,1011,1100,1101,1110,11114 L1 75: N$(L): L@  L1 16: H$(L): L: L1 16: B$(L): Lc  "":53280,0:53281,6:646,1  " N V - B D I Z C"  N;V;" - ";B;D;I;Z;C: " "A: ";AH$;" X: ";XH$;" Y: ";YH$ ' AB$;" ";XB$;" ";YB$:5 ,TINES8 r *** ROUTINE TO CONVERT OP$ & AD$ TO BINARY NUMBERS ***d |OD$OP$: 1130: L1 8:BIT$(L)Z$: L  L1 8:B1$(L)(OB$,L,1): L  L1 8:B2$(L)(AB$,L,1): L:  *** IMPLIED-ADDRESSING ROUTINES *** L1 29: A$N$(L) 690  OP$"A" 790= (OP$,1)"0" (OP$,1)"9" 300: TRY AGAINRFLAG$"ID": 840~ *** HEX OPERAND, ABSOLUTE ADDRESS ***OP$(OP$,3) L30 40: OC$N$(L) OCL: 560& L: 3000 (OP$)2 300: L1 (OP$)(OP$)255 300; L1 (OP$):X$(OP$,L,1):(X$)48 (X$)57 420OOCOC29: 1420| *** HEX OPERAND, IMMEDIATE ADDRESS ***OP$(OP$,2) L41 71: OC$N$(L) OCL:720 L: 300 (OP$)4 300 L1 (OP$ 1510,1760,1790,18100> *** DECIMAL OPERAND, IMMEDIATE ADDRESS **IH (OP$)65535 300\ L1 (OP$):X$(OP$,L,1): (X$)48 (X$)57 300f L41 71: OC$N$(L) OCL: 890p L: 300zOP$(((OP$)))OCOC40: 143050OH$HEX$(1)HEX$(2)HEX$(3)HEX$(4), (OH$)1 OH$Z$OH$2b *** HEXADECIMAL-TO-DECIMAL CONVERSION ***NR0: L1 (OH$):HEX$(L)(OH$,L,1) HEX$(L)"9" NRNR16(HEX$(L)): 1060NRNR16(HEX$(L))("A")10$(OP$): L8 1 1:TMPOD2:NRTMP(TMP)+t NR0 BT$(L)Z$: 1160:~BT$(L)"1"LOD(TMP): LOB$BT$(1)BT$(2)BT$(3)BT$(4)BT$(5)BT$(6)BT$(7)BT$(8): *** HEX-TO-BINARY CONVERSION ***HEX$(1)"":HEX$(2)"": L1 (OH$):H$(L)(OB$,L,1): L:BIT$BIT$(1)BIT$(2)BIT$(3)BIT$(4)BIT$(5)BIT$(6)BIT$(7)BIT$(8)e T1$(BIT$,4):T2$(BIT$,4): L1 16 T1$B$(L) HEX$(1)H$(L) L: L1 16: T2$B$(L) HEX$(2)H$(L)( L: HEX$(1)"" HEX$(1)Z$2OHNR10: NR 1850,1860,1870,1880,1900,1920,1930,1940,1950,1950[ OC 1970,2100,2170,2250,2320,2390,2450,2550,2650,2750,2810 OC 1970,2350,3250,1780,1780,1780,3200,1780,1780,1780NROC10: NR 1780,1780,3250,2250,2320,3260,2390,3290,178 HEX$(8),BIT$(8),H$(16),B$(16),TEMP$(2),BIT(8),N$(75)i AH$"00":XH$"00":YH$"00":Z$"0":AD0:SC0:YD0 AB$"00000000":XB$"00000000":YB$"00000000" N0:V0:B0:D0:I0:Z0:C0 (A$,1)" " 300: TYPE A SPACE BETWEEN THE QUOTES  B0:A$"": " ";A$: TYPE SPACE BETWEEN SECOND PAIR OF QUOTEST @ (A$)3 (A$)10 300 J (A$)3 420: GO TO IMPLIED-ADDRESS ROUTINES T (A$,4,1)(32) 300 ^ (A$,1)(32) 300 h 450: GO TO IMMEDIATE- AND ABSOLUTE-ADDRESS ROU AD$:920:AH$OH$" 1190:AB$OB$#N0: AD127 N1#Z0: AD0 Z1"# V0X# (TMP$,1)(PLUS$,1) (TMP$,1)(AB$,1) V1y# OD$AD$: 1030:AH$OH$: 280#*C1:ADAD256:#4 380: *** AND ***#> L1 8:BIT$(L)"0": L#H3# I0 I1:"SCREEN MAGIC",8,1/ 49152 d"": 53280,0: 53281,4\n 3)"        "x 3)"        ̯" 3)"         " "  TIONAL INC"2 (L$,20)9)"RETURN OR CHOOSE NO.";Q 198,0: AN$:AN(AN$):B0d AN$"" 100 : CH1 AN: PR$: CH "": 53280,0: 53281,0 (L$,15)10)"LOADING "PR$"" "LOAD";(34);PR$;(34);",8,1" "RUNOG 4.4C  DUCK SHOOT,TOWERS OF HANOI,SPEEDY,SCREEN MAGIC,SCREEN MAG. BOOTN$):B0d AN$"" 100 : CH1 AN: PR$: CH "": 53280,0: 53281,0 (L$,15)10)"LOADING "PR$"" "LOAD";(34);PR$;(34);",8,1" "RUNP$,L,1): X$Z$ X$"F" 300)D X$"9" X$"A" 300EN (OP$)1 OP$Z$OP$fXOH$OP$: 1030:OP$OD$: 670b *** DECIMAL OPERAND, ABSOLUTE ADDRESSING ***lOP$(OP$,2)v L30 40: OC$N$(L) OCL: 650 L: 300 (OP$)0,1780$NRNR10: NR 2450,2550,2650,3320,2750,3340,3360,2810,1780,1780BNRNR10: NR 1780,3390m *** IMPLIED-ADDRESS OP-CODE ROUTINESC((AB$,1)):AB$(AB$,2)Z$: *** ASL ***OB$AB$: 1270:AH$OH$:OP$OH$: 1030:N0:Z0  XD255^OD$(XD):920:XH$OH$: 1190:XB$OB$hTMPXD: 3410: 280JrOH$YH$: 1030:YD(OD$): *** DEY ***f|YDYD1: YD0 YD255OD$(YD): 920:YH$OH$: 1190:YB$OB$TMPYD: 3410: 280OH$XH$: 1030:XD(OD$): *** INX *,PLA AND PLP *** 3340: *** ROL ***  3360: *** ROR ***F &N0:V0:B0:D0:I0:Z0:C0: 280 *** RTI ***` 0T 3390: *** RTS ***} :C1: 3390: *** SEC *** DD1: 3390; *** SED *** NI1: 3390: *** SEI *** XXH$AH$:XB$AB$:OP*!AH$YH$:AB$YB$: 1520: *** TYA ***" *** ABSOLUTE-ADDRESS OPERANDS ***;" D 2950: *** ADC ***R"OP(OP$):TMP$AB$g" 1130:PLUS$OB$"OH$AH$: 1030:AD$OD$:AD(AD$):TMPAD"ADADOPC:C0: AD255 2090"AD$(AD):OD$ L1 8: B1$(L)"1" B2$(L)"1" BIT$(L)"1"$R LI$\AB$BIT$(1)BIT$(2)BIT$(3)BIT$(4)BIT$(5)BIT$(6)BIT$(7)BIT$(8)d$fOB$AB$: 1270:AH$OH$$p 1030:TMP(OD$):3410:: 280$zOH$AH$: 1030:AD$OD$:AD(AD$):OP(OP$): *** CMP ***I,BNE,BPL,BVC,BVS,CMP,CPX,CPY] DEC,EOR,INC,JMP,JSR,LDA,LDX,LDY,LSR,ORA,ROL,ROR,SBC,STA,STXw STY,ASL,LSR,ROL,ROR 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 0000,0001,0010,0011,0100,0101,0110,0111 1000,1001,1010,1011,1100,1101,1110,11114  "- L$"":TA11Q AA1:BB1: PR$: A9 TA10o (L$,B7)TA)""A"-"PR$ B10 175 150 A20 :A0 (L$,22)" DISKS REPRODUCED WITH MSD SUPER DRIVES " (L$,24)7)"(C) ION INTERNA": "")  631,13: 632,13: 198,2:l  64 BUG REP,VIC BUG REP,FLANKSPEED,F-SPEED OVER,SCREEN DUMP I  SCREEN DUMP II,RUPERT 1,ONE VOICE PLAYER,3 VOICE PLAYER,BROKEN MELODY  QP MENU,QP COM.1526,QP EPSON/GEMINI,6510 SIMULATOR,MAPPIN OP$"A" 7906 (OP$,1)"0" (OP$,1)"9" 300: TRY AGAINKFLAG$"ID": 840w *** HEX OPERAND, ABSOLUTE ADDRESS ***OP$(OP$,3) L30 40: OC$N$(L) OCL: 560& L: 3000 (OP$)2 300: L1 (OP$):X$(O255 3004 L1 (OP$):X$(OP$,L,1):(X$)48 (X$)57 420HOCOC29: 1420u *** HEX OPERAND, IMMEDIATE ADDRESS ***OP$(OP$,2) L41 71: OC$N$(L) OCL:720 L: 300 (OP$)4 300  L1 (OP$):X$((OB$,1)"1" N1 (OD$)0 Z1 3390#B1: 3390: *** BRK ***@"C0: 3390: *** CLC ***],D0: 3390: *** CLD ***z6I0: 3390: *** CLI ***@V0: 3390: *** CLV ***JOH$XH$: 1030:XD(OD$): *** DEX **TXDXD1: XD0**OD$(XD): 920:XH$OH$: 1190:XB$OB$XDXD1: XD255 XD0& 1630QOH$YH$: 1030:YD(OD$): *** INY ***mYDYD1: YD255 YD0x 1670C((AB$,1)):AB$Z$(AB$,7): *** LSR *** 1520 3390: *** NOP,PHA,PHP $AH$: 1030:TMP(OD$): *** TAX ***!b 3410: 3390A!lYH$AH$:YB$AB$:OP$AH$: 1030:TMP(OD$): *** TAY ***S!v 3410: 3390!XH$"00":XB$"00000000": 3410: 3390: *** TSX ***!AH$XH$:AB$XB$: 1520: *** TXA ***! 3390: *** TXS ** NR 1850,1860,1870,1880,1900,1920,1930,1940,1950,1950T OC 1970,2100,2170,2250,2320,2390,2450,2550,2650,2750,2810 OC 1970,2350,3250,1780,1780,1780,3200,1780,1780,1780NROC10: NR 1780,1780,3250,2250,2320,3260,2390,3290,1780,1780 )"1" N1 (OD$)0 Z1 3390B1: 3390: *** BRK ***9"C0: 3390: *** CLC ***V,D0: 3390: *** CLD ***s6I0: 3390: *** CLI ***@V0: 3390: *** CLV ***JOH$XH$: 1030:XD(OD$): *** DEX **TXDXD1: XD0 XD2 OD$(XD): 920:XH$OH$: 1190:XB$OB$XDXD1: XD255 XD0 1630JOH$YH$: 1030:YD(OD$): *** INY ***fYDYD1: YD255 YD0q 1670C((AB$,1)):AB$Z$(AB$,7): *** LSR *** 1520 3390: *** NOP,PHA,PHP,PLA AN 1030:TMP(OD$): *** TAX *** b 3410: 3390:!lYH$AH$:YB$AB$:OP$AH$: 1030:TMP(OD$): *** TAY ***L!v 3410: 3390!XH$"00":XB$"00000000": 3410: 3390: *** TSX ***!AH$XH$:AB$XB$: 1520: *** TXA ***! 3390: *** TXS ***!A20:AH$OH$" 1190:AB$OB$"N0: AD127 N1#Z0: AD0 Z1# V0Q# (TMP$,1)(PLUS$,1) (TMP$,1)(AB$,1) V1r# OD$AD$: 1030:AH$OH$: 280#*C1:ADAD256:#4 380: *** AND ***#> L1 8:BIT$(L)"0": L#H L1 OP$,L,1): X$Z$ X$"F" 300' X$"9" X$"A" 300/ L[OH$OP$: 1030:OP$OD$:OP$(((OP$)))oOCOC40: 1430  *** ACCUMULATOR ADDRESSING ***OP$"A"  L72 75: OC$N$(L) OCL71: 820* L: 3004 OC 1510* DECIMAL-TO-HEXADECIMAL CONVERSION ***, L1 4:HEX$(L)"": LJ L1 5:T$(OD$,L): L\NR(OD$):X4TMPNR:NR(NR16):TMPTMPNR16 TMP10 HEX$(X)((TMP),1): 980HEX$(X)(TMP10("A")) NR0 XX1: 950 (NR):. *** BINARY-TO-DECIMAL CONVERSION ***?8 L8 1 1:B$(L)(OB$,L,1): LmB L1 8:BIT(L)(B$(L)): L:OD0:NR256L L1 8:NRNR2:ODODBIT(L)NR: LVOD$(OD):` *** DECIMAL-TO-BINARY CONVERSION ***jOD(OP$):(OH$,L,1) L: HEX$(2)"" HEX$(2)HEX$(1):HEX$(1)Z$K L1 16: HEX$(1)H$(L) BIT$(1)B$(L)~ L: L1 16: HEX$(2)H$(L) BIT$(2)B$(L) L:OB$BIT$(1)BIT$(2):: *** BINARY-TO-HEX CONVERSION *** L1 8:BIT$(L)(1)HEX$(2):< *** ON/GOTO DATA ***@F OC 1510,1560,1570,1580,1590,1600,1610,1650,1690,1730PNROC10: NR 1760,1780,1780,1780,1780,1780,1790,1810,1830,1840dNRNR10: NR 1850,1860,1870,1880,1900,1920,1930,1940,1950,1840xNRNR10:NRNR10: NR 2450,2550,2650,3320,2750,3340,3360,2810,1780,1780;NRNR10: NR 1780,3390f *** IMPLIED-ADDRESS OP-CODE ROUTINESC((AB$,1)):AB$(AB$,2)Z$: *** ASL ***OB$AB$: 1270:AH$OH$:OP$OH$: 1030:N0:Z0 (OB$,155^OD$(XD):920:XH$OH$: 1190:XB$OB$hTMPXD: 3410: 280CrOH$YH$: 1030:YD(OD$): *** DEY ***_|YDYD1: YD0 YD255OD$(YD): 920:YH$OH$: 1190:YB$OB$TMPYD: 3410: 280OH$XH$: 1030:XD(OD$): *** INX ***D PLP *** 3340: *** ROL ***  3360: *** ROR ***? &N0:V0:B0:D0:I0:Z0:C0: 280 *** RTI ***Y 0T 3390: *** RTS ***v :C1: 3390: *** SEC *** DD1: 3390; *** SED *** NI1: 3390: *** SEI *** XXH$AH$:XB$AB$:OP$AH$:H$YH$:AB$YB$: 1520: *** TYA ***" *** ABSOLUTE-ADDRESS OPERANDS ***4" D 2950: *** ADC ***K"OP(OP$):TMP$AB$`" 1130:PLUS$OB$"OH$AH$: 1030:AD$OD$:AD(AD$):TMPAD"ADADOPC:C0: AD255 2090"AD$(AD):OD$AD$:9 8: B1$(L)"1" B2$(L)"1" BIT$(L)"1"#R LB$\AB$BIT$(1)BIT$(2)BIT$(3)BIT$(4)BIT$(5)BIT$(6)BIT$(7)BIT$(8)]$fOB$AB$: 1270:AH$OH$$p 1030:TMP(OD$):3410:: 280$zOH$AH$: 1030:AD$OD$:AD(AD$):OP(OP$): *** CMP ***$Z0,1760,1790,1810)> *** DECIMAL OPERAND, IMMEDIATE ADDRESS **BH (OP$)65535 300\ L1 (OP$):X$(OP$,L,1): (X$)48 (X$)57 300f L41 71: OC$N$(L) OCL: 890p L: 300zOP$(((OP$)))OCOC40: 1430 **OH$HEX$(1)HEX$(2)HEX$(3)HEX$(4)% (OH$)1 OH$Z$OH$+[ *** HEXADECIMAL-TO-DECIMAL CONVERSION ***NR0: L1 (OH$):HEX$(L)(OH$,L,1) HEX$(L)"9" NRNR16(HEX$(L)): 1060NRNR16(HEX$(L))("A")10$ L:OD$ L8 1 1:TMPOD2:NRTMP(TMP)$t NR0 BT$(L)Z$: 11603~BT$(L)"1"EOD(TMP): LOB$BT$(1)BT$(2)BT$(3)BT$(4)BT$(5)BT$(6)BT$(7)BT$(8): *** HEX-TO-BINARY CONVERSION ***HEX$(1)"":HEX$(2)"": L1 (OH$):HEX$(L) OB$,L,1): L3BIT$BIT$(1)BIT$(2)BIT$(3)BIT$(4)BIT$(5)BIT$(6)BIT$(7)BIT$(8)^ T1$(BIT$,4):T2$(BIT$,4): L1 16} T1$B$(L) HEX$(1)H$(L) L: L1 16: T2$B$(L) HEX$(2)H$(L)( L: HEX$(1)"" HEX$(1)Z$2OH$HEX$( 280/ 1030:AD(OD$): *** BIT ***0 1130:N((OB$,1)):V((OB$,2,1))0 400:Z1: L1 8;0 B1$(L)"1" B2$"1" Z0J0 L: 3390U0 21700 OP(OP$):OPOP1: OP0 N: *** DEC ***0 OP0 Z10 33900 OP(OP$) 030:N0:Z01 (OB$,1)"1" N11 (OD$)0 Z11 33902 C1 J$"1": *** ROR ***"2% C0 J$Z$D2* C((AB$,1)):AB$J$(AB$,7)O2+ 335024 *** PRINT LINE SPACE & GET ANOTHER LINE ***2> : 2802H *** SET Z AND N FLAGS  * - TOWERS OF HANOI FOR COMMODORE 64@ - DANIEL MILLERW - 2815 34 STREETo( - ASTORIA, QUEENS2 - NEW YORK, NEW YORK 11103< - SEPTEMBER 1, 1983F ********************************P2150 Z53281,1:ZZ1:CL$;(DO$,2); ,1427 V8,93:V9,133:V6,93:V7,124:V4,93:V5,115\ V2,93:V3,106:V0,93:V1,97y YN$"Y" N28NUM:200 ZZ0 350 (DO$,22);8);NUM$;: NUM:N28NUM:SP0: NUM8 270 NUM2 NUM8 (DO$,22);5);SP$;:190 N: ADOP Z1$N0: OPAD N1 %C0: ADOP ADOP C1% 3390Q%OH$XH$: 1030:XD$OD$:XD(XD$):OP(OP$): *** CPX ***g%Z0: XDOP Z1}%N0: OPXD N1%C0: XDOP XDOP C1% 3380% OH$YH$: 1030:YD$OD$:YDL)"1" BIT$(L)"1"& L: 2140' D1 2480: *** LDA ***-' OD$OP$: 920:AH$OH$: 1190:AB$OB$I' TMP(OP$): 3410: 280l' FLAG$"AD" (OP$)99 300' FLAG$"AD" OD$OP$: 920:AH$OH$: 2530' (OP$)1 OP$Z$OP$' AHOP$: 920:XH$OH$: 2630(( (OP$)1 OP$Z$OP$ )2 XH$OP$:OH$XH$: 2630')< OD$OP$: 920:XH$OH$:)F 1190:XB$OB$W)P TMP(OP$): 3410: 2570v)Z D1 2680: *** LDX ***)d OD$OP$: 920:YH$OH$: 1190:YB$OB$)n TMP(OP$): 3410: 280$(L)"1" B2$(L)"1" BIT$(L)"1" + L:AB$"": L1 8:AB$AB$BIT$(L): L%+ OB$AB$: 1270:AH$OH$H+ 1030:TMP(OD$):3410: 3390e+ D 3060: *** SBC ***|+ OP(OP$):TMP$AB$+ 1130:MI$OB$+ OH$AH$: 1030:AD$OD$:AD(AD$):TMP 280,| *** BCD ADDITION ROUTINE ***, FLAG$"AD" 1980- (AH$,1)"9" (AH$,1)"9" 3030-- AD(AH$)J- OP(OP$):ADADOPC:C0g- 1030:TMP(OD$): 3410|- AD99 3040- AH$(AD): (AH$)1 AH$Z$AH$- OH$AH$: 119.& 3010.0 OH$AH$: 1030:AD$OD$:AD(AD$): 3090.: C0:AD100AD:$/D *** IMMEDIATE-ADDRESS ROUTINES ***K/N OD$OP$: 920: 1190: *** ASL ***m/X C((OB$,1)):OB$(OB$,2)Z$/b 1270: 1030:X(OD$):N0: X0 N1/l Z0: X0 Z1/v:OPOP1: OP0 N1: *** INC ***0 OPZ Z10 33901 OD$OP$: 920: 1190/1 C((OB$,1)):OB$Z$(OB$,7): 3170P1 C1 J$"1": *** ROL ***c1 C0 J$"0"1 C((AB$,1)):AB$(AB$,7)J$1 OB$AB$: 1270:AH$OH$:OP$OH$: 1;***2R N0: TMP127 N12\ Z0: TMP0 Z12f 33901 OD$OP$: 920: 1190/1 C((OB$,1)):OB$Z$(OB$,7): 3170P1 C1 J$"1": *** ROL ***c1 C0 J$"0"1 C((AB$,1)):AB$(AB$,7)J$1 OB$AB$: 1270:AH$OH$:OP$OH$: 111);HDG$;E d55587,10:1315,49:55595,10:1323,50:55603,10:1331,51t n (DO$,20);5);A$(1);(DO$,9);11);A$(3); x(DO$,9);19);A$(3);(DO$,9);27);A$(3) - PLACE SPRITES ON TOWER #1 V14,93:V15,160:V12,93:V13,151:V10,93:V11UM8 YN$"Y" 270 N4N2& X1 N4; SPSP(2(N41))K N4N41: X^ V21,(255SP) ZZ0: TM1 250: TM:(DO$,22);5);SP$; T1$"":T2$"":T3$"":N3N21 " X1 NUM:T1$T1$T4$(X):T2$T2$T5$(X):T3$T3$T6$(X): X , YN(YD$):OP(OP$): *** CPY ***% Z0: YDOP Z1&$ N0: OPYD N1-&. C0: YDOP YDOP C18&L 3380P&V 380: *** EOR ***m&` L1 8:BIT$(L)Z$: L&j L1 8: B1$(L)"1" B2$(L)"1" BIT$(L)"0": 2440&t B1$(L)"1" B2$($OP$:OH$AH$: 2530' OD$OP$: 920:AH$OH$( 1190:AB$OB$( TMP(OP$): 3410: 2470=( D1 2580: *** LDX ***f( OD$OP$: 920:XH$OH$: 1190:XB$OB$( TMP(OP$): 3410: 280( FLAG$"AD" (OP$)99 300( FLAG$"AD" OD$)x FLAG$"AD" (OP$)99 300* FLAG$"AD" OD$OP$: 920:YH$OH$: 2730+* (OP$)1 OP$Z$OP$F* YH$OP$:OH$YH$: 2730`* OD$OP$: 920:XH$OH$s* 1190:YB$OB$* TMP(OP$): 3410: 2670* 380: *** ORA **** L1 8: B1AD+" ADADOP: C0 ADAD1+, AD0 AD256AD:C0,6 AD$(AD):OD$AD$: 920:AH$OH$*,@ 1190:AB$OB$A,J N0: AD127 N1V,T Z0: AD0 Z1z,^ V0: (TMP$,1)(MI$,1) 2930,h (AB$,1)(TMP$,1) V1,r OD$AD$: 1030:AH$OH$: 0:AB$OB$: 280- OH$AH$: 1030:AD$OD$:AD(AD$): 2980. C1:ADAD100:). *** BCD SUBTRACTION ROUTINE ***B. FLAG$"AD" 2820k. (AH$,1)"9" (AH$,1)"9" 3120. AD(AH$):OP(OP$):ADADOP: C0 ADAD1. AD0 3130 1,SP(2))SQ% (TWR$(1)) 1050,1060,1070#X193:10804$X1157:1080?.X1222`8 (TWR$(2)) 1090,1100,1110pBX293:1120LX2157:1120VX2222` - MOVE SPRITEj SQ%1 1140,1150,1160,1170,1180,1190,1200,1210tSP0:SQ1: XX: VSQ,55: XX' YY55 LOC(2): VSP,X2: VSQ,YY: YY:1290Y YYLOC(1) 55 1: VSP,X1: VSQ,YY: YY XXX1 X2 1: VSP,XX: VSQ,55: XX YY55 LOC(2):VSP,X2:VSQ,YY: YY MVMV1:(DO$,24);17);MV$RV$B2$(MV TM1 500: TM: YN$"Y" 1420d TM1 1000: TM?n(DO$,24);7);SP$;(DO$,24);9);EN$;\x RT$: RT$(13) 1400r V21,0: CL$;:SP0:MV0:MW1:1990YN$"":ZA2:(DO$,24);7);SP$;BI$"": X1 8:BI$(X)"0": X MV 21: XC2C21*RI%C2NUM1: NUM1 1570,1580,1590,1600,1610,1620,1630>"RI%RI%4:1640R,RI%RI%2:1640\61640p@RI%RI%2:1640JRI%RI%4:1640TRI%RI%6:1640^RI%(RI%8)h X1 8: R1%(1,X)RI% TWR$(1)"1":167$"Y" 1430 6 X1 NUM:Y2X1: X] @NUM$RV$G2$(NUM)RO$SLV$(1)RV$G2$(Y)SLV$(2):Y0Y J(DO$,22);6);NUM$;: TM1 2000: TM T TM1 250: TM:(DO$,22);5);SP$; ^(DO$,22);6);F9$;" ";24);T9$;" "; h(DO$,22);6);2 480 TWR$(2): TWR$(2)"" 460K TWR$(2)"1" TWR$(2)"3" TWR$(2)"":460g RV$RED$TWR$(2)RO$; TWR$(1)TWR$(2) 510ER$RV$RED$" INVALID ENTRIES"RO$:610640X1:530: (TWR$(X)) 540,560,580 (T1$ 650,680,710# X1 NUM: (T1$,X,1)"1" 670; X:LOC(1)160:740bLOC(1)T1(N2X):T4$(N2X)"0":740 X1 NUM: (T2$,X,1)"1" 700 X:LOC(1)160:740LOC(1)T2(N2X):T5$(N2X)"0":740 X1 NUM: (T3$,X,1)"1" 730 (T2$,X,1)"1" 810(  X:LOC(2)160:T5$(N2X1)"1":850S*LOC(2)T2(N2X1):T5$(N2X1)"1":850y4 X1 NUM: (T3$,X,1)"1" 840> X:LOC(2)160:T6$(N2X1)"1":850HLOC(2)T3(N2X1):T6$(N2X1)"1"RLCLOC(2):880:SP(2)SP\T1 SP8: (TWR$(1)) 970,980,9908SQ%R1%(1,SP(1)):R1%(1,SP(1))8:1000bSQ%R2%(1,SP(1)):R2%(1,SP(1))8:1000SQ%R3%(1,SP(1)):R3%(1,SP(1))8 (TWR$(2)) 1010,1020,1030R1%(1,SP(2))SQ%:1040R2%(1,SP(2))SQ%:1040R3%("3":350 X8 1 1:C4C41: (BI$,X,1)"0" XC6C4R X8C4 1 1:C6C61: (BI$,X,1)"0"C5C51: XRJ%C6NUM1: NUM1 1780,1790,1800,1810,1820,1830,1840RJ%RJ%4:1850RJ%RJ%2:18501850RJ%RJ%2:1851220~SP2:SQ3:1220SP4:SQ5:1220%SP6:SQ7:12209SP8:SQ9:1220OSP10:SQ11:1220eSP12:SQ13:1220uSP14:SQ15 (TWR$(1))(TWR$(2)) 1260 YYLOC(1) 55 1: VSP,X1: VSQ,YY: YY XXX1 X2: VSP,)RO$; ZA2 MWMW1:1440: - COMPUTER'S NEXT MOVE9350: - PLAYER'S NEXT MOVES( - COMPUTER SOLUTIONw2TWR$(1)"":(DO$,24);7);CMP$;< YN$: YN$"" 1340F YN$"Y" 1370P YN$"N" YN$"":1330Z RV$BL$" "YN$RO$;:Y0 1380CT(0)C20:C30:C40:C50:C60:ZA2DECMWQ Y0 8: (2Y)DEC YY1:BI$(Y)"1":1510dBI$(Y)"0": YDECDEC2Y: DEC0 15301490 Y7 0 1:BI$BI$BI$(Y): Y X8 1 1: (BI$,X,1)"0" C2C 0 r X: X1 8: R2%(1,X)RI% TWR$(1)"2":1670!| X:TWR$(1)"3"0L$TWR$(1)b X1 8: (BI$,X,1)"1" C3C31: X:1700j X{ C31 1740 (T1$)0 TWR$(2)"1":350 (T2$)0 TWR$(2)"2":350 (T3$)0 TWR$(2)F9$;" ";CR$;$ rNUM$"":SLV$(1)"":SLV$(2)""4 | ZA2 420T  TWR$(1): TWR$(1)"" 390u  TWR$(1)"" 1330: - 'F1'  (TWR$(1)"1" TWR$(1)"3") TWR$(1)"":390  RV$RED$TWR$(1)RO$; 520 (DO$,22);34);" ";CR$;  ZA)0 600&0 (T2$)0 600:.D (T3$)0 6004NhXER$RV$RED$"TOWER # "TWR$(X)" IS EMPTY"RO$b Y1 5:(DO$,24);12)ER$;: TM1 250: TMl(DO$,24);12);(SP$,18);: TM1 250v TM,Y:ER$"":350 (TWR$(1)) X:LOC(1)160:740'LOC(1)T3(N2X):T6$(N2X)"0"CLCLOC(1):880:SP(1)SPa (TWR$(2)) 760,790,820 X1 NUM: (T1$,X,1)"1" 780 X:LOC(2)160:T4$(N2X1)"1":850 LOC(2)T1(N2X1):T4$(N2X1)"1":850 X1 NUM:$"":T2$"":T3$"":N5N21If XN5 8:T1$T1$T4$(X):T2$T2$T5$(X):T3$T3$T6$(X): X:960]p LC97 SP1:rz LC106 SP2: LC115 SP3: LC124 SP4: LC133 SP5: LC142 SP6: LC151 SP7: LC160 0RJ%RJ%4:1850&RJ%RJ%6:18500RJ%(RJ%8):: X1 8: R1%(1,X)RJ% TX$"1":1880jD X: X1 8: R2%(1,X)RJ% TX$"2":1880zN X:TX$"3"XM$TX$bLM$L$M$l (C52)(C52) C50 TWR$(2)TX$:1970v LM$"12"  V21,255:V23,255:V29,255" 2040,192:2041,193:2042,194:2043,195:2044,196D 2045,197:2046,198:2047,199{ V39,3:V40,15:V41,13:V42,9:V43,14:V44,5  V45,8:V46,0 :N012288: X1 8: N0 62: Q: N0N,Q: N N0N %:Y%Y%1: X"H X1 8:R2%(1,X)9:R3%(1,X)9: X"R YN$"Y" 140"\90="f - BUILD CHARACTER GRAPHICS{"pBLK$(144):RED$(28):YEL$(158):B2LU$(31):CY$(159)"zG1REY$"":G2REY$"": - C=(4); C=(5)"RV$(18):RO$(146)"C