0 REM *** SAVE"@0:INF4.MAIN",8 1 POKE56,150:CLR:POKE53281,0:POKE53280,0:POKE53371,0 2 GOTO10 5 POKE198,0 6 GETK$:IFK$=""THEN6 7 IFK$="S"ANDPEEK(49152)=7THENPOKE49152,0:SYS49897:RETURN 8 IFK$="S"ANDPEEK(49152)=0THENPOKE781,0:POKE782,150:SYS49664:POKE49152,7 9 RETURN 10 DV=PEEK(186):IFDV<8THENDV=8 12 SYS57812"INF4.SID PLAYER",DV,0:POKE780,0:POKE781,0:POKE782,192:SYS65493 14 SYS57812"ETAL.MUS",DV,0:POKE780,0:POKE781,0:POKE782,150:SYS65493 18 SYS57812"ALIEN FONT",DV,0:POKE780,0:POKE781,0:POKE782,48:SYS65493 20 PRINT"[147]":POKE53272,29:GOSUB490 22 POKE214,17:PRINT:PRINT" ALIEN INFILTRATION IV 24 [153]" BY CHERYL DE BOISSIERE 33 SYS57812"ALIEN.SPR",DV,0:POKE780,0:POKE781,0:POKE782,62:SYS65493 34 SYS57812"SINUS ML 64",DV,0:POKE780,0:POKE781,0:POKE782,64:SYS65493 35 SYS57812"D.LSDEMO",DV,0:POKE780,0:POKE781,6:POKE782,64:SYS65493 36 SYS49615:POKE781,0:POKE782,150:SYS49664 37 VI=53248:PG=64:SA=PG*256:SP=248 38 SS=49152:POKEVI+32,0:POKEVI+33,0 39 REM *** SETUP SINUS INTERRUPT 40 SYSSA 41 REM *** POKE SPRITE DATA 42 YY=14:FORI=0TO7 43 POKE2040+I,248+I:REM SPRITE POINTERS 44 POKEVI+39+I,I+1:REM SPRITE COLORS 45 POKEVI+37,14:POKEVI+38,15:NEXT 46 POKEVI+29,255:REM X SIZE 47 POKEVI+23,0:REM Y SIZE 48 POKEVI+28,255:REM MULTICOLOR ON 49 POKEVI+37,5:REM MULTICOLOR 1 50 POKEVI+38,13:REM MULTICOLOR 2 51 POKEVI+21,0:REM TURN SPRITES ON 52 POKESS,7:ZZ=2:ZY=10:ZX=ZY:GOSUB490 53 POKESA+6,2:POKESA+7,1:POKESA+8,ZZ 54 POKESA+9,ZZ:POKESA+10,ZY 56 POKESA+13,ZX:POKEVI+37,14 58 POKEVI+38,ZC:POKEVI+39,3 60 Z=Z+1:IF Z=15 THEN Z=0:ZZ=ZZ+1:IF ZZ=5 THEN ZZ=2:ZY=ZY+5 61 IF ZY=40 THEN ZY=10:ZX=ZX+5 62 Y=Y+1:IFY<3THENZC=5 63 IFY>2THENZC=4:IFY>5THENY=0:YY=YY+1:IFYY=15THENYY=0:GOTO66 64 GETA$:IF(PEEK(SS)=0)OR(A$<>"")THENPOKE49152,0:SYS49897:GOTO70 65 GOTO53 66 YX=2^YZ+YX:POKEVI+21,YX:YZ=YZ+1:IFYZ=8THENYX=0:YZ=0:XX=XX+1 69 GOTO64 70 REM *** TURN OFF SINUS 72 POKEVI+21,0:POKEVI+32,0:POKEVI+33,0 73 SYS57812"ALIEN FONT",DV,0:POKE780,0:POKE781,0:POKE782,48:SYS65493 74 POKE53272,29 80 REM *** GAMESTART 81 PRINT"YOU ARE LEA LISON, STAR REPORTER, HOT- 82 [153]"SHOT NEWSPAPERWOMAN. A MONTH AGO, YOU 83 PRINT"WERE CONTACTED BY TOLSEN, STREET SNITCH. 84 [153]"TOXIC DUMPING, ECO-TERRORISTS -- THE 85 PRINT"STORY WAS GOING IN A WILD DIRECTION!":GOSUB5 86 PRINT"[145][145][145][145][145][145][145][145][145]IT EVENTUALLY LED TO YOU TEAMING UP WITH 87 [153]"A STREET COP, JAMES CLARK. TOGETHER, YOU 88 PRINT"WENT TO WHIRRY'S SEWAGE PLANT WHERE YOU " 89 PRINT"SAW AN ALIEN SPACESHIP AND WERE ATTACK- 90 [153]"ED BY CLONES. ONE HELPED YOU ESCAPE!":[141]5 91 [141]690:[153]"HOWEVER, THAT MORNING, TOLSEN WAS DEAD. 92 PRINT"SO WAS WHIRRY. AND JAMES CLARK WAS MISS- 93 [153]"ING. WITH NO PROOF OF YOUR STORY AND THE 94 PRINT"TRUTH BEING TOO STRANGE TO BELIEVE, YOU 95 [153]"DECIDED SILENCE WAS GOLDEN (WHICH TICKED 96 PRINT"OFF RAY WENCUBE, CLARK'S PARTNER)!":GOSUB5 97 PRINT"[145][145][145][145][145][145][145][145][145][145][145]SOME WEEKS LATER -- YOU SAW A NEWSPHOTO " 98 PRINT"OF REX LUTHEL, MYSTERIOUS MILLIONAIRE, " 99 PRINT"OPENING A NEW CHEMICAL PLANT IN AMGOTH. " 100 PRINT"REX LUTHEL LOOKS EXACTLY LIKE THE MALE " 101 PRINT"CLONES THAT ATTACKED YOU AND THE STRANGE 102 [153]"ALLY WHO LED YOU SAFELY TO THE SURFACE.":[141]5 103 [153]"ONONONONONONONONONONONSO YOU TOOK A QUICK FLIGHT TO AMGOTH -- " 104 [153]"TO UNCOVER LUTHEL'S CONNECTION TO WHIRRY" 105 [153]"AND THE ALIEN SPACESHIP. BUT DIRECT CON-" 106 [153]"TACT WITH LUTHEL IS DANGEROUS. HE IS NOT 107 PRINT"THE CLONE THAT HELPED YOU. AND THERE ARE 108 [153]"OTHER PEOPLE WORTH VISITING. ":[141]5 109 A$[178]" SEE LACY LUNE (TOLSEN'S GIRL)":B$[178]" SEE MARTHA KENT (COLLEAGUE) ":X[178]1 110 C$[178]" STAKEOUT REX LUTHEL'S HOTEL ":[141]490:[141]200:[145]C[137]111,137,289 111 [141]530:[153]"YOU ARRIVE AT LACY'S SISTER'S PLACE. NO 112 PRINT"ONE IS HOME. IN FACT, THE PLACE LOOKS 113 [153]"DESERTED. YOU OPEN THE MAILBOX WITH A 114 PRINT"PAPERCLIP & A LOT OF TALENT AND ESTAB- 115 [153]"LISH NO ONE HAS BEEN HOME LAST 2 WEEKS.ONONON":[141]5:[151]VI[170]38,4 116 [151]VI[170]21,255:[129]T[178]1[164]3000:[130]:[151]VI[170]21,0 117 [153]"ONONONONONONYOU DECIDE TO CHECK OUT LACY'S SISTER'S 118 PRINT"APARTMENT. YOU TRY THE FRONT DOOR AND 119 [153]"IT IS UNLOCKED. INSIDE LOOKS LIKE A TINY 120 PRINT"WHIRLWIND HIT. YES, THESE TWO BIRDS HAVE 121 [153]"FLOWN THE COOP! YOU HIT A DEAD END. ONONON":[141]5:[151]VI[170]38,5 122 [151]VI[170]21,255:[129]T[178]1[164]3000:[130]:[151]VI[170]21,0 123 A$[178]" CALL YOUR NEWSPAPER /UPDATE ":[141]690:[141]200:[145]C[137]124,137,289 124 [141]510:[153]"YOUR EDITOR TELLS YOU THAT RAY WENCUBE 125 PRINT"HAS BEEN KILLED. HIS FUNERAL WAS YESTER- 126 [153]"DAY. CLARK'S YOUNGER BROTHER, JEREMY, 127 PRINT"CALLED ROUND FOR YOU AND WAS TOLD YOU 128 [153]"WERE IN AMGOTH. A NICK RAGSODY, CRIME":[141]5:[151]VI[170]38,4 129 [151]VI[170]21,127:[129]T[178]1[164]3000:[130]:[151]VI[170]21,0:X[178]2 130 [153]"ONONONONONONONONONLAB TECHNICIAN, ALSO CALLED. AS WELL AS 131 PRINT"THAD VYNER, A 'FRIEND' OF KEN TOLSEN'S. " 132 PRINT"OTHERWISE, METROPOLIS HAS BEEN QUIETIER 133 [153]"THAN NORMAL. ALSO MARTHA KENT OF AMGOTH 134 PRINT"SAID SHE WOULD LIKE TO MEET FOR DRINKS.":POKEVI+38,5:POKEVI+21,127 135 FORT=1TO3000:NEXT:POKEVI+21,0:GOSUB5:B$=" SEE MARTHA KENT (COLLEAGUE) " 136 A$=" VISIT LOCAL NEWSIE CLUB / BAR":GOSUB690:GOSUB200:ONCGOTO290,137,289 137 GOSUB550:PRINT"YOU CALL MARTHA KENT AT HOME AND SHE IS 138 [153]"OUT. NO SURPRISE. HER PAPER HAS NO IDEA 139 PRINT"WHERE SHE IS BUT SUGGEST YOU TRY PHIL'S, 140 [153]"THE NEWSIE HANGOUT. THE EDITOR, NATHAN":[141]5:[151]VI[170]38,4 141 [151]VI[170]21,63:[129]T[178]1[164]3000:[130]:[151]VI[170]21,0:[141]5 142 [153]"ONONONONONONONCLOJACK INQUIRES IF THIS IS ABOUT LUTHEL 143 PRINT"AND WHEN YOU SAY IT IS, HE TELLS YOU " 144 PRINT"MARTHA WAS HOPING YOU WOULD GET IN TOUCH 145 [153]"WITH HER. BUT HE DOESN'T KNOW WHY. ":[151]VI[170]38,5:[151]VI[170]21,63:X[178]3 146 [129]T[178]1[164]3000:[130]:[151]VI[170]21,0:[141]5:A$[178]" CALL YOUR NEWSPAPER / UPDATE " 147 B$[178]" VISIT LOCAL NEWSIE CLUB / BAR":[141]690:[141]200:[145]C[137]124,290,289 200 [143] *** OPTIONS TABLE 201 [153]""[166]16)"LISTOPTIONS":[153]" CLR 1 WAIT LIST"A$ 202 [153]" CLR 2 WAIT LIST"B$:[153]" CLR 3 WAIT LIST"C$:C[178]0 203 [139]X[178]1[167][153]"ONONONONONLIST 1 CLR"A$ 204 [139]X[178]2[167][153]"ONONONLIST 2 CLR"B$ 205 [139]X[178]3[167][153]"ONLIST 3 CLR"C$ 206 [141]5:[139]K$[178]""[175]X[179]3[167]X[178]X[170]1 207 [139]K$[178]"ON"[175]X[177]1[167]X[178]X[171]1 208 [139]K$[178][199](13)[167]C[178]X:[142] 209 [137]200 235 [143] *** CLEAR TEXT 236 [129]I[178]H[164]24:[151]781,I:[158]59903:[130]:[151]214,J:[142] 289 F$[178]"INF4.PT3":[137]291 290 F$[178]"INF4.PT2" 291 [158]SA[170]3:[151]53281,0:[151]53280,0:[158]49935 293 [153]"STOPLOAD"[199](34)F$[199](34)","DV:[153]"RUN" 294 [151]631,13:[151]632,13:[151]198,2:[128] 490 [143] *** CITYSCAPE11 491 [153]"LOADCONT "; 492 [153]" CONT "; 493 [153]" LISTWAIT CONT POSPOSRND "; 494 [153]" LISTWAIT CONT *WAITLOG WAITFRECOS"; 495 [153]"SYS*COS CONT WAITCOS LISTWAIT CONT NEW WAIT SYSCOSCONTNEWRND "; 496 [153]"WAIT SYS** CONTNEWNEW WAIT SYSRNDLOG LOGCONT  ANDANDNEWNEWWAIT LOGCOSLIST SYS"; 497 [153]"LOGCONT SYSCOS CONT WAIT SYSCOSCOS LOG LOG COS CONT WAIT SYSCOSCONT SYSCOSVERIFY "; 498 [153]"CONT  VERIFYWAIT SYS SINWAIT LIST SYSLOGLIST SYS LOGCONT  *WAIT SYSLOGCONT SYS"; 499 [153]"COSCONT SYSCOSCONT SYSSINCONT RND WAIT SYSCOSCONT SYSSINCONTWAIT  WAIT SYSLOGCONT "; 500 [153]" SYSSINLIST SYSSINCONT SYSLOGCONT  WAIT SYSLOGCONT SYSCOSCONT SYSCOSCONT "; 501 [153]"  WAIT SYSCOSCONT RND WAIT SYSLOGCONT LIST  CONT *WAIT "; 502 [153]" SYSLOGCONT SYSLOGCONT SYSSINCONT SYSSINCONT SYSCOSCONT  WAIT SYSSINCONT SYSCOSCONT "; 503 [153]" WAIT SYSCOSCONT SYSSINCONTWAIT SYSLOGCONT SYSLOGCONT INT SYSLOGCONT SYS"; 504 [153]"COSCONT SYSSINCONT  WAIT SYSCOSCONT *WAIT SYSCOSCONT SYSSINCONT SYS"; 505 [153]"SINLOGCONT INT SYSLOGCONT SYSLOGCONT SYSSINCONT SYSSINCONTWAIT  WAIT SYSCOSCONT "; 506 [153]"SYSSINCONT SYSCOSCOS CONT INT SYSSINCONTWAIT SYSSINCONT "; 507 [153]" SYSCOSCONT  WAIT SYSSINCONTWAIT SYSSINCONT SYSSINCONTWAIT SYSCOSLIST":[142] 510 [143] *** CITYSCAPE12 511 [153]"LOADCLR "; 512 [153]" "; 513 [153]" "; 514 [153]" "; 515 [153]" OPENWAIT CLR NEWRND *NEWRNDPOS "; 516 [153]" NEWRND WAIT RND WAIT  NEWWAIT  WAIT  NEWRND"; 517 [153]"WAIT  TOANDOPENWAIT CLR ANDPOS WAIT FRE COS *WAIT "; 518 [153]" WAIT *WAIT RND WAIT OPEN  CLRNEW WAITCOS "; 519 [153]" OPEN CLR WAIT INT  WAIT "; 520 [153]" OPEN CLR WAIT INT  WAIT "; 521 [153]"TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANLIST":[142] 530 [143] *** CITYSCAPE13 531 [153]"LOAD "; 532 [153]" "; 533 [153]" + WAIT ABS "; 534 [153]"+ + WAIT  WAITCOS RND "; 535 [153]" WAIT  WAIT "; 536 [153]"  + CONTWAIT  "; 537 [153]" WAIT CONT   WAIT GET + WAIT"; 538 [153]" *WAIT CONT  CONT  CONT WAIT LIST GETWAIT "; 539 [153]" WAIT CONT   WAITCOSLIST "; 540 [153]" GETPOKEWAIT  CONT WAITGET  POKE  "; 541 [153]" CONT  CONT  CONT WAIT LIST POKE   + WAITFREFRE"; 542 [153]" WAITGET POKE   WAIT LIST PRINT#  CONT"; 543 [153]" WAIT CONT WAITGET  POKE  CONT "; 544 [153]" LIST   WAITCOS  WAIT  WAITGET "; 545 [153]" CONT LIST  CONT POKE LIST   CONT WAIT "; 546 [153]"CONT WAIT CONT WAIT CONT    LIST CONT"; 547 [153]" POKE CLOSECONT WAIT CONT WAITLIST":[142] 550 [143] *** CITYSCAPE14 551 [153]"LOAD "; 552 [153]" . . . . "; 553 [153]" . . "; 554 [153]" . WAIT  WAIT(null) WAIT  "; 555 [153]"WAIT  WAIT  WAIT (null) WAITSTEP "; 556 [153]"WAITLOG SIN  . WAIT  . (null) WAIT COS "; 557 [153]"  WAIT POKE   WAIT  POKE WAIT POKE "; 558 [153]"  WAIT  WAIT LOG  WAIT SIN COS POKE "; 559 [153]"  POKE SIN WAIT POKE *WAITFREUSRTAB(LIST  POKE LIST * COS "; 560 [153]"SIN  WAIT SIN POKE SIN COS RND TOANDNEWLISTWAIT "; 561 [153]" POKE WAIT POKE PRINT# OR POKE LOG COSWAITCOSLIST "; 562 [153]" POKE LOG COS PRINT#USRUSR OR OROR POKE PRINT# OR "; 563 [153]" LISTWAIT POKE PRINT# RNDRNDRND+ OR OR OR"; 564 [153]" POKE PRINT# OR WAITFRELIST PRINT# +POKE PRINT# COSCOSCOS+"; 565 [153]" OR OR OR WAITUSRLIST PRINT#SIN LOG+POKE "; 566 [153]"PRINT# + OR OR POSPOSWAITUSRUSRLIST PRINT#"; 567 [153]" + OR ANDNEWWAIT LIST "; 568 [153]" PRINT# TOTOSQRNEWWAITFRETAB(LIST PRINT#LIST":[142] 690 [143] *** LEA LISON2 691 [153]"LOADLIST ABS FOR NEWNEWPOSAND LIST GET "; 692 [153]" GET FOR COS USRFRECOSLOGWAITRNDLIST ABS "; 693 [153]" ABS FOR COS*TOWAITCOSDEFFREWAITRNDFOR**"; 694 [153]"WAITRNDLIST GET GET DEF FOR SIN+DEF"; 695 [153]"WAITNEW WAITNEWTHENFORFNGET LISTWAIT ABS ABS "; 696 [153]" DEF FOR INT+DEF AND WAITGETFORRNDSINLOGLISTWAIT GET "; 697 [153]" GET FOR *COSLOGDEFRND *FORCOSCOSABSWAITGETRNDLIST ABS "; 698 [153]" ABS FOR SIN WAITRNDDEFFREWAITRNDFORFNWAITSINLOGWAITCOS"; 699 [153]"*LISTWAIT GET GET DEF LIST FOR DEFSTEPFOR"; 700 [153]"COSWAIT*DEFCOS TAB(WAITRNDDEF(null)FOR WAITCOSLIST ABS "; 701 [153]" ABS DEF LIST FOR DEFTHEN INT (null)DEFRND (null) DEFINTFORWAIT*COSLIST GET "; 702 [153]" GET DEF LIST FOR DEFABS WAIT(null) WAITCOS WAIT"; 703 [153]"STEPDEFCOSWAIT LIST ABS ABS DEF LIST DEFABS"; 704 [153]" FORWAIT (null)FREFREFRE(null)WAITDEF+ LISTWAIT GET":[142] 900 [141]490:VI[178]53248:[137]80 10000 D[178][194](186):N$[178]"0:INF4.MAIN":[159]15,D,15,"S"[170]N$:[160]15:[148]N$,D:[128]