start tok64 d64-qrACS1 1 REM hangman 2 REM 3 REM (c) larry phillips 4 REM vancouver b.c. 5 REM (604)325-6224 6 REM 7 REM i believe in free or cheap software,just leave the credits. 8 REM 9 REM modified by g j flynn 10 REM 30 PRINT"{clear}{down*6}"TAB(16)"hangman." 40 PRINT:PRINTTAB(7)"do you need instructions?" 50 GETi$ 60 IFi$="y"THEN90 70 IFi$="n"THEN200 80 GOTO50 90 PRINT"{clear}{space*4}i will think of a word." 100 PRINT"{down}the dashes ({sh asterisk}{sh space}{sh asterisk}{sh space}{sh asterisk}) will show you" 105 PRINT"how many letters it has.":PRINT 110 PRINT"if you guess a letter correctly," 115 PRINT"i will put it into the word, and give" 116 PRINT"you a chance to guess the whole word.": 118 PRINT"if you don't want to guess the word thenpress 'space'.":PRINT 120 PRINT"if you are wrong, i will draw another" 125 PRINT"part of the man.":PRINT 130 PRINT"the man will be compeltely drawn after" 135 PRINT"ten wrong guesses.(and will be hung)":PRINT 140 PRINT:PRINT"he is depending on you!":PRINT:PRINT 189 PRINT"do you want to play now?" 190 GETi$:IFi$="y"THEN200 191 IFi$="n"THEN1999 192 GOTO190 200 PRINT"{clear}{right*5}{down*5}working{.*4}" 203 GOSUB2500:SYS704:GOSUB2000 210 POKEx(1)+y(0),85 220 POKEx(5)+y(0),74 230 POKEx(1)+y(21),73 240 POKEx(5)+y(21),75 250 FORi=1TO20:POKEx(1)+y(i),64 260 POKEx(5)+y(i),64:NEXTi 270 POKEx(4)+y(0),93:POKEx(4)+y(21),93 280 POKEx(3)+y(0),93:POKEx(3)+y(21),93 290 POKEx(2)+y(0),93:POKEx(2)+y(21),93 300 FORi=26TO39:POKEx(0)+y(i),160:NEXTi 310 FORi=0TO24:POKEx(i)+y(39),160:NEXTi 320 FORi=26TO38:POKEx(23)+y(i),206 330 POKEx(24)+y(i),207:NEXTi 340 POKEx(23)+y(26),233:POKEx(23)+y(39),232 350 POKEx(1)+y(35),95:POKEx(1)+y(36),223 360 POKEx(2)+y(36),95:POKEx(2)+y(37),223 370 POKEx(3)+y(37),95:POKEx(3)+y(38),223 380 POKEx(4)+y(38),95:POKEx(1)+y(28),66 390 POKEx(2)+y(28),66:POKEx(3)+y(28),66 400 POKEx(24)+y(39),207 410 PRINT"{home}{space*2}letters guessed" 420 PRINT"{down*12}" 430 GOSUB2050:GOSUB2200:GOSUB2260 460 GOSUB3000:GOSUB3010:GOSUB3020 490 GOSUB3030:GOSUB3040:GOSUB3050 510 GOSUB3050 520 GOSUB3060:PRINTTAB(10)"hangman" 540 FORi=1TO3000:NEXTi 550 PRINTTAB(10)"{up}{space*7}{up}":GOSUB2300 560 DIMlg$(26),w$(50),wu%(50):DIMlm$(12) 570 FORi=0TO49:READw$(i):NEXTi 580 FORi=0TO49:wu%(i)=0:NEXTi 590 s1=0:s2=0:fl=0 600 FOR i=0TO25:lg$(i)=" ":NEXTi 605 wr=0:nc=0:GOSUB3140 610 w=INT(RND(1)*50):IFwu%(w)=1THEN610 611 nw=nw+1 612 IFnw<50THEN620 615 PRINT"you tried ";nw;"words": 616 PRINT:PRINT"you guessed";nr;"of them" 617 PRINT"and hung the poor fellow";nh;"times";"{down*3}": 618 END 620 wu%(w)=1:nl=LEN(w$(w)):PRINT"{home}{down*8}" 630 FORi=1TOnl:PRINT" {sh asterisk}";:NEXTi:PRINT 635 n=-1 640 FORi=1TO11:lm$(i)="{sh asterisk}":NEXTi 650 PRINT"{home}{down*14}guess a letter?{space*2}"; 660 GETl$:fl=0:IFl$<"a"THEN660 665 PRINTl$ 670 IFl$>"z"THEN660 680 FORi=0TO25 681 IFlg$(i)<>l$THEN689 685 fl=1 687 GOSUB7300 689 NEXTi 690 IFfl=1THEN650 695 n=n+1 700 FORi=1TOnl 710 IFl$<>MID$(w$(w),i,1)THEN740 720 lm$(i)=l$ 730 fl=1 740 NEXTi 745 lg$(n)=l$ 750 IFfl=1THEN1050 760 wr=wr+1 770 PRINT:PRINT"sorry, that letter " 780 PRINT"is not in this word":PRINT 785 GOSUB3200 790 ONwrGOSUB800,810,820,830,840,850,860,870,880,890 795 GOTO650 800 PRINT"you get a head":GOSUB7000:GOSUB2050:GOSUB3070:GOSUB3140:RETURN 810 PRINT"here's the body.":GOSUB7000:GOSUB2200:GOSUB3070:GOSUB3140:RETURN 820 PRINT"now his first leg":GOSUB7000:GOSUB2260:GOSUB3070:GOSUB3140:RETURN 830 PRINT"second leg!":GOSUB7000:GOSUB3000:GOSUB3070:GOSUB3140:RETURN 840 PRINT"this gets you an arm":GOSUB7000:GOSUB3030:GOSUB3070:GOSUB3140:RETURN 850 PRINT"the other arm{.*3}":GOSUB7000:GOSUB3040:GOSUB3070:GOSUB3140:RETURN 860 PRINT"oh no!{space*2}a foot!":GOSUB7000:GOSUB3010:GOSUB3070:GOSUB3140:RETURN 870 PRINT"hey, don't hang me!!":GOSUB7000:GOSUB3020:GOSUB3070:GOSUB3140:RETURN 880 PRINT"a hand--only one left":GOSUB7000:GOSUB3050:GOSUB3070:GOSUB3140:RETURN 890 PRINT"{a*3}rgh! i'm hung!":GOSUB7000:nh=nh+1:GOSUB3060:GOSUB3070:GOTO900 900 GOSUB7100:GOSUB7200:PRINT"{home}{down}{right}{down}";:FORi=1TO20:PRINT" ";:NEXTi:PRINT 1000 PRINT"{right}";:FORi=1TO20:PRINT" ";:NEXTi:PRINT 1010 PRINT"{right}";:FORi=1TO20:PRINT" ";:NEXTi:PRINT 1015 PRINT"{down*4}";:FORi=1TO20:PRINT" ";:NEXTi 1020 GOSUB3140:GOSUB2300:GOTO600 1050 PRINT:PRINT"that's a good one!" 1060 PRINT"here's where it goes" 1070 GOSUB7000:GOSUB3070:GOSUB3140:fl=0 1080 FORi=0TOnl 1090 IFlm$(i)="{sh asterisk}"THENfl=1 1095 NEXTi:IFfl=1THEN1150 1100 PRINT"{down*3}":PRINT"got it in ";n+1;"guesses!" 1105 nr=nr+1 1110 FORi=1TO1500:NEXTi 1120 FORi=0TO21:POKEx(9)+y(i),32:NEXTi 1130 FORi=0TO19:POKEx(11)+y(i),32:NEXTi 1140 GOSUB2300:GOSUB7200:GOTO600 1150 GOSUB3220:GOSUB3140:IFfl=1THEN650 1160 GOTO1100 1998 PRINT"end" 1999 END 2000 DIMx(24),y(39) 2010 j=1024 2020 FORi=0TO24:x(i)=j:j=j+40:NEXTi 2030 FORi=0TO39:y(i)=i:NEXTi 2040 RETURN 2050 FORi=27TO29:POKEx(4)+y(i),99:NEXTi 2060 POKEx(4)+y(26),78:POKEx(7)+y(30),78 2070 POKEx(4)+y(30),77:POKEx(7)+y(26),77 2080 POKEx(5)+y(25),118:POKEx(6)+y(25),103:POKEx(5)+y(31),117 2090 POKEx(6)+y(31),101:POKEx(8)+y(27),99:POKEx(8)+y(29),99 2100 POKEx(5)+y(27),81:POKEx(5)+y(29),81:POKEx(6)+y(28),87 2110 POKEx(7)+y(27),74:POKEx(7)+y(28),64:POKEx(7)+y(29),75 2180 POKEx(8)+y(28),224 2190 RETURN 2200 FORi=9TO14:FORj=26TO30 2210 POKEx(i)+y(j),224:NEXTj:NEXTi 2220 POKEx(9)+y(28),150:FORi=10TO12 2230 POKEx(i)+y(28),218:NEXTi 2240 FORi=26TO30:POKEx(13)+y(i),226:NEXTi 2250 RETURN 2260 FORi=26TO27:FORj=15TO18:POKEx(j)+y(i),102:NEXTj:NEXTi 2270 FORi=26TO30:POKEx(14)+y(i),102:NEXTi 2280 RETURN 2300 FORi=4TO19:FORj=25TO31:POKEx(i)+y(j),32:NEXTj:NEXTi:RETURN 2500 FORa=704TO732:READtt:POKEa,tt:NEXTa:RETURN 2510 DATA 169,0,133,140,169,219,133,141,169,3,160,255,145,140,136,192,0,208,249 2520 DATA 198,141,164,141,192,215,208,239,96,0 3000 FORi=29TO30:FORj=15TO18:POKEx(j)+y(i),102:NEXTj:NEXTi:RETURN 3010 POKEx(18)+y(25),111:POKEx(19)+y(25),226:POKEx(19)+y(26),226 3015 POKEx(19)+y(27),226:RETURN 3020 FORi=29TO31:POKEx(19)+y(i),226:POKEx(18)+y(31),111:NEXTi:RETURN 3030 FORi=10TO13:POKEx(i)+y(25),231:NEXTi:POKEx(9)+y(25),233:RETURN 3040 FORi=10TO13:POKEx(i)+y(31),229:NEXTi:POKEx(9)+y(31),223:RETURN 3050 POKEx(14)+y(25),81:RETURN 3060 POKEx(14)+y(31),81:RETURN 3070 PRINT"{home}{down*2}{right}"; 3080 FORi=0TO9:PRINTlg$(i);" ";:NEXTi:PRINT 3090 PRINT"{right}";:FORi=10TO19:PRINT" ";lg$(i);:NEXTi:PRINT 3100 PRINT"{right}";:FORi=20TO25:PRINTlg$(i);" ";:NEXTi:PRINT 3110 PRINT"{down*3}":FORi=1TOnl:PRINT" ";lm$(i);:NEXTi:PRINT 3130 RETURN 3140 FORi=0TO21:POKEx(14)+y(i),32:POKEx(16)+y(i),32:POKEx(17)+y(i),32 3145 POKEx(10)+y(i),32:NEXTi 3150 GOSUB3200 3160 RETURN 3200 FORi=0TO21:POKEx(19)+y(i),32:NEXTi 3210 RETURN 3220 PRINT:PRINT:PRINT:PRINT:PRINT"guess the word?":fl=0:PRINT"{up*5}"; 3230 FORi=1TOnl 3240 GETi$:IFi$=" "THENfl=1:i=nl:GOTO3275 3245 IFi$<"a"THEN3240 3250 IFi$>"z"THEN3240 3260 IFi$<>MID$(w$(w),i,1)THENfl=1 3270 PRINT" ";i$; 3275 NEXTi 3280 RETURN 6000 GOTO600 7000 FORps=1TO1000:NEXTps:RETURN 7100 POKE1251,43:POKE1253,43:POKE1331,85:POKE1332,64:POKE1333,73 7110 GOSUB7000:RETURN 7200 PRINT"{home}{down*19}";"the word was ";"{reverse on}";w$(w);"{reverse off}":GOSUB7000 7210 PRINT"{down*2}";"{.*3}another word?" 7215 GETi$ 7220 IFi$="y"THENPRINT"{up*4}";"{space*25}":RETURN 7230 IFi$="n"THENPRINT"{clear}{down*2}";"ok{.*5}thanks for the game!";"{down*3}":GOTO615 7240 GOTO7215 7300 PRINT"{down}";" already picked{space*2}";l$:GOSUB7000:GOSUB3140:RETURN 10010 DATA magistrate,mahogany,answer 10020 DATA castle,interest,vacuum,moose 10030 DATAbasket,automobile,conserve 10040 DATAanimosity,frustrate,ogle,skiing 10050 DATAcigarette,credenza,credentials 10060 DATAhammock,sailboat,building,doom 10070 DATAtelephone,radiology,mixture 10080 DATAkeyboard,typewriter,femur 10090 DATAdecade,partial,ooze,emulate 10100 DATAfireplace,creature,frozen 10110 DATAtongue,clothing,elevator 10120 DATAdraperies,hangman,relinquish 10130 DATAquadrangle,triangle,location 10140 DATAindicate,buffoon,muddle 10150 DATAsequential,abdicate,aardvark 10160 DATArutabaga stop tok64 (bastext 1.0)