KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK ?dROMIPS HOY! UTO NSERT IS AN ROUTINE THAT LETS YOU INSERT LINES BETWEEN PROGRAM LINES. WITH ANY CHARACTER. RE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT ~~33 ``  Ƈ0yxxxxxx?xxxxx?xx?K pK K x?x?xx?xx?xx?xxఘ333? ``K DĎb@?K ?K !qq Dl8K  Ƈ0yxxxxxx?xxxxx?xx? ???eg DD((DDDD K xx~xx?xx?xxxx?xxxx?xxxxK  8!!C?AAAAIRRIINJ#$$'$$OBBBBB8lD D|cL@INDOW ILL FROM IPS HOY! IS A -64 PROGRAM THAT FILLS A BLOCK OR WINDOW OF ANY SIZE ON THE SCREEN WITH ANY CHARACTER. RE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATeROM IPS HOY! HE ERMINATOR RE- DEFINES THE -128'S KEY AS AN AUTOMATIC LINE TERMINATOR. WITH ANY CHARACTER. RE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATcROMIPS HOY! UTO NSERT IS AN ROUTINE THT LETS YOU INSERT LINES BETWEEN PROGRAM LINES. WITH ANY CHARACTER. RE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT |x???????? ???????xxxxxxxχ? ? 㒒OBBB? ``??????8xx"6*"""HIHHH1"" ```8``|8a`????????8I#IIII$$G8$$8`!! ""|q# CbbHHO <FEDpp C!!! ??{3? ?????xxx ?><  " "000qb  $44,,yAAqA??_ 0ఘఘ`aa`aaa̘```8 !! ?aaa```aa`8????????< <<yAAqAyRR228DDDD8𠐐8I1 @|>|>><||? ??? ????? qIIyQI ????????8,$$, qIIqQ$$D0$y? !!!ఘ``` $H DE($8@`8??HH 4,192,109,6,192,201,41,144,3= 76,72,178,24,173,5,192,109,7` 192,201,26,176,242,173,136,2 133,254,173,4,192,133,253,173,7 192,141,8,192,56,169,40,237,6 192,141,9,192,174,5,192,224,0 240,13,169,40,141,10,192,32 147,1 $ *** AUTO LINE TERMINATOR ***C"ML ADDRESS";SA:EASA79aISA13:H%I256:L%I255~JSAEA:A:J,A:VVA:V9899"DATA ERROR":SA2,L%:SA7,H%:SA"AFTER RESTORE, ENTER 'SYS"SA"'  120,169,101,141,020,  *** AUTO INSERT 128 ***B"ML ADDRESS";A:BA27:CA11]JAB:D:VVD:J,D:}V2744"DATA ERROR!":L%C255:H%C256:A1,L%:A6,H%:A6,"POKE250,0"(13):8,"POKE250,1"(13)"AFTER RESET, ENTER 'SYS"A"'": \''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''AAAAaaaAaaaAAAAAAAAAAaaAAAAAAAAAAAAAAAAAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarrr'''''''''''''''''''''rrrr'''''''''''''''''''''rr ~ ? 92,202,224,0,208,248,1698  1,141,10,192,174,6,192,32,162[  192,32,147,192,202,224,0,208  245,206,8,192,173,8,192,201,0 " 208,1,96,173,9,192,141,10,192 , 32,147,192,76,105,192,24,165 6 253,109,10,192,133,253,165,254 @ 105,0,13 003,169,250/ 141,021,003,088,096,165,127,208U 008,165,211,201,008,240,005,133{ 250,076,101,250,197,250,240,249 133,250,032,129,146,027,074,000 152,072,160,000,177,224,201,032 240,003,200,208,247,132,236,032 129,146, 169,198,141,002,003,169,077> 141,003,003,096,165,250,208` 003,076,198,077,032,129,146 027,073,007,000,076,198,077,250,032,129,146,027,074,000 152,072,160,000,177,224,201,032 240,003,200,208,247,132,236,032 129,146, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa PcefRSWXHIS IS HOY!'S MACHINE LANGUAGE ENTRY PROGRAM FOR OUR ADVENTUROUS READERS WHO LIKE TO TYPE IN THESE PROGRAMS FROM OUR MAGAZINE. - 58,173,32,170,177,96"":53280,6:53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT-3,254,96,160,0,173,3# J 192,145,253,96T1: MM1: 1360: DEFAULT=INTEGERk KMM1: : NOT A VARIABLE PAD(VN65)2VM ZNXAD: 1400: A0NL: A1NH dNXAD1: 1400: A2NL: A3NH n xNH(NX256) NLNX256NH   KKg027,081,000,169,013,1419 074,003,169,001,133,208,169,032_ 141,041,010,104,168,076,101,250 HOY!'S CHECKSUM PROGRAM FOR MIS- TAKEPROOF TYPING OF -64 PROGRAMS PRINTED IN HOY!. (OR PROGRAMS PUBLISHED FROM AY 1987 ONWARD ONLY!) ,177,96"":53280,6:53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa   >> ?~ >HOY!'S CHECKSUM PROGRAM FOR MIS- TAKEPROOF TYPING OF -128 PROGRAMS PRINTED IN HOY!. (OR PROGRAMS PUBLISHED FROM AY 1987 ONLY! THERWISE USE 128 UG EP.) 80,6:53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATINI-COMP FOR THE -64 IS AN EXPAN- DED VERSION OF THE COMPILER FIRST PRESENTED IN EPTEMBER'S UP- ERT EPORT. EE DOCUMENTATION IN THE OVEMBER HOY! EP.) 80,6:53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATACK ACE FOR THE -64 IS A MULTI- LEVEL ARCADE STYLE GAME IN THE TRADITION OF APPER. ACE AGAINST TIME AS YOU PLACE GROCERIES IN BAGS. OYSTICK IN ORT 2. EP.) 80,6:53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATSLAND UEST FOR THE -64 IS A GRA- PHIC ADVENTURE GAME OF DISCOVERY. XPLORE THE EVEN EAS IN SEARCH OF BURIED TREASURE AND LOCATE YOUR ISLAND HOME. OYSTICK IN ORT 2. 53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT#""10)"WRITTEN REMAINDER 2"L ==================================p COMMODARES PROBLEM #54-3 : WRITTEN REMAINDER SOLUTION BY BOB RISPOLI ================================== A%,B%:Q%A%B%:R%A%""13)"BIRTHDAY PARTY"G ==================================k COMMODARES PROBLEM #54-4 : BIRTHDAY PARTY SOLUTION BY JIM SPEERS ================================== dA01:B01:C01:D01:E` *** MINI MON ***8a"ENTER MEMORY LOCATIONS:"lb"FROM...";F:"TO.....";T:F0T216FT60001c"PRESS TO PAUSE <_> TO EXIT"dKFT6:K$((K),2):K$6)"->";:JKK5:A(J)eR$".":A31A96R$(A) fT$T$R$:A$( (147);- GET A$:IF A$="" THEN 20M T40000 40011: A: T,AS(_2 40000r7 *** DATA ***< 32,228,255,200,140,33F 208,201,32,208,245,96,2):K$6)"->";:JKK5:A(J)eR$".":A31A96R$(A) fT$T$R$:A$(  MUSICAL COLOR TELETYPEYA$"THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG": 50A$"EEEEE BBBBB UUUUU WWWWW MMMMM 123456789": 50(2 I1(A$):AS((A$,I,1)):ASASAS:" ";: T120:T < 1,AS,1,1: (A$,I,1);: I: Tk8 %:0,3:4,1:T11000:1023T,160:55295T,6::&g"SHORT EXTENDED BACKGROUND COLOR"BBBBB UUUUU WWWWW MMMMM 123456789": 50(2 I1(A$):AS((A$,I,1)):ASASAS:" ";: T120:T < 1,AS,1,1: (A$,I,1);: I: T%Q%B%:A%"/"B%"="Q%"REMAINDER"R%"A"/"B" ="(C)", REMAINDER"((C(C))B.1)| 2"ANOTHER DIVISION PROBLEM (Y/N)";A$ < A$"Y" 10K: CSCSK: - CS4012 "DATA ERROR":  2" ENTER FILENAME";PN$: : FB251: FC252: FB,0:  014 n((B1)(C1))((B0)(C0))220: PREMISE #1X x((A1)(B0))220: PREMISE #2| ((D0)(E0))220: PREMISE #3 ((D1)(C0))((C1)(D0))220: PREMISE #4 ((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT, (A),2):(A$)3600100 gA$"0"A$:(A$)360007D h(653)160008\ i(197)57198,0:z jA$":";::" "T$:T$"": ((D1)(C0))((C1)(D0))220: PREMISE #4 ((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT, l9 53281,2:3280,0:T11000:1023T,160:55295T,6:h"SHORT EXTENDED BACKGROUND COLOR"BBBB UUUUU WWWWW MMMMM 123456789": 50(2 I1(A$):AS((A$,I,1)):ASASAS:" ";: T120:T < 1,AS,1,1: (A$,I,1);: I: T1 50: T::00100 gA$"0"A$:(A$)360007D h(653)160008\ i(197)57198,0:z jA$":";::" "T$:T$"": ((D1)(C0))((C1)(D0))220: PREMISE #4 ((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT,  SA828. ISASA67:A:I,A:CKCKA:OCK9282"ERROR IN DATA":w"USE SYS"SA",ADDRESS TO ACTIVATE"d 32,115,0,32,158,173n 32,155,188,165,101,133x 253,165,100,133,254,173 24,208,41,14,201,4 208,3,169,208,44,1 FAST MODE BY STEVE CODY9FAST828:SLOWFAST14b XFAST FAST13:A:X,A:CKCKA:(CK1707"DATA ERROR!!":2 173,17,208,41,239,141,17,208,169,1,141,48,208,96<XSLOW SLOW13:A:X,A:CKCKA: FCK3158"DATA ERROR!!^"; C"CARL, ";" D"DUKE, ";4 E"EMIL, ";G (20)(20)"."V E,D,C,B,A SA: LN(FB)(FC)256: TDLN1 Z "ENDS AT" T: 1LE (VNC: C1(M): MM1: VN=VAR NAME 2 C136 VT2: C1,: : '$ STRING VAR < C137 +"OU MUST LOAD ODE FIRST...";D13000:L TI$"000000"\X11000:m"SLOW =";TI~(TI$"000000"2828<X11000:F842:"FAST =";TI DDLOGO% LANK IN(27);(82);A$:A$"END OF DATA"(27);(78):s(110::,((80(A$))2),12,A$:130:T1500:T:30}2 "A"< "PRESENTATION"F "OF"P "TIPS AHOY!"Z "END OF DATA"d CLOSE CURTAINn X8661:52684,X,35:X: x/ OPEN CURTAIN)X686:52684,X,35:X:,17,208,96T Z"SYS"FAST"FOR FAST MODE"u d"SYS" SLOW"FOR SLOW MODE":2,230,254,202,208,242 165,1,9,7,133,1 88,96((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT, 69 216,133,252,120,165,15 41,251,133,1,160,0Q 132,251,162,8,177,251o 145,253,200,208,249,230 252,230,254,202,208,242 165,1,9,7,133,1 88,96((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT, {":6 P 169,0,141,48,208,173,17,208,9,16,141,17,208,96T Z"SYS"FAST"FOR FAST MODE"u d"SYS" SLOW"FOR SLOW MODE":2,230,254,202,208,242 165,1,9,7,133,1 88,96((E1)((A0)(D0)))220: PREMISE #5 A"ADAM, "; B"BERT, ] A$"PROGRAM NAME"4"LOAD A$,8":"RUN"Y631,19:632,13:633,13:198,3:A$:130:T1500:T:30}2 "A"< "PRESENTATION"F "OF"P "TIPS AHOY!"Z "END OF DATA"d CLOSE CURTAINn X8661:52684,X,35:X: x &d ** WINDOW FILL FOR THE C-64 **InA4915249321:B:CCB:A,B:cxC20246"ERROR.":i 76,11,192,32,0,0,10,10,0,0,0 173,4,192,201,40,176,28,173 5,192,201,25,176,21,173,6,192 240,16,173,7,192,240,11,24,173 2, 4, 32,201,255, 32,216,2056"( 32, 80, 20, 32,210,255,230,250["0165,250,201, 80,144,239,169, 13"8 32,210,255,169, 0,133,250,230"@251,165,251,201, 25,144,222,169"H 4, 32,195,255, 32,204,255, 96"P 72, 41, 64,141,109, 20,104, 41#255, 32,204,255, 96, 32, 3&)136,164, 23,208,115,138,166, 22K)224, 37,176,108,140, 0,255, 32p)204,205, 96,169, 0,141, 0,255)169, 2,168,162, 8, 32,186,255)169, 0,170, 32,104,255,165,250)162,248,160, 22, 32,189,255, 32*353280,0:53281,0:""10)"JOYSTICK INITIALS"\ ================================== COMMODARES PROBLEM #54-1 : JOYSTICK INITIALS SOLUTION BY KEITH KUSHNER ===== PORT 1 : C-64 ==============< 1 ,254, 32,210&255, 32,238, 19, 32,216,205, 32B&210,255,165,253, 24,105, 1,133g&253,144, 2,230,254,165,254,205& 19, 3,144,232,165,253,205, 18&  3,208,225,169, 2, 32,195,255&( 32,204,255, 96,162, 1,108, 0&0 3, 32,134,  0,224, 0 -208, 31,201, 46,176, 23,233, 382-168,185,196, 22,133, 36,169, 22W-133, 37,169, 88, 24,101, 36,144|- 2,230, 37,133, 36, 24, 76,205- 81,201, 13,176,249,201, 12,240- 11,169, 77,133, 36,169, 22,133- 37, 76,205, 81, * ==================================N COMMODARES PROBLEM #54-2 :g FILE LOCATOR| SOLUTION BY LARRY LOUKS & JIM BORDEN ================================== 162,1,32,198,255,32,228,255,230,251,208,4,230 X 63,201, 32,176, 2, 9, 64, 729#`173,109, 20,201, 64,208, 4,104^#h 9,128, 96,104, 96, 0, 32,134#p 3, 32,150,175,165,100,133,251#x165,101,133,252,165, 99,133,250#165,102,164,103, 32,224,135, 32#128, 3,208, 3, 76, 44, 21,  192,255, 96,201, 13,176, 35,201)* 12,240, 32, 32, 86,121, 32, 12N*175,162, 0,142, 0,255,162, 18s* 32,204,205,152,232, 32,204,205* 32,216,205,168,169, 0, 32, 3*175, 24, 96, 32, 86,121, 32, 12*175,164, 23,208, 19,166, 22,224520I,A31(A0):AQ(Q27)27:P255(56321):QQ(P8)(P4)} (P16)10:II12(A0)((A0)(I0)):(I3)10: 198,0A$(C) B$"HELLO" C$A$ B$B$A$ A$ B$;   --- COMMON ROUTINES --- LC(M): MM1: C,3, 32,150,175,165 '8 99,133,250,160, 0,169,100,162E'@ 1, 32,116,255,153,248, 22,200j'H198, 99,208,241,165,102,164,103'P 32,224,135,169, 0,141,176, 10'X 32,134, 3,240, 16, 32,128, 3'` 32,150,175, 32, 12,175,132,253'h133,254, 169, 0, 32,210.255,169, 82,133, 36,169, 22,1335. 37, 76,205, 81, 0, 5, 10, 15Z. 21, 26, 31,201, 46,176, 16,233. 38,168,185,241, 22,168,185,227. 22, 72,136,185,227, 22, 72, 24. 76,169, 75, 40, 19,109, 20, 48. 21, 73, 19,252,240,6,165/  144,41,64,240,239,76,204,255t "- ALPHA & OMEGA -64 OR 128-":SA2816: (0)(1) SA49152 (YSA SA24: K: Y,K: CSCSK: - CS4012 "DATA ERROR":  2" ENTER FILENAME";PN$: : FB251: FC252: FB,0: 32$150,175, 32, 12,175,132,253,133<$254, 32,128, 3,208, 3, 76, 44a$ 21, 32,150,175, 32, 12,175,140$ 18, 3,141, 19, 3,165,254,205$ 19, 3,144, 12,240, 3, 76, 69$ 19,165,253,205, 18, 3,176,246$160, 0,165,250, 24,105,+ 37,176, 13,140, 0,255, 32,218,+205,168,169, 0, 32, 3,175, 96Q+  76, 69, 19,133, 2,160, 88,169v+( 22, 32,226, 67,144, 8,105,166+0162, 0, 24, 76, 33, 67,160, 77+8169, 22, 32,226, 67,144, 8,105+@138,162,255, 24, 76, 33, 6* ==================================N COMMODARES PROBLEM #54-3 :l WRITTEN REMAINDER SOLUTION BY DR. DAVE MARQUIS ================================== "WHAT IS THE NUMBER TO BE DIVIDED";A "WHA76,112, 21,238,176, 10#(p 32,187, 21,162, 2, 32,198,255H(x173,176, 10,240, 13, 32,228,255m(133,253, 32,228,255,133,254, 76(144, 21, 32,228,255, 32,228,255( 32,238, 19, 32,228,255, 32,202(205,165,144,240,246,169, 2, 32)195,=, 76, 19, 0, 20,165/ 21, 1, 3, 5, 7, 9, 11, 13 FC,0? < 1,8,2,"0:"PN$: #1,A$,B$: D(A$(0))256(B$(0))S F "STARTS AT" Dz P SA: LN(FB)(FC)256: TDLN1 Z "ENDS AT" T: 1LE (VNC: C1(M): MM1: VN=VAR NAME 2 C136 VT2: C1,: : '$ STRING VAR < C137  4, 72%169,251,162, 1, 32,116,255,153?%248, 22,200,198,250,208,241,104d%133,250,169, 44,153,248, 22,153%250, 22,200,169, 80,153,248, 22%200,200,169, 87,153,248, 22, 32%187, 21,162, 2, 32,201,255,165%253, 32,210,255,1657, 56 ,H165, 2, 76, 33, 67, 86, 80, 69/,P 69,203, 86, 82, 69, 65,196, 0T,X 86, 80, 79, 75,197, 86, 83, 65y,` 86,197, 86, 76, 79, 65,196, 86,h 66, 82, 73, 78,199, 86, 83, 69,p 78,196, 86, 68, 85, 77,208, 86,x 87, 82, 73, 84,197, T IS THE DIVISOR";B CABO (""A"/"B" ="(C)", REMAINDER"((C(C))B.1)| 2"ANOTHER DIVISION PROBLEM (Y/N)";A$ < A$"Y" 10K: CSCSK: - CS4012 "DATA ERROR":  2" ENTER FILENAME";PN$: : FB251: FC252: FB,0: #,160,0,0,65,72,79,89,33,0,0,50048:$$T(A)16:8$ ADDRESS CHECKG$ADEN385Z$BSRBEN390$B256(B40960B49152)B53247395$$ ADDRESS TO HEX$ACAD:A4096:520$A256:520$A16:520$A1:520$%T(A8( A0 A1:"ISLAND QUEST.ML",8,14 49152)LХHH< iLWi#i#i#(<нЮ<<ˍhh )L1L)ܥ) P / ǩ ܍ ܍ ܩ b̍c _ r {ɩ( ­a rL 5  ^ : díTL`o ` )\`--:`0-,,6`0,**:`0*))6`T`0)#b̍c _ rLb̭bc̭ Pt}U}}WUWjYY C ؝ڝ؝ ۽nʝ؝(Ѣcʝ))ʝX̮X̽ʍǍǽʍǽʍǍiԍǠhʙkʙX̭Xк Ǣ q  ˩[ ɭɍʭɍʩZ̮[̠˙`[Z̭ZX̭X м`iʰLLʭU^`ɪ^`^`00:00    /             0-0-0-0-0-0-4$t;+{ ah0`  7Íĭ8Íĭ`ia̩bˍc _U̩@) )`89Tŝ8ŝ@8ŝ8Ɲ8@M̙9(ŝ,7éd8âŝv˙@ 2Ġi ĭv29Td + (147)"LOADING AND CHECKING DATA..."L X 4864 5879 : A: X,AnCKCKA :: CK117816 50("DONE! SYS 4864 TO ACTIVATE.":2"ERROR IN DATA STATEMENTS!!!":169, 35,141, 12, 3,169, 22,141 13, 3,169,126,141, 14, 3 0,132,250, 32-134, 3,240, 15, 32,128, 3, 32R150,175, 32, 12,175,192, 16,176w180,132,250, 32,238, 19,173,176 10,208, 43,169,251,141,185, 2 32,216,205,166,250, 32,119,255200,208, 2,230,252,173, 18, 3  56,233, 1,cc`B B`W̽ʍ.ʍ/_̢ʝ_W`V̽ʍRʍSeV`f8  L|  fL  i L f̭g8 ( L  g`  i( L g`Aԍ ԮU̽ʪǭ 䩞  0Ȣ 0 禍 bˍc _ F^ib`EȭEɠ`EȢ F^i\ d F^i_n`abcX̩Y̮X̽oˍȩdȩ`iȰLY̭YpX̭X`X̭2^̢9     wxy&:Nb0DXl_a`\^]   !     !     !     ! 'f̌gȌe̩B ٍ `ss  ?,169' 22,141, 15, 3,169,203,141, 16L 3,169, 22,141, 17, 3,169,219q 141,252, 2,169, 21,141,253, 2( 96, 32, 3,136,138, 72,165, 220162, 19,160, 0,140, 0,255, 328204,205,165, 23,202, 32,204,205@104, 32,202,205, 96,16141, 18, 3,176, 30 206, 19, 3,173, 19, 3,208,224U 173, 18, 3,208,219, 96,169,251z 166,250, 32,116,255, 32,202,205 200,208, 2,230,252,173, 18, 3  56,233, 1,141, 18, 3,176, 3 206, 19, 3,173, 19, 3,208,222!173, 18ʍԽʍԮU̽/˪ʍԽʍ Aԍ Uп@ԍ `d̅`eiiwi(iii``])ddf ­])drdf í])e eg í])es eg &í]) ``8^X̭^̝9X̭XԩX̮X̽9̪Ϣ8 i/ʮX̽9̪@Ϣ8 ***FFFX̭XЪ*ɍFɩʍ+ɍG**` X ɩg X̭X`ɩ`ɮX̽9̪ύYiɰLY̭YX̽9̪}@ύɰLɩg```X̩j   , !      ..            ! 22222222222222222222((LAY͝>Ν?L ((+(((( ?)ܥ)Н0beƭe70eƩЍbƥ  ܢƝ2pP3h`2, 14,108*H 0, 3,169, 0, 44,169, 1,141OP176, 10, 32,134, 3, 32,150,175tX 32, 12,175,140, 18, 3,141, 19` 3, 32,128, 3, 32,150,175, 32h 12,175,132,253,133,254, 32,128p 3, 32,150,175, 32, 12,175,132x251,133,252,160, , 3,208,217, 96,160, 03!140, 0,255,165,254,162, 18, 32X!204,205,232,165,253, 32,204,205}! 96,169, 0,133,251,141, 0,255!133,250,133,183,162, 18, 32,204!205,232, 32,204,205,169, 4,170!160, 7, 32,186,255, 32,192,255" 1677Ð`8`7i7ð`8`87逍7Ð`8`7i7ð`8`d` D`7ÍOí8ÍPí``jh 6 5 `7Íqí8Írí`g`b 6 bˍc _U r``qA`jˍbˍci 6 _0U r`bˍc = _ U r`bˍc _ r`V Ѝ!  < ة XL7N`|䧆N3LH1fGJP3W>/f.LOADER1:(B$)162"NAME OF PROGRAM TO BOOT:";:1,0:1,P$:1: (P$)162! "d53280,12:53281,11Mi" FLANKSPEED ";~n" MISTAKEPROOF ML ENTRY PROGRAM "s" CREATED BY G. F. WHEAT "x" COPR. 1987, ION INTERNATIONAL INC. "}A5427254296:A,0:/A":#54276,17:54276,16:0#15,8,15:15,A,A$:15:A$:I# GET FOUR DIGIT HEXX#:B$;:T$p#(T$)4380:430#A14:A$(T$,A,1):450:T(A)16380:430#:B(T(1)4096)(T(2)256)(T(3)16)T(4):#A$"@"A$"G"T(A)(A$)5 7 (147)"LOADING AND CHECKING THE DATA...":J49152TB011:A:A0A25540sJB,A:XXA:B:A:AX50(:"ERROR IN DATA LINE:"(64)256(63):2X0:JJ12:J4945620<198,0:49456,0:A$"Y":B$A$:C$"D":D$"DISK":D8:(147)3F  A$(135)" ":620) A$(136)" ":635O A$"@"A$"G"T(B)(A$)55:295u A$"/"A$":"T(B)(A$)48:295 "415:250 'A$""; ,205 1A0320 6A1:B1330 ;220 @B0(20);(20);:AA1 EAA1 J(20);:&:670)'B07:AC(ADB):505:ADBENADSR:410:1956'" ";:BD':ADAD8['B$:B$(136)195p'495:": ";:650 92,204,3,3,1507?208,10,162,131,160,164,169,70,32,210,255,44,1615n169,78,32,210,255,142,2,3,140,3,3,76,111336,193,32,96,165,134,122,132,123,32,115,0,1180170,240,243,162,255,134,58,144,3,76,150,164,1799 32,107,169,32,121,165,173, 54272,4:54273,48:54277,0:54278,249:54296,15HA680699:B:A,B:s169,251,166,253,164,254,32,216,255,96169,0,166,251,164,252,32,213,255,96B$"STARTING ADDRESS IN HEX":430:ADB:SRB480:B0150251,T(4)T(3)16:252,T(5:$A$"/"A$":"T(A)(A$)48:$$T(A)16:8$ ADDRESS CHECKG$ADEN385Z$BSRBEN390$B256(B40960B49152)B53247395$$ ADDRESS TO HEX$ACAD:A4096:520$A256:520$A16:520$A1:520$%T(A"DO YOU WANT AUTOMATIC SAVES (Y/N)";A$::A$"Y"90UP"NO AUTOMATIC SAVES...":150Z49456,1:"DISK OR TAPE (D/T)";C$:C$"D"D1:D$"TAPE"d49457,D:D$D$" DRIVE"::"FILE NUMBER (0-99)";NnN$((N),2):N10N$(48)(N48)(xF$"BAC220 !O LAST LINE'!T" ":TAD((AD256)256)M!YB0A1:TTA%(B):T255TT255S!^k!cA%(A)T375:195!hB0A1:ADB,A%(B):!m:"YOU ARE FINISHED!":535!r BELL AND ERROR MESSAGES!w:"LINE ENTERED INCORRECTLY"::415"|:,169,38,141,2,3,173,1578B"J48,193,240,23,165,161,201,212,176,4,165,160,1748u"T240,13,238,32,208,160,0,32,225,255,208,6,1617"^32,33,193,76,38,192,232,208,242,200,208,239,1893"h32,68,229,169,0,168,174,49,193,32,186,255,1555#r173,50,193,160,2,240,5,169,1215: 79,141,2,3,76,162,164,169,0,133,2,133,1064q 251,133,252,133,254,24,101,20,69,254,230,254,1975 24,101,21,69,254,170,230,254,164,252,185,0,1724 2,133,253,201,34,208,6,165,2,73,255,133,1465!2,201,32,208,4,165,2,2402)T(1)16/B$"ENDING ADDRESS IN HEX":430:ENBA470:B0150h254,T(2)T(1)16:BT(4)1T(3)16B255BB255:254,(254)1253,B: GET HEX LINE495:": ";:A08B01:250BA%(A)T(1)T(0)16:ADA1CA):T9A$(T55):530% A$(T48)+%A$;:ACACAT:B%A$"**SAVE**":585X%1,T,1,A$:680:1d%!ST0w%&400:T8420%+535%0A$"**LOAD**":585%51,T,0,A$:690:1%:ST64195%?405:T8420%D560%I" ":14)A$&KUP"::"FILENAME";F$:F$N$(F$,14):L(F$)W49458,L:J1L:49458J,((F$,J,1)):J:"SAVING DEVICE ** "D$:"STARTING WITH ** "F$:"IS THIS CORRECT (Y/N)";B$:B$"Y"60770,131:771,164:49152: 169,79,32,210,255,162,38,160,1"INPUT A 4 DIGIT HEX VALUE!":415F":"ENDING IS LESS THAN STARTING!":B0:415|":"ADDRESS NOT WITHIN SPECIFIED RANGE!":B0:415":"NOT ZERO PAGE OR ROM!":B0:415""?ERROR IN SAVE":415""?ERROR IN LOAD":415"::"END OF ML ARE2,51,160,193,32,189,255,169,43,1670I#|166,45,164,46,32,216,255,162,1,189,51,193,1520~#168,200,152,201,58,144,2,169,48,157,51,193,1543#201,48,208,3,202,16,234,32,33,193,76,116,1362#164,206,32,208,169,0,170,168,76,219,255,160,1827$1,1 ,8,138,24,101,1125@!253,69,254,170,44,198,254,230,252,164,253,208,2349t!"213,138,41,240,74,74,74,74,24,105,129,141,1327!,44,193,138,41,15,24,105,129,141,45,193,162,1230!60,189,43,193,240,12,157,0,4,173,134,2,1147 "@157,0,216,232,208,239EN340 " ";-A:TAD((AD256)256):" "QA07:TTA%(A):T255TT255WoA%(8)T375:195A07:ADA,A%(A)::ADAD8:195 GET HEX INPUTA$:A$""250A$(20)305A$(133)535 A$(134)560N:A$"":"FILENAME";A$&SA$""590,&X:"TAPE OR DISK?":R&]B$:T1:B$"D"T8:A$"@0:"A$:c&bB$"T"605i&g&lB$"CONTINUE FROM ADDRESS":430:ADB&q475:B0620&v:195&{B$"BEGIN SCAN AT ADDRESS":430:ADB&475:B0635A*  H AHOY! NOV. 1988592ABOOTLANKSPEED 64 UG EP ɠ 128 BUG REP II ACK ACESACK RACE.MLSLAND UESTISLAND QUEST.ML  HORT INHARACTER INAST ODE INEST INC-128 CUR IN-64 HAIN IN INDOW ILL IN TERMINATOR INKEASY80NSERTINSERTINI-OMP-OYSTICK NIT.ILE OCATORRITTEN 1RITTEN 2 AUTO INSERT INLOADERDIR 1K IRTHDAY ARTYINI ONTATIC LEC.TELETYPESHORT EBC 128 HORT 64 HARACTER ET ODEKK EST ԠC-128 CURTAIN-64 HAIN OADINDOW ILL TERMINATOR AUTO INSERT DDLOGO% LANK INKK UG EP IN BUG REP IN INI-OMP IN ACK ACE IN SLAND UEST INEASY80 INNSERT INOYSTICK INKKILE OC INRITTEN 1 INRITTEN 2 INIRTHDAY IN INI ON IN TATIC IN TELETYPE IN SHORT EBC INKK6 (147)"LOADING AND CHECKING THE DATA...":J4864SB011:A:A0A25540rJB,A:XXA:B:A:AX50(:"ERROR IN DATA LINE:"(66)256(65):2X0:JJ12:J521320<208,0:5213,0:A$"Y":B$A$:C$"D":D$"DISK":D8:(147)0F"5H% A0 A1:"SACK RACE.ML",8,11 4940864SB011:A:A0A25540rJB,A:XXA:B:A:AX50(:"ERROR IN DATA LINE:"(66)256(65):2X0:JJ12:J521320<208,0:5213,0:A$"Y":B$A$:C$"D":D$"DISK":D8:(147)0F" Lkx Щ ܩ<Э)Щ3X`)LХHH< iLWi#i#i#(<нЮ<<ˍhh )L1L)ܥ) ȽG)i0`Bi0Ci0`DJJJJi0D)i0EJJJJi0E)i0`FGHIJK=?>DEBC LĮ?DOPOiOPiPx8X?DJJJJe D)e,,J8T`>> 55,169,0,13953#|174,94,20,168,32,186,255,169,45,174,16,18,1351f#172,17,18,32,216,255,162,1,189,96,20,168,1346#200,152,201,58,144,2,169,48,157,96,20,201,1448#48,208,3,202,16,234,32,49,20,141,0,2,955#76,183,77,58,59,32,65,20,206,32,20 169,0,166,235,164,236,133,253,133,254,142,47,1932] 20,140,48,20,24,101,22,69,254,230,254,24,1206 101,23,69,254,170,230,254,164,252,185,0,2,1704 133,251,201,34,208,6,165,253,73,255,133,253,1965 201,32,208,4,165,253,240,8,138,24,101,251 DO YOU WANT AUTOMATIC SAVES (Y/N)";A$::A$"Y"90RP"NO AUTOMATIC SAVES...":150Z5213,1:"DISK OR TAPE (D/T)";C$:C$"D"D1:D$"TAPE"d5214,D:D$D$" DRIVE"::"FILE NUMBER (0-99)";NnN$((N),2):N10N$(48)(N48)#xF$"BACKUP": ^ԩQ`LiL`RR`RI)M)KMFM)L)LLLL̍Щ5) 4Х) ʎЭ)9) 3I 0ѝ1ҝ2ӝ3˝4   ` Z h0؝hٝ0ڝکX ؝ٝXڝ (é Ѝ!Э) Щq9a)؍qٍ9ڍۍ؍ٍaڍ) R K@'C`Щ&Щ`>)`=====`̝iL3e=̝#)`̝F̝iOP`8OOPP=̝A `ԩ!ԩ ԍԩ ԩ ԩS`Li e=8,206,1222,$1,214,169,0,170,168,76,219,255,32,79,20,1403_$169,26,141,0,214,173,0,214,16,251,96,162,1462$0,142,0,255,96,19,18,32,32,32,32,146,804$0,1,0,0,65,72,79,89,33,0,0,0,339$A256:520$A16:520$A1:520$%T(A,16253!69,254,170,44,198,254,230,252,164,251,208,213,2307e!"138,41,240,74,74,74,74,24,105,65,141,88,1138!,20,138,41,15,24,105,65,141,89,20,32,79,769!620,189,85,20,240,6,32,210,255,232,208,245,1742!@174,47,20,172,48,20,24,32,240,255,173:"FILENAME";F$:F$N$(F$,14):L(F$)P5215,L:J1L:5215J,((F$,J,1)):J:"SAVING DEVICE ** "D$:"STARTING WITH ** "F$:"IS THIS CORRECT (Y/N)";B$:B$"Y"60770,198:771,77:4864:32,58,20,169,41,162,19,236,3,3,208,4,95`  @@ 4٩ 6 6٩ 4٭)I@@Ģ  ` ?i1. `ei8eei` %ТF#n*18LM轭̍Щ5ЍNЍЍRSm?'Щ`SS`TS iLàʊ 9̝оLĢFJJJJi0ȽF)i0GJJJJi0*=#e#L=̙ *Là Ȍ Ԭ?xJiJHiHFiFX`  OPQFI8̦aJ]9U9M_I=\]%^`_I_ m_Խ\^) i1.  ȩ 8 L9i0Ti0U DL8xiiiiXʥ кJJJJi0 )i0 @),93,12982"J20,240,27,165,161,201,212,176,4,165,160,240,1771d"T17,32,65,20,238,32,208,238,1,214,32,225,1322"^255,208,6,32,49,20,76,198,77,232,208,242,1603"h200,208,239,32,66,193,173,95,20,162,96,160,1644"r20,32,189,255,169,0,170,32,104,25+169,198,162,77,141,2,3,142,3,3,224,19,1143\208,7,32,125,255,79,78,0,96,32,125,255,129279,70,70,0,96,162,0,134,251,189,0,2,1053240,19,201,48,144,9,201,58,176,5,133,251,1485232,208,238,134,252,165,251,208,3,76,198,77,2042* I) ) L.ɮWU@L`) L8ʩ ` 0  \ TƭQ`  8 kâLe Pĩ@ 0 MʭQ?B ??@?Q3?xDiDJ}UJH}WH A0 A1:"INSERT",8,1D" NSERT IS NOW IN MEMORY.";" LEASE READ DOCUMENTATION ON HOW TO PROPERLY USE THIS PROGRAM. ";("EE PAGE 48 IN THE OVEMBER 1988 HOY!"23,169, 22,141 13, 3,169,126,141, 14, 3Ld d'# BEING INSERTED IS UNREADABLE IS NOT ON DISK: / I  -.+," LŤ i     / 6 ĥ+, 7 Lȱ L" ȱ"ɏɃɉ ɍɧȱ  Ţ# 00: ,Ljå#LLÌ,080H1}!12}&2h8֩ 341ȱT,`bc8 I ߽ "`ȱ`  `, 80,144,239,169, 13"8 32,210,255,169, 0,133,250,230"@251,165,251,201, 25,144,222,169"H 4, 32,195,255, 32,204,255, 96"P 72, 41, 64,141,109, 20,104, 41# * <( *Z*Z ((((_ FiFUWXBИCГ!Ѝ Т  3 @9 D GJJJJi0ȽG)i0FJJJJi0ȽF)i0) U ) )L[ )==================================C MINI-COMPb RUPERT REPORT #59 A MINIMAL COMPILER FOR THE C-64======= RUN 2000 TO COMPILE ====== THESE ARE ALL ALLOWED TYPES OF STATEMENTS A AND A% BOTH REPRESEN2&00$ ť ) L L ŭ 7   i LQ ȱ m  m8  8 8  z K L ŭ 0i2' 3i 43Lé1324,43 me8 L~8 KŢʬ+ 7,LKLåȭȭ i L`_`8: C32 1100: IGNORE SPACES* V C0 0 `n VT0: VT=0, NOT A VARIABLE; VT=1, INTEGER; VT=2, STRING  C65 C90 : NOT A VARIABLE (VNC: C1(M): MM1: VN=VAR NAME 2 C136 VT2: C1,: : '$ STRING VAR < C137 _ *.  (((+(("@@* SACK RACE PROGRAMMED BY JOHN FEDOR *** CONCEPT: TOM GAUTHIER & JOHN FEDOR ** PLAYER #1:0000000 LEVEL:00 BAGS:0 PLAYER #2:0000000 LEVEL:00 BAGS:0 Fn߿ @Fn   NUMBER OF PLA T THE SAME INTEGER A50# B10+ CA5 (DABD 2 AB 60M < 70S F[ P Ad Z B;o d (C){ n (D); xA$(C) B$"HELLO" C$A$ B$B$A$ A$ B$;   --- COMMON ROUTINES --- LC(M): MM1: C,߭إ+, 7 7+,ȱ íi 7+, ȱ Ơ í88   K ŭ8   X Y8_Z`8_Z_`8XZXY_X`Y8  `_`Z[m Xm Y `8  `8  `m m `8  `5) (`-. ^l VT1: 1360: C1,: '% INTEGER VARL FVT1: MM1: 1360: DEFAULT=INTEGERk KMM1: : NOT A VARIABLE PAD(VN65)2VM ZNXAD: 1400: A0NL: A1NH dNXAD1: 1400: A2NL: A3NH n xNH(NX256) NLNX256NH   KK1 N:  CMEM "OUT OF MEMORY - COMPILED PRGM TOO LARGE": I  CM,C(KK)\  CM;":";C(KK)k CMCM1: q  @ GET ADDR OF STRING VAR WITH NAME IN VN TSVVN65 : STRING VARIABLE # ^ SV0 SV25 EC65: 10000:  h SB(SV)YERS: 1 2PLAYER 1STARTING LEVEL: 00 BONUS: 00000 FINAL SCORESPLAYER 1: 0000000PLAYER 2: 0000000PRESS BUTTON TO REPLAY͝>Ν?L ((+(((( 0 1660 : NEW STRING1 rMEMEMSB(SV)2561: 1690h |NBNB1: NB26 "TOO MANY STRING VARIABLES": SB(SV)NB : BLOCK # MEMEMNB2561: (MEMCM)256 "OUT OF STRING SPACE": NXMEM: 1400: : ADDR IN NL/NH  ==141: C(11)D2: C(12)D38 1500B <<< IF A=B THEN MM >>>/ 1100 : 'AY 1300: VT1 EC65: 10000: xS0A0: S1A1: S2A2: S3A3 1100: C178 EC178: 10000: : '= 1100 : 'B 1300: VTBf 1100p C0 3600 : A=Bz <<< A=B+C >>>O C170 EC170: EC$" + ": 10000: : TEST '+ 1100: 1300: VT1 EC65: 10000: : 'C 1100: C0 EC0: 10000: : 'EOL S4A0: S5A1 : ADDR C'S LSB  MSB  1100: C178 9000 : NOT '=( 1100 : '-, NN, OR BB 1300: VT1 3400X <<< A=(-)NN >>>s C171 C$"-" : '- C171 C$" "(C) : '0-9 1100 : GET DIGITS OF NN C0 3120 (C)"0" (C)"9 PASS 2 - FIX JUMP ADDRESSES!j JI0 2570 : NO JUMPSOt N1 JI : CHECK ITEMS IN JUMP TABLEt~ :MMJT(N,1) : REFERENCED LINE # : J1 SN : CHECK ACTUAL LINE #S : - GET OBJ MEM TARGET ADDRESS AND JMP ADDRESS: : MMLL(J, \LNPTR(M): MM2 : CURRENT LINE #If LN999 "=== END OF PASS 1 ===": 2400kp " CURRENT LINE # ="; LNzLL(SN,1)LN : CURRENT LINE #LL(SN,2)CM : START OBJ MEM LOCSNSN1 : # SOURCE STATEMENTS  = INITIALIZATION ======= LL(50,2) : LL(N,1)=LINE # OF NTH LINEp: LL(N,2)=COMPILED MEM LOCATION OF THIS LINE C(100) : STORES OBJECT CODE BYTESFALSE0: TRUE FALSE PTR(M)(M)256(M1)VM49152 : $C000 START O 1 EC65: 10000:  1100 : 'THEN& C167 EC167: 10000: 0C$""U 1100: C0 4120 : GET MMlC$C$(C): 4100yMM(C$)" MM0 MM999 EC1: 10000: ,JIJI1 : JUMP TABLE INDEX6JT(JI,S6A2: S7A3 : C'S MSB  CLC, LDA B(LSB), ADC C(LSB),STA A(LSB)I LDA B(MSB), ADC C(MSB), STA A(MSB)w N19: C(1)24: C(2)173: C(3)S0: C(4)S1 C(5)109: C(6)S4: C(7)S5: C(8)141: C(9)D0: C(10)D1 C(11)173: C(12)S2: C(13)S3: C" EC48: 10000:  C$C$(C) 30700 NN(C$)8: NN%NN : ERROR CHECK~D NN0 NNNN65536 : CONVERT (-32768,32767) TO (0,65535)N NXNN: 1400b MSBNH: LSBNLg : LDA #NN(LSB), STA A(LSB), LDA #NN(MSB), STA A(MSB)1) TADDRJT(N,2): JADDRLL(J,2): 2490 : J/ : NO MATCH FOUNDP :EC1: LNJT(N,0): 10000:s :NXJADDR : ADDR OF LINE # MM : 1400 : CONVERT LINE # : TADDR,NL : USE ADDR IN JUMP TABLE : TADDR1,NH N : NEXT--- GET BYTE --- 1100 : FETCH NEXT BYTEO 1300: VT1 3000 : 2290: 'VARIABLE~ VT2 9000: 2290 : STRING VARIABLE C139 4000: 2290: 'IF C137 5000: 2290: 'GOTO C153 6000: 2290: 'F VARIABLE MEM. PM49408 : $C100 START OF OBJECT MEMORYZEM53247 : $CFFF END OF OBJECT MEMORY SB(25), S(255): SM52992: NB0 : STRING VARIABLES BT2049 : $0800 START OF BASIC TEXT% 11000 : PUT PRINT RTN IN MEM*MBT 0)LN : CURRENT LINE #@JT(JI,1)MM : TARGET LINE #9JJT(JI,2)CM17 : MEM LOC AFTER 'JMPbT LDA A(MSB), CMP B(MSB), BNE EXIT,Y LDA A(LSB), CMP B(LSB), BNE EXIT, JMP MM^N19: C(1)173: C(2)S2: C(3)S3hC(4)205: C(5)A2: C(14)109: C(15)S6: C(16)S7 C(17)141: C(18)D2: C(19)D3! 1500'9 <<< A=B >>>n LDA B(LSB), STA A(LSB), LDA B(MSB), STA A(MSB)$N12: C(1)173: C(2)S0: C(3)S1: C(4)141: C(5)D0: C(6)D1.C(7)173: C(8)S2: C(9)S3: C(10)l N10: C(1)169: C(2)LSB: C(3)141: C(4)D0: C(5)D1Kv C(6)169: C(7)MSB: C(8)141: C(9)D2: C(10)D3{ 1500 : POKE VALUES INTO OBJECT MEMORY H <<< A=B OR A=B+C >>>R S0A0: S1A1 : B'S LSB ADDR\ S2A2: S3A3 : B'S MS JUMP TABLE ITEM "=== END OF PASS 2 ==="? "TO EXECUTE THE COMPILED PROGRAM, ENTER"O " SYS"; PM|# "OBJECT CODE RESIDES FROM";PM;"TO";CM1(  <<< A=(-)NN, A=B, A=B+C >>> D0A0: D1A1 : ADDR OF A'S LSB D2A2: D3A3 : A'S PRINT C128 7000: 2290: 'END9 C143 8000: 2290: 'REMm "UNKNOWN COMMAND CODE";C;"IN LINE";LL(SN,1): C0 EC0: 10000: : 'EOL K$: K$"" 2130 : BACK FOR MORE K$: K$"" 2310 2130` -  : NEXT SOURCE MEMORY TO PEEKC4SN1 : CURRENT SOURCE STATEMENT NUMBERq>CMPM : NEXT OBJECT MEMORY TO POKEH NVM VM51: N,0: : CLR VAR'SM ============= MAIN ============RPTRPTR(M): MM2 : NEXT LINE PTR(6)A3 rC(7)208: C(8)11: C(9)173: C(10)S0: C(11)S1, |C(12)205: C(13)A0: C(14)A1_ C(15)208: C(16)3: C(17)76: C(18)0: C(19)0j  1500p   <<< GOTO MM >>> C$""  1100: GET DIGITS OF MM  C0 5060 C$C$(C PRINT A$ >>/% 1600: S0NL: S1NH 0% LDX LEN(A$); LDY #1; LOOP: LDA A$,Y; JSR $FFD2; INY; DEX; BNE LOOPa0&N15: C(1)174: C(2)S0: C(3)S1: C(4)160: C(5)1: C(6)1850 &C(7)S0: C(8)S1: C(9)32: C(10)210: C(11)255: C(12)2000&C(13)202 << A$=B$ + C$ >>,&% 1100: 1300: VT2 EC65: 10000: -0% 1600: S2NL: S3NH : C$ ADDRA-:% 1100: C0 EC0: 10000: U-?% 9450: A$=B$-D%N53: C(1)169: C(2)D0: C(3)133: C(4)253: C(5)169: C(6)D1-I%C(7)133: C(8)254: C(9 00: C34 9250)$NCNC1: NC256 "STRING TOO LONG": *$S(NC)C*$ 92108*"$ 1100: C0 EC0: 10000: W*,$ LDA # NC: STA A$: LDY #1*1$ ..FOR K=1 TO NC: LDA # S(K): STA A$,Y: INY: NEXT K..*6$N7: C(1)169: C(2)NC: C(3)141: C 8010&T&'# << STRINGS >>'(# << STRING VARIABLES >>.'2# 1600 :D0NL: D1NH: GET DEST VAR ADDRc'<# 1100: C178 EC178: EC$" = ": 10000: n'F# 1100'P# 1300: VT2 9400 : A$=B$...'Z# C34 9200 : '"LITERAL"'d# C1 EC59: 10000: : ' ; $ 1100: C0 EC0: 10000: $0$8 --- PRINT CHARACTER PC ---I$B LDA #PC, JSR $FFD2o$L:N5: C(1)169: C(2)PC: C(3)32$VC(4)210: C(5)255: 1500$`$ <<< PRINT CHR$(A) [;] >>>$ 1100: C )  5020 MM(C$)! MM0 MM999 EC1: 10000: 4!JIJI1 : JUMP TABLE INDEXU!JT(JI,0)LN : SOURCE LINE#v!JT(JI,1)MM : TARGET LINE#!JT(JI,2)CM1 : OBJ MEM LOCATION AFTER 'JMP'! JMP MM!N3: C(1)76: C(2 : C(14)208: C(15)246: 15000 & 1100: C0 PC13: 6200: 1*& C59 EC59: EC$";": 10000: ?14& 1100: C0 EC0: 10000: E1>&h1':"SYNTAX ERROR IN LINE";LN1' EC0 "EXPECTED END-OF-LINE NOT FOUND":1$' EC1 "INV)173: C(10)S0: C(11)S1: C(12)24: C(13)101%.N%C(14)253: C(15)133: C(16)253: C(17)169: C(18)0: C(19)101h.S%C(20)254: C(21)133: C(22)254: C(23)174: C(24)S2: C(25)S3.X%C(26)160: C(27)1: C(28)185: C(29)S2: C(30)S3: C(31)145.]%C(32(4)D0: C(5)D1: C(6)160: C(7)1*@$ 1500++J$N6: K1 NC: C(1)169: C(2)S(K): C(3)153: C(4)D0: C(5)D1I+O$C(6)200: 1500: K : `+$ << A$=B$ ... >>+$ 1600: S0NL: S1NH : B$ ADDR+$ 1100: C170 9500 : '++$ C0 EC099 EC199: EC$"CHR$": 10000: '# << A$=CHR$(N) >>+(# 1100: C40 EC40: EC$"(": 10000: [(# 1100: 1300: VT1 EC65: 10000: (# 1100: C41 EC41: EC$")": 10000: (# 1100: C0 EC0: 10000: (# LDA #40 EC40: 10000: : '(% 1100: 1300: VT1 EC65: 10000: 2% LDA A(LSB), JSR $FFD2Y%: N6: C(1)173: C(2)A0: C(3)A1y%C(4)32: C(5)210: C(6)255% 1500% 1100: C41 EC41: 10000: : ')% 1100: C)0: C(3)0!  1500!"p <<< PRINT, PRINT A[;], OR PRINT CHR$(A)[;] >>>A"z 1100: C199 6300 : 'CHR$i" C0 PC13: 6200: : 'PRINT" 1300: VT2 9700" VT1 EC65: 10000: " <<< PRINT A >>>" LDX $A(MALID LINE NUMBER":1.' EC48 "NUMERIC VALUE 0-9 EXPECTED": 28' EC65 "VARIABLE A-Z EXPECTED": I2B' EC127 "EXPECTED BASIC KEYWORD ";EC$: 2L'"EXPECTED CHARACTER ";(EC);" WITH ASCII VALUE"EC :2* -- PUT M.L. PRINT ROUTINE IN)253: C(33)200: C(34)170: C(35)208: C(36)247: C(37)173./b%C(38)S0: C(39)S1: C(40)24: C(41)109: C(42)S2: C(43)S3n/g%C(44)144: C(45)5: C(46)162: C(47)23: C(48)108: C(49)0/l%C(50)3: C(51)141: C(52)D0: C(53)D1/v% 1500: /% <<: 10000: ,$ LDX B$: LDY #0; LOOP: LDA B$,Y; STA A$,Y; INY; BPL LOOPM,$N15: C(1)174: C(2)S0: C(3)S1: C(4)160: C(5)0: C(6)185: C(7)S0,$C(8)S1: C(9)153: C(10)D0: C(11)D1: C(12)200: C(13)202,$C(14)16: C(15)246: 1500: ,%1; STA A$; LDA N.LSB; LDY #1; STA A$,Y%)#N13: C(1)169: C(2)1: C(3)141: C(4)D0: C(5)D1: C(6)173b)#C(7)A0: C(8)A1: C(9)160: C(10)1: C(11)153: C(12)D0z)#C(13)D1: 1500: )# << A$=" LITERAL " >>)#NC0 : STORE # OF CHARS)# 110 6400%: PC13: 6200: & C59 EC59: 10000: : ';3&  1100: C0 EC0: 10000: 9&K&X <<< END >>>X&] RTSq&bN1: C(1)96: 1500&l 1100: C0 EC0: 10000: &v&@ <<< REM >>>&J 1100: C0 SB), LDY $A(LSB), JSR $C0E0 #: N9: C(1)174: C(2)A0: C(3)A1+#C(4)172: C(5)A2: C(6)A3K#C(7)32: C(8)224: C(9)192V# 1500#PC32: 6200 : ADD SPACE AFTER DIGITS# 1100: C0 PC13: 6200: : PRINT CR# C59 TO MEMORY --2+M49376 : $C0E02 +CS3319 : CHECKSUM2+ B: B0 110603 + M,B: MM1: CKCKB!3*+ 11030`34+ CKCS "ERROR IN DATA STATEMENTS STARTING AT 11120":f3>+3H+ 169, 32, 200, 136, 16, 23R+ 169, 45, 32, 210, 255, 152, ASY80 FOR THE -128 ADDS SEVEN COMMANDS AND TWO FUNCTIONS TO 7.0 THAT LET YOU MANIPULATE THE 16 (OR 64) OF MEMORY. EE MAGAZINE FOR MORE DETAILS. N ORT 2. 53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATNSERT FOR THE -64 IS A UTILITY THAT LETS YOU CONCATENATE SOME OR ALL OF YOUR BEST PROGRAMMING ROUTINES TO THE PROGRAM THAT YOU ARE CURRENTLY WRITING. DETAILS. N ORT 2. 53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATOYSTICK NITIALS IS A SOLUTION TO THE UNE 1988 OMMODARE THAT RE- QUIRED THE USER TO WRITE A ROUTINE THAT WOULD LET A PERSON ENTER IN INITIALS VIA A JOYSTICK. N ORT 2. 53281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATILE OCATOR IS A SOLUTION TO THE UNE 1988 OMMODARE THAT REQUIRED THE READER TO WRITE A PROGRAM THAT WOULD FIND THE STARTING AND ENDING ADDRESSES OF A SELECTED DISK FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATRITTEN EMAINDER 1 IS A SOLUTION TO THE UNE 1988 OMMODARE THAT REQUIRED THE READER TO WRITE A PROGRAM THAT WOULD TAKE TWO WHOLE NUMBERS AND RETURN A REMAINDER. ISK FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATd16, 123\+ 138, 73, 255, 24, 105, 1, 170, 1523f+ 73, 255, 105, 0, 32, 205, 189, 964p+ -1dRITTEN EMAINDER 2 IS ANOTHER SOLUTION TO THE UNE 1988 OMMO- DARE OF THE SAME NAME. OGRAM THAT WOULD TAKE TWO WHOLE NUMBERS AND RETURN A REMAINDER. ISK FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATIRTHDAY ARTY IS A SOLUTION TO THE UNE 1988 OMMODARE THAT ASKED FOR A ROUTINE TO DETERMINE WHO WILL ATTEND A BIRTHDAY PARTY AC- CORDING TO CERTAIN CONDITIONS. ISK FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATrINI ON FROM IPS HOY! IS A SHORT ROUTINE THAT LETS YOU VIEW ANY SECTION OF MEMORY ON YOUR -64 OR -128. IRTHDAY PARTY AC- CORDING TO CERTAIN CONDITIONS. ISK FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATTATIC LECTRICITY FROM IPS HOY! IS A ROUTINE THAT MAKES THE SCREEN LOOK AS THOUGH A GREAT DEAL OF STATIC IS PRESENT. OU CAN INCOR- PORATE INTO YOUR OWN PROGRAMS. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATUSICAL OLOR ELETYPE FROM IPS HOY! IS A SUBROUTINE THAT ADDS A TOUCH OF COLOR AND MUSIC TO YOUR SCREEN PRINTING ROUTINES. OR- PORATE INTO YOUR OWN PROGRAMS. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATHORT ODE FROM IPS HOY! IS A TWO LINE PROGRAM FOR THE -128 THAT PRODUCES A DISPLAY IN XTEN- DED ACKGROUND OLOR ODE. PORATE INTO YOUR OWN PROGRAMS. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATHORT ODE FROM IPS HOY! IS A TWO LINE PROGRAM FOR THE -64 THAT CREATES A DISPLAY IN XTEN- DED ACKGROUND OLOR ODE. ORATE INTO YOUR OWN PROGRAMS. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATHARACTER ET OPY FROM IPS HOY! IS A -64 ROUTINE THAT COPIES THE CHARACTER SET FROM TO SO YOU CAN USE PROGRAMMABLE CHARACTER SETS OR RECONFIGURE MEMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATAST ODE FROM IPS HOY! IS FOR THE -128 IN -64 MODE. HIS PRO- GRAM IS DESIGNED TO GIVE YOU THE USE OF THE AND COMMANDS IN 2.0. ONFIGURE MEMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATEST FROM IPS HOY! IS A SMALL PROGRAM THAT TESTS HOW FAST ODE REALLY IS. AKE SURE THAT MODE IS INSTALLED BEFORE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT-128 URTAIN FROM IPS HOY! IS A SMALL DEMONSTRATION OF A CUR- TAINLIKE FEATURE AVAILABLE IN THE -128'S 80-COLUMN MODE. FORE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REATy-64 HAIN OADER FROM IPS HOY! IS A ROUTINE THAT LETS YOU LOAD A PROGRAM WITHIN A PROGRAM (CALLED CHAINING). E. FORE YOU RUN THIS PROGRAM. EMORY. FILE. 281,1:646,0AT,2,8:" Š " AT,9,12:"1. REAT Z198,0'dI0I1:"DDLOGO",8,14i53280,2Gn55,0:56,92:Ux53265,59d53272,120|56576,(56576)25425055,0:56,16053265,2753272,2156576,(56576)1"";:53280,6:53281,0:(14); "OADING '********************************M * MENU PROGRAM V2.0 *s"* (C)1988 DOUBLE L SOFTWARE *&* ALL RIGHTS RESERVED *(********************************):53296,1*AT679:NATAT22:M:N,M: ,32,180,2,(13)2000$ AN$(32)3000:Y1100:140- 204Q "";:53280,0:53281,0:V21,0} "OADING...";(34);P$(B,H)(34);"" "LOAD";(34);P$(B,H);(34);",8" (142)"RUN": ""  631,13: 632,13: 198,2:% "":AT, "fAT,3,10:""CpAT,4,10:" "izAT,5,10:""oS54272:S23,0:S24,15S6,0:S5,12:S1,70:S3,40S4,0:S4,65:D1100::S4,0:Y1Y18:Y1188Y1100  28,49,33,135,28,49(  25,30,28,49,31,165B  33,135,37,162,28,49]  37,165,33,135,31,165v & 25,30,22,96,18,209 0 4,2,2,3,1,4,4,2,2,8 : 4,2,2,2,2,2,2,2,2,2,2,2,2,2,2 D 8,97,16,195,8,97,16,195,8,97,16,195 N 8,97,16,195,8,97, AM SUCCESSFULLY. SE THE"4T4)" PRESCRIBED METHOD WHICH IS "p^4)" ";(34);"ROGNAME";(34);". "h4)" [RESS ANY EY] "r4)""|AT,22,3:"  AIN ENU...."< "LOAD";(34);"DIR 1";(34);",8,1"T "RUN":""q 631,13:632,13:198,2: HI(25),LO(25),DU(25),H3(64),L3(64)  54291,134: 54277,136:54284,136  54292,136: 54278,134:54285,134  54290,17: 54 132,251,32,180,21 .166,251,76,240,255,32,253,174O 032,158,173,32,170,177,96g 253265,(53265)239 <4000:V53248:X175:Y1100 P P$(4,12),PG$(4,12),IN$(4,12):5000:NN3:B.:5190 d53280,0:53281,1:(14):2500 n2040,15:V39,10:V,X2,2:""X %AT,1,3:"ENU ROGRAM (C) OUBLE OFTWARE" *AT,3,2:"  " /I419 4AT,I,2:2)"  ": >AT,20,2:" V1,Y1:I0F:LCI,0:"HH1:H12H16PP1:P18P7VLCLC40:LC56030LC55590_204zY1Y18:Y1100Y1188V1,Y1:I0F:LCI,0:HH1:H1H12 PP1:P7P18#LCLC40:LC55590LC56030(2048216,195,8,97,16,1952 X 8,97,16,195,8,97,16,195,8,97,16,195\ b 8,97,16,195,8,97,16,195,8,97,16,195 l 8,97,16,195,8,97,16,195,8,97,16,195 v 8,97,16,195  5,152,11,48,5,152,11,48,5,152,11,48  5,152,11,48  6,71,12,143,6,71,12,143,6 ":1000AN$:AN$""16701882:V21,1:225R **************************s **** WINDOW ROUTINE **** **************************828AT,4,11:""11)"EE NSTRUCTIONS"11276,17:54283,17& " 54272,00: 54273,33> ,54279,59:54280,33_ 6 X1 25: HI(X),LO(X): Xz @ X1 25: DU(X): X J X1 64: H3(X),L3(X): X T 54296,15 ^B1: X1 25 hAN$:AN$(13)460 r 54272,LO(X): 54273,HI(X) |1:V1,Y1* x800:53265,(53265)16:53296,0G LC55590:P7:H1:V21,1[ BB1:BNNB1 I112:AT,I6,14:""P$(B,I)::V1,Y1 F(P$(B,H)):A0F:LCA,8::1000 AN$:AN$""206 AN$(17)1250 AN$(145)1300 AN$ "G CAT,21,2:"" HAT,22,1:"" RAT,23,1:" RSR=ELECT PC=ORE /Ґ=XECUTE " \AT,24,1:"8:V21,0,AT,12,4:""X"4)" HIS IS A 128 ROGRAM. T MAY",4)" NOT BE LOADED IN THE 64 MODE."64)" OU MUST SWITCH TO THE 128 "@4)" MODE IN ORDER TO LOAD THIS "J4)" PROGR,71,12,143( 6,71,12,143,6,71,12,143,6,71,12,143R 6,71,12,143,6,71,12,143,6,71,12,143| 6,71,12,143,6,71,12,143,6,71,12,143,1,4,4,2,2,8 : 4,2,2,2,2,2,2,2,2,2,2,2,2,2,2 D 8,97,16,195,8,97,16,195,8,97,16,195 N 8,97,16,195,8,97,)"UN ROGRAM "11)"ANCEL INDOW "> 11)""OPO55507:X0k I116:POI,0::1000*AN$:AN$""20904AN$(17)2200:POPO40:XX1:PO55587PO55507>X2X0HAN$(13)2140R2080\ 54279,LO(X)45:54280,HI(X))  N1 DU(X)G 54286,L3(B):54287,H3(B)Q BB1c  L1 145:k  Ns  X| 350 S54272:I024:SI,0::155  16,195,21,31,25,30  28,49,21,31,28,49  33,135,37,162,25,30  33,135153,244,193  185,244,217,153,228,197,185,238%  6,153,238,194,185,238,218,153H  222,198,200,208,205,96,160,0h  185,0,192,153,0,4,185,240  195,153,0,216,185,250,192,153  250,4,185,234,196,153,250,216  185,244,193,153,244,5,1 XX15 2,TX$(XX) :20AT,7,1:""oI813:AT,I,1:" "u"AT,14,1:" [/=ANCEL * PC=UN ROGRAM] ",AT,15,1:")"AUTO INSERT":IN$(3,2)"AUTO INSERT IN"5 P$(3,4)" ":IN$(3,4)" "j P$(3,5)" ":IN$(3,5)" " P$(3,6)" ":IN$(3,6)" " P$(3,7)" ":IN$(3,7)" " P$(3,8)"  RITTEN 1":IN$(1,11)"RITTEN 1 IN"?7 P$(1,12)"RITTEN 2":IN$(1,12)"RITTEN 2 IN"s< P$(2,1)"IRTHDAY ARTY":IN$(2,1)"IRTHDAY IN"F P$(2,2)"INI ON":IN$(2,2)"INI ON IN"P P$(2,3)"TATIC LEC.":IN$(2,3)"TATIC IN"Z P$(2,4)"T X0882:4100aX22180bB1H3B1H62155BcB2H4B2H5B2H102155\dB3H1B3H22155qe IFB=4 THEN2155{f2159k882:1550oX1882pI035:V,X1I:D135::zV21,0:230882:225I116:PK 85,228  197,153,244,217,185,238,194,153!  238,6,185,222,198,153,238,2183! 200,208,205,96O!FI9601022:N:I,N::c!P 0,0,0,0,0,0,0w!Z 0,0,0,0,0,0,0!d 0,0,0,0,0,1,192!n 0,0,224,0,0,112,0!x 255,252,0,255,255,0,255! 25 ""1AT,22,3:" ":1000H6XX15:AT,7XX,3:""TX$(XX):^@AN$:AN$""4160wJAN$(13)882:204TB1H3B1H64195VB2H4B2H5B1H104195WB3H1B3H24195X ":IN$(3,8)" "* P$(3,9)" ":IN$(3,9)" "Z P$(3,10)" ":IN$(3,10)" " P$(3,11)" ":IN$(3,11)" "" P$(3,12)" ":IN$(3,12)" ", P$(4,1)" ":IN$(4,1)ELETYPE":IN$(2,4)"TELETYPE IN"3d P$(2,5)"SHORT EBC 128":IN$(2,5)"SHORT EBC IN"fn P$(2,6)"HORT 64":IN$(2,6)"HORT IN" P$(2,7)"HARACTER ET":IN$(2,7)"HARACTER IN" P$(2,8)" ODE":IN$(2,8)"AST ODE IN" P$(2,9)"EST OI,5:: P$(1,1)"LANKSPEED":IN$(1,1)"LANK IN"N P$(1,2)"64 UG EP ":IN$(1,2)"UG EP IN" P$(1,3)"128 BUG REP II":IN$(1,3)"BUG REP IN" P$(1,4)"ACK ACE":IN$(1,4)"ACK ACE IN" P$(1,5)"SLAND UEST":IN$(1,5)"SLAND UEST KT2,0,0,112,0,0,224! 0,1,192,0,0,0,0" 0,0,0,0,0,0,0" 0,0,0,0,0,0,053H  222,198,200,208,205,96,160,0h  185,0,192,153,0,4,185,240  195,153,0,216,185,250,192,153  250,4,185,234,196,153,250,216  185,244,193,153,244,5,1 IF B=4^882:V21,1 `I035:V,X1I:D135::bV21,0:230,c882:15506h4160QI828935:A:I,A::o 160,0,185,0,4,153,0,192 185,0,216,153,240,195,185,250 4,153,250,192,185,250,216,153 234,196,185,244,5," "  CL718:AT,CL,14:" "::EPOKE657,128:REM DISABLE SHIFT/COM KEYjPOKE775,200:REM DISABLE LISTINGPOKE808,234:REM DISABLE STOP/RESTORE828:V21,0:ZZ$IN$(B,H) 2,8,2,"@0:"ZZ$",S,R"":IN$(2,9)"EST IN"0 P$(2,10)"C-128 CURTAIN":IN$(2,10)"C-128 CUR IN"i P$(2,11)"-64 HAIN OAD":IN$(2,11)"-64 HAIN IN" P$(2,12)"INDOW ILL":IN$(2,12)"INDOW ILL IN" P$(3,1)"TERMINATOR":IN$(3,1)"TERMINATOR IN" P$(3,2IN" P$(1,6)"EASY80":IN$(1,6)"EASY80 IN"; P$(1,7)"NSERT":IN$(1,7)"NSERT IN"k P$(1,8)"INI-OMP":IN$(1,8)"INI-OMP IN" P$(1,9)"OYSTICK NIT.":IN$(1,9)"OYSTICK IN"( P$(1,10)"ILE OCATOR":IN$(1,10)"ILE OC IN" 2 P$(1,11)"KKKK