Home » Personal collection » Commodore tapes » Commodore_16 » drawer_br_tape02b_c16_basic1.wav » 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 tapes » Commodore_16 » drawer_br_tape02b_c16_basic1.wav |
| 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 � �"��"