Compucolor.org – Virtual Media

Listing of file='PCARDS.BAS;01' on disk='vmedia/sampler-3.31.78-sector.ccvf'

100 CLEAR 100
150 DIM DA(2):REM
160 DIM OY(10):REM
170 DIM MY(6):REM
190 DIM DK(36):REM
200 AD= 32936
210 A= PEEK (AD)
220 IF A= 0GOTO 250
230 IF A= 3GOTO 250
240 AU= 0:GOTO 300
250 AU= 1:REM
300 FOR L= 0TO 9
310 READ OY(L)
320 NEXT
350 FOR L= 0TO 5
360 READ MY(L)
370 NEXT
500 REM
510 SC= 0
530 PLOT 30:PLOT 16:PLOT 12:REM
580 FOR A= 0TO 1
600 GOSUB 13000:REM
620 Y0= Y0+ (16* A):YM= YM+ (16* A)
680 FOR L= 1TO 4
690 GOSUB 10010
700 X0= X0+ (W- 1)+ DS:XM= XM+ (W- 1)+ DS
710 NEXT
720 GOSUB 13000:REM
730 Y0= Y0+ (16* A):YM= YM+ (16* A)
750 FOR L= 1TO 4
770 GOSUB 20000:REM
790 X0= X0+ (W- 1)+ DS:XM= XM+ (W- 1)+ DS
810 NEXT
840 NEXT A
845 SC= 1
850 PLOT 14:REM
860 FOR A= 0TO 1
870 GOSUB 13000
885 FOR LM= 0TO 3
890 GOSUB 25000:REM
900 GOSUB 27000:REM
910 GOSUB 13000
920 X0= X0+ LM* ((W- 1)+ DS):XM= XM+ LM* ((W- 1)+ DS)
925 Y0= Y0+ (16* A):YM= YM+ (16* A)
930 GOSUB 2000
940 NEXT
950 NEXT A
951 IF AU= 0GOTO 954
952 PLOT 3,64,0:FOR A= 1TO 5000:NEXT
953 GOTO 955
955 PLOT 30:PLOT 16:PLOT 12
960 FOR A= 0TO 2
970 GOSUB 14000
980 Y0= Y0+ (10* A):YM= YM+ (10* A)
990 FOR L= 1TO 6
1000 GOSUB 20000
1010 X0= X0+ (W- 1)+ DS:XM= XM+ (W- 1)+ DS
1020 NEXT
1160 NEXT A
1180 GOSUB 27000
1190 GOSUB 14000
1195 X0= X0+ LM* ((W- 1)+ DS):XM= XM+ LM* ((W- 1)+ DS)
1200 FOR A= 0TO 2
1220 GOSUB 14000
1240 FOR LM= 0TO 5
1260 GOSUB 25000
1280 GOSUB 27000
1300 GOSUB 14000
1320 X0= X0+ LM* ((W- 1)+ DS):XM= XM+ LM* ((W- 1)+ DS)
1340 Y0= Y0+ (10* A):YM= YM+ (10* A)
1360 GOSUB 2000
1380 NEXT
1400 NEXT A
1500 IF AU= 0GOTO 1600
1505 PLOT 3:PLOT 64:PLOT 0
1510 FOR A= 0TO 5000:NEXT
1540 LOAD "MENU;1":RUN 5
2000 GOSUB 10010:GOSUB 10200:GOTO 11000
2100 GOSUB 10010:GOSUB 10200:GOTO 11000
10010 PLOT 30:PLOT 23:PLOT CX
10015 IF SC= 0GOTO 10020
10016 Y0= Y0+ 1:YM= YM- YP:X0= X0+ 1:XM= XM- 1:REM
10020 FOR Y= Y0TO YMSTEP YP:FOR X= X0TO XM
10030 PLOT 3:PLOT X:PLOT Y:PLOT 32:REM
10040 NEXT :NEXT
10045 IF SC= 0GOTO 10050
10046 PLOT 15:REM
10047 FOR X= X0TO XM:PLOT 3:PLOT X:PLOT (YM+ 1):PLOT 32
10048 NEXT
10049 Y0= Y0- 1:YM= YM+ YP:X0= X0- 1:XM= XM+ 1
10050 IF H< 12GOTO 10190
10055 IF SC= 1GOTO 10190
10060 PLOT 30:PLOT 16:PLOT 29:PLOT 23:PLOT 15:REM
10070 PLOT 3:PLOT X0:PLOT Y0:PLOT 116
10080 PLOT 3:PLOT XM:PLOT Y0:PLOT 117
10090 PLOT 3:PLOT X0:PLOT YM:PLOT 118
10100 PLOT 3:PLOT XM:PLOT YM:PLOT 119
10190 RETURN
10200 REM
10230 PLOT 15:PLOT 30:PLOT 23:PLOT 29:PLOT CR
10240 PLOT 3:PLOT X0+ CO:PLOT Y0+ CO:PLOT DA(1)
10250 PLOT 3:PLOT X0+ CO+ 1:PLOT Y0+ CO:PLOT DA(2)
10255 IF DA(2)> 32THEN 10260:REM
10256 DA(2)= DA(1):DA(1)= 32
10260 PLOT 3:PLOT XM- CO- 1:PLOT YM- CO:PLOT DA(1)
10270 PLOT 3:PLOT XM- CO:PLOT YM- CO:PLOT DA(2)
10275 IF H< 12THEN 10300:REM
10280 PLOT 3:PLOT X0+ CO:PLOT Y0+ CO+ 1:PLOT SU
10290 PLOT 3:PLOT XM- CO:PLOT YM- CO- 1:PLOT SU
10300 RETURN
11000 REM
11100 IF (DN/ 5)< 2GOTO 11170
11120 OC= 5:REM
11140 GOTO 11300
11170 IF (DN/ 3)< 2GOTO 11220
11190 OC= 3
11200 GOTO 11300
11220 IF (DN/ 2)< 2GOTO 11280
11230 OC= 2
11250 GOTO 11300
11280 OC= 0
11300 MC= DN- (2* OC)
11330 XP= 2* XP
11340 Y0= Y0+ CO+ CD
11350 X0= X0+ CO+ CD
11360 PLOT CX
11370 IF DN> 3GOTO 11400
11380 X= X0+ (XP/ 2):OC= MC:MC= 0
11385 GOSUB 11600
11390 RETURN
11400 XM= X0+ XP
11420 FOR X= X0TO XMSTEP XP
11450 GOSUB 11600:REM
11470 NEXT
11500 REM
11520 X= X0+ (XP/ 2)
11550 GOSUB 11800:REM
11580 RETURN
11600 REM
11620 IF OC= 5THEN L= 5:M= 9
11630 IF OC= 3THEN L= 2:M= 4
11640 IF OC= 2THEN L= 0:M= 1
11660 FOR L= LTO M
11680 Y= Y0+ (OY(L)* YP)
11690 PLOT 3:PLOT X:PLOT Y:PLOT SU
11700 NEXT
11730 RETURN
11800 REM
11810 IF MC= 0GOTO 11920
11820 IF MC= 3THEN L= 3:M= 5
11830 IF MC= 2THEN L= 1:M= 2
11840 IF MC= 1THEN L= 0:M= 0
11860 FOR L= LTO M
11880 Y= Y0+ (MY(L)* YP)
11890 PLOT 3:PLOT X:PLOT Y:PLOT SU
11900 NEXT
11920 RETURN
12000 REM
12020 KI= 0
12030 FOR S= 0TO 3
12050 FOR L= 1TO 9
12070 I= L+ (S* 9)
12090 DK(KI)= I
12100 KI= KI+ 1
12110 NEXT :NEXT
12130 CC= 36
12150 RETURN
13000 REM
13100 CX= 14:H= 14:W= 10:DS= 5:REM
13200 X0= 3:Y0= 2:XM= X0+ W:YM= Y0+ (H- 1)
13300 CO= 1:REM
13400 CD= 2:XP= 2:YP= 2
13700 RETURN
14000 REM
14100 CX= 15:H= 7:W= 5:DS= 4:REM
14200 X0= 4:Y0= 2:XM= X0+ (W- 1):YM= Y0+ (H- 1)
14300 CO= 0:SC= 0:REM
14400 CD= 1:XP= 1:YP= 1
14700 RETURN
20000 REM
20020 PLOT 29:PLOT 17:REM
20100 PLOT 15:REM
20120 FOR Y= (Y0+ CO)TO (YM- CO)
20140 FOR X= (X0+ CO)TO (XM- CO)
20170 PLOT 3:PLOT X:PLOT Y:PLOT 96
20190 NEXT :NEXT
20220 PLOT 14:REM
20270 FOR Y= (Y0+ CO+ 2)TO (YM- CO- 2)
20290 FOR X= (X0+ CO+ 2)TO (XM- CO- 2)
20310 PLOT 3:PLOT X:PLOT Y:PLOT 96
20330 NEXT :NEXT
20500 RETURN
25000 REM
25100 IF CC> 1GOTO 25500
25200 GOSUB 12000:REM
25500 R= RND (1)
25520 R= INT (R* 100000)
25540 Q= INT (R/ (CC- 1))
25560 KI= R- (Q* (CC- 1))
25580 CN= DK(KI)
25800 FOR KI= KITO (CC- 1)
25850 DK(KI)= DK(KI+ 1)
25890 NEXT
25900 CC= CC- 1
25950 RETURN
27000 REM
27040 SU= INT (CN/ 9)
27070 DN= CN- (SU* 9)
27080 DN= DN+ 2:REM
27100 REM
27110 DA(1)= INT (DN/ 10)
27120 DA(2)= DN- (DA(1)* 10)
27130 IF DA(1)= 0THEN 27300
27140 DA(1)= DA(1)+ 48
27150 DA(2)= DA(2)+ 48
27160 GOTO 27350
27300 DA(1)= DA(2)+ 48
27310 DA(2)= 32
27350 ON (SU+ 1)GOSUB 27400,27410,27420,27430
27370 GOTO 27500
27400 SU= 99:CR= 16:RETURN :REM
27410 SU= 100:CR= 17:RETURN :REM
27420 SU= 104:CR= 17:RETURN :REM
27430 SU= 115:CR= 16:RETURN :REM
27500 RETURN
65000 DATA 0,4:REM
65010 DATA 0,4,2:REM
65020 DATA 0,4,1,3,2:REM
65050 DATA 2:REM
65060 DATA 1,3:REM
65070 DATA 0,4,2:REM