Home » Personal collection » Commodore disks » disk52a2_c16_progs.d64 » hangman
hangman
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 » Commodore disks » disk52a2_c16_progs.d64 |
Filename: | hangman |
Read OK: | ✔ |
File size: | 179E bytes |
Load address: | 1001 |
Exec address: | 0000 |
Duplicates
There are 2 duplicate copies of this file in the archive:
- Personal collection » Commodore disks » disk52a2_c16_progs.d64 » hangman
- Personal collection » Commodore tapes » Commodore_16 » drawer_br_tape02a_c16_basic1.wav » hangman
- Personal collection » Commodore tapes » Commodore_16 » drawer_br_tape02b_c16_basic1.wav » hangman
File contents
5 REM HANGMAN264 7 REM COPYRIGHT (C) ANDREW COLIN 1984 10 REM GRAPHICS BY JOHN COLIN 15 COLOR0,2:COLOR4,15,4:VOL 4 20 IF Z>13THEN 220 25 PRINT"<clr><black>" 28 PRINT"<cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><flash on>WAIT A MOMENT PLEASE!<flash off>" 30 DIM P%(240),Q%(240),R%(240),W$(500) 35 RESTORE 40 SM=3072:CM=2048 70 FOR J=0TO240:READP%(J):NEXT 80 FOR J=0TO240:READQ%(J):NEXT 85 FOR J=0TO240:READR%(J):NEXT 90 FOR J=1 TO 6:FORK=1TO4:READB%(J,K):NEXTK,J 91 W=0 92 READW$(W):IF W$(W)<>"ZZZZ"THEN W=W+1:GOTO92 95 K=TI:J=K-100*INT(K/100) 97 FORK=0TOJ:L=RND(0):NEXTK 100 Q%(109)=202:Q%(111)=203:FORJ=98TO115:R%(J)=11:NEXTJ:GOSUB1200 110 PRINT"<clr>" 120 X=23:Y=0:A=0:B=89:R=LEN(X$) 125 FORJ=1 TO R:Z(J)=ASC(MID$(X$,J,1))-64:NEXTJ 130 GOSUB1000 135 P=23:Q=0 140 PRINT"<home>WORD HAS";R;"LETTERS" 150 FORJ=1TOR:POKE 3200+J,42:POKE 2176+J,6:NEXTJ 160 PRINT"<home><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down>LETTERS":PRINT:PRINT" USED":PRINT:PRINT"NEXT GUESS?" 165 T$=MID$("********",1,R) 166 K=0 170 POKE 239,0 172 GET Z$:IFZ$=""THEN172 180 Z=ASC(Z$)-64 190 IF Z<1 OR Z>26 THEN 170 200 POKE 3964,Z:POKE2940,2 205 IF Z >13 THEN 220 210 POKE 3153+40*(Z-1),Z:POKE 2129+40*(Z-1),0:GOTO240 220 POKE 3156+40*(Z-14),Z:POKE 2132+40*(Z-14),0 240 GOSUB1300 250 IF L=1THEN300 260 GOSUB 1400 270 K=K+1 280 IF K<>7 THEN GOSUB1100:GOTO170 290 GOTO 500 300 IF T$=X$THEN600 305 GOSUB 1500 310 GOTO170 500 GOSUB 1700 510 Q%(109)=213:Q%(111)=201 520 FORJ=98 TO 115:R%(J)=14:NEXTJ 540 FORJ=0TO5 550 POKE3135+40*J,66:POKE 2111+40*J,0 551 NEXTJ 560 P=23:Q=3 565 FORK=1TO6:GOSUB1100:NEXT 566 FORJ=3153 TO 3633 STEP 40:POKE J,32:POKE J+3,32:NEXTJ 567 POKE 3964,32 570 PRINT"<home><cursor down><cursor down><cursor down><cursor down><cursor down><cursor down><cursor right><cursor right><cursor right>YOU LOSE. IT WAS":PRINT:PRINT"<purple> <flash on>";X$;"<flash off>" 580 PRINT:PRINT"<black> NOW HIT ANY KEY" 590 GOTO 625 600 X=23:Y=0:A=0:B=89:Q=1 610 GOSUB1700:Q%(90)=32 615 FORK=1TO6:GOSUB1100:NEXT 616 FORJ=3153 TO 3633 STEP 40:POKE J,32:POKE J+3,32:NEXTJ 617 POKE 3964,32:Q%(90)=66 620 PRINT"<home>YOU WIN AND ARE FREE HIT ANY KEY" 625 GET A$: IF A$<>"" THEN 625 630 GET A$: IF A$<>"" THEN 100 640 SOUND 1,900,5 650 GET A$:IF A$<>"" THEN 100 660 FOR J=1TO100:NEXTJ:GOTO 630 1000 REM SUBROUTINE TO DISPLAY A PART 1010 F=40*Y+X 1020 FORJ=ATOB:C=F+P%(J) 1040 POKE C+SM,Q%(J) 1050 POKE C+CM,R%(J) 1060 NEXTJ 1070 RETURN 1100 REM TO PAINT NEXT PART OF BODY 1110 X=P+B%(K,1):Y=Q+B%(K,2) 1120 A=B%(K,3):B=B%(K,4) 1130 GOSUB1000 1140 RETURN 1200 REM GET A RANDOM WORD 1210 X$=W$(INT((W-1)*RND(0))) 1220 RETURN 1300 REM COMPARES CURRENT LETTER WITH X$ 1305 L=0 1310 FORM=1TOR 1320 IFZ <>Z(M)THEN 1360 1330 T$=LEFT$(T$,M-1)+Z$+RIGHT$(T$,R-M) 1340 POKE 3200+M,Z:POKE 2176+M,O 1350 L=1 1360 NEXTM 1370 RETURN 1400 REM FAILURE SOUND 1410 FOR S=500 TO 25STEP -25 1420 SOUND 1,S,1 1430 NEXTS 1440 RETURN 1500 REM SUCCESS SOUND 1510 SOUND 1,890,5 1520 RETURN 1700 REM DELETE MAN 1710 PRINT"<home>" 1720 PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> " 1730 PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> 1740 PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> " 1745 PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> " 1747 PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> " 1750 FORJ=6TO21:PRINT"<cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right><cursor right> " 1760 NEXT J 1770 RETURN 4000 REM GALLOWS (P%) 4010 DATA0,1,2,3,4,5,6,7,8,9,10 4020 DATA40,43,44,49,50,84,85,89,90,125,126,129,130 4030 DATA166,167,169,170,207,208,209,210,248,249,250 4040 DATA289,290,329,330,369,370,409,410,449,450,489,490 4050 DATA529,530,569,570,609,610,649,650,689,690,729,730 4060 DATA769,770,808,809,810,811,848,849,850,851 4070 DATA876,877,878,879,880,881,882,883,884,885,886,887 4080 DATA888,889,890,891,892,893,894,895,896 4100 REM HEAD (P%) 4110 DATA0,37,38,39,40,41,42,43 8216 DATA78,79,80,81,82,118,119,120,121,122 4130 DATA158,159,160,161,162,199,200,201 4200 REM BODY(P%) 4210 DATA0,1,2,3,4,5,6,40,41,42,43,44,45,46 4220 DATA80,81,82,83,84,85,86,120,121,122,123,124,125,126 4230 DATA160,161,162,163,164,165,166,200,201,202,203,204,205,206 4240 DATA 240,241,242,243,244,245,246 4300 REM LEFT ARM (P%) 4310 DATA0,1,39,40,41,79,80,119,120,159,160,199,200,240 4400 REM RIGHT ARM (P%) 4410 DATA0,1,40,41,42,81,82,121,122,161,162,201,202,241 4500 REM LEFT LEG (P%) 4510 DATA0,1,2,40,41,42,80,81,82,120,121,122,160,161,162,200,201,202 4520 DATA239,240,241,279,280,281 4600 REM RIGHT LEG(P%) 4610 DATA0,1,2,40,41,42,80,81,82,120,121,122,160,161,162,200,201,202 4620 DATA241,242,243,281,282,283 5000 REM GALLOWS (Q%) 5010 DATA160,160,160,160,160,160,160,160,160,160,160 5020 DATA66,95,223,160,160,95,223,160,160,95,223,160,160 5030 DATA95,223,160,160,95,223,160,160,95,160,160 5040 DATA160,160,160,160,160,160,160,160,160,160,160,160 5050 DATA160,160,160,160,160,160,160,160,160,160,160,160 5060 DATA160,160,160,160,160,160,160,160,160,160 5070 DATA104,104,104,104,104,104,104,104,104,104,104,104 5080 DATA160,160,160,160,104,104,104,104,104 5100 REM HEAD(Q%) 5110 DATA66,111,233,160,160,160,223,111 5120 DATA160,209,160,209,160,160,160,241,160,160 5130 DATA95,202,195,203,105,160,160,160 5200 REM BODY(Q%) 5210 DATA160,227,160,160,160,227,160,160,160,160,102,160,160,160 5220 DATA160,160,209,102,167,160,160,160,160,209,102,167,160,169 5230 DATA160,160,209,102,172,160,160,163,163,163,163,163,163,163 5240 DATA244,160,160,157,160,160,231 5300 REM LEFT ARM (Q%) 5310 DATA233,160,106,160,160,106,160,106,160,106,160,106,160,160 5400 REM RIGHT ARM (Q%) 5410 DATA160,223,160,160,116,160,116,160,116,160,116,160,116,160 5500 REM LEFT LEG(Q%) 5510 DATA160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160 5520 DATA160,160,98,98,160,120,120,120 5600 REM RIGHT LEG(Q%) 5610 DATA160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160 5620 DATA160,160,160,98,98,120,120,120 6000 REM GALLOWS (R%) 6010 DATA0,0,0,0,0,0,0,0,0,0,0 6020 DATA0,0,0,0,0,0,0,0,0,0,0,0,0 6030 DATA0,0,0,0,0,0,0,0,0,0,0 6040 DATA0,0,0,0,0,0,0,0,0,0,0,0 6050 DATA0,0,0,0,0,0,0,0,0,0,0,0 6060 DATA0,0,0,0,0,0,0,0,0,0 6070 DATA5,5,5,5,5,5,5,5,5,5,5,5 6080 DATA0,0,0,0,5,5,5,5,5 6100 REM HEAD (R%) 6110 DATA0,0,0,0,0,0,0,0 6120 DATA12,12,12,12,12,12,12,12,12,12 6130 DATA12,12,12,12,12,12,12,12 6200 REM BODY(R%) 6210 DATA0,0,0,2,0,0,0,0,0,0,2,0,0,0 6220 DATA0,0,0,2,0,0,0,0,0,0,2,0,0,0 6230 DATA0,0,0,2,0,0,0,4,4,4,4,4,4,4 6240 DATA4,4,4,4,4,4,4 6300 REM LEFT ARM (R%) 6310 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,10 6400 REM RIGHT ARM (R%) 6410 DATA0,0,0,0,0,0,0,0,0,0,0,0,0,10 6500 REM LEFT LEG (R%) 6510 DATA4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,6,0,0,0 6600 REM RIGHT LEG(R%) 6610 DATA4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,6,0,0,0,0,0 6900 DATA0,2,90,115,-3,7,116,164,-5,7,165,178,4,7,179,192,-3,14,193,216 6910 DATA1,14,217,240 7000 DATAMAP,BICYCLE,PUZZLE,QUEEN,RULER,RAIN,AXIOM,CARAPACE,WINDOW,LABEL 7010 DATACLOCK,JUDGE,STAR,BREAD,PENCIL,BOUGH,SKY,ORANGE,SHOW,TRAIN,PIG,WHALE,BOTTOM 7020 DATACARPET,CAKE,HOSPITAL,VIOLIN,FILE,CASSETTE,MUSIC,AXE,NUMBER,LETTER 7030 DATACOMPUTER,MAGAZINE,PICTURE,RECORDER,PEN,GRASS,AIRCRAFT,NOISE,DINNER,BEER 7040 DATACOARSE,RUDE,OBSCENE,IMPOLITE,VULGAR,NICE,NASTY,ADULT,JUVENILE,DELIGHT 7050 DATA KEY,DOG,CARDINAL,BINOCULARS,BASIC.PROGRAM,DRUM,BASSOON,COMMITTEE,ZZZZ 10000 PRINTPEEK(239) 10001 POKE 239,0 10005 GET Z$:IF Z$<>""THEN PRINT Z$:GOTO 10005 10010 FORJ=1TO1000:NEXTJ 10020 GOTO10000
� HANGMAN264 8 � COPYRIGHT (C) ANDREW COLIN 1984 U � GRAPHICS BY JOHN COLIN j �0,2:�4,15,4:� 4 z � Z�13� 220 � �"��"