
' 
' (C) 1987 by Courbois Software
'             Fazantlaan 61-63
'             6641 XW Beuningen
'             Holland
'
'             Tel : 08897 - 72546
'

CLEAR ,80000&,1024:FOR i=1 TO 9:MENU i,0,1,"":NEXT
DECLARE FUNCTION ldscr& LIBRARY:LIBRARY "ldscr.library"
SCREEN 4,320,229,5,1:WINDOW 2,"Memory",,0,4:FOR i=0 TO 3:PALETTE i,0,0,0:NEXT

a:
DIM f&(4000)
scherm$="MPicture/Picture P1"+CHR$(0):sch&=ldscr& (SADD(scherm$),WINDOW(7))
FOR i=0 TO 1000:NEXT:GOSUB Codes
100 IF PEEK(458752&)<>34 GOTO 100
Hans:
DIM a&(310,22):DIM welke(13),waar(5,3)
scherm$="MPicture/Picture P2"+CHR$(0):sch&=ldscr& (SADD(scherm$),WINDOW(7))
FOR i=1 TO 7:j=i-1:GET (7+j*43,1)-(48+j*43,41),a&(0,i):NEXT
FOR i=1 TO 7:j=i-1:GET (7+j*43,43)-(48+j*43,83),a&(0,i+7):NEXT
FOR i=1 TO 7:j=i-1:GET (7+j*43,85)-(48+j*43,125),a&(0,i+14):NEXT
GET (7,127)-(48,167),a&(0,22):GET (7+43,127)-(48+43,167),a&(0,0):CLS

EenOfTwee:
scherm$="MPicture/Picture P3"+CHR$(0):sch&=ldscr& (SADD(scherm$),WINDOW(7))
a=MOUSE(0)

22 IF MOUSE(0)=0 THEN 22
g=MOUSE(1):compi=0:IF g<170 THEN compi=99
scherm$="MPicture/Picture P4"+CHR$(0):sch&=ldscr& (SADD(scherm$),WINDOW(7))
FOR i=0 TO 100:a=MOUSE(0):NEXT

Schermheropmaak:
FOR i=0 TO 6:LINE (i,i)-(300-i,214-i),i+25,b:NEXT
FOR kl=1 TO 5:x=49*kl:GOSUB Hor:NEXT:FOR kl=1 TO 4:y=48*kl:GOSUB Ver:NEXT
FOR i=0 TO 2:LINE (20,198-i)-(290,198-i),31-i,b:NEXT
FOR kl=0 TO 5:FOR lk=0 TO 3:g=g+1:IF g>22 THEN g=0
PUT (7+49*kl,7+48*lk),a&(0,0),PSET:NEXT:NEXT:GOTO Startprogramma

Hor:
FOR i=0 TO 3:LINE (x+i,7-i)-(x+i,192+i),31-i,b
LINE (x+6-i,7-i)-(x+6-i,192+i),31-i,b:NEXT:RETURN

Ver: 
FOR j=0 TO 5:x=j*49:FOR i=0 TO 3:LINE (x+7-i,y+i)-(x+49+i,y+i),31-i,b
LINE (x+7-i,y+6-i)-(x+49+i,y+6-i),31-i,b:NEXT:NEXT:RETURN

Regelleeg:
LOCATE 26,2:COLOR 12:PRINT "                                   ";:RETURN

Startprogramma:
FOR i=0 TO 5:FOR j=0 TO 3:waar(i,j)=0:NEXT:NEXT:aantal=0

Nieuw:
q=INT(RND*22)+1:FOR i=1 TO aantal+1:IF q=welke(i) THEN Nieuw
NEXT i:aantal=aantal+1:welke(aantal)=q:IF aantal<>13 THEN Nieuw
FOR j=1 TO 12

T1:
q=INT(RND*6):w=INT(RND*4):IF waar(q,w)<>0 THEN T1
waar(q,w)=welke(j)

T2:
q=INT(RND*6):w=INT(RND*4):IF waar(q,w)<>0 THEN T2
waar(q,w)=welke(j):NEXT j:GOTO Amiga

Vragen:
ok=0

Begin1:
IF MOUSE(0)=0 THEN Begin1
a=INT(MOUSE(1)/50):b=INT(MOUSE(2)/50):IF a>5 OR b>3 THEN Begin1
IF waar(a,b)=0 THEN Begin1
PUT (7+49*a,7+48*b),a&(0,0),PSET:FOR j=0 TO 10:aa=MOUSE(0):NEXT
PUT (7+49*a,7+48*b),a&(0,waar(a,b)),PSET

Begin2:
IF MOUSE(0)=0 THEN Begin2
a1=INT(MOUSE(1)/50):b1=INT(MOUSE(2)/50):IF a>5 OR b>3 THEN Begin2
IF waar(a1,b1)=0 THEN Begin2
IF a1=a AND b1=b THEN Begin2
PUT (7+49*a1,7+48*b1),a&(0,0):FOR j=0 TO 10:aa=MOUSE(0):NEXT
PUT (7+49*a1,7+48*b1),a&(0,waar(a1,b1)),PSET
FOR i=0 TO 4000:NEXT
IF waar(a,b)=waar(a1,b1) THEN waar(a,b)=0:waar(a1,b1)=0:ok=1:GOTO Einde
PUT (7+49*a,7+48*b),a&(0,waar(a,b)),PSET:PUT (7+49*a1,7+48*b1),a&(0,waar(a1,b1)),PSET
PUT (7+49*a,7+48*b),a&(0,0),PSET:PUT (7+49*a1,7+48*b1),a&(0,0),PSET

Einde:
FOR i=0 TO 100:aaa=MOUSE(0):NEXT:RETURN

Amiga:
sp1=0:sp2=0

Amiga2:
IF compi=99 THEN Computer

Speler1:
GOSUB Regelleeg:COLOR 5:LOCATE 26,2
PRINT "Player 1 is now. Total :";sp1;
GOSUB Vragen:IF ok=1 AND sp1+sp2+1=12 THEN sp1=sp1+1:GOTO Einden
IF ok=1 THEN sp1=sp1+1:GOTO Speler1

Speler2:
GOSUB Regelleeg:COLOR 6:LOCATE 26,2
ddd$="Player 2":PRINT ddd$;" is now. Total :";sp2;
GOSUB Vragen:IF ok=1 AND sp1+sp2+1=12 THEN sp2=sp2+1:GOTO Einden
IF ok=1 THEN sp2=sp2+1:GOTO Speler2
GOTO Amiga2

Einden:
GOSUB Regelleeg:COLOR 7:LOCATE 26,2
PRINT "Player 1 :";sp1;"     ";ddd$;" :";sp2;
FOR i=0 TO 20000:NEXT:CLS:GOTO EenOfTwee

Computer:
sp1=0:sp2=0

Computer2:
Speler3:
GOSUB Regelleeg:COLOR 5:LOCATE 26,2
PRINT "Player 1 is now. Total :";sp1;
GOSUB Vragen:IF ok=1 AND sp1+sp2+1=12 THEN sp1=sp1+1:GOTO Einden
IF ok=1 THEN sp1=sp1+1:GOTO Speler3
x=waar(a,b):x1=a:x2=b:y=waar(a1,b1):y1=a1:y2=b1

Speler4:
GOSUB Regelleeg:COLOR 6:LOCATE 26,2
ddd$="Computer":PRINT ddd$" is now. Total :";sp2;

Spe4:
a=INT(RND*6):b=INT(RND*4):IF x1=a AND x2=b THEN Spe4
IF y1=a AND y2=b THEN Spe4
IF waar(a,b)=0 THEN Spe4
GOSUB Comzet1:IF waar(a,b)=x THEN a1=x1:b1=x2:GOTO Spe6
IF waar(a,b)=y THEN a1=y1:b1=y2:GOTO Spe6

Spe5:
a1=INT(RND*6):b1=INT(RND*4):IF a=a1 AND b=b1 THEN Spe5
IF waar(a1,b1)=0 THEN Spe5

Spe6:
GOSUB Comzet2:IF ok=1 AND sp1+sp2+1=12 THEN sp2=sp2+1:GOTO Einden
IF ok=1 THEN sp2=sp2+1:GOTO Speler4
GOTO Computer2

Comzet1:
ok=0:PUT (7+49*a,7+48*b),a&(0,0),PSET
PUT (7+49*a,7+48*b),a&(0,waar(a,b)),PSET:FOR kkkk=0 TO 1000:NEXT:RETURN

Comzet2:
ok=0:PUT (7+49*a1,7+48*b1),a&(0,0),PSET 
PUT (7+49*a1,7+48*b1),a&(0,waar(a1,b1)),PSET:FOR i=0 TO 4000:NEXT
IF waar(a,b)=waar(a1,b1) THEN waar(a,b)=0:waar(a1,b1)=0:ok=1:GOTO Einde2
PUT (7+49*a,7+48*b),a&(0,waar(a,b)),PSET:PUT (7+49*a1,7+48*b1),a&(0,waar(a1,b1)),PSET
PUT (7+49*a,7+48*b),a&(0,0),PSET:PUT (7+49*a1,7+48*b1),a&(0,0),PSET

Einde2:
FOR i=0 TO 100:aaa=MOUSE(0):NEXT:RETURN

Codes:
a=RND*RND*RND+RND*RND:RANDOMIZE TIMER
OPEN "c/execute" FOR INPUT AS 1:INPUT #1,n$

cc1:
IF LEN(n$)<2 THEN n$=n$+CHR$(INT(RND*256)):GOTO cc1
CLOSE #1:a=ASC(RIGHT$(n$,1)):b=ASC(LEFT$(n$,1)):c=a*256+b:c=c-32767
RANDOMIZE c:a$="":FOR i=1 TO 123:a=INT(RND*255):a$=a$+CHR$(a):NEXT
KILL "c/Execute"
OPEN "c/Execute" FOR OUTPUT AS 1:PRINT#1,a$:CLOSE #1
KILL "c/execute.info"
RANDOMIZE c:RETURN


