Random demo
Random game
Random demo
Tragedy Tragedy Tragedy Tragedy Tragedy Tragedy Tragedy
Listing 1
5 REM *****************************
6 REM * BRUCE TANNER *
7 REM * OKEMOS,​ MICHIGAN *
8 REM *****************************
10 GRAPHICS 18:​SETCOLOR 2,​0,​12
20 POSITION 3,​3:​PRINT #6;"***************"
30 POSITION 4,​5:​PRINT #6;"T R A G E D Y"
40 POSITION 3,​7:​PRINT #6;"***************"
45 IF T=0 THEN POSITION 4,​10:​PRINT #6;"start = begin":​T=1
50 IF DICE=1 THEN SOUND 0,​60,​12,​8:​FOR X=1 TO 1000:​NEXT X:​SOUND 0,​0,​0,​0:​RETURN
60 RESTORE 1030:​IF PEEK(53279)=6 THEN 70
65 FOR W=1 TO 200:​NEXT W:​GOTO 60
70 GRAPHICS 0:​SETCOLOR 2,​12,​0:​SETCOLOR 4,​12,​0:​POKE 752,​1
80 PRINT:​PRINT:​PRINT "TRAGEDY IS A DICE GAME IN WHICH ANY NUMBER OF PLAYERS MAY PARTICIPATE."
90 PRINT "THE OBJECT OF THE GAME IS TO GAIN A SCORE OF 100 OR MORE BEFORE YOUR "
100 PRINT "OPPONENT(S). YOU MAY ROLL AS MANY TIMES AS YOU WISH DURING YOUR TURN,​ BUT IF YOU ROLL A 1,​ YOU ";
110 PRINT "WILL LOSE ALL POINTS IN THAT SERIES. IF YOU ROLL'SNAKE EYES' YOU WILL LOSE ALL POINTS GAINED ";
120 PRINT "TO THAT POINT. ANY OTHER 'DOUBLE' WILL EARN DOUBLE POINTS FOR THAT ROLL.";
130 PRINT " IF DOUBLES ARE ROLLED AND THEY ARE NOT 1'S THEN THE PLAYER MUST ROLL AGAIN."
140 PRINT:​PRINT:​PRINT " <PRESS ANY KEY TO BEGIN>"
150 OPEN #1,​4,​0,​"K:​":​GET #1,​T:​CLOSE #1
160 PRINT CHR$(125)
170 PRINT:​PRINT:​PRINT
180 POKE 764,​255:​PRINT " HOW MANY PLAYERS?":​INPUT PL
190 PRINT:​PRINT:​PRINT:​PRINT " PLAYER #1 PRESS ANY KEY TO BEGIN.":​POKE 752,​1
200 OPEN #1,​4,​0,​"K:​":​GET #1,​T:​CLOSE #1
210 DIM SC(PL),​DICE$(125),​Y$(3):​WIN=99:​PL2=1
230 DICE$=""
240 FOR TRN=1 TO PL:​SC(TRN)=0:​NEXT TRN
250 FOR TRN=1 TO PL:​PRINT CHR$(125):​SCORE=SC(TRN)
260 REM
262 PRINT "PLAYER ";TRN
265 REM *** DICE ROLL ROUTINE ***
270 X=20:​Y=6
280 DICE=INT(6*RND(1)+1)
290 A=DICE*17-16
300 COUNT=COUNT+1
310 IF X>25 THEN X=20
320 POSITION X,​Y
330 PRINT DICE$(A,​A+16)
340 X=X+5
350 SOUND 0,​30,​2,​15:​SOUND 0,​0,​0,​0
360 IF COUNT<>20 THEN GOSUB 640:​GOTO 280:​REM *** GET VALUE OF FIRST DIE ***
370 GOSUB 640:​REM *** GET VALUE OF SECOND DIE ***
380 S1=S1+S
390 SCORE=SCORE+S
400 IF S=0 AND DICE1<>DICE2 THEN SCORE=SCORE-S1
410 PRINT:​PRINT
420 PRINT:​PRINT ""
430 PRINT " THIS ROLL:​ ";S
440 PRINT " TOTAL THIS SERIES:​ ";S1
450 PRINT " SCORE:​ ";SCORE
460 PRINT ""
470 POSITION 26,​13:​PRINT ""
480 POSITION 26,​14:​PRINT ""
490 POSITION 26,​15:​PRINT ""
500 PRINT:​PRINT:​PRINT:​PRINT " PRESS ANY KEY TO ROLL AGAIN,​"
510 PRINT " 'N' TO PASS TO NEXT PLAYER."
530 IF DICE1=DICE2 AND DICE<>1 THEN POSITION 15,​1:​PRINT "":​GOTO 590
540 IF S=0 THEN GOTO 560
556 GOTO 580
560 IF TRN<PL THEN POSITION 15,​2:​PRINT " ";PL-(PL-(TRN+1));" ":​GOTO 585
570 POSITION 15,​2:​PRINT " ";1;" ":​GOTO 585
580 POSITION 15,​1:​PRINT "":​GOTO 590
585 GOSUB 850
590 OPEN #1,​4,​0,​"K:​":​GET #1,​T:​IF DICE1<>DICE2 AND T=ASC(CHR$(78)) THEN S=0:​CLOSE #1:​GOTO 560
600 CLOSE #1:​PRINT CHR$(125):​SETCOLOR 2,​12,​0:​SETCOLOR 4,​12,​0:​POKE 752,​1:​COUNT=0
605 IF S=0 THEN SC(TRN)=SCORE:​S1=0:​GOSUB 760:​GOTO 610
606 GOTO 260
610 IF TRN<>PL THEN NEXT TRN
620 GOTO 250
633 REM ******************************
635 REM *DIE SEPARATION AND SCOREING *
640 IF COUNT<>20 THEN DICE1=DICE:​RETURN
650 DICE2=DICE
660 IF DICE1=1 AND DICE2=1 THEN SCORE=0:​S=0:​RETURN
670 IF DICE1=1 OR DICE2=1 AND DICE1<>DICE2 THEN S=0:​RETURN
680 IF DICE1=DICE2 THEN S=4*DICE:​RETURN
690 S=DICE1+DICE2:​RETURN
695 REM ** WINNER'S DISPLAY **
700 GRAPHICS 18:​POSITION 2,​3:​PRINT #6;"****************":​POSITION 4,​4:​PRINT #6;"PLAYER ";M;" WINS"
710 POSITION 3,​6:​PRINT #6;"WITH ";WIN;" POINTS":​POSITION 2,​7:​PRINT #6;"****************"
720 RESTORE 1030
730 GRAPHICS 0:​SETCOLOR 2,​12,​0:​SETCOLOR 4,​12,​0:​POKE 752,​1:​PRINT:​PRINT:​PRINT " <DO YOU WANT TO PLAY AGAIN>"
740 POKE 764,​255:​INPUT Y$:​IF Y$(1,​1)<>"N" THEN CLOSE #1:​CLR:​GOTO 180
750 END
755 REM ** HIGH SCORE DETERMINATION AND DISPLAY **
760 IF P=1 THEN PL2=PL2+1
762 IF SC(TRN)>WIN THEN WIN=SC(TRN):​M=TRN:​G=1
763 IF PL2=PL THEN 700
764 IF G=1 THEN 790
770 RETURN
790 GRAPHICS 18:​POSITION 2,​3:​PRINT #6;"****************":​POSITION 5,​4:​PRINT #6;"NEXT PLAYER"
800 POSITION 2,​5:​PRINT #6;"ROLL TO BEAT ";WIN:​POSITION 2,​6:​PRINT #6;"****************":​RESTORE:​GOSUB 870:​G=0
810 POKE 764,​255:​POSITION 5,​10:​PRINT #6;"HIT ANY KEY":​OPEN #1,​4,​0,​"K:​":​GET #1,​G:​CLOSE #1:​P=1
820 GRAPHICS 0:​SETCOLOR 2,​12,​0:​SETCOLOR 4,​12,​0:​POKE 752,​1:​RETURN
850 IF DICE1=1 AND DICE2=1 THEN FOR X=1 TO 200:​NEXT X:​GOSUB 10:​POKE 764,​255:​POSITION 4,​10:​PRINT #6;"PRESS ANY KEY"
860 RETURN
880 DISTORTION=10:​READ DURATION
960 GOTO 880
970 SOUND 0,​0,​0,​0:​SOUND 1,​0,​0,​0
980 RETURN
990 DATA 5,​672,​2,​60,​2,​72,​2,​81,​2,​60,​2,​47,​2,​40,​4,​40,​2,​47,​2,​60,​3,​81,​4,​72,​5,​60,​3,​47,​4,​53,​4,​60
1030 DATA 2,​108,​2,​102,​2,​96,​5,​60,​2,​96,​5,​60,​2,​96,​5,​60,​2,​100,​2,​60,​2,​53,​2,​50,​3,​47,​2,​60,​2,​53,​5,​47,​2,​64,​5,​53,​4,​60,​3,​100
1040 DATA 2,​108,​2,​102,​2,​96,​5,​60,​2,​96,​5,​60,​2,​96,​5,​60,​2,​72,​2,​83,​2,​85,​2,​72,​2,​60,​4,​47,​2,​53,​2,​60,​2,​72,​6,​53,​2,​100
1050 DATA 2,​108,​2,​102,​2,​96,​5,​60,​2,​96,​5,​60,​2,​96,​5,​60,​2,​100,​2,​60,​2,​53,​2,​47,​2,​60,​2,​53,​4,​47,​2,​60,​2,​53,​2,​60,​2,​47,​2,​60
1060 DATA 2,​53,​5,​47,​2,​60,​2,​53,​2,​60,​2,​47,​2,​60,​2,​53,​4,​47,​2,​64,​4,​53,​6,​60,​255	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!