Forensic d2_Zd2"Forensic" Vers 1 3 1/8/83 7John McMullan <ZX Spectrum 48K p$(4,12 ):p(4):s(5):a$(5,60<):n$(5,15):b$(5,20):c$(5,20):n(5):h$(5,6) c(5):e(4)  i(5) &corr=0 0 lo=0 XHw$=" ":v$=" " bwait=6000p lpause=6100 ptcls=62008 botcls=6300 beep=6500d bpup=6600 bpdown=6700, tune=6800   0:0:6: bpup  @:1:2:x=8:7300:8800`":0 Ra:2:x=8:7300:tune:6:7000X:i=14:s(i)=0:i z0:0:6: j=1players tune  5500| *23672x\,0:23673y\,0 :1800 Hop=0:o$="":21,0;2;7;"Which option?" Hop=0:o$="":21,0;2;7;"Which option?" ""1200 op=0:o$= 023673y\>120x4285:1500 o$=""1210 6lo=1(o$>"0"o$<"8"):1800:lo=0 21,0;v$ o$>"/"o$<":"op=o$ 6o$="g"o$="G"4250:s(k)=-1:1500 3o$="0".2~L,24:4200h:1190 2op>02000:corr01500 :o$="I"o$="i".2~L,24:7500L:1190 :o$="H"o$="h".2~L,24:8000@:1180  op=9 1180 x 1190 :j  85004! C7;2;18,0;"Press any key for next game" ""1550 =""1560 " 850R :6:"Forensic Officer:";p$(j);2,0;" The murder of ";n$(5);3,0;"________________________________"  67:.2~L,24:op*200+1900l: 6:0  6  3case 4ptcls >21;6,0;"Victim :";n$(5) H68,0;"The body was found ";a$(5,) Rz$=b$(5):6400 W11 ,0;"The murderer's shoes might be expected to be contaminated with";13 ,0;b$(5);13 ,lh;"." \R16,0;"A note written with a fountain pen was found near the body."   suspects k=14 9ptcls:1;6,0;"Suspect ";k;":";n$(k) H8,0;"At the time of the murder claimsto have been ";a$(k) z$=b$(k):6400 $~13 ,0;"The suspects shoes might be","expected to be contaminated with":15,0;b$(k);15,lh;"." .k<4wait 8k ` flame ;ptcls:7:1;5,0;"3. Flame Test" Ck=14:x=(k-1)*64@:x1=(k-1)*8 7:7,k*8-7;1;k:x+44,,32 :-32 ,0,/2:32 ,0:x+24,39':0,31:8,0:0,-31 ]1:12 ,3+x1;" ";11 ,3+x1;" ";10 ,3+x1;"" .05|L,502:k _7:pause:19,0;"Putting the test wires in...":pause:19,0;w$ Ck=14:x=(k-1)*64@:x1=(k-1)*8 &x+16,80P:6,0 cc(k)<33;11 ,3+x1;" ";10 ,3+x1;"";19,x1;"lilac" zc(k)>2c(k)<66;11 ,3+x1;" ";0;10 ,3+x1;"";19,x1;"yellow" oc(k)>5c(k)<10 2;11 ,3+x1;" ";10 ,3+x1;"";19,x1;"red" c(k)=10 c(k)=11 1;7;11 ,3+x1;"";0;10 ,3+x1;"";19,x1;"blue" rc(k)=12 c(k)=13 4;11 ,3+x1;" ";10 ,3+x1;"";19,x1;"green" (.05|L,502:k  acid Iptcls:7:1;5,0;"4. Adding Hydrochloric Acid" 4300 F18,0;"Now add the acid...":pause:18,0;w$ k=14 8x1=(k-1)*8+1:x=(k-1)*64@ w4570:c(k)<7c(k)=10 c(k)=12 c(k)=141:4550:0:x+35#,47/ c(k)=4c(k)=7c(k)=11 c(k)=13 c(k)=151:4550:0:4530:28706 :18,x1;"fizzing";10 ,x1;"carbon";11 ,x1;"dioxide" Gc(k)=12 c(k)=13 1:4550:4600:7 Ac(k)=9 1:4550:0:x+35#,47/ pc(k)=10 4550:l=55771G:x+26,l:16,0:l:18,x1+2;"ppt." .05|L,502:k , 6Xl=130:.005y# =,l:x+8+*12 +20,502+*24:l J SBaCl2 TIptcls:7:1;5,0;"5. Barium Chloride Solution" ^4300:4360 h^18,0;"Adding the barium chloride","solution...":pause:18,0;w$;w$ r+k=14:x=(k-1)*64@ |*4590:1:4570:0 c(k)=1c(k)=4c(k)=5c(k)=10 c(k)=12 c(k)=144550:4650*:18,(k-1)*8+2;"ppt." c(k)=7c(k)=8c(k)=9 c(k)=11 c(k)=13 c(k)=1518,(k-1)*8+1;"insol." .05|L,502:k  AgNO3 Hptcls:7:1;5,0;"6. Silver Nitrate Solution" &4300:4360 +]18,0;"Adding the silver nitrate","solution...":pause:18,0;w$;w$ 0+k=14:x=(k-1)*64@ :*4590:1:4570:0 Nnc(k)=3c(k)=4c(k)=64550:4650*:18,(k-1)*8+2;"ppt." Xc(k)=7c(k)=8c(k)=9 c(k)=11 c(k)=13 c(k)=1518,(k-1)*8+1;"insol." b-c(k)=12 1:4650*:7 l.05|L,502:k  Heat Dptcls:7:1;5,0;"7. Heating the Samples" 4300 k=14:x=(k-1)*64@:x1=(k-1)*8:17,(k-1)*8+4;"";18,(k-1)*8+3;"Heat" ]c(k)=13 1:4550:0:7:x+27,546:15,0 0c(k)=12 4550:x+35#,47/ ;c(k)=10 c(k)=11 6:4550:7 -c(k)=210 ,x1+1;"Oxygen" >uc(k)=7c(k)=11 c(k)=13 c(k)=159 ,x1+1;"Carbon";10 ,x1+1;"Dioxide" Rdc(k)=10 9 ,x1+1;"Oxygen";11 ,x1;"Nitrogen";12 ,x1+1;"Dioxide" z.05|L,502:k  Chromatography =lo=1::1;0,0;"8. Chromatography" 15,557:0,-24:225,0:0,24:k=517:7;k,3;v$:k:0 B2,0;"Put the spots of ink on the","paper...":pause ʛ7;19,6;"V 1 2 3 4":k=15:0;7;16,(k-1)*5+6;"":.05|L,502:k pause J2,0;w$;w$;2,0;"Now add the solvent....":pause O1;17,2;"":.05|L,502 &7:k=167-1 60:0;k,6;" " l=15 cy=(k=15)+(k=13 )*2+(k=12 )*3+(k=10 )*4+(k=7)*5 Py>0h$(l,y)" "ٰ(h$(l,y));k+1,(l-1)*5+6;"" l 0:k,3;v$ a.02{# =,40(-k: k:0;k-1,6;" ":7:0 ` sreport t7:1: ~9k=14:e(k)=0:k:corr=0:z$="" h1,4;"";2,4;" ";3,4;" " n5,2;"Suspect Alibi";1;5,2;"_____________________________";0 k=14 !6+k,2;k;". ";n$(k) .05|L,502:2;15,2;"Alibi indicates";16,2;b$(k);17,2;"Is it true (Y/N)?" ""3765 r$=:r$=""3770 r$<"a"r$=(r$+32 ) r$"y"r$"n"3770 r$="y"beep r$="n".2~L,0 ?5;6+k,20;("True"r$="y")+("False"r$="n") botcls r$="n".05|L,502:2;15,2;"Enter the name of compound ";k;".";16,2;"What is it?":5000 "r$="y"b$(k)=c$(k)e(k)=1  5300 r$="n"z$=y$e(k)=1  botcls:k Ce(1)+e(2)+e(3)+e(4)=4corr=1 (botcls Frcorr=0bpdown:4;15,2;"Report incorrect-";16,2;"try more tests.":wait: Z:2;15,2;"Who is the murderer (1-4)?"; dr$=:r$=""3940d xr$<"1"r$>"4"3940d botcls {r$murderercorr=0:4;15,2;"Wrong murderer!!!";16,2;"Try again.":bpdown:wait: bpup *time=23672x\+256*23673y\ (t2=23672x\+256*23673y\ t2>timetime=t2 time=(time/502)  s(j)=time R15,2;"Correct!!!";16,2;"Case solved in ";time;" secs." wait B0:7::1;1,0;" CASE SUMMARY " k=14 J4*k,0;k;".";n$(k);4*k+1,0;"Alibi:";b$(k) :b$(k)c$(k)4*k+2,0;"Really :";c$(k) Yb$(k)c$(k)4*k,20;1;("< Murderer "murderer=k)+("< Liar "liar=k) k wait  h:7600  corr=-1:s(j)=-2 Lptcls:1;10 ,0;"Too bad- you gave up!!!":bpdown:pause 4010:  wptcls:10 ,0;1;" OUT OF TIME ":s(j)=-1:corr=-1:bpdown:pause:pause:4010   |k=14:x=(k-1)*64@:7,k*8-7;1;k:4500:.05|L,502:k:pause +k=14:x=(k-1)*64@ c(k)=13 4 c(k)=12 1 34550:7:.05|L,502:k:pause  7:18,0;"Add water to dissolve the","samples...":pause:18,0;w$;w$:k=14:x=(k-1)*64@:4570 kc(k)<7c(k)=10 c(k)=12 c(k)=141:4550:0:x+35#,47/ 9c(k)=12 1:4550:4600:7 &.05|L,502:k:pause 0 {7:x+24,112p:2,-1:0,-568:16,0,:0,568:2,1  27:x+26,557:16,0,  Ưx+35#,47/:x+33!,480:2,0:x+30,491:8,0:x+29,502:10 ,0:x+28,513:12 ,0 ˜x+28,513:11 ,0:x+28,524:12 ,0:x+28,535:12 ,0:x+27,546:14,0  'x+27,71G:14,0  'x+26,87W:15,0  8l=55771G:x+26,l:16,0:l  *8l=55787W:x+26,l:16,0:l 4 :len=0:z$="":18,5;1;2; ""5020  x$="":x$=:x$=""5030 x$<12 5020 /(x$=13 ůx$=12 )z$=""5020 ^x$=12 z$=z$(̱z$-1):8;" ";8;:beep:len=len-1:5020  x$=13 beep:5200P x$=" "5140 #x$>"@"x$<"["x$=(x$+32 ) x$<"a"x$>"z"5020  z$=z$+x$ beep:x$;:len=len+1 (len>205200P 2 5020 < F0z$=z$+" ":z$=z$(20) P   y$=c$(k) .y$(y$)=" "y$=y$(̱y$-1):5320 l1=y$:l=1l1 l1=y$ l=l15360 9y$(l)=" "y$=y$(l-1)+y$(l+1):5335 l  { new case |;corr=0:liar=0:murderer=(*4+1) P>.2~Lliar=(*4+1):liar=murdererliar=0:5510 k=15 3n(k)=(*12 +1):k=15516 ;f=0:l=1k-1:n(k)=n(l)f=1:l=k l:f=15513 &9700%:l=1n(k):n$(k):l k .4L,2:2:.4L,7:2:.4L,9 :2:.4L,5::5;1;" "'" "'" "'" " -6,0;"There has been murder!!!" 7;10 ,10 ;"";11 ,10 ;"";12 ,10 ;:7;(""n(5)<8)+(""n(5)>7):502  35# P10 ,31;"":7;10 ,10 ;" -'Oh dear!'":100d -7;10 ,10 ;" " .01z# =,-3:248,92\:k=24688X-2:k,92\:1;k+2,92\:k:1;88X,92\ <.03{u\,60<:.02{# =,30:.01z# =,10 10 ,10 ;" ";11 ,10 ;" ";12 ,10 ;" ";7;12 ,8;"";:7;(""n(5)<8)+(""n(5)>7) 9 ,0;" R.I.P. ";10 ,0;n$(5);v$;18,0;"Fortunately, ";p$(j);20,0;"is on the case!!!" k=15 'f=0:c(k)=(*15+1) k=15590 l=1k-1 c(k)=c(l)f=1:l=k l:f=15555 k k=14 @9500%:r1=(*2):l=1c(k)*2-1+r1  a$(k):l k 29570b%:k=1c(5):a$(5):k Ik=15:9600%:l=1c(k):c$(k):l:b$(k)=c$(k):k liar=05700D 0n=(*15+1):n=c(liar)5660 ! c(liar)=n &&9600%:k=1n:c$(liar):k k=15 #h$(k)="516240":l=14 >.5h$(k,l)=" " l k 2>.6h$((*4+2))=h$(1)  Tc$(murderer)=c$(5):c(murderer)=c(5):h$(murderer+1)=h$(1) f pC2;7;21,0;" Press any key to continue " u""6005u z=""6010z ).1}L,12 :21,0;w$  ""6100 (l=1100d:""l=100d l: 8&l=521:l,0;w$:l L 15,0;w$;w$;w$;w$   lh=20  'z$(lh)=" "lh=lh-1:6410   d.1}L,12 : @l=130:(*8):.005y# =,l+l:l:0: ,'.4L,0:.8L,-5: 79300T$:k=117:pi:du:du=du/6  du,pi:k  b<5:15,0;"How many people are playing?"; lr$ vr$=""7020l 3r$>524ůr$<491űr$>17020l players=r$:beep:players: (players=1"What is your name?"; )players>1"What are your names?" i=1players $players>1"Player ";i;"? "; r$:r$=""7100 -r$>96`r$(1)=((r$)-32 ) p$(i)=r$:beep:p$(i) i:  6: x,3;" ";x+1,3;" ";x+2,3;" ";x+3,3;" ";x+4,3;" ";x+5,3;" "  921,0;"Do you need instructions (Y/N)?" r$=:r$=""7410 bp -r$="Y"r$="y"7500L:wait:7300  62008  LElo=1::1;7;" FORENSIC: Instructions "'' V7"In this game you must try to solve murder cases." [b'"You must use chemical tests to identify the substances found on the shoes of the suspects." `N'"To help, you can ask for the","results of chemical tests on thecompounds." j^'"This will enable you identify"'"anyone who is lying and so help"'"you find the murderer!!" owait:7600  <lo=1::"These are the tests and commandsavailable-" 3,0;"1. The Case"'"2. The Suspects"'"3. Flame Tests"'"4. Adding Acid"'"5. Adding Barium Chloride"'"6. Adding Silver Nitrate"'"7. Action of Heat"'"8. Chromatography"'"9. The Report " D'"'H' Get Help."'"'I' Instructions.","'G' Give up and see answer."  @Blo=1::1;7;" FORENSIC: Solving the Case " J'"First find out the details of"'"the case!!"''"Press '1' to get the case"'"details."'"Make a note of the name of the"'"substance found at the scene of"'"the crime." T'"Now check the alibis of the"'"suspects by pressing '2'."'"Write down the names of the"'"substances found on the"'"suspects' shoes. These are the"'"substances that you are testing"'"for. If they are not present"'"then the suspect is lying!!" Ywait: ^n''"A note was found near the"'"victim. You must compare its"'"ink with ink from the pens of"'"the suspects." hwait m:"When you ask for test results","you will be shown graphic","representations of the","experiments. In tests where","solutions are used...." or'" 'ppt' means precipitate","formed."''" 'insol' means the sample is","insoluble & no results are","obtained." rwait |5:1;7;" FORENSIC: The tests " '2;7;" Flame tests ":'"The compounds of some metals "'"will colour a flame."'"calcium: red"'"copper: green"'"lead: blue/white"'"potassium: lilac"'"sodium: yellow" '2;7;" Adding Acid ":'"Carbonates will fizz, giving"'"off carbon dioxide."''"Oxides and Hydroxides dissolve." wait :2;7;"Adding Barium Chloride Solution":'"A white precipitate will form"'"with sulphates and soluble"'"carbonates." '2;7;" Adding silver Nitrate ":'"Some substances give a white"'"precipitate-"'"Chlorides, soluble carbonates" wait °:2;7;'" Action of Heat ":'"Nitrates usually decompose to"'"form oxygen and sometimes"'"nitrogen oxide."''"Carbonates sometimes give"'"carbon dioxide." wait :2;7;" Chromatography ":'"2 samples of ink with a same"'"'chromatogram' are probably the"'"same ink." wait :2;7;" Making the Report ":'"When you think that you know"'"the names of all of the"'"substances press '9' and make"'"your report." '"You will be asked whether each"'"alibi is confirmed or not."'"Enter 'Y' for yes and 'N' for"'"no. If you answer no, you must"'"also enter the name of the"'"substance that you identified." ]'"If your answers are correct thenyou will be asked to enter the"'"number of the murderer." &wait 0g:'"If you get any part of the"'"Report wrong you will have to"'"do more tests and then try"'"again." wait  !4:x=0:7300 !>B7,0;1;" *Scoreboard* ":tune !Hk=1players !R sc=s(k) !\#10 +k,0;k;": ";p$(k); !_*s(k)=-1"Out of time":8700! !`&s(k)=-2"Gave up":8700! !asc;10 +k,20; !f("Well done!"(sc<150sc>0))+("Good"(sc150sc<300,))+("Fair"(sc300,sc<500))+("Get help!!"sc>500) !k:s(1)>0s(2)>0s(3)>0s(4)>0,,"(Score"+("s"players>1)+" in seconds)" " "` 9000(#:k=117 "j.l=07:z:(143+k)+l,z:l "tk " #(C8,28,42*,8,8,8,8,0 #2N24,60<,60<,126~,126~,126~,255,255 # #I0,0,0,0,254,255,254,255 #I0,0,0,16,579,111o,199,130 #L24,60<,60<,126~,126~,36$,36$,102f #I0,0,0,16,579,127,247,242 #D0,0,0,242,12 ,6,3,0 $T2,1,4,2,6,1,7,2,2,1,4,1,6,1,7,1,12 ,1,11 ,1,4,1,7,1,9 ,1,10 ,5,9 ,1,7,1,4,2 $^2,1,1,1,2,1,3,1,4,1,6,1,4,1,3,1,2,1,7,1,9 ,1,11 ,1,0,0,0,0,0,0,0,0,0,0 %"putting potash fertiliser on the garden.","working in a sulphate of potash factory.","working in a fireworks factory.","setting off some fireworks.","at the seaside.","working in a chip shop." %&"using washing soda.","neutralising spilt battery acid with washing soda.","doing experiments with sodium sulphate","growing crystals with sodium sulphate.","using calcium chloride.","in a calcium chloride factory." %0"climbing the white cliffs of Dover.","walking in the peakdistrict.","plastering at home.","making plaster of paris models.","marking out a football pitch.","putting lime on thegarden." %:"doing experiments with lead nitrate.","working with lead nitrate.","investigating cerussite rocks.","walking near to some cerussite rocks.","killing the fungi in a fish tank.","growing copper sulphate crystals." %D"investigating malachite rocks.","in a copper mine.","in an epsom salts factory.","working in a chemists shop packing epsom salts.","investigating magnesite rocks.","walking near magnesite rocks." %b"near spilt sulphate of potash fertilizer.","near spilt gunpowder.","on a beach.","near spilt washing soda.","near spilt sodium sulphate." %g"near spilt calcium chloride.","near chalk cliffs.","near spilt plaster of paris","in a garden shed near spilt lime.","near spilt lead nitrate" %l"near cerrusite rocks.","near spilt copper sulphate","in a copper mine.","near spilt epsom salts.","near magnesite rocks." %a"potassium sulphate","potassium nitrate","sodium chloride","sodium carbonate","sodium sulphate" %^"calcium chloride","calcium carbonate","calcium sulphate","calcium hydroxide","lead nitrate" %b"lead carbonate","copper sulphate","copper carbonate","magnesium sulphate","magnesium carbonate" %e"John Smith","Freddie Jones","Percy Wilkes","Eric Palmer","Steve Stigg","Samuel Pip","Fred Cortina" %J"Enid Vernon","Erica Dyson","Viola Riggs","Yvonne Duncan","Minnie Minor" oraipaustcl8otcleedpupdow,unj"xz~*layerR iaurderefnyeZsodiumcarbonateX YcoppersulphateimlRPercyOg5 1< P i i # W V