User Tools

Site Tools

Translations of this page:




Author M.A. Owen
Computer Amstrad PCW 8256 / 8512 / 9512
Year 1990
Gender Arcade
Controls Keyboard
Languages English
Status Preserved



Chomp is a game with a variation on the theme of the classic Hangman. However, this version of an old favorite is definitely anti-capital punishment and sees punishment instead, a battle between a ravenous spider and a caterpillar that seems quite concerned.

The player's objective is to guess a hidden word, this being the Executioner. All the words in this version have been related to animals. It's also all single words, no phrases, though this might not be a bad addition to the program if you really want to start testing your friends or kids.

Each time an incorrect letter is chosen, you are informed of the fact and a spider descends a little further down its thread from the top right of the screen, ready to snap the caterpillar in two. Each time a correct letter is chosen, the caterpillar is one step closer to freedom. If the whole word is found, the caterpillar runs off the stage only to be forced back, whether you want to play another game or not. You have seven chances to come up with the correct answer; it might have been an idea to try to provide a skill level with a higher or lower number of tries.

What makes this version of the game so compelling is the fact that every option has been considered. You don't have to restart CHOMP.BAS every time you want a new game; nor do you have to play through a set of games before you can escape. The spider moves very smoothly just like its prey. Another option thought it is the fact that the game remembers which letters you have already chosen and warns us of the fact that it is trying to reuse one. Overall, CHOMP.BAS would be a nice break for a few minutes for adults and their children that would serve as a quintessential educational tool.

The animal names have been stored on the DATA lines at the end of the program. These can obviously be changed or extended when you see fit and you get bored with the game. The scope of this game is very wide and it will provide many people with an enjoyable pastime.


  • Listing - CHOMP.BAS
1 ' Chomp by M.A. Owen
2 '     8000 Plus
3 ' 
5 clock=256*PEEK(2)-10
10 GOSUB 600
20 PRINT cl$:ERASE l$:DIM l$(26):c=0:w=0
30 PRINT FNp$(85,0);CHR$(200);CHR$(201);FNp$(85,1);CHR$(202);CHR$(203)
40 PRINT FNp$(84,30);CHR$(204);CHR$(205);CHR$(206);CHR$(207);e$+"H"
50 FOR f=0 TO 27:PRINT FNp$(82,f);CHR$(149):NEXT f
60 PRINT FNp$(0,24)STRING$(82,154)CHR$(157)
70 PRINT FNp$(0,28);STRING$(82,154);CHR$(153);e$+"H"
80 PRINT FNp$(37-LEN(h$)\2,2);e$+"r";"Guess ";h$;e$+"u"
90 PRINT FNp$(0,10);"What is this :"FNp$(18,10);:choice=1+INT(n*RND)
100 IF d$(choice,1)="1" THEN choice=choice+1+n*(choice=n):GOTO 100
110 d$(choice,1)="1":le=0:FOR f=1 TO LEN(d$(choice,0))
120 IF MID$(d$(choice,0),f,1)=" " THEN PRINT "   ";:GOTO 140
130 PRINT CHR$(154);CHR$(154);" ";:le=le+1
140 NEXT f:t=t+1
150 PRINT FNp$(0,16);"Choose a letter";SPACE$(50)
160 i$=LOWER$(INKEY$):IF i$<"a" OR i$>"z" THEN 160
170 IF l$(ASC(i$)-96)="" THEN 190
180 PRINT FNp$(0,16)"You have tried that one."CHR$(7):GOSUB 390:GOTO 150
190 l$(ASC(i$)-96)="1":PRINT FNp$(1+2*(ASC(i$)-96),26);i$;e$+"H"
200 found=0:FOR f=1 TO LEN(d$(choice,0))
210 IF MID$(d$(choice,0),f,1)<>i$ THEN 230
220 PRINT FNp$(15+3*f,10);i$;"  ":c=c+1:found=1
230 NEXT f:IF found=1 AND c<le THEN 150
240 IF found=1 THEN 360 ELSE w=w+1
250 PRINT FNp$(0,16);"Sorry! That letter isn't in the word."
260 GOSUB 390:IF w<8 THEN GOSUB 380:GOTO 150
270 PRINT FNc$(8):GOSUB 390:PRINT FNc$(4):GOSUB 390
280 PRINT FNc$(10):GOSUB 390:PRINT FNp$(84,28)"    ";e$+"H"
290 PRINT FNp$(85,29);CHR$(200);CHR$(201);FNp$(85,30);
300 PRINT CHR$(202);CHR$(203);e$+"H":GOSUB 390
310 PRINT FNp$(0,16)"You lost that one"SPACE$(40)
320 PRINT FNp$(0,18)"The correct word was :   ";d$(choice,0)
330 PRINT FNp$(0,22)"Do you want another go? (y or n)"
340 i$=INKEY$:IF i$="n" THEN PRINT cl$;e$+"e":END
350 IF i$<>"y" THEN 340 ELSE IF t<n THEN 20 ELSE RUN
360 PRINT FNp$(0,16)"Well done."SPACE$(40)FNc$(8)
370 GOSUB 390:PRINT FNc$(9):GOSUB 390:CALL ctr:GOTO 330
380 PRINT FNc$(8):CALL spid:PRINT FNc$(4):RETURN
390 FOR g=1 TO 1000:NEXT g:RETURN
400 DATA 01,67,e0,18,08,01,4c,e0,18,03,01,40
410 DATA e0,c5,2a,01,00,01,57,00,09,22,1a,e0
420 DATA c1,cd,00,00,e9,00,c9,d5,5e,23,56,e1
430 DATA eb,7d,e6,07,4f,7d,e6,f8,cb,27,cb,14
440 DATA b1,6f,c9,db,f8,e6,40,28,fa,db,f8,e6
450 DATA 40,28,f4,c9,21,00,ee,11,40,be,01,58
460 DATA 00,ed,b0,c9,06,58,c5,cd,33,e0,21,e0
470 DATA b7,cd,1f,e0,e5,01,08,00,09,d1,01,c0
480 DATA 02,ed,b0,c1,10,e8,c9,06,20,c5,21,e0
490 DATA b7,e5,cd,1f,e0,01,a8,02,09,eb,06,f0
500 DATA cd,33,e0,e1,2b,2b,e5,c5,cd,1f,e0,01
510 DATA a8,02,09,e5,7e,12,01,08,00,09,eb,09
520 DATA 1a,77,d1,c1,10,e5,e1,c1,10,cf,c9,*
530 DATA &hd2,01,87,78,14,f2,11,f4,12,00,c2,3c,50,9e
540 DATA 10,5e,90,69,87,88,0a,09,07,09,04
550 DATA 2c,c2,22,a0,20,c0,20,40,24,7e,81
560 DATA a5,81,99,42,3c,00,00,00,ff,00,ff,92,92
570 DATA 00,00,00,ff,00,ff,49,49,00,00,00,fe,01
580 DATA fe,24,24,24,7e,a5,81,81,99,42,3c
590 DATA 24,7e,a5,81,a5,bd,42,3c,24,7e,81,81,a5,99,66,3c,*,&h79
600 MEMORY 57343!:RANDOMIZE (PEEK(clock+1)+60*PEEK(clock+2)):e$=CHR$(27)
610 cl$=e$+"E"+e$+"H":init=57354!:spid=57344!:ctr=57349!
620 DEF FNp$(x,y)=e$+"Y"+CHR$(32+y)+CHR$(32+x):PRINT e$+"f"
630 DIM d$(200,1),l$(26):DEF FNc$(x)=FNp$(84,30)+CHR$(200+x)+e$+"H"
640 RESTORE 710:f=1:READ h$,i$:WHILE i$<>"*":d$(f,0)=i$:d$(f,1)="":READ i$
650 f=f+1:WEND:t=0:n=f-1
660 IF (PEEK(init)=1) AND (PEEK(init+1)=64) THEN RETURN
670 RESTORE 400:add=spid:FOR g=1 TO 2:f=0:cs=0:READ d$:WHILE d$<>"*"
680 m=VAL("&h"+d$):POKE add+f,m:f=f+1:cs=cs+m+256*((cs+m)>255):READ d$
690 WEND:READ d$:IF cs<>VAL(d$) THEN PRINT "Mistyped code.":STOP
700 add=60928!:NEXT g:CALL init:RETURN
710 DATA an Animal
720 DATA ass,badger,bat,bear,beaver,bison,boar,buffalo,caribou
730 DATA cat,coypu,deer,dolphin,dormouse,elk,ferret,fox,hamster
740 DATA hare,hedgehog,horse,jackal,lemming,lynx,mink,mole,mongoose
750 DATA moose,mouse,otter,ox,polecat,porcupine,porpoise,rabbit
760 DATA raccoon,rat,reindeer,seal,sheep,shrew,squirrel,stoat,vole
770 DATA walrus,weasel,whale,wolf,donkey,cow,goat,dog,monkey,elephant
780 DATA lion,snake,lizard,frog,tiger,zebra,giraffe,*


       PCW keyboard

Loading the program

 1.- Insert the CP/M disc on side 2
 2.- Write BASIC and wait for it to load
 3.- Remove the CP/M disk and insert the disk containing the Chomp game
 4.- Type run "CHOMP" and press the "ENTER" key


  • Listing of the program in a magazine with a large circulation of the time

chomp_01.jpg chomp_02.jpg chomp_03.jpg


  • Chomp (game in dsk format, compressed with zip)
en/chomp.txt · Last modified: 2022/07/01 13:14 by jevicac