Compucolor.org – Virtual Media

Listing of file='ALIGN.BAS;01' on disk='vmedia/taylor_1-sector.ccvf'

0 :REM  ISC CD DISK DRIVE ALIMENT
1 :REM  PROGRAMED BY TIM FARRIS 8,30,79
5 PLOT 12
7 GOTO 700
10 OUT 8,199
25 PLOT 6,1,14:GOSUB 760
26 FOR KB= 0TO 15
27 OUT 7,KB
30 A= INP (1)
35 IF A= 254THEN GOTO 100
45 NEXT KB
50 GOTO 26
100 IF KB= 7THEN GOTO 25
110 IF KB= 12THEN GOTO 999
120 IF KB= 10THEN GOTO 9000
130 IF KB= 11THEN GOTO 7000
140 IF KB= 9THEN GOTO 8000
150 IF KB= 6THEN GOTO 6000
160 IF KB= 15THEN GOTO 3000
170 IF KB= 8THEN GOTO 3600
180 IF KB= 14THEN GOTO 2400
190 IF KB= 13THEN GOTO 2600

500 PRINT KB
599 OUT 8,207
600 END
700 PLOT 12,6,2,14
710 GOSUB 720:GOSUB 725:GOSUB 730:GOSUB 735:GOSUB 740
715 GOSUB 745:GOSUB 750:GOSUB 755:GOSUB 760:GOSUB 765
719 GOTO 9000
720 PLOT 3,20,4:PRINT "0 = GOTO TRACK 17":RETURN
725 PLOT 3,20,6:PRINT "1 = IN 2 OUT 2 TRACKS":RETURN
730 PLOT 3,20,8:PRINT "2 = OUT 2 IN 2 TRACKS":RETURN
735 PLOT 3,20,10:PRINT "3 = CYCLE 40 TRACKS":RETURN
740 PLOT 3,20,12:PRINT "4 = STEP IN 1 TRACK":RETURN
745 PLOT 3,20,14:PRINT "5 = HOME TO TRACK 0":RETURN
750 PLOT 3,20,16:PRINT "6 = STEP OUT 1 TRACK":RETURN
755 PLOT 3,20,18:PRINT "7 = GOTO TRACK 35":RETURN
760 PLOT 3,20,20:PRINT "8 = BREAK":RETURN
765 PLOT 3,20,22:PRINT "9 = DRIVE ON":RETURN
999 PLOT 6,2,14:GOSUB 760:PLOT 6,1,14:GOSUB 735:PLOT 6,2
1000 FOR SI= 1TO 41STEP 2
1007 OUT 8,0
1010 OUT 7,17
1015 GOSUB 1100
1020 OUT 7,18
1025 GOSUB 1100
1030 OUT 7,20
1035 GOSUB 1100
1040 OUT 7,16
1045 GOSUB 1100
1050 NEXT SI
1055 FOR SO= 1TO 41STEP 2
1060 OUT 7,16
1065 GOSUB 1100
1070 OUT 7,20
1075 GOSUB 1100
1080 OUT 7,18
1085 GOSUB 1100
1090 OUT 7,17
1095 GOSUB 1100
1096 NEXT SO
1098 GOSUB 1200
1099 GOTO 1000
1100 RETURN
1200 OUT 7,7
1210 A= INP (1)
1220 IF A= 254THEN GOTO 1240
1230 RETURN
1240 PLOT 6,2,14:GOSUB 735
1245 TC= 0:GOSUB 4000
1250 GOTO 25
2000 OUT 7,7
2010 A= INP (1)
2020 IF A= 254THEN GOTO 25
2030 RETURN
2400 :REM  STEP IN 2 OUT 2
2403 PLOT 6,2,14:GOSUB 760
2406 PLOT 6,1,14:GOSUB 725
2410 IF INT (TC/ 2)= TC/ 2THEN GOTO 2500
2420 OUT 7,16:GOSUB 1100
2430 OUT 7,17:GOSUB 1100
2440 OUT 7,18:GOSUB 1100
2450 OUT 7,20:GOSUB 1100
2460 OUT 7,18:GOSUB 1100
2470 OUT 7,17:GOSUB 1100
2480 OUT 7,16:GOSUB 1100
2490 OUT 7,20:GOSUB 1100
2495 GOTO 6000
2500 OUT 7,18:GOSUB 1100
2510 OUT 7,20:GOSUB 1100
2520 OUT 7,16:GOSUB 1100
2530 OUT 7,17:GOSUB 1100
2540 OUT 7,16:GOSUB 1100
2550 OUT 7,20:GOSUB 1100
2560 OUT 7,18:GOSUB 1100
2570 OUT 7,17:GOSUB 1100
2595 GOTO 6000
2600 :REM  STEP OUT 2 IN 2
2603 PLOT 6,2,14:GOSUB 760
2606 PLOT 6,1,14:GOSUB 730
2610 IF INT (TC/ 2)= TC/ 2THEN GOTO 2700
2620 OUT 7,18:GOSUB 1100
2630 OUT 7,17:GOSUB 1100
2640 OUT 7,16:GOSUB 1100
2650 OUT 7,20:GOSUB 1100
2660 OUT 7,16:GOSUB 1100
2670 OUT 7,17:GOSUB 1100
2680 OUT 7,18:GOSUB 1100
2690 OUT 7,20:GOSUB 1100
2695 GOTO 6000
2700 OUT 7,16:GOSUB 1100
2710 OUT 7,20:GOSUB 1100
2720 OUT 7,18:GOSUB 1100
2730 OUT 7,17:GOSUB 1100
2740 OUT 7,18:GOSUB 1100
2750 OUT 7,20:GOSUB 1100
2760 OUT 7,16:GOSUB 1100
2770 OUT 7,17:GOSUB 1100
2795 GOTO 6000
3000 :REM  GOTO TRACK 17
3010 PLOT 6,2,14:GOSUB 760
3020 PLOT 6,1,14:GOSUB 720
3040 IF TC= 17THEN GOTO 3500
3050 IF TC< 17THEN GOTO 3300
3100 :REM  STEP OUT
3110 IF INT (TC/ 2)= TC/ 2THEN GOTO 3150
3120 OUT 7,18:GOSUB 1100
3130 OUT 7,17
3140 TC= TC- 1
3150 IF TC= 17THEN GOTO 3180
3160 OUT 7,16:GOSUB 1100
3163 OUT 7,20
3165 TC= TC- 1
3170 IF TC= 17THEN GOTO 3180
3175 GOTO 3120
3180 GOTO 3500
3300 :REM  STEP IN
3310 IF INT (TC/ 2)= TC/ 2THEN GOTO 3350
3320 OUT 7,16:GOSUB 1100
3330 OUT 7,17
3340 TC= TC+ 1
3350 IF TC= 17THEN GOTO 3380
3360 OUT 7,18:GOSUB 1100
3363 OUT 7,20
3365 TC= TC+ 1
3370 IF TC= 17THEN GOTO 3380
3375 GOTO 3320
3380 GOTO 3500
3500 GOSUB 4000
3510 GOTO 6000
3600 :REM  GOTO TRACT 35
3610 PLOT 6,2,14:GOSUB 760
3620 PLOT 6,1,14:GOSUB 755
3640 IF TC= 35THEN GOTO 3900
3650 IF TC< 35THEN GOTO 3800
3700 :REM  STEP OUT
3710 IF INT (TC/ 2)= TC/ 2THEN GOTO 3750
3720 OUT 7,18:GOSUB 1100
3730 OUT 7,17
3740 TC= TC- 1
3750 IF TC= 35THEN GOTO 3780
3760 OUT 7,16:GOSUB 1100
3763 OUT 7,20
3765 TC= TC- 1
3770 IF TC= 35THEN GOTO 3780
3775 GOTO 3720
3780 GOTO 3900
3800 :REM  STEP IN
3810 IF INT (TC/ 2)= TC/ 2THEN GOTO 3850
3820 OUT 7,16:GOSUB 1100
3830 OUT 7,17
3840 TC= TC+ 1
3850 IF TC= 35THEN GOTO 3880
3860 OUT 7,18:GOSUB 1100
3863 OUT 7,20
3865 TC= TC+ 1
3870 IF TC= 35THEN GOTO 3880
3875 GOTO 3820
3880 GOTO 3900
3900 GOSUB 4000
3910 GOTO 6000
4000 :REM  PRINT TRACK COUNT
4005 PLOT 6,2
4010 PLOT 14,3,55,2:PRINT "    "
4020 PLOT 3,50,2:PRINT "TRACK";TC:PLOT 15
4030 RETURN
5000 OUT 7,19
5005 OUT 7,18
5007 OUT 7,20
5010 GOTO 5010
6000 :REM  TURN DRIVE ON
6005 PLOT 6,2,14:GOSUB 760
6006 PLOT 6,1,14:GOSUB 765
6010 IF INT (TC/ 2)= TC/ 2THEN GOTO 6030
6020 OUT 7,20
6025 GOTO 6035
6030 OUT 7,17
6035 FOR T= 0TO 100:NEXT T
6040 OUT 7,23
6050 A= INP (1)
6060 IF A= 254THEN GOTO 6080
6070 GOTO 6010
6080 PLOT 6,2,14:GOSUB 765
6081 GOSUB 725:GOSUB 730
6085 PLOT 6,2,14:GOSUB 720
6087 PLOT 6,2,14:GOSUB 755
6090 GOTO 25
7000 :REM  STEP IN ONE TRACK
7010 IF INT (TC/ 2)= TC/ 2THEN GOTO 7050
7030 OUT 7,16
7035 GOSUB 1100
7040 OUT 7,17
7045 GOSUB 1100
7047 GOTO 7067
7050 OUT 7,18
7055 GOSUB 1100
7060 OUT 7,20
7065 GOSUB 1100
7067 TC= TC+ 1
7068 IF TC> 42THEN TC= 42
7069 GOSUB 4000
7070 GOTO 25
8000 :REM  STEP OUT ONE TRACK
8010 IF INT (TC/ 2)= TC/ 2THEN GOTO 8050
8030 OUT 7,18
8035 GOSUB 1100
8040 OUT 7,17
8045 GOSUB 1100
8047 GOTO 8067
8050 OUT 7,16
8055 GOSUB 1100
8060 OUT 7,20
8065 GOSUB 1100
8067 TC= TC- 1
8068 IF TC< 0THEN TC= 0
8069 GOSUB 4000
8080 GOTO 25
9000 :REM  HOME
9005 TC= 0
9010 FOR TC= 42TO 2STEP - 2
9020 OUT 8,199
9030 OUT 7,16
9035 GOSUB 1100
9040 OUT 7,20
9045 GOSUB 1100
9050 OUT 7,18
9055 GOSUB 1100
9060 OUT 7,17
9065 GOSUB 1100
9070 NEXT TC
9080 GOSUB 4000
9090 GOTO 25
10000 OUT 8,207
10010 END