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!
|
|
|
-
Entry name:Quatrainment
-
Category:Games
-
Publisher/Developer:BELLCOM - Public Domain Library
Listing 1
1 GRAPHICS 2+16:FOR A=0 TO 10 STEP 2:POSITION 0,A:? #6;"";:NEXT A
2 POKE 708,15:POSITION 4,1:? #6;"QUATRAINMENT":POKE 712,66
3 S1=50:S2=50:E1=4:E2=6:? #6:POSITION 2,8:? #6;"PRESSSTOSTART":POKE 764,255
4 FOR A=15 TO 0 STEP -0.1:SOUND 0,A*15,0,A:SOUND 1,A*15,2,A:NEXT A
5 B=PEEK(709):B=B+16*(B<240)-240*(B>240):POKE 709,B
6 A=PEEK(709):POKE 709,PEEK(710):POKE 710,PEEK(711):POKE 711,A:FOR D=1 TO 50:NEXT D:IF PEEK(764)=255 THEN 5
7 FOR A=708 TO 712:B=PEEK(A)
8 IF B>15 THEN B=B-16:POKE A,B:GOTO 8
9 IF B>0 THEN B=B-1:POKE A,B:GOTO 9
10 NEXT A:GRAPHICS 23:GOSUB 30000:DIM B(3,3),M$(100),FL(3,3),D(3,3):TEXT=ADR(A$):RESTORE
11 FOR R=0 TO 3:FOR RR=0 TO 3:B(R,RR)=(RND(0)>0.5):NEXT RR:NEXT R
12 GOSUB 20060:GOSUB 20020:GOSUB 20070
13 CX=0:CY=0:CCX=CX*16+8:CCY=CY*16+7:CXX=CCX:CYY=CCY:RESTORE 14
14 DATA 2,6,6,3,9,1,1,7,9,1,1,7,5,8,8,4
15 FOR R=0 TO 3:FOR RR=0 TO 3:READ Z1:FL(RR,R)=Z1:NEXT RR:NEXT R
16 GOSUB 6000
17 GOSUB 7000
18 XP=120:YP=0:C=2:M$="SEC.":GOSUB 20000:XP=120:YP=7:C=3:M$="MOVES":GOSUB 20000
20 Q=STICK(0):Z=USR(TEXT,VV,3,CXX,CYY):VA=32*(1-B(CX,CY))+20*B(CX,CY):CXX=CCX:CYY=CCY:VV=VA
21 IF STRIG(0)=0 THEN GOSUB 5000:MOV=MOV+1:M$=STR$(MOV):C=3:XP=80:YP=7:GOSUB 20000
29 IF PEEK(20)>60 THEN POKE 20,0:TIME=TIME+1:M$=STR$(TIME):C=2:XP=80:YP=0:GOSUB 20000:GOSUB 100
30 CX=CX-(Q=11 AND CX>0)+(Q=7 AND CX<3):CY=CY-(Q=14 AND CY>0)+(Q=13 AND CY<3):CCX=16*CX+8:CCY=16*CY+7
40 Z=USR(TEXT,128+VA,2,CCX,CCY)
50 GOTO 20
100 FOR R=0 TO 3:FOR RR=0 TO 3:IF D(R,RR)<>B(R,RR) THEN POP:POP:RETURN
101 NEXT RR:NEXT R:POP
102 FOR A=200 TO 0 STEP -5:FOR B=A TO A+50 STEP 5:SOUND 0,B,10,15:POKE 712,B:NEXT B:NEXT A:SOUND 0,0,0,0:POKE 712,0
103 M$="SCORE IS: ":SC=INT(TIME/10)*INT(MOV/5):M$(LEN(M$)+1)=STR$(SC):XP=0:YP=80:C=2:GOSUB 20000
107 XP=0:YP=88:C=1:M$="PRESS ANY KEY":GOSUB 20000:POKE 764,255
110 IF PEEK(764)=255 THEN 110
111 RUN
5000 FL=FL(CX,CY)
5002 R=FL:C=1
5003 IF X(R,C)=9 THEN SOUND 0,0,0,0:GOSUB 20030:RETURN
5004 X1=CX+X(R,C):Y1=CY+Y(R,C)
5005 B(X1,Y1)=1-B(X1,Y1):FOR G=15 TO 0 STEP -2:SOUND 0,50+50*B(X1,Y1),10,G:NEXT G:C=C+1:GOTO 5003
6000 DATA -1,0,1,0,0,-1,0,1,0,0,4,0
6001 DATA 0,0,1,0,0,1,2,0,0,2,1,1,4,0
6002 DATA 0,0,-1,0,0,1,-2,0,0,2,-1,1,4,0
6003 DATA 0,0,-1,0,0,-1,-2,0,0,-2,-1,-1,4,0
6004 DATA 0,0,1,0,0,-1,2,0,0,-2,1,-1,4,0
6005 DATA -1,0,1,0,0,1,4,0
6006 DATA 0,-1,0,1,-1,0,4,0
6007 DATA -1,0,1,0,0,-1,4,0
6008 DATA 0,-1,0,1,1,0,3,0
6009 DIM X(9,9),Y(9,9):RESTORE 6000
6010 FOR R=0 TO 9:FOR RR=0 TO 9:X(R,RR)=9:Y(R,RR)=9:NEXT RR:NEXT R:R=1:C=1
6020 READ F,G:IF F=4 THEN R=R+1:C=1:GOTO 6020
6030 IF F=3 THEN 6050
6040 X(R,C)=F:Y(R,C)=G:C=C+1:GOTO 6020
6050 P=1:XP=80:YP=40:GOSUB 6090:Z=USR(TEXT,ASC("M"),2,76,30)
6051 P=2:XP=100:YP=40:GOSUB 6090:Z=USR(TEXT,ASC("C"),2,96,30)
6052 P=6:XP=120:YP=40:GOSUB 6090:Z=USR(TEXT,ASC("E"),2,116,30)
6090 FOR R=1 TO 9:IF Y(P,R)=9 THEN NEXT R:RETURN
6091 D=X(P,R)*2+XP:DD=Y(P,R)*2+YP:COLOR 1:PLOT D,DD:PLOT D+1,DD:PLOT D+1,DD+1:PLOT D,DD+1:NEXT R:RETURN
7000 DATA 1,1,1,1,1,0,0,1,1,0,0,1,1,1,1,1
7001 DATA 0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0
7002 DATA 0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0
7003 DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
7004 DATA 1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1
7005 RESTORE 7000:S=INT(RND(0)*10+1):IF S>1 THEN FOR A=1 TO S*16-16:READ B:NEXT A
7006 FOR R=0 TO 3:FOR RR=0 TO 3:READ Z1:D(RR,R)=Z1
7007 Z=USR(TEXT,111-91*Z1,2,RR*8+127,R*8+63):SOUND 0,Z1*50+50,10,8:NEXT RR:NEXT R:SOUND 0,0,0,0:RETURN
7010 DATA 1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,1
7011 DATA 0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1
7012 DATA 1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1
7013 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
7014 DATA 0,0,0,0,1,0,0,1,1,0,0,1,0,0,0,0
20000 FOR B=1 TO LEN(M$):Z1=XP+B*8-8:Z=USR(TEXT,ASC(M$(B)),C,Z1,YP):NEXT B:RETURN
20020 DATA ,| | | | |,,| | | | |,,| | | | |,,| | | | |,
20021 RESTORE 20020:C=1:FOR R=1 TO 9:READ M$:YP=R*8-8:XP=0:GOSUB 20000:NEXT R
20030 FOR R=0 TO 3:FOR RR=0 TO 3:XP=R*16+8:YP=RR*16+7:C=3:Z3=32*(1-B(R,RR))+20*B(R,RR)
20031 Z=USR(TEXT,Z3,C,XP,YP):NEXT RR:NEXT R
20050 RETURN
20060 FOR A=0 TO 15 STEP 0.1:POKE 712,A:NEXT A:POKE 708,0:POKE 709,0:POKE 710,0:POKE 712,0:RETURN
20070 POKE 708,66:POKE 709,216:POKE 710,30:RETURN
20080 FOR A=15 TO 0 STEP -0.1:POKE 708,A:NEXT A:RETURN
20090 FOR A=16 TO 30 STEP 0.5:POKE 710,A:NEXT A:RETURN
30000 RESTORE 30000:DIM A$(354):FOR I=0 TO 21:READ X:POKE 1536+I,X:NEXT I
30001 RESTORE 32500:FOR A=1 TO 354:READ J:A$(A)=CHR$(J):NEXT A:RETURN
30160 DATA 169,0,133,212,162,8,70,186,144,3,24,101,187,106,102,212,202,208,243,133,213,96
32500 DATA 104,240,10,201,4,240,13,170,104,104,202,208,251,169,22,133,185,76,64
32501 DATA 185,104,133,195,104,201,128,144,4,41,127,198,195,170,141,22,6,224,96,176
32502 DATA 15,169,64,224,32,144,2,169,224,24,109,22,6,141,22,6,104,104,141,23
32503 DATA 6,104,104,141,24,6,201,4,144,5,56,233,4,176,247,133,214,201,0,240
32504 DATA 7,169,4,56,229,214,133,214,78,24,6,78,24,6,6,214,24,104,104,141
32505 DATA 25,6,133,186,166,87,169,10,224,3,240,8,169,20,224,5,240,2,169,40
32506 DATA 133,207,133,187,165,88,133,203,165,89,133,204,32,0,6,24,173,24,6,101
32507 DATA 203,133,203,144,2,230,204,24,165,203,101,212,133,203,165,204,101,213,133,204
32508 DATA 173,22,6,133,187,169,8,133,186,32,0,6,165,212,133,205,173,244,2,101
32509 DATA 213,133,206,160,0,162,8,169,0,133,209,133,208,177,205,69,195,72,104,10
32510 DATA 72,144,8,24,173,23,6,5,208,133,208,224,1,240,8,6,208,38,209,6
32511 DATA 208,38,209,202,208,228,104,152,72,160,0,132,215,132,212,166,214,240,88,56
32512 DATA 38,215,202,208,250,177,203,5,215,69,215,145,203,165,215,73,255,133,215,200
32513 DATA 200,177,203,5,215,69,215,145,203,166,214,6,209,38,212,202,208,249,160,0
32514 DATA 24,177,203,101,212,145,203,169,8,56,229,214,170,132,212,70,208,102,212,202
32515 DATA 208,249,240,2,208,135,160,2,24,177,203,101,212,145,203,24,165,208,101,209
32516 DATA 160,1,145,203,24,144,9,165,209,145,203,200,165,208,145,203,104,168,24,165
32517 DATA 203,101,207,133,203,144,2,230,204,200,192,8,208,206,96
References
Listing downloads
Downloads
Copyright holder
