Home » Personal collection » Acorn tapes » Commercial_Releases » box04_tape06b_acorn_stolen_lamp.wav » LAMP2
LAMP2
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Personal collection » Acorn tapes » Commercial_Releases » box04_tape06b_acorn_stolen_lamp.wav |
Filename: | LAMP2 |
Read OK: | ✔ |
File size: | 4400 bytes |
Load address: | 1200 |
Exec address: | 1200 |
Duplicates
There are 2 duplicate copies of this file in the archive:
- STH website » Lothlorien » Lothlorien_StolenLamp_BE_StolenLamp_BE.uef » LAMP2
- AEW website » lothlorien » lothlorien_tapes_The-Stolen-Lamp_StolenLamp_BE.uef » LAMP2
- Personal collection » Acorn tapes » Commercial_Releases » box04_tape06b_acorn_stolen_lamp.wav » LAMP2
File contents
10REM (c) M. C. Lothlorien 1983 11TITLE$="THE STOLEN LAMP" 20XX=1060 30ONERRORGOTO4000 40*KEY10 PAGE=&1200|MOLD|MRUN|M 60O=&C00 70O?255=RND(4):O?249=8:O!245=0:O!241=0 75MODE5:PROCtl:MODE6:HIMEM=PAGE+&3E00 80RESTORE100:FORZ=1TO45:READO?Z:NEXT 90DEAD=FALSE:PC=0:CLS 100DATA255,255,255,20,4,11,4,10,0,0,0,10,47,0,25,21,22,19,24,31,27,36,39,33,25,34,4,37,29,30,25,27,40,0,0,31,34,0,35,32,19,23,23,33,0 110PROCl(XX) 120REPEAT 130PROCparse(1):PRINT'TAB(13)A1$" "A3$ 140REM 150IFGT%=1PROChelp 160IFGT%=2PROCget(OB%) 170IFGT%=3PROCre(OB%) 180IFGT%=4PROCin(255) 190GO=-1:IFGT%=6GO=DN ELSEIFGT%=7GO=DS ELSEIFGT%=8GO=DE ELSEIFGT%=9GO=DW ELSEIFGT%=10GO=DU ELSEIFGT%=11GO=DD 200IFGO=23ANDO?17=22PRINT"The statue blocks your way":GO=-1 210IFGO=30ANDO?29=29PRINT"The guard blocks your way":GO=-1 220IFGO=35ANDO?36=31PRINT"The door is locked":GO=-1 230IFGO=37ANDO?44=33PRINT"The tiger blocks your way":GO=-1 240IFO?249=O?40ANDGO<>-1PRINT"You are too enchanted to move":GO=-1 250IFGO=0PRINT"There is no way to go in that direction" 260IFGO>0PROCmv(XX):IFPC<>0MODE5:PROCpc(PC):MODE6:HIMEM=PAGE+&3E00 270IFGT%=5ANDPC<>0MODE5:PROCpc(PC):MODE6:HIMEM=PAGE+&3E00 280IFGO>0ORGT%=5PROCl(XX) 290IFO?5=4ANDGO=3ANDGT%=8PROCpp 300IFGT%=12PROCdr(OB%) 310IFGT%=13PROCsc 320IFGT%=14PROCsay(OB%) 330IFGT%=15PROCpl(OB%) 340IFGT%=16PROCsv 350IFGT%=17PROCrs:GT%=-1:GO=O?249:GOTO260 360IFGT%=18PROCby(OB%) 370IFGT%=19PROCk(OB%) 380IFGT%=20PROCth(OB%) 390IFGT%=21PROCst(OB%) 400IFGT%=22PROCsm(OB%) 410IFGT%=23PROCsc:PROCq 420IFGT%=24PROCop(OB%) 430IFGT%=25PROCrub(OB%) 440IFO?248>0ANDO?248<50PROCgr 450REM 460IF(O?249=O?31ORO?31=255)ANDO?28=255PRINT"The girl calls out 'someone is taking"'"the lamp away'":IFO?32>0PRINT"The Vizier hears her and rushes in":O?32=O?249 470IFO?245O?32=O?249 480IFO?32=O?249ANDO?28=255PRINT"The Vizier sees that you are taking"'"the lamp and chases you":O?245=1 490IFO?249=11ANDO?28=255PROCend 500IFO?32=O?249PRINT"The Vizier attacks you":O?246=O?246+1:IFO?246>3DEAD=TRUE 510REM 520IFO?43=33ANDO?44=33PRINT"The tiger tries to eat the herring,"'"chokes on a fish bone,"'"and dies":O?43=0:O?44=0 530IFO?249=O?40 O?242=1:X=O?40:IFX=O?19ORX=O?18ORX=O?20ORX=O?25PRINT"The enchantress spots the treasure"'"For a moment, her concentration slips":O?242=0 540IFO?249=O?40ANDO?242=1O?243=O?243+1:PRINT"The enchantress removes veil number ";O?243:IFO?243=7PRINT"While you are watching, her boyfiend"'"sneaks up and garottes you"'"They steal all your treasure to"'"sell in the town"'"HOWEVER ";:DEAD=-1 550REM 560IFO?249=31ANDO?28=255PRINT"You have brought light into the"'"dark room":IFO?244=0:PRINT"The light falls on the face of a"'"gorgon":IFO?33<>255PRINT"You see it, and are turned to stone":DEAD=TRUE 570IFO?249=31ANDO?28=255ANDO?244=0ANDO?33=255PRINT"The gorgon sees its own reflection"'"in your mirror and turns to stone":O?244=1 580REM 590IFO?249=O?30ANDO?8=255PRINT"The moths eat the carpet":O?8=0 600UNTILDEAD ORGT%=23 610IFDEAD PRINT"YOU ARE DEAD" 620IFDEAD ORGT%=23INPUT"PRESS RETURN TO START AGAIN"A$:GOTO70 630DEFFNup(A$):B$="":FORI%=1TOLEN(A$) 640C%=ASC(MID$(A$,I%,1)):IFC%>96C%=C%-32 650B$=B$+CHR$(C%):NEXT:=FNst(B$) 660DEFFNst(A$) 670IFLEFT$(A$,1)=" "A$=RIGHT$(A$,LEN(A$)-1):GOTO670 680IFRIGHT$(A$,1)=" "A$=LEFT$(A$,LEN(A$)-1):GOTO680 690=A$ 700DEFPROCparse(Z) 710REPEAT:INPUTLINE"What now ?..."A$:UNTILLEN(A$)>0 720A$=FNup(A$):X=INSTR(A$," "):IFINSTR(FNst(RIGHT$(A$,LEN(A$)-X))," ")<>0PRINT"I can only understand two words at once":GOTO710 730IFX=0A1$=A$:A2$=""ELSEA1$=FNst(LEFT$(A$,X-1)):A2$=FNst(RIGHT$(A$,LEN(A$)-X)) 740A3$=FNv(A1$):IFLEN(A3$)=0:PRINT"I don't know what you mean by '"A1$"'":GOTO710:ELSEA1$=A3$ 750A3$=FNn(A2$):IFLEN(A2$)>0ANDOB%=0 PRINT"I don't know what a "A2$" is":GOTO710 760IFVF%=1ANDLEN(A2$)>0:PROCer(A1$,A3$):GOTO710 770IFOB%=0ANDVF%>1:PRINT"What do you want to "A1$:GOTO710 780IFVF%=3ANDO?OB%<>255ANDO?OB%<>O?249:PRINT"The "A3$" is not here":GOTO710 790ENDPROC 800DEFFNv(A$):RESTORE860 810IFLEN(A$)=0THEN="" 820I%=1 830REPEAT:READB$,VF%,GT%:UNTILA$=LEFT$(B$,LEN(A$))ORLEN(B$)=0 840=B$ 850REM 860DATAHELP,0,1,TAKE,3,2,GET,3,2,CARRY,3,2,READ,3,3,INVENTORY,1,4,LOOK,0,5 870DATANORTH,1,6,SOUTH,1,7,EAST,1,8,WEST,1,9,UP,1,10,DOWN,1,11,DROP,3,12,DUMP,3,12,LEAVE,3,12 880DATASCORE,1,13,SAY,2,14,PULL,3,15,SAVE,0,16,RESTORE,0,17,BUY,3,18,PURCHASE,3,18 890DATAKILL,3,19,ATTACK,3,19,THUMP,3,20,STAB,3,21,SMASH,3,22,HIT,3,20,QUIT,1,23,OPEN,3,24,UNLOCK,3,24 900DATARUB,3,25,,0,0 910DEFPROCer(A$,B$):PRINT"You can't "A$" the "B$:ENDPROC 920DEFFNn(A$):RESTORE980 930OB%=0 940IFLEN(A$)=0THEN="" 950REPEAT:READB$:OB%=OB%+1:UNTILA$=LEFT$(B$,LEN(A$))ORLEN(B$)=0 960IFLEN(B$)=0OB%=0 970=B$ 980DATACOIN,GRENADE,PIN,SLEDGEHAMMER,PICKPOCKET,EMPEROR,MESSAGE,CARPET,SHAZAM,ALLAKAZAM,ABRACADABRA,SALESMAN,DICTIONARY,SWORD,COLUMN,PILLAR 990DATASTATUE,DIAMOND,GOLD,SILVER,RUBY,NECKLACE,PEARLS,EMERALD,BRACELET,RING,GOBLET,LAMP,GUARD 1000DATAMOTH,GIRL,VIZIER,MIRROR,BOX,KEY,DOOR,CRATE,PLATINUM,SIGN,ENCHANTRESS,CAMEL,SCREWDRIVER,HERRING,TIGER,LOTHLORIEN, 1010DEFPROChelp:IFOB%<>0:PRINT"The "A3$" doesn't need any help":ENDPROC 1020Z=RND(3):IFZ=1PRINT"The camel says 'TWO HUMPS ARE BETTER"'"THAN ONE'":ENDPROC 1030IFZ=2PRINT"Feel free to help yourself":ENDPROC 1040PRINT"You got yourself into this mess"'"I think you should get yourself out":ENDPROC 1050REM 1060REM--BASE LINE FOR RESTORE-- 1070DATA0,0,9,2,0,0,0,2,in the Street of a Thousand,Wayfarers 1080DATA0,3,1,0,0,0,0,1,at the corner of two streets 1090DATA2,5,0,4,0,0,0,2,in the Street of,the Blue Lizard 1100DATA0,0,3,0,0,0,1,1,inside the Blue Lizard Inn 1110DATA3,0,6,0,0,0,0,1,at the corner of two streets 1120DATA0,10,7,5,0,0,0,1,in Carpetmaker's Lane 1130DATA8,0,0,6,0,0,0,1,at the corner of two streets 1140DATA9,7,11,0,0,0,0,1,in the Road of Silence 1150DATA0,8,0,1,0,0,0,1,at the corner of two streets 1160DATA6,0,0,0,0,0,3,1,in the carpet shop 1170DATA0,0,0,8,0,0,2,3,in the Emperors Palace,The Emperor asks you to find the,stolen magic lamp 1180DATA13,14,15,16,0,8,-1,2,"flying, on the carpet,",above the town. 1190DATA13,12,15,16,0,20,-2,1,flying over the desert 1200DATA12,14,17,16,0,18,-2,1,flying over the desert 1210DATA13,14,15,12,0,18,-2,1,flying over the desert 1220DATA13,14,12,16,0,18,-2,1,flying over the desert 1230DATA15,14,15,14,0,19,-3,1,flying over the Vizier's palace 1240DATA18,18,18,18,0,0,0,1,in the middle of the desert 1250DATA21,0,0,0,0,0,0,1,outside the Vizier's palace 1260DATA20,20,20,20,0,0,0,1,in the middle of the desert 1270DATA25,19,22,0,0,0,9,2,at the south end of,the entrance hall 1280DATA0,0,23,21,0,0,6,2,on a narrow bridge spanning,a pit full of boiling oil 1290DATA0,0,24,22,0,0,0,1,in a corridor 1300DATA28,0,0,23,0,0,0,1,in the library 1310DATA29,21,26,0,0,0,10,2,at the north end of,the entrance hall 1320DATA0,0,27,25,0,0,0,1,in the Vizier's outer chamber 1330DATA0,0,0,26,0,0,0,1,in the Vizier's inner chamber 1340DATA0,24,0,0,0,41,4,3,in a small room,There is a deep pit with nasty looking,spikes at the bottom 1350DATA0,25,30,0,0,0,0,1,in the guard room 1360DATA0,0,31,29,0,0,0,1,in a corridor 1370DATA35,0,32,30,0,0,8,1,in the dark room 1380DATA36,0,0,31,0,0,0,1,in the harem 1390DATA37,0,34,0,0,0,0,1,in the tiger's den 1400DATA38,0,35,33,0,0,0,1,in the treasure vault 1410DATA39,31,0,34,0,0,0,2,at the entrance to the,treasure vault 1420DATA40,32,0,0,0,0,0,1,in the bathing room 1430DATA0,33,0,0,0,0,7,1,in the lamp room 1440DATA0,34,0,0,0,0,0,1,in a stone chamber 1450DATA0,35,0,0,0,0,0,1,at a dead end 1460DATA0,36,0,0,0,0,0,1,in a bedchamber 1470DATA43,42,42,43,0,44,5,2,at the bottom of a pit,on a pile of RUBBER spikes 1480DATA41,43,44,42,43,42,22,1,in the catacombs 1490DATA43,42,42,44,41,45,99,1,in the catacombs 1500DATA46,47,43,45,43,43,99,1,in the catacombs 1510DATA44,43,41,43,45,44,99,1,in the catacombs 1520DATA45,46,47,46,45,44,99,1,in the catacombs 1530DATA41,47,44,46,45,44,99,1,in the catacombs 1540DEFPROCl(Z) 1550RESTOREZ+10*(O?249):READDN,DS,DE,DW,DU,DD,X,NL:PRINT"You are "; 1560FORI=1TONL:READZ$:PRINTZ$:NEXT:PRINT:PROCin(O?249):PRINT"EXITS: "; 1570IFDN:PRINT"North "; 1580IFDS:PRINT"South "; 1590IFDE:PRINT"East "; 1600IFDW:PRINT"West "; 1610IFDU:PRINT"Up "; 1620IFDD:PRINT"Down "; 1630PRINT':ENDPROC 1640DEFPROCmv(Z):O?249=GO:RESTOREZ+10*(O?249):READDN,DS,DE,DW,DU,DD,PC:ENDPROC 1650DEFPROCin(L):RESTORE1720 1660IFL=255PRINT"You are carrying:-"ELSEPRINT"You can see:-" 1670I%=1:J%=0:REPEAT:READZ$ 1680IFO?I%=L PRINTZ$:J%=1:IFI%=3AND(O?248=0)PRINT"the pin is in the hand grenade" 1690I%=I%+1:UNTILLEN(Z$)=0:IFJ%=0:PRINT"Nothing" 1700PRINT:ENDPROC 1710REM 1720DATAa gold coin,a hand grenade,a pin,a sledgehammer,a pickpocket,the Emperor,a message,a Persian carpet,X,X,X,a salesman,a dictionary 1730DATAa sword,a column,a pillar,a living statue,a large diamond,a gold bar,a silver bar,a ruby,a beautiful necklace,a string of pearls,an emerald,a gold bracelet,a diamond ring,a jewel encrusted goblet 1740DATAAladdin's lamp,a mean looking guard,a swarm of moths,a girl,the grand vizier,a mirror,a box labelled 'KEY BOX',a key,the north door is locked,a crate,a huge block of solid platinum 1750DATAa sign,an enchantress,a camel,a screwdriver,a red herring,a tiger,X, 1760DEFPROCget(X):IFO?X=255:PRINT"You already have the "A3$:ENDPROC 1770IFX=37ORX=38PRINT"It's much too heavy":ENDPROC 1780IFX=8ANDO?247=0PRINT"The salesman says":PROCer2:PRINT"You haven't paid for it":ENDPROC 1790IFX=5ORX=6OR(X=3ANDO?248=0)ORX=12ORX=15ORX=16ORX=17ORX=29ORX=30ORX=32ORX=36ORX=40ORX=44PROCer2:ENDPROC 1800O?X=255:PRINT"O.K.":IFX=2ANDO?248=0 O?3=255 1810ENDPROC 1820DEFPROCer2:PRINT"You can't do that!":ENDPROC 1830DEFPROCdr(X):IFO?X<>255:PRINT"You are not carrying the "A3$:ENDPROC 1840IFX=3ANDO?248=0PRINT"You would have to PULL it first":ENDPROC 1850PRINT"O.K.":O?X=O?249 1860IFO?249>11ANDO?249<18ANDX=8PRINT"Without the carpet, you plummet to"'"the ground":DEAD=TRUE:ENDPROC 1870IFO?249>11ANDO?249<18PRINT"It falls off the carpet" 1880IFO?249=12O?X=8 1890IFO?249=13O?X=20 1900IFO?249>13ANDO?249<17O?X=18 1910IFO?249=17O?X=19 1920IFO?249<10:PRINT"A bypasser picks up the "A3$'"and walks off with it":O?X=0 1930IFO?249>41ANDO?249<47ANDRND(3)=1:PRINT"A lost soul wanders through,"'"picks up the "A3$" and walks off"'"with it":O?X=0 1940IFX=2ANDO?248=0O?3=O?2 1950ENDPROC 1960DEFPROCre(X):IFX<>7ANDX<>1ANDX<>13ANDX<>39PROCer(A1$,A3$):ENDPROC 1970IFX=13:GOTO2020 1980IFX=39PRINT"It says THIS WAY TO TREASURE BEYOND"'"YOUR WILDEST DREAMS"'" <=====":ENDPROC 1990IFX=1:PRINT"It says ALADDIN XIII 1983":ENDPROC 2000PRINT"It says TODAYS MAGIC WORD IS ";:IFO?255=1PRINT"SHAZAM"ELSEIFO?255=2PRINT"ALLAKAZAM"ELSEIFO?255=3PRINT"ABRACADABRA"ELSEPRINT"LOTHLORIEN" 2010ENDPROC 2020PRINT"It says:- this is a complete list of"'"verbs understood in this adventure" 2030RESTORE860:REPEAT:READA2$,X,Z:PRINTA2$" "; 2040IFPOS>25:PRINT 2050UNTILLEN(A2$)=0:PRINT:ENDPROC 2060DEFPROCsay(X):IFX<9ORX>11ANDX<>45PRINT"O.K. '"A3$"'":ENDPROC 2070IFO?255=4ANDX=45THEN2090 2080IFX-8<>O?255:PRINT"That's the wrong magic word"'"It causes a ferocious djinn to appear"'"The djinn kills you":DEAD=TRUE:ENDPROC 2090IF(O?8<>255ANDO?8<>O?249)OR(O?249>11ANDO?249<18):PRINT"Nothing happens":ENDPROC 2100REM 2110IFO?8=O?249PRINT"The carpet flies away":O?8=0:ENDPROC 2120A$="The carpet soars into the air with you" 2130IFO?249<9ANDO?249<>4:PRINTA$:O?249=12:PROCl(XX):ENDPROC 2140IFO?249=18:PRINTA$:O?249=16:PROCl(XX):ENDPROC 2150IFO?249=19:PRINTA$:O?249=17:PROCl(XX):ENDPROC 2160IFO?249=20:PRINTA$:O?249=13:PROCl(XX):ENDPROC 2170PRINTA$'"and crashes into the ceiling at 100MPH":DEAD=TRUE:ENDPROC 2180DEFPROCgr:O?248=O?248+1:IFO?248<6:ENDPROC 2190PRINT'''" B O O M !"''"The grenade explodes":O?248=100:IFO?249=O?2ORO?2=255:DEAD=TRUE:ENDPROC 2200IFO?6=O?2:PROCemd:ENDPROC 2210IFO?2=O?34O?35=O?2 2220X=O?2:FORI%=1TO64:IFX=O?I%ANDI%<>35ANDI%<>36O?I%=0 2230NEXT:ENDPROC 2240REM 2250DEFPROCemd:PRINT"You have killed the Emperor"'"The Imperial guard track you down"'"and kill you"':DEAD=TRUE:ENDPROC 2260DEFPROCpl(X):IF(X=2ORX=3)ANDO?248=0 O?248=1:PRINT"O.K.":ENDPROC:ELSEIFX=31PRINT"She is not impressed by your advances":ENDPROC:ELSEPROCer(A1$,A3$):ENDPROC 2270DEFPROCp(B):D=5:B=B+PAGE-&1200 2280X=?B:Y=B?1:IFX=253:ENDPROC 2290REMPRINTTAB(0,0)"&";~B" ";X" ";Y" ":W=GET 2300IFX=254GCOL0,Y ELSEIFX=255PROCtr ELSEIFX>239VDU19,X-240,Y;0;ELSEPLOTD,X*10,Y*10 2310B=B+2:GOTO2280 2315DEFPROCtr:D=Y:B=B+2:MOVE?B*10,B?1*10:IFD=85 B=B+2:MOVE?B*10,B?1*10 2316ENDPROC 2320DEFPROCpc(B):IF B<0GOTO2470 ELSEIFB=8VDU19,3,4;0;:ELSEIFB=1VDU19,1,4;0; 2330PROCp(&5000) 2340IFDN ANDB<>9PROCp(&501C) 2350IFDW PROCp(&5028) 2360IFDE PROCp(&5034) 2370IFB=1:PROCp(&5040) 2380IFB=2:PROCp(&50DE) 2390IFB=3:PROCp(&5128) 2400IFB=4:PROCp(&51F2) 2410IFB=5:PROCp(&5208) 2420IFB=6:PROCp(&5266) 2430IFB=7:PROCp(&5298) 2440IFB=8:PROCp(&52D2) 2450IFB=9:PROCp(&53EE) 2460IFB=10:PROCp(&5420) 2470IFB=-1:PROCp(&5172):PROCp(&5192) 2480IFB=-2:PROCp(&5172) 2490IFB=-3:PROCp(&5172):PROCp(&51B6) 2500INPUTTAB(0,0)"RETURN to continue"A$:ENDPROC 2510DEFPROCsv 2520*SAVE LAMPSAVE C00 D00 2530ENDPROC 2540DEFPROCrs:CLS 2545PRINT"Place previously saved Cassette"'"in Recorder and press PLAY" 2550*LOAD LAMPSAVE C00 2560ENDPROC 2570DEFPROCpp:FORI=1TO100:IFO?I=255O?I=4 2580NEXT:PRINT'"YOU HAVE JUST BEEN ROBBED"':ENDPROC 2590DEFPROCby(Z):IFZ<>8:PRINT"The "A3$" is not for sale":ENDPROC 2600REM 2610IFO?1<>255:PRINT"You don't have any money":ENDPROC 2620O?1=0:O?247=1:PRINT"O.K. the carpet is now yours":ENDPROC 2630DEFPROCk(X)PRINT"What with?"'"Type STAB "A3$" to use SWORD"'"Type SMASH "A3$" to use SLEDGEHAMMER"'"Type THUMP "A3$" to use your fists":ENDPROC 2640DEFPROCsm(X):IFO?4<>255:PRINT"You need a sledgehammer to do that":ENDPROC 2650IFX=29ORX=30ORX=32ORX=44PROCdd:ENDPROC 2660IFX=34ORX=36PRINT"The "A3$" is too strong":ENDPROC 2670IFX=40ANDO?242=1PRINT"The enchantment prevents you from"'"doing that":ENDPROC 2680PRINT"You sure smashed that "A3$:O?X=0:IFX=6:PROCemd 2690REM 2700IFX=16PRINT"There was a sword inside":O?14=21 2710IFX=15PRINT"There was a box inside":O?34=25 2720IFX=37PRINT"There was a 26 ton block of solid"'"platinum inside":O?38=34 2730IFO?15=0ANDO?16=0PRINT"The ceiling collapses on you":DEAD=TRUE 2740IFX=17PROCspa:ENDPROC 2750IFX=2OR(X=3ANDO?248=0)PRINT''"B O O M !"'':DEAD=TRUE 2760ENDPROC 2770DEFPROCq:INPUT"ARE YOU SURE YOU WANT TO QUIT?.."A$:A$=LEFT$(A$,1):IFA$<>"y"ANDA$<>"Y" GT%=0 2780ENDPROC 2790DEFPROCth(Z):IFZ=6PRINT"Thud. The emperor falls and hits his"'"head on the edge of the throne":PROCemd:ENDPROC 2800IFZ=5ORZ=12ORZ=29ORZ=30ORZ=31ORZ=32ORZ=40ORZ=44PROCdd:ENDPROC 2810REM 2820IFZ=17PRINT"A lucky blow knocks the statue"'"into the pit":O?17=0:ENDPROC 2830PRINT"You just hurt your hand":ENDPROC 2840DEFPROCst(Z):IFO?14<255PRINT"You need a sword to do that":ENDPROC 2850IFZ=6PRINT"O.K.":PROCemd:ENDPROC 2860IFZ=17PROCspa:ENDPROC 2870IFZ=30ORZ=31ORZ=44PROCdd:ENDPROC 2880IFZ=40ANDO?242=1PRINT"The enchantment prevents you from"'"doing that":ENDPROC 2890IFZ=5ORZ=12ORZ=29ORZ=31PRINT"O.K. The "A3$" is dead":O?Z=0:ENDPROC 2900PROCer(A1$,A3$):ENDPROC 2910REM 2920DEFPROCspa:PRINT"The steel strikes the stone statue"'"and makes sparks. The oil ignites"'"The room becomes a blazing inferno":DEAD=TRUE:ENDPROC 2930 DEFPROCsc:Z=0:FORI=18TO28:IFO?I=255Z=Z+100 2940NEXT:PRINT"Your score is now ";Z:ENDPROC 2950DEFPROCdd:PRINT"The "A3$" dodges out of the way":ENDPROC 2960DEFPROCop(Z) 2970IFZ<>34ANDZ<>36:PROCer(A1$,A3$):ENDPROC 2980IFZ=34PRINT"It won't open":ENDPROC 2990IFO?35<>255PRINT"You need a key (HINT: the key is in"'"the key box)":ENDPROC 3000O?36=0:PRINT"O.K.":ENDPROC 3010DEFPROCend:PRINT"The emperor says 'WELL DONE YOU HAVE"'"RETURNED THE LAMP'" 3020PROCsc:PRINT"Out of a maximum of 1100"' 3030IFO?31=0PRINT"'HOWEVER, I HEAR THAT YOU MURDERED THE"'"CALIPH'S DAUGHTER, SO I'M AFRAID I"'"MUST HAVE YOU EXECUTED'":DEAD=TRUE:ENDPROC 3040PRINT'"YOU HAVE WON - CONGRATULATIONS":END 3050DEFPROCrub(Z):IFZ=28ORZ=26PRINT"What do you think this is?"'"A pantomime?":ENDPROC 3060IFZ=31PRINT"She says UNHAND ME YOU BRUTE DON'T"'"YOU KNOW I'M THE CALIPH'S DAUGHTER":ENDPROC 3070IFZ=12ORZ=5ORZ=6ORZ=29ORZ=32PRINT"The "A3$" says 'HELLO SAILOR'":ENDPROC 3080PRINT"Nothing happens":ENDPROC 3090REM-UNLIST 3100FORI%=PAGE TO TOP 3110IF?I%=90ANDI%?1=90 ?I%=22:I%?1=1:I%?2=28:I%!3=0:I%?7=3:I%?8=21:PRINT~I% 3120NEXT 3200DEFPROCtl:COLOUR129:CLS:VDU5 3210GCOL0,0:FORI=-20TO0STEP4 3220IFI=0GCOL0,2 3230MOVE150+I,700+I:PRINTTITLE$ 3240MOVE50+I,100+I:PRINT"(c) M.C.Lothlorien"; 3250NEXT:W=INKEY(400):ENDPROC 4000IFERR=17:MODE6:GOTO110 4010ONERROROFF 4020REPORT:PRINT" at line ";ERL 4030W=INKEY(400):RUN
� (c) M. C. Lothlorien 1983 TITLE$="THE STOLEN LAMP" XX=1060 ��t`O (!*KEY10 PAGE=&1200|MOLD|MRUN|M < O=&C00 F&O?255=�(4):O?249=8:O!245=0:O!241=0 K�5:�tl:�6:�=�+&3E00 P��Dd@:�Z=1�45:�O?Z:� ZDEAD=�:PC=0:� d��255,255,255,20,4,11,4,10,0,0,0,10,47,0,25,21,22,19,24,31,27,36,39,33,25,34,4,37,29,30,25,27,40,0,0,31,34,0,35,32,19,23,23,33,0 n �l(XX) x� ��parse(1):�'�13)A1$" "A3$ �� ��GT%=1�help ��GT%=2�get(OB%) ��GT%=3�re(OB%) ��GT%=4�in(255) �XGO=-1:�GT%=6GO=DN ��GT%=7GO=DS ��GT%=8GO=DE ��GT%=9GO=DW ��GT%=10GO=DU ��GT%=11GO=DD �5�GO=23�O?17=22�"The statue blocks your way":GO=-1 �4�GO=30�O?29=29�"The guard blocks your way":GO=-1 �-�GO=35�O?36=31�"The door is locked":GO=-1 �4�GO=37�O?44=33�"The tiger blocks your way":GO=-1 �<�O?249=O?40�GO<>-1�"You are too enchanted to move":GO=-1 �3�GO=0�"There is no way to go in that direction" .�GO>0�mv(XX):�PC<>0�5:�pc(PC):�6:�=�+&3E00 '�GT%=5�PC<>0�5:�pc(PC):�6:�=�+&3E00 �GO>0�GT%=5�l(XX) "�O?5=4�GO=3�GT%=8�pp ,�GT%=12�dr(OB%) 6�GT%=13�sc @�GT%=14�say(OB%) J�GT%=15�pl(OB%) T�GT%=16�sv ^$�GT%=17�rs:GT%=-1:GO=O?249:�TDA h�GT%=18�by(OB%) r�GT%=19�k(OB%) |�GT%=20�th(OB%) ��GT%=21�st(OB%) ��GT%=22�sm(OB%) ��GT%=23�sc:�q ��GT%=24�op(OB%) ��GT%=25�rub(OB%) ��O?248>0�O?248<50�gr �� ̔�(O?249=O?31�O?31=255)�O?28=255�"The girl calls out 'someone is taking"'"the lamp away'":�O?32>0�"The Vizier hears her and rushes in":O?32=O?249 ��O?245O?32=O?249 �`�O?32=O?249�O?28=255�"The Vizier sees that you are taking"'"the lamp and chases you":O?245=1 ��O?249=11�O?28=255�end �E�O?32=O?249�"The Vizier attacks you":O?246=O?246+1:�O?246>3DEAD=� �� l�O?43=33�O?44=33�"The tiger tries to eat the herring,"'"chokes on a fish bone,"'"and dies":O?43=0:O?44=0 ��O?249=O?40 O?242=1:X=O?40:�X=O?19�X=O?18�X=O?20�X=O?25�"The enchantress spots the treasure"'"For a moment, her concentration slips":O?242=0 ��O?249=O?40�O?242=1O?243=O?243+1:�"The enchantress removes veil number ";O?243:�O?243=7�"While you are watching, her boyfiend"'"sneaks up and garottes you"'"They steal all your treasure to"'"sell in the town"'"HOWEVER ";:DEAD=-1 &� 0��O?249=31�O?28=255�"You have brought light into the"'"dark room":�O?244=0:�"The light falls on the face of a"'"gorgon":�O?33<>255�"You see it, and are turned to stone":DEAD=� :x�O?249=31�O?28=255�O?244=0�O?33=255�"The gorgon sees its own reflection"'"in your mirror and turns to stone":O?244=1 D� N8�O?249=O?30�O?8=255�"The moths eat the carpet":O?8=0 X�DEAD �GT%=23 b�DEAD �"YOU ARE DEAD" l7�DEAD �GT%=23�"PRESS RETURN TO START AGAIN"A$:�DF@ vݤup(A$):B$="":�I%=1��(A$) �"C%=�(�A$,I%,1)):�C%>96C%=C%-32 �B$=B$+�(C%):�:=�st(B$) �ݤst(A$) �$�A$,1)=" "A$=�A$,�(A$)-1):�t^B �$��A$,1)=" "A$=�A$,�(A$)-1):�thB �=A$ ���parse(Z) �"�:�"What now ?..."A$:��(A$)>0 �eA$=�up(A$):X=�A$," "):秤st(�A$,�(A$)-X))," ")<>0�"I can only understand two words at once":�dFB �=�X=0A1$=A$:A2$=""�A1$=�st(�A$,X-1)):A2$=�st(�A$,�(A$)-X)) �QA3$=�v(A1$):�(A3$)=0:�"I don't know what you mean by '"A1$"'":�dFB:�A1$=A3$ �EA3$=�n(A2$):�(A2$)>0�OB%=0 �"I don't know what a "A2$" is":�dFB �&�VF%=1��(A2$)>0:�er(A1$,A3$):�dFB 1�OB%=0�VF%>1:�"What do you want to "A1$:�dFB A�VF%=3�O?OB%<>255�O?OB%<>O?249:�"The "A3$" is not here":�dFB � ݤv(A$):��D\C *�(A$)=0�="" 4I%=1 >(�:�B$,VF%,GT%:�A$=�B$,�(A$))��(B$)=0 H=B$ R� \H�HELP,0,1,TAKE,3,2,GET,3,2,CARRY,3,2,READ,3,3,INVENTORY,1,4,LOOK,0,5 f[�NORTH,1,6,SOUTH,1,7,EAST,1,8,WEST,1,9,UP,1,10,DOWN,1,11,DROP,3,12,DUMP,3,12,LEAVE,3,12 pP�SCORE,1,13,SAY,2,14,PULL,3,15,SAVE,0,16,RESTORE,0,17,BUY,3,18,PURCHASE,3,18 zc�KILL,3,19,ATTACK,3,19,THUMP,3,20,STAB,3,21,SMASH,3,22,HIT,3,20,QUIT,1,23,OPEN,3,24,UNLOCK,3,24 ��RUB,3,25,,0,0 �*��er(A$,B$):�"You can't "A$" the "B$:� �ݤn(A$):��dTC � OB%=0 ��(A$)=0�="" �*�:�B$:OB%=OB%+1:�A$=�B$,�(A$))��(B$)=0 ��(B$)=0OB%=0 �=B$ ԉ�COIN,GRENADE,PIN,SLEDGEHAMMER,PICKPOCKET,EMPEROR,MESSAGE,CARPET,SHAZAM,ALLAKAZAM,ABRACADABRA,SALESMAN,DICTIONARY,SWORD,COLUMN,PILLAR �\�STATUE,DIAMOND,GOLD,SILVER,RUBY,NECKLACE,PEARLS,EMERALD,BRACELET,RING,GOBLET,LAMP,GUARD �u�MOTH,GIRL,VIZIER,MIRROR,BOX,KEY,DOOR,CRATE,PLATINUM,SIGN,ENCHANTRESS,CAMEL,SCREWDRIVER,HERRING,TIGER,LOTHLORIEN, �7��help:�OB%<>0:�"The "A3$" doesn't need any help":� �DZ=�(3):�Z=1�"The camel says 'TWO HUMPS ARE BETTER"'"THAN ONE'":� '�Z=2�"Feel free to help yourself":� N�"You got yourself into this mess"'"I think you should get yourself out":� � $�--BASE LINE FOR RESTORE-- .:�0,0,9,2,0,0,0,2,in the Street of a Thousand,Wayfarers 81�0,3,1,0,0,0,0,1,at the corner of two streets B5�2,5,0,4,0,0,0,2,in the Street of,the Blue Lizard L/�0,0,3,0,0,0,1,1,inside the Blue Lizard Inn V1�3,0,6,0,0,0,0,1,at the corner of two streets `+�0,10,7,5,0,0,0,1,in Carpetmaker's Lane j1�8,0,0,6,0,0,0,1,at the corner of two streets t,�9,7,11,0,0,0,0,1,in the Road of Silence ~1�0,8,0,1,0,0,0,1,at the corner of two streets �'�6,0,0,0,0,0,3,1,in the carpet shop �^�0,0,0,8,0,0,2,3,in the Emperors Palace,The Emperor asks you to find the,stolen magic lamp �B�13,14,15,16,0,8,-1,2,"flying, on the carpet,",above the town. �1�13,12,15,16,0,20,-2,1,flying over the desert �1�12,14,17,16,0,18,-2,1,flying over the desert �1�13,14,15,12,0,18,-2,1,flying over the desert �1�13,14,12,16,0,18,-2,1,flying over the desert �:�15,14,15,14,0,19,-3,1,flying over the Vizier's palace �4�18,18,18,18,0,0,0,1,in the middle of the desert �1�21,0,0,0,0,0,0,1,outside the Vizier's palace �4�20,20,20,20,0,0,0,1,in the middle of the desert �=�25,19,22,0,0,0,9,2,at the south end of,the entrance hall L�0,0,23,21,0,0,6,2,on a narrow bridge spanning,a pit full of boiling oil $�0,0,24,22,0,0,0,1,in a corridor %�28,0,0,23,0,0,0,1,in the library >�29,21,26,0,0,0,10,2,at the north end of,the entrance hall (4�0,0,27,25,0,0,0,1,in the Vizier's outer chamber 23�0,0,0,26,0,0,0,1,in the Vizier's inner chamber <b�0,24,0,0,0,41,4,3,in a small room,There is a deep pit with nasty looking,spikes at the bottom F(�0,25,30,0,0,0,0,1,in the guard room P$�0,0,31,29,0,0,0,1,in a corridor Z(�35,0,32,30,0,0,8,1,in the dark room d#�36,0,0,31,0,0,0,1,in the harem n)�37,0,34,0,0,0,0,1,in the tiger's den x-�38,0,35,33,0,0,0,1,in the treasure vault �=�39,31,0,34,0,0,0,2,at the entrance to the,treasure vault �*�40,32,0,0,0,0,0,1,in the bathing room �&�0,33,0,0,0,0,7,1,in the lamp room �(�0,34,0,0,0,0,0,1,in a stone chamber �#�0,35,0,0,0,0,0,1,at a dead end �%�0,36,0,0,0,0,0,1,in a bedchamber �K�43,42,42,43,0,44,5,2,at the bottom of a pit,on a pile of RUBBER spikes �,�41,43,44,42,43,42,22,1,in the catacombs �,�43,42,42,44,41,45,99,1,in the catacombs �,�46,47,43,45,43,43,99,1,in the catacombs �,�44,43,41,43,45,44,99,1,in the catacombs �,�45,46,47,46,45,44,99,1,in the catacombs �,�41,47,44,46,45,44,99,1,in the catacombs ��l(Z) 6�Z+10*(O?249):�DN,DS,DE,DW,DU,DD,X,NL:�"You are "; .�I=1�NL:�Z$:�Z$:�:�:�in(O?249):�"EXITS: "; "�DN:�"North "; ,�DS:�"South "; 6�DE:�"East "; @�DW:�"West "; J�DU:�"Up "; T�DD:�"Down "; ^�':� h:��mv(Z):O?249=GO:�Z+10*(O?249):�DN,DS,DE,DW,DU,DD,PC:� r��in(L):��txF |0�L=255�"You are carrying:-"��"You can see:-" �I%=1:J%=0:�:�Z$ �E�O?I%=L �Z$:J%=1:�I%=3�(O?248=0)�"the pin is in the hand grenade" �%I%=I%+1:��(Z$)=0:�J%=0:�"Nothing" ��:� �� ���a gold coin,a hand grenade,a pin,a sledgehammer,a pickpocket,the Emperor,a message,a Persian carpet,X,X,X,a salesman,a dictionary ���a sword,a column,a pillar,a living statue,a large diamond,a gold bar,a silver bar,a ruby,a beautiful necklace,a string of pearls,an emerald,a gold bracelet,a diamond ring,a jewel encrusted goblet ̹�Aladdin's lamp,a mean looking guard,a swarm of moths,a girl,the grand vizier,a mirror,a box labelled 'KEY BOX',a key,the north door is locked,a crate,a huge block of solid platinum �I�a sign,an enchantress,a camel,a screwdriver,a red herring,a tiger,X, �3��get(X):�O?X=255:�"You already have the "A3$:� �&�X=37�X=38�"It's much too heavy":� �F�X=8�O?247=0�"The salesman says":�er2:�"You haven't paid for it":� �R�X=5�X=6�(X=3�O?248=0)�X=12�X=15�X=16�X=17�X=29�X=30�X=32�X=36�X=40�X=44�er2:� (O?X=255:�"O.K.":�X=2�O?248=0 O?3=255 � !��er2:�"You can't do that!":� &7��dr(X):�O?X<>255:�"You are not carrying the "A3$:� 04�X=3�O?248=0�"You would have to PULL it first":� :�"O.K.":O?X=O?249 DU�O?249>11�O?249<18�X=8�"Without the carpet, you plummet to"'"the ground":DEAD=�:� N0�O?249>11�O?249<18�"It falls off the carpet" X�O?249=12O?X=8 b�O?249=13O?X=20 l�O?249>13�O?249<17O?X=18 v�O?249=17O?X=19 �J�O?249<10:�"A bypasser picks up the "A3$'"and walks off with it":O?X=0 �p�O?249>41�O?249<47��(3)=1:�"A lost soul wanders through,"'"picks up the "A3$" and walks off"'"with it":O?X=0 ��X=2�O?248=0O?3=O?2 �� �0��re(X):�X<>7�X<>1�X<>13�X<>39�er(A1$,A3$):� ��X=13:�ddG �R�X=39�"It says THIS WAY TO TREASURE BEYOND"'"YOUR WILDEST DREAMS"'" <=====":� �'�X=1:�"It says ALADDIN XIII 1983":� �q�"It says TODAYS MAGIC WORD IS ";:�O?255=1�"SHAZAM"��O?255=2�"ALLAKAZAM"��O?255=3�"ABRACADABRA"��"LOTHLORIEN" �� �P�"It says:- this is a complete list of"'"verbs understood in this adventure" ���D\C:�:�A2$,X,Z:�A2$" "; ��>25:� ��(A2$)=0:�:� .��say(X):�X<9�X>11�X<>45�"O.K. '"A3$"'":� �O?255=4�X=45��TjH u�X-8<>O?255:�"That's the wrong magic word"'"It causes a ferocious djinn to appear"'"The djinn kills you":DEAD=�:� *C�(O?8<>255�O?8<>O?249)�(O?249>11�O?249<18):�"Nothing happens":� 4� >.�O?8=O?249�"The carpet flies away":O?8=0:� H/A$="The carpet soars into the air with you" R+�O?249<9�O?249<>4:�A$:O?249=12:�l(XX):� \#�O?249=18:�A$:O?249=16:�l(XX):� f#�O?249=19:�A$:O?249=17:�l(XX):� p#�O?249=20:�A$:O?249=13:�l(XX):� z9�A$'"and crashes into the ceiling at 100MPH":DEAD=�:� �!��gr:O?248=O?248+1:�O?248<6:� �R�'''" B O O M !"''"The grenade explodes":O?248=100:�O?249=O?2�O?2=255:DEAD=�:� ��O?6=O?2:�emd:� ��O?2=O?34O?35=O?2 �.X=O?2:�I%=1�64:�X=O?I%�I%<>35�I%<>36O?I%=0 ��:� �� �e��emd:�"You have killed the Emperor"'"The Imperial guard track you down"'"and kill you"':DEAD=�:� �q��pl(X):�(X=2�X=3)�O?248=0 O?248=1:�"O.K.":�:��X=31�"She is not impressed by your advances":�:��er(A1$,A3$):� ���p(B):D=5:B=B+�-&1200 �X=?B:Y=B?1:�X=253:� �,�PRINTTAB(0,0)"&";~B" ";X" ";Y" ":W=GET �<�X=254�0,Y ��X=255�tr ��X>239�19,X-240,Y;0;��D,X*10,Y*10 B=B+2:�dhH :��tr:D=Y:B=B+2:�?B*10,B?1*10:�D=85 B=B+2:�?B*10,B?1*10 � 6��pc(B):� B<0�tfI ��B=8�19,3,4;0;:��B=1�19,1,4;0; �p(&5000) $�DN �B<>9�p(&501C) .�DW �p(&5028) 8�DE �p(&5034) B�B=1:�p(&5040) L�B=2:�p(&50DE) V�B=3:�p(&5128) `�B=4:�p(&51F2) j�B=5:�p(&5208) t�B=6:�p(&5266) ~�B=7:�p(&5298) ��B=8:�p(&52D2) ��B=9:�p(&53EE) ��B=10:�p(&5420) ��B=-1:�p(&5172):�p(&5192) ��B=-2:�p(&5172) ��B=-3:�p(&5172):�p(&51B6) �"�0,0)"RETURN to continue"A$:� ���sv �*SAVE LAMPSAVE C00 D00 �� � ��rs:� �C�"Place previously saved Cassette"'"in Recorder and press PLAY" �*LOAD LAMPSAVE C00 � ��pp:�I=1�100:�O?I=255O?I=4 &�:�'"YOU HAVE JUST BEEN ROBBED"':� 0��by(Z):�Z<>8:�"The "A3$" is not for sale":� (� 2+�O?1<>255:�"You don't have any money":� <3O?1=0:O?247=1:�"O.K. the carpet is now yours":� F���k(X)�"What with?"'"Type STAB "A3$" to use SWORD"'"Type SMASH "A3$" to use SLEDGEHAMMER"'"Type THUMP "A3$" to use your fists":� P=��sm(X):�O?4<>255:�"You need a sledgehammer to do that":� Z�X=29�X=30�X=32�X=44�dd:� d*�X=34�X=36�"The "A3$" is too strong":� nD�X=40�O?242=1�"The enchantment prevents you from"'"doing that":� x0�"You sure smashed that "A3$:O?X=0:�X=6:�emd �� �,�X=16�"There was a sword inside":O?14=21 �*�X=15�"There was a box inside":O?34=25 �G�X=37�"There was a 26 ton block of solid"'"platinum inside":O?38=34 �8�O?15=0�O?16=0�"The ceiling collapses on you":DEAD=� ��X=17�spa:� �-�X=2�(X=3�O?248=0)�''"B O O M !"'':DEAD=� �� �N��q:�"ARE YOU SURE YOU WANT TO QUIT?.."A$:A$=�A$,1):�A$<>"y"�A$<>"Y" GT%=0 �� �_��th(Z):�Z=6�"Thud. The emperor falls and hits his"'"head on the edge of the throne":�emd:� �0�Z=5�Z=12�Z=29�Z=30�Z=31�Z=32�Z=40�Z=44�dd:� �� B�Z=17�"A lucky blow knocks the statue"'"into the pit":O?17=0:� �"You just hurt your hand":� 5��st(Z):�O?14<255�"You need a sword to do that":� "�Z=6�"O.K.":�emd:� ,�Z=17�spa:� 6�Z=30�Z=31�Z=44�dd:� @D�Z=40�O?242=1�"The enchantment prevents you from"'"doing that":� J8�Z=5�Z=12�Z=29�Z=31�"O.K. The "A3$" is dead":O?Z=0:� T�er(A1$,A3$):� ^� h���spa:�"The steel strikes the stone statue"'"and makes sparks. The oil ignites"'"The room becomes a blazing inferno":DEAD=�:� r& ��sc:Z=0:�I=18�28:�O?I=255Z=Z+100 |�:�"Your score is now ";Z:� �-��dd:�"The "A3$" dodges out of the way":� ���op(Z) ��Z<>34�Z<>36:�er(A1$,A3$):� ��Z=34�"It won't open":� �E�O?35<>255�"You need a key (HINT: the key is in"'"the key box)":� �O?36=0:�"O.K.":� �F��end:�"The emperor says 'WELL DONE YOU HAVE"'"RETURNED THE LAMP'" �$�sc:�"Out of a maximum of 1100"' �|�O?31=0�"'HOWEVER, I HEAR THAT YOU MURDERED THE"'"CALIPH'S DAUGHTER, SO I'M AFRAID I"'"MUST HAVE YOU EXECUTED'":DEAD=�:� �(�'"YOU HAVE WON - CONGRATULATIONS":� �E��rub(Z):�Z=28�Z=26�"What do you think this is?"'"A pantomime?":� �U�Z=31�"She says UNHAND ME YOU BRUTE DON'T"'"YOU KNOW I'M THE CALIPH'S DAUGHTER":� �=�Z=12�Z=5�Z=6�Z=29�Z=32�"The "A3$" says 'HELLO SAILOR'":� �"Nothing happens":� �-UNLIST �I%=� � �P &D�?I%=90�I%?1=90 ?I%=22:I%?1=1:I%?2=28:I%!3=0:I%?7=3:I%?8=21:�~I% 0� ���tl:�129:�:�5 ��0,0:�I=-20�0�4 ��I=0�0,2 ��150+I,700+I:�TITLE$ �&�50+I,100+I:�"(c) M.C.Lothlorien"; ��:W=�(400):� ��=17:�6:�Dn@ � ��:�" at line ";� �W=�(400):� � 400):� �= ITLE$ &DTHE STOLEN LAMPI% 0� �DX �� �E �@ �Dtl fC0 � � �� �D � �DEAD 7 C �Dl 7)�DN � �DS �DE �DW �x �DU �ED � �@ � L � $ mF'