; REAR DOOR; BY GREG KNAUSS; (c)1987, ANTIC PUBLISHINGBYTE IT,KEY,KILL,ALN,MEN,LVLBYTE ARRAY LOCK(3)CARD PM,I,J,WAIT,SCRPROC DL() [112 112 70 0 0 7 130 5 5 5 5 5 5 5133 2 2 2 2 2 65 DL]PROC DLI()򮠛[72 238 0 5 173 0 5 141 10 212 201 2240 17 169 0 141 9 212 169 42 141 23208 169 15 141 24 208 104 64 169 224141 9 212 169 15 141 23 208 169 0 14124 208 141 0 5 104 64] PROC CHR()䠛󮠛[85 85 85 85 85 85 85 850 0 0 0 0 0 0 085 85 85 85 84 84 84 8485 85 85 0 0 63 63 6385 85 85 0 0 252 252 25285 85 85 85 21 21 21 2185 85 84 80 64 64 0 084 80 0 0 0 0 0 00 0 0 0 0 21 31 310 0 0 0 0 84 100 6821 5 0 0 0 0 0 085 85 21 5 1 1 0 00 0 0 0 64 64 64 1060 0 0 16 16 16 16 16021 28 19 21 0 0 0 084 196 52 84 0 0 0 00 0 0 4 4 4 4 100 0 0 0 1 1 1 169106 106 90 85 85 85 85 85111 159 160 80 64 64 64 64250 250 0 0 0 0 1 1175 175 0 0 0 0 64 64249 246 10 5 1 1 1 1169 169 165 85 85 85 85 8585 105 170 170 170 170 170 17085 85 149 170 170 170 170 17064 0 0 0 0 0 0 01 1 2 10 10 10 10 1064 64 64 160 160 160 160 1601 0 0 0 0 0 0 085 86 170 170 170 170 170 17089 170 170 170 170 170 170 170170 170 170 170 170 170 170 170170 175 191 191 170 170 170 1700 255 255 255 170 170 170 17010 10 250 250 170 170 170 170160 160 175 175 170 170 170 1700 255 255 255 170 170 170 170170 250 254 254 170 170 170 17085 85 85 85 85 85 87 8785 85 85 85 85 255 255 23985 85 85 85 85 253 255 23985 85 85 87 87 95 95 9587 119 253 253 253 255 255 255251 255 255 247 247 127 127 102191 255 253 125 125 247 247 10385 117 253 255 255 255 255 25585 85 85 85 85 213 213 21395 95 95 95 95 87 87 87247 247 215 215 247 245 245 253221 255 255 255 255 255 255 255223 255 255 255 255 253 253 253127 127 95 95 127 127 127 255213 213 213 213 213 85 85 8587 85 85 85 85 85 85 85213 221 253 85 87 87 95 95255 127 127 255 255 253 245 245253 245 245 253 255 255 127 12795 221 253 85 85 85 213 21385 105 170 170 170 170 170 17085 85 149 170 170 170 170 17095 127 191 191 255 255 255 255245 245 234 234 234 170 170 170127 127 95 175 175 171 171 171213 245 245 250 254 254 254 25485 86 170 170 170 170 170 17089 170 170 170 170 170 170 170171 191 186 171 170 170 170 170255 255 254 250 170 170 170 170170 234 170 170 170 170 170 170171 175 170 170 170 170 170 170255 255 254 191 170 170 170 170170 250 186 170 170 170 170 170255 255 255 255 255 255 255 2550 0 0 0 255 255 255 255255 255 255 255 0 0 0 00 0 0 0 15 63 255 2550 0 0 0 240 252 255 255255 255 63 15 0 0 0 0255 255 252 240 0 0 0 00 48 240 48 48 48 252 00 252 12 252 192 192 252 00 252 12 60 12 12 252 0]PROC BULLET()宠[0 60 126 126 255 255 255 255255 255 255 255 126 126 60 00 0 60 126 126 255 255 255255 255 255 126 126 60 0 00 0 0 60 126 126 255 255255 255 126 126 60 0 0 00 0 0 0 60 126 126 126126 126 60 0 0 0 0 00 0 0 0 0 60 126 126126 126 60 0 0 0 0 00 0 0 0 0 0 24 6060 24 0 0 0 0 0 00 0 0 0 0 0 0 6060 0 0 0 0 0 0 00 0 0 0 0 0 0 2424 0 0 0 0 0 0 0170 200 73 90 114 52 155 60109 152 61 116 82 90 145 137]PROC CLD()򮠛FOR J=0 TO 95 DO FOR I=0 TO 2 DOPOKE(PM+1096+I*256+J,255) OD ODRETURNPROC OPD()򮠛FOR J=0 TO 96 DO FOR I=0 TO 2 DOPOKE(PM+1192+I*256-J,0) OD ODRETURNPROC GOODGUY()宠PRINTE("!!#$%&!!") PRINTE("!'()*+,!")PRINTE("!-./012!") PRINTE("!345678!")PRINTE("9:;<=>?@") PRINTE("ABCDEFGA")RETURNPROC GUYS()IT=RAND(3) IF LVL>6 THEN IT=RAND(4) FIFOR J=0 TO 2 DOPOKE(82,4+J*12) POSITION(4+J*12,3)IF J=IT OR LVL=0 THEN IF LVL<3 THENPRINTE("!!!!!") PRINTE("!!")PRINTE("!!") PRINTE("!!!")PRINTE("\]߀") PRINTE("AA")ELSEIF LVL>2 AND LVL<5 THENPRINTE("!!!!") PRINTE("!!")PRINTE("!!") PRINTE("!!")PRINTE("9@") PRINTE("AA")ELSEIF LVL>4 THEN GOODGUY() I=RAND(3)POSITION(4+J*12,I*2+4)IF I=0 THEN PRINT("!!!!")ELSEIF I=1 THEN PRINT("!!")ELSE PRINT("AA") FI FIELSE GOODGUY() FI OD RETURNPROC SETUP()GRAPHICS(0) POKE(559,0) POKE(752,1)SETBLOCK(704,4,6) POKE(708,0)POKE(709,4) POKE(710,8) POKE(711,180)POKE(712,8)PM=PEEKC(88) POKEC(DL+3,PM)PM=(PEEK(106)-8)*256 ZERO(PM,1024)MOVEBLOCK(PM+8,CHR,1024)POKE(DLI+15,PM/256)PM=(PEEK(106)-24)*256POKE(54279,PM/256) POKE(53277,3)ZERO(PM,2048) POKE(623,1)SETBLOCK(53256,3,3) FOR I=0 TO 2 DOPOKE(53248+I,64+I*48) ODPOSITION(26,0) PRINT("REARDOOR")POSITION(7,1)PRINT("(c) 1987 Antic Publishing")FOR J=0 TO 2 DO POKE(82,3+J*12)POSITION(3+J*12,2)PRINTE(" ")PRINTE(" ")PRINTE(" ")PRINTE(" ")PRINTE(" ")PRINTE(" ")PRINTE(" ")PRINTE(" ") ODPOSITION(2,3) PRINT("")POSITION(14,3) PRINT("")POSITION(26,3) PRINT("")POKE(82,0) POSITION(0,10)PRINT("ծӮӮ")PRINT("")PRINT("|󠠠|")PRINT("| Score: Level: 1 |")PRINT("")POSITION(9,13) PRINTC(SCR) RETURNPROC LOCKS()󮠛POSITION(2,1) PRINT("Please enter ")PRINT("the key to open lock #")FOR I=0 TO 2 DO POSITION(37,1)PRINTC(I+1) POKE(764,255)WHILE PEEK(764)=255 DO ODLOCK(I)=PEEK(764) FOR J=0 TO 150DO SOUND(0,20,10,15-J/10) OD ODSNDRST() POSITION(2,1)PRINT(" Copyright 1987 ")PRINT("Antic Publishing") RETURNPROC GAME()宠SCR=0 LOCK(0)=31 LOCK(1)=30 LOCK(2)=26DO SETUP() ALN=0 MEN=0 LVL=1 SCR=0CLD() POKE(1280,0) POKEC(512,DLI) POKEC(560,DL) POKE(54286,192)POKE(559,62)WHILE PEEK(53279)<>6 DOIF PEEK(53279)=5 THEN LVL==+1IF LVL=6 THEN LVL=1 FIPOSITION(37,13) PRINTB(LVL)FOR I=1 TO 10000 DO OD FIIF PEEK(53279)=3 THEN LOCKS() FI ODPOSITION(1,1) PRINT("Men on board: 0")PRINT(" Aliens on board: 0")POSITION(9,13) PRINT("0 ")POSITION(1,12)PRINT("Ǻ")PRINT("򮠠")𮠛WAIT=200DO GUYS() OPD() POKE(764,255)SOUND(0,WAIT,10,4)SOUND(1,WAIT+2,10,4)POKE(16,112) POKE(53774,112)FOR I=1 TO WAIT*100-LVL*250 DO KILL=5򮠛KEY=PEEK(764) IF KEY=LOCK(0) ORKEY=LOCK(1) OR KEY=LOCK(2) THENIF KEY=LOCK(0) THEN J=76 KILL=0ELSEIF KEY=LOCK(1) THEN J=124 KILL=1ELSE KEY=LOCK(2) J=172 KILL=2 FIMOVEBLOCK(PM+1892,BULLET,16)POKE(53251,J) SNDRST()FOR I=1 TO 160 DO IF I MOD 18=0 THENMOVEBLOCK(PM+1892,BULLET+(I/16)*16-16,16) FISOUND(0,I+50,8,15-I/11) ODPOKE(707,76) SNDRST()IF KILL=IT THEN FOR I=1 TO 100 DOSOUND(0,100-I,2,10-I/10)SOUND(1,I,2,10-I/10)OD MEN==+2 SCR==+LVL EXIT FIIF KILL<>5 AND KILL<>IT THENFOR I=1 TO 10000 DO ODIF IT<>3 THEN ALN==+1 MEN==+1ELSE MEN==+2 FI SCR==-10*LVLIF SCR>5000 THEN SCR=0 FI EXIT FI FIOD򮠛CLD() POKE(707,6) POKE(53251,0)ZERO(PM+1892,16)䮠IF KEY=255 AND IT<>3 THEN ALN==+1MEN==+2 FIIF KEY=255 AND IT=3 THEN MEN==+3 FI殠POSITION(15,1) PRINTB(MEN)POSITION(38,1) PRINTB(ALN)POSITION(9,13) PRINTC(SCR)PRINT(" ")根䮠IF ALN>8 THEN EXIT FI쮠IF WAIT>85-LVL*5 THEN WAIT==-5ELSE WAIT=200 LVL==+1SNDRST() SOUND(0,100,10,2)FOR I=1 TO 10000 DO OD SNDRST()POSITION(15,1) PRINT("0 ")SCR==+MEN MEN=0 POSITION(9,13)PRINTC(SCR) POSITION(1,12)PRINT("䮠")PRINT("")FOR I=1 TO 10000 DO OD POKE(764,255)WHILE PEEK(764)=255 DO ODPOSITION(1,12)PRINT("Ǻ")PRINT("")POSITION(11,12) IF LVL=2 THENPRINT("")ELSEIF LVL=3 THENPRINT("")ELSEIF LVL=4 THENpRINT("")ELSEIF LVL=5 THENPRINT("")ELSEIF LVL=6 THENPRINT("")ELSEIF LVL=7 THENPRINT("")ELSEIF LVL=8 THENPRINT("")ELSEIF LVL=9 THENPRINT("")ELSEIF LVL>9 THENPRINT("") FI FIPOSITION(37,13) PRINTB(LVL) ODSOUND(0,WAIT-5,10,4)SOUND(1,WAIT-3,10,4)LVL=0 GUYS() OPD()䮠SNDRST() SOUND(1,200,8,2)FOR J=1 TO 6 DO SOUND(0,200,10,10)FOR I=1 TO 200 DO IT=RAND(4)+3POKE(DL,IT*16) OD SOUND(0,0,0,0)FOR I=1 TO 200 DO IT=RAND(4)+3POKE(DL,IT*16) OD ODFOR I=1 TO 600 DO IT=RAND(4)+3POKE(DL,IT*16)SOUND(0,250-I/3,8,I/46+2)SOUND(1,252-I/3,2,I/46+2) ODGRAPHICS(19) POKE(DL,112)FOR I=1 TO 1500 DOJ=RAND(16)*16 IT=J+(15-I/100)POKE(54282,0) POKE(53274,IT)FOR MEN=0 TO 2 DO ALN=RAND(255)POKE(53248+MEN,ALN)POKE(53266+MEN,256-IT) ODSOUND(0,100,8,15-I/100)SOUND(1,150,8,15-I/100) OD宠OD