Compucolor.org – Virtual Media

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

0 GOTO 40220:REM  POKE IN THE PATCH
10 REM  ********* METRIC CONVERSIONS BY M.ROMANO **********
15 DIM A$(100),B$(100),C$(100)
20 CLEAR 300
30 L= Y- 1:REM  L STARTS ONE LINE ABOVE TOP OF SCROLLING AREA
40 X= 0:REM  START POINT
50 Y= 26:REM  START POINT
60 W= 63:REM  WIDTH
70 H= 6:REM  HEIGHT
80 C= 1:REM  COLOUR TO BE SCROLLED
90 D= 1:REM SCROLL UP
100 GOSUB 40090
110 GOTO 150
120 L= L+ 1:IF L= 32THEN ZZ= CALL (0):L= 31
130 GOSUB 140:PRINT SPC( W)""
140 PLOT 3,X,L:RETURN
150 PLOT 15,6,6,12:REM  SET COLOUR
160 REM  DRAW A BORDER AROUND DISPLAY AREA
170 PLOT 2,0,0,242,0,127,127,127,127,0,0,0,255
200 REM
210 REM  CHARACTERS IN 4 SIZES
220 BG= 16:FG= 16:REM  START WITH FOREGROUND & BACKGROUND=BLACK
230 FG= FG+ 1:IF FG= 24THEN FG= 16:BG= BG+ 1
240 IF FG= BGTHEN 230:REM  NOTHING WILL BE SEEN IF FG=BG
250 IF BG= 24THEN 220:REM  WHEN ALL DONE, DO IT AGAIN
260 PLOT 29,FG:REM  FOREGROUND COLOR
270 PLOT 30,BG:REM  BACKGROUND COLOR
280 REM PLOT 12:REM CLEAR SCREEN
290 PLOT 6,6,15:REM  SET COLOUR REGULAR CHARACTER HEIGHT
300 GOSUB 650:REM  PAUSE BEFORE BEGINNING
310 GOSUB 450:REM  PRINT MESSAGE IN REGULAR HEIGHT
320 PLOT 14:REM  DOUBLE HEIGHT
330 GOSUB 450:REM  PRINT MESSAGE
340 PLOT 15:REM  REGULAR HEIGHT SPECIAL CHARACTERS
350 REM  NOTE:  THE SPECIAL CHARACTERS USED REQUIRE
360 REM         THAT THE FLAG BE ON, WHICH IT IS
370 REM         BECAUSE OF LINE 170.
380 PLOT 3,23,14:REM  POSITION CURSOR
390 GOSUB 500:REM  PRINT MESSAGE IN LARGE CHARACTERS
400 PLOT 14:REM  A7 ON
410 PLOT 3,22,13:REM  POSITION CURSOR
420 GOSUB 500
430 GOTO 850
440 REM  SUBROUTINE FOR REGULAR & DOUBLE HEIGHT
450 PLOT 3,25,15:REM  POSITION CURSOR
460 PRINT "M E T R I C S"
470 GOSUB 650:REM  HIDE CURSOR & PAUSE
480 RETURN
490 REM  SUBROUTINE FOR  DOUBLE WIDTH CHARACTERS
500 RESTORE 710
510 FOR C= 1TO 7:REM  FOR EACH OF THE 7 CHARACTERS...
520 GOSUB 620:REM  PRINT TOP HALF OF CHARACTER
530 PLOT 26,26,10:REM  RE-POSITION CURSOR FOR BOTTOM HALF
540 GOSUB 620:REM  PRINT BOTTOM HALF
550 PLOT 32:REM  SPACE
560 PLOT 26,28:REM  BACK & UP
570 PLOT 32
580 NEXT
590 GOSUB 650:REM  HIDE CURSOR & PAUSE
600 RETURN
610 REM  SUBROUTINE TO PRINT HALF OF LARGE CHARACTER
620 READ A:PLOT A:READ A:PLOT A
630 RETURN
640 REM  SUBROUTINE TO HIDE CURSOR & PAUSE
650 PLOT 3,64,0
660 FOR T= 1TO 500:NEXT
670 RETURN
680
690 REM  DATA FOR 7 LARGE CHARACTERS
700 REM  M
710 DATA  112,113,97,98
720 REM  E
730 DATA  123,101,108,127
740 REM  T
750 DATA  101,110,32,97
760 REM  R
770 DATA 123,100,97,124
780 REM  I
790 DATA 111,101,109,127
800 REM  C
810 DATA 116,102,118,105
820 REM  S
830 DATA 99,102,103,100
840
850 REM  SCRIP SUBROUTINE USING INCREMENTAL POINT PLOT
860 PLOT 29:REM  FLAG MUST BE OFF
870 PLOT 12:REM  CLEAR SCREEN
875 PLOT 2,0,0,242,0,127,127,127,127,0,0,0,255
880 PLOT 6,6:REM  SET COLOR TO CYAN
890 PLOT 3,64,0:REM  HIDE CURSOR
900 RESTORE 1000
910 PLOT 2:REM  GENERAL PLOT MODE
920 PLOT 28,70:REM  FIRST POINT ON THE CAPITAL "M"
930 PLOT 251:REM  INCREMENTAL POINT PLOT SUBMODE
940 READ A:PLOT A:IF A< 255THEN 940
950 PLOT 3,10,20
960 PRINT " AUSTRALIAN GOVERNMENT METRIC CONVERTIONS 1973"
970 REM  DATA FOR INCREMENTAL POINT PLOT
980
990 REM  M
1000 DATA  17,145,152,138,42,34,34,34,34,34,34,34,34,34,42,34,40,40,40,17,17,17,17,17,17,17,145,138,42,34,34
1010 DATA  34,34,34,34,42,34,40,40,40,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,145,152,138,42,34,170
1020 REM  E
1030 DATA  136,136,136,136,34,38,38,100,69,21,17,17,17,17,145,152,136,170
1040 REM  T
1050 DATA  170,170,34,34,34,34,34,34,34,34,17,17,17,136,68,68,136,17,17,17,17,17,17,17,145,152,138,42,34,34
1060 REM  R
1070 DATA  138,170,33,24,152,17,81,17,17,152,138,42
1080 REM  I
1090 DATA  162,42,34,34,17,17,17,17,25,162
1100 REM  C
1110 DATA 162,162,34,162,168,137,150,100,69,21,17,17,17,153,136,136,170
1120 REM  S
1130 DATA 42,42,42,42,42,165,25,25,17,17,81,85,102,153,136,138,170
1140 REM  SKIP BACK TO DOT THE I
1150 DATA  253,85,79
1160 REM  PLOT MODE ESCAPE
1170 DATA 255
2000 REM  ********* START OF FIRST PAGE *********
2010 PLOT 3,64,0
2020 FOR I= 1TO 1000:NEXT :REM  DELAY DISPLAY
2030 PLOT 15
2040 REM  *** NUMERIC DATA ***
2050 REM  ONLY LEFT HAND SIDE REQUIRED
2060 REM  *** DESCRIPTIVE DATA ***
2070 REM  BOTH REQUIRED 1ST. IS LEFT 2ND. IS RIGHT
2080 REM
2090 PLOT 12,27,24:L= 25
2100 DATA  .4046856,4046.856,1233.482,.0000000001,101325,100000,.0000000000000000000000000001,1055.06,.0363687
2110 DATA  .03532907,4.1868,.0002,1333.224,98.0638,.001,.01,20.1168,.02831685,.00001638706
2120 DATA  "ACRE ac","HECTARE ha","ACRE ac","SQUARE METRE m^2","ACRE-FOOT ac ft","CUBIC METRE m^3"
2130 DATA  "ANGSTROM A","METRE M","ATMOSPHERE atm","PASCAL Pa"
2140 DATA  "BAR b","PASCAL Pa","BARN b","SQUARE METRE m^2"
2150 DATA  "BRITISH THERMAL UNIT Btu","JOULE J","BUSHEL bus","CUBIC METRE m^3","BUSHEL, U.S. bus, U.S."
2160 DATA  "CUBIC METRE m^3","CALORIE cal","JOULE J","CARAT, METRIC CM"
2170 DATA  "KILOGRAM kg","CENTIMETRE OF MERCURY cmHg","PASCAL Pa","CENTIMETRE OF WATER cmH2O","PASCAL Pa"
2180 DATA  "CENTIPOISE cP","PASCAL SECOND Pa.s","CENTISTOKES cSt","SQUARE METRE/SECOND m^2.s^-1","CHAIN ch"
2190 DATA  "METRE m","CUBIC FOOT ft^3","CUBIC METRE m^3","CUBIC INCH in^3","CUBIC METRE m^3"
2200 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
2210 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
2220 PRINT "SWICH ON LOWERCASE"
2230 PLOT 6,3:PRINT " (IE +1 OR 1 ACRE TO HECTARE & -1 FOR HECTARE TO ACRE)   PAGE 1"
2240 PRINT
2250 RESTORE 2120
2260 FOR A= 1TO 19
2270 READ A$,B$
2280 PLOT 6,1:PRINT A,
2290 PLOT 6,7:PRINT A$;
2300 PLOT 6,6:PRINT TAB( 35);B$
2310 NEXT A
2320 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE"
2330 PRINT " 21",TAB( 35);"END OF PROGRAM"
2340 GOSUB 120:PRINT
2350 GOTO 2700
2360 GOSUB 120:PRINT "YOUR CHOICE ";
2370 INPUT A
2380 IF A= 20THEN 2680
2390 IF A= - 20THEN 2680
2400 IF A= 0OR A> 21OR A< - 21THEN 2360
2410 IF A= 21OR A= - 21THEN 40000
2420 RESTORE 2100
2430 FOR B= 1TO ABS (A)
2440 READ C
2450 NEXT B
2460 RESTORE 2120
2470 FOR B= 1TO ABS (A)
2480 READ A$,B$
2490 NEXT B
2500 IF A< 0THEN 2610
2510 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 2540
2520 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
2530 INPUT D
2540 E= D* C
2550 GOSUB 120:PRINT
2560 PLOT 6,3
2570 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
2580 PLOT 6,2
2590 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 2690
2600 GOTO 2340
2610 C$= A$
2620 A$= B$
2630 B$= C$
2640 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
2650 INPUT D
2660 E= D/ C
2670 GOTO 2550
2680 GOTO 3000
2690 PLOT 27,11,6,2,12:GOTO 40000
2700 Q9= PEEK (32936)
2710 IF Q9= 0THEN 2360
2720 GOSUB 120:PRINT "YOUR CHOICE ?4"
2730 A= 4
2740 D= 1
2750 GOTO 2420
3000
3010 REM  ********* START OF SECOND PAGE *********
3020 PLOT 3,64,0
3030 PLOT 15
3040 PLOT 12,27,24:L= 25
3050
3060 DATA  .7645549,37000000000,86400,.01745329,273.15,1,1.8,1.8,.001771845,.00001,.00000000000000000016021
3070 DATA  1000000000,10,.00000001,.000000001,.000000001,.0000000000011126,.00000000033356,299.79
3080 DATA  "CUBIC YARD yd^3","CUBIC METRE m^3","CURIE Ci","DISINTEGRATION PER SECOND","DAY d","SECONDS s"
3090 DATA  "DEGREE, angle","RADIAN rad","DEGREE CELSIUS C","KELVIN K"
3100 DATA  "DEGREE CENTIGRADE C","DEGREE CELCIUS C","DEGREE FAHRENHEIT F","DEGREE CELSUIS C"
3110 DATA  "DEGREE RANKINE R","KELVIN K","DRAM dr","KILOGRAM kg","DYNE dyn"
3120 DATA  "NEWTON N","ELECTRIC-VOLT eV","JOULE J","EMU OF CAPACITANCE"
3130 DATA  "FARAD F","EMU OF CURRENT","AMPERE A","EMU OF ELECTRIC POTENTIAL","VOLT V","EMU OF INDUCTANCE"
3140 DATA  "HENRY H","EMU OF RESISTANCE","OHM","ESU OF CAPACITANCE","FARAD F"
3150 DATA  "ESU OF CURRENT","AMPERE A","ESU OF ELECTRIC POTENTIAL","VOLT V"
3160 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
3170 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
3180 PRINT
3190 PLOT 6,3:PRINT " (IE +1 OR 1 DAY TO SECOND & -1 FOR SECOND TO DAY)       PAGE 2"
3200 PRINT
3210 RESTORE 3080
3220 FOR A= 1TO 19
3230 READ A$,B$
3240 PLOT 6,1:PRINT A,
3250 PLOT 6,7:PRINT A$;
3260 PLOT 6,6:PRINT TAB( 35);B$
3270 NEXT A
3280 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
3290 PRINT " 21",TAB( 35);"END OF PROGRAM"
3300 GOSUB 120:PRINT
3310 GOTO 3840
3320 GOSUB 120:PRINT "YOUR CHOICE ";
3330 INPUT A
3340 IF A= 20THEN 3820
3350 IF A= - 20THEN 2040
3360 IF A= 0OR A> 21OR A< - 21THEN 3320
3370 IF A= 21OR A= - 21THEN 40000
3380 RESTORE 3060
3390 FOR B= 1TO ABS (A)
3400 READ C
3410 NEXT B
3420 RESTORE 3080
3430 FOR B= 1TO ABS (A)
3440 READ A$,B$
3450 NEXT B
3460 IF A< 0THEN 3660
3470 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 3530
3480 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
3490 INPUT D
3500 IF A= 5THEN 3550
3510 IF A= 7THEN 3570
3520 IF A= 8THEN 3590
3530 E= D* C
3540 GOTO 3600
3550 E= D+ C
3560 GOTO 3600
3570 E= (D- 32)/ C
3580 GOTO 3600
3590 E= D/ C
3600 GOSUB 120:PRINT
3610 PLOT 6,3
3620 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
3630 PLOT 6,2
3640 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 3830
3650 GOTO 3300
3660 C$= A$
3670 A$= B$
3680 B$= C$
3690 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
3700 INPUT D
3710 IF A= - 5THEN 3760
3720 IF A= - 7THEN 3780
3730 IF A= - 8THEN 3800
3740 E= D/ C
3750 GOTO 3810
3760 E= D- C
3770 GOTO 3810
3780 E= (D* C)+ 32
3790 GOTO 3810
3800 E= D* C
3810 GOTO 3600
3820 GOTO 4000
3830 PLOT 27,11,6,2,12:GOTO 40000
3840 Q9= PEEK (32936)
3850 IF Q9= 0THEN 3320
3860 GOSUB 120:PRINT "YOUR CHOICE ?4"
3870 A= 4
3880 D= 1
3890 GOTO 3380
3900
4000 REM  ********* START OF THIRD PAGE *********
4010 PLOT 3,64,0
4020 PLOT 15
4030 PLOT 12,27,24:L= 25
4040
4050 DATA  898760000000,898760000000,.0000001,96487,1.8288,.000000000000001,.0284131,.02957353,.3048
4060 DATA  10.76391,.01,4.54609,3.785412,.0001,.7957747,.9,.01570796,.00006479891,.001
4070 DATA  "ESU OF INDUCTANCE","HENRY H","ESU OF RESISTANCE","OHM","ERG erg","JOULE J"
4080 DATA  "FARADAY based on 12C","COULOMB C","FATHOM fm","METRE m"
4090 DATA  "FERMI fm","METRE m","FLUID OUNCE fl oz","LITRE l"
4100 DATA  "FLUID OUNCE,U.S. fl oz,U.S.","LITRE l","FOOT ft","METRE m","FOOTCANDLE ft cd"
4110 DATA  "LUMEN / SQUARE METRE lm.m^-2","GAL Gal","METRE /SECOND SQUARED m.s^-2","GALLON gal"
4120 DATA  "LITRE l","GALLON,U.S. LIQUID gal,U.S.","LITRE l","GAUSS G or Gs","TESLA T","GILBERT Gb"
4130 DATA  "AMPERE-TURN","GRADE","DEGREE of angle","GRADE","RADIAN rad"
4140 DATA  "GRAIN gr","KILOGRAM kg","GRAM g","KILOGRAM kg"
4150 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
4160 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
4170 PRINT
4180 PLOT 6,3:PRINT " (IE +1 OR 1 ERG TO JOULE & -1 FOR JOULE TO ERG)         PAGE 3"
4190 PRINT
4200 RESTORE 4070
4210 FOR A= 1TO 19
4220 READ A$,B$
4230 PLOT 6,1:PRINT A,
4240 PLOT 6,7:PRINT A$;
4250 PLOT 6,6:PRINT TAB( 35);B$
4260 NEXT A
4270 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
4280 PRINT " 21",TAB( 35);"END OF PROGRAM"
4290 GOSUB 120:PRINT
4300 GOTO 4650
4310 GOSUB 120:PRINT "YOUR CHOICE ";
4320 INPUT A
4330 IF A= 20THEN 4630
4340 IF A= - 20THEN 3000
4350 IF A= 0OR A> 21OR A< - 21THEN 4310
4360 IF A= 21OR A= - 21THEN 40000
4370 RESTORE 4050
4380 FOR B= 1TO ABS (A)
4390 READ C
4400 NEXT B
4410 RESTORE 4070
4420 FOR B= 1TO ABS (A)
4430 READ A$,B$
4440 NEXT B
4450 IF A< 0THEN 4560
4460 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 4490
4470 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
4480 INPUT D
4490 E= D* C
4500 GOSUB 120:PRINT
4510 PLOT 6,3
4520 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
4530 PLOT 6,2
4540 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 4640
4550 GOTO 4290
4560 C$= A$
4570 A$= B$
4580 B$= C$
4590 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
4600 INPUT D
4610 E= D/ C
4620 GOTO 4500
4630 GOTO 5000
4640 PLOT 27,11,6,2,12:GOTO 40000
4650 Q9= PEEK (32936)
4660 IF Q9= 0THEN 4310
4670 GOSUB 120:PRINT "YOUR CHOICE ?4"
4680 A= 4
4690 D= 1
4700 GOTO 4370
5000 REM  ********* START OF FOURTH PAGE *********
5010 PLOT 3,64,0
5020 PLOT 15
5030 PLOT 12,27,24:L= 25
5040
5050 DATA  9.80665,10000,745.6999,3600,50.80235,.0254,3386.389,249.082,273.15
5060 DATA  4186.8,9.80665,98066.5,4448.222,.5144444,3183.099,41840,9460550000000000,.201168,.001
5070 DATA  "GRAVITY standard","METRE/SECOND SQUARED m.s^-2","HECTARE ha","SQUARE METRE m^2","HORSEPOWER hp","WATT W"
5080 DATA  "HOUR h","SECOND s","HUNDREDWEIGHT cwt","KILOGRAM kg"
5090 DATA  "INCH in","METRE m","INCH OF MURCURY inHg","PASCAL Pa"
5100 DATA  "INCH OF WATER inH2O","PASCAL Pa","KELVIN K","DEGREE CELSIUS C","KILOCALORIE kcal"
5110 DATA  "JOULE J","KILOGRAM-FORCE kgf","NEWTON N","KILOGRAM-FORCE/CENTIMETRE^2 kgf.cm^-2"
5120 DATA  "  PASCAL Pa","KIP","NEWTON N","KNOT kn","METRE / SECOND m.s^-1","LAMBERT L"
5130 DATA  "CANDELA/SQUARE METRE cd.m^-2","LANGLEY","JOULE / SQUARE METRE J.m^-2","LIGHT YEAR","METRE m"
5140 DATA  "LINK lk","METRE m","LITRE (4) l","CUBIC METRE m^3"
5150 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
5160 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
5170 PRINT
5180 PLOT 6,3:PRINT " (IE +1 OR 1 HOUR TO SECOND & -1 FOR SECOND TO HOUR)     PAGE 4"
5190 PRINT
5200 RESTORE 5070
5210 FOR A= 1TO 19
5220 READ A$,B$
5230 PLOT 6,1:PRINT A,
5240 PLOT 6,7:PRINT A$;
5250 PLOT 6,6:PRINT TAB( 35);B$
5260 NEXT A
5270 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
5280 PRINT " 21",TAB( 35);"END OF PROGRAM"
5290 GOSUB 120:PRINT
5300 GOTO 5710
5310 GOSUB 120:PRINT "YOUR CHOICE ";
5320 INPUT A
5330 IF A= 20THEN 5690
5340 IF A= - 20THEN 4000
5350 IF A= 0OR A> 21OR A< - 21THEN 5310
5360 IF A= 21OR A= - 21THEN 40000
5370 RESTORE 5050
5380 FOR B= 1TO ABS (A)
5390 READ C
5400 NEXT B
5410 RESTORE 5070
5420 FOR B= 1TO ABS (A)
5430 READ A$,B$
5440 NEXT B
5450 IF A< 0THEN 5590
5460 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 5500
5470 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
5480 INPUT D
5490 IF A= 9THEN 5520
5500 E= D* C
5510 GOTO 5530
5520 E= D- C
5530 GOSUB 120:PRINT
5540 PLOT 6,3
5550 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
5560 PLOT 6,2
5570 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 5700
5580 GOTO 5290
5590 C$= A$
5600 A$= B$
5610 B$= C$
5620 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
5630 INPUT D
5640 IF A= - 9THEN 5680
5650 E= D/ C
5660 GOTO 5680
5670 E= D+ C
5680 GOTO 5530
5690 GOTO 6000
5700 PLOT 27,11,6,2,12:GOTO 40000
5710 Q9= PEEK (32936)
5720 IF Q9= 0THEN 5310
5730 GOSUB 120:PRINT "YOUR CHOICE ?4"
5740 A= 4
5750 D= 1
5760 GOTO 5370
6000 REM  ********* START OF FIFTH PAGE *********
6010 PLOT 3,64,0
6020 PLOT 15
6030 PLOT 12,27,24:L= 25
6040
6050 DATA  1,.00000001,.0002,1,1,.0000254,1609.344,1852,100
6060 DATA  133.3224,.0002908882,60,.04214012,.00002926397,.008630975,.0000004162314,2628000,1852,.7957747
6070 DATA  "LUX lx","LUMEN/SQUARE METRE lm.m^-2","MAXWELL Mx","WEBER Wb","METRIC CARAT CM","KILOGRAM kg"
6080 DATA  "MHO","SIEMENS S","MICRO u","MICROMETRE um"
6090 DATA  "MIL","METRE m","MILE","METRE m"
6100 DATA  "MILE,international NAUTICAL n mile","  METRE m","MILLIBAR mb","PASCAL Pa","MILLIMETRE OF MURCURY mmHg"
6110 DATA  "PASCAL Pa","MINUTE angle '","RADIAN rad","MINUTE min"
6120 DATA  "SECONDS s","MOMENT OF INERTIA lb.ft^2","KILOGRAM METRE SQUARED kgm^2","MOMENT OF INERTIA lb.in^2"
6130 DATA  "KILOGRAM METRE SQUARED kgm^2","MOMENT SECOND OF AREA ft^4","METRE^4 m^4","MOMENT SECOND OF AREA in^4"
6140 DATA  "METRE^4 m^4","MONTH","SECONDS s","NAUTICAL MILE,international n mile","  METRE m","OERSTED Oe"
6145 DATA "AMPERE PER METRE A.m^-1"
6150 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
6160 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
6170 PRINT
6180 PLOT 6,3:PRINT " (IE +1 OR 1 MILE TO METRE & -1 FOR METRE TO MILE)       PAGE 5"
6190 PRINT
6200 RESTORE 6070
6210 FOR A= 1TO 19
6220 READ A$,B$
6230 PLOT 6,1:PRINT A,
6240 PLOT 6,7:PRINT A$;
6250 PLOT 6,6:PRINT TAB( 35);B$
6260 NEXT A
6270 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
6280 PRINT " 21",TAB( 35);"END OF PROGRAM"
6290 GOSUB 120:PRINT
6300 GOTO 6650
6310 GOSUB 120:PRINT "YOUR CHOICE ";
6320 INPUT A
6330 IF A= 20THEN 6630
6340 IF A= - 20THEN 5000
6350 IF A= 0OR A> 21OR A< - 21THEN 6310
6360 IF A= 21OR A= - 21THEN 40000
6370 RESTORE 6050
6380 FOR B= 1TO ABS (A)
6390 READ C
6400 NEXT B
6410 RESTORE 6070
6420 FOR B= 1TO ABS (A)
6430 READ A$,B$
6440 NEXT B
6450 IF A< 0THEN 6560
6460 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 6490
6470 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
6480 INPUT D
6490 E= D* C
6500 GOSUB 120:PRINT
6510 PLOT 6,3
6520 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
6530 PLOT 6,2
6540 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 6640
6550 GOTO 6290
6560 C$= A$
6570 A$= B$
6580 B$= C$
6590 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
6600 INPUT D
6610 E= D/ C
6620 GOTO 6500
6630 GOTO 7000
6640 PLOT 27,11,6,2,12:GOTO 40000
6650 Q9= PEEK (32936)
6660 IF Q9= 0THEN 6310
6670 GOSUB 120:PRINT "YOUR CHOICE ?4"
6680 A= 4
6690 D= 1
6700 GOTO 6370
7000 REM  ********* START OF SIXTH PAGE *********
7010 PLOT 3,64,0
7020 PLOT 15
7030 PLOT 12,27,24:L= 25
7040
7050 DATA  .02834952,.03110348,.03110348,30837400000000000,.001555174,10000,.5682613,.4731765,.1
7060 DATA  .138255,4.448222,.4535924,1.136523,.9463529,.01,.000257976,.000004848137,.02831685,.00001638706
7070 DATA  "OUNCE, AVOIRDUPOIS oz","KILOGRAM kg","OUNCE, TROY oz tr","KILOGRAM","OUNCE, APOTHECARY oz apoth","KILOGRAM kg"
7080 DATA  "PARSEC pc","METRE m","PENNYWEIGHT dwt","KILOGRAM kg"
7090 DATA  "PHOT ph","LUX lx","PINT pt","LITRE l"
7100 DATA  "PINT, U.S. LIQUID pt,U.S.","LITRE l","POISE P","PASCAL SECOND Pa.s","POUNDAL pdl"
7110 DATA  "NEWTON N","POUND-FORCE lbf","NEWTON N","POUND, AVOIRDUPOIS lb"
7120 DATA  "KILOGRAM kg","QUART qt","LITRE l","QUART, U.S. LIQUID qt,U.S.","LITRE l","RAD,RADIATION DOSE ABSORBED"
7130 DATA  "JOULE PER KILOGRAM J.kg^-1","ROENTGEN R","COULOMB PER KILOGRAM C.kg^-1","SECOND, angle ''","RADIAN rad"
7140 DATA  "SECTION MODULUS ft^3","METRE CUBED m^3","SECTION MODULUS in^3","METRE CUBED m^3"
7150 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
7160 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
7170 PRINT
7180 PLOT 6,3:PRINT " (IE +1 OR 1 PHOT TO LUX & -1 FOR LUX TO PHOT)           PAGE 6"
7190 PRINT
7200 RESTORE 7070
7210 FOR A= 1TO 19
7220 READ A$,B$
7230 PLOT 6,1:PRINT A,
7240 PLOT 6,7:PRINT A$;
7250 PLOT 6,6:PRINT TAB( 35);B$
7260 NEXT A
7270 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
7280 PRINT " 21",TAB( 35);"END OF PROGRAM"
7290 GOSUB 120:PRINT
7300 GOTO 7650
7310 GOSUB 120:PRINT "YOUR CHOICE ";
7320 INPUT A
7330 IF A= 20THEN 7630
7340 IF A= - 20THEN 6000
7350 IF A= 0OR A> 21OR A< - 21THEN 7310
7360 IF A= 21OR A= - 21THEN 40000
7370 RESTORE 7050
7380 FOR B= 1TO ABS (A)
7390 READ C
7400 NEXT B
7410 RESTORE 7070
7420 FOR B= 1TO ABS (A)
7430 READ A$,B$
7440 NEXT B
7450 IF A< 0THEN 7560
7460 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 7490
7470 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
7480 INPUT D
7490 E= D* C
7500 GOSUB 120:PRINT
7510 PLOT 6,3
7520 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
7530 PLOT 6,2
7540 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 7640
7550 GOTO 7290
7560 C$= A$
7570 A$= B$
7580 B$= C$
7590 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
7600 INPUT D
7610 E= D/ C
7620 GOTO 7500
7630 GOTO 8000
7640 PLOT 27,11,6,2,12:GOTO 40000
7650 Q9= PEEK (32936)
7660 IF Q9= 0THEN 7310
7670 GOSUB 120:PRINT "YOUR CHOICE ?4"
7680 A= 4
7690 D= 1
7700 GOTO 7370
8000 REM  ********* START OF SEVENTH PAGE *********
8010 PLOT 3,64,0
8020 PLOT 15
8030 PLOT 12,27,24:L= 25
8040
8050 DATA  .9071847,14.5939,.09290304,.00064516,.8361274,.0001,.000001,105506000,1.016047
8060 DATA  .9071847,1000,133.3224,.9144,31536000,0,0,0,0,0
8070 DATA  "SHORT TON sh tn","TONNE t","SLUG","KILOGRAM kg","SQUARE FOOT ft^2","SQUARE METRE m^2"
8080 DATA  "SQUARE INCH in^2","SQUARE METRE m^2","SQUARE YARD yd^2","SQUARE METRE m^2"
8090 DATA  "STOKES St","SQUARE METRE/SECOND m^2.s^-1","TEX","KILOGRAM PER METRE kg.m^-1"
8100 DATA  "THERM","JOULE J","TON","TONNE t","TON, SHORT sh tn"
8110 DATA  "TONNE t","TONNE t","KILOGRAM kg","TORR","PASCAL Pa"
8120 DATA  "YARD yd","METRE m","YEAR a","SECOND s","",""
8130 DATA  "","","",""
8140 DATA  "","","",""
8150 PLOT 3,0,0,6,7:PRINT "TO CONVERT ----------> TYPE '+' THEN TYPE SELECTED NUMBER"
8160 PLOT 6,6:PRINT "TO CONVERT <---------- TYPE '-' THEN TYPE SELECTED NUMBER"
8170 PRINT
8180 PLOT 6,3:PRINT " (IE +1 OR 1 TON TO TONNE & -1 FOR TONNE TO TON)         PAGE 7"
8190 PRINT
8200 RESTORE 8070
8210 FOR A= 1TO 19
8220 READ A$,B$
8230 PLOT 6,1:PRINT A,
8240 PLOT 6,7:PRINT A$;
8250 PLOT 6,6:PRINT TAB( 35);B$
8260 NEXT A
8270 PRINT " 20 OR -20",TAB( 35);"NEXT PAGE OR RETURN"
8280 PRINT " 21",TAB( 35);"END OF PROGRAM"
8290 GOSUB 120:PRINT
8300 GOTO 8650
8310 GOSUB 120:PRINT "YOUR CHOICE ";
8320 INPUT A
8330 IF A= 20THEN 8630
8340 IF A= - 20THEN 7000
8350 IF A= 0OR A> 21OR A< - 21THEN 8310
8360 IF A= 21OR A= - 21THEN 40000
8370 RESTORE 8050
8380 FOR B= 1TO ABS (A)
8390 READ C
8400 NEXT B
8410 RESTORE 8070
8420 FOR B= 1TO ABS (A)
8430 READ A$,B$
8440 NEXT B
8450 IF A< 0THEN 8560
8460 IF Q9< > 0THEN GOSUB 120:PRINT "ENTER THE VALUE IN "A$" ?1":GOTO 8490
8470 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
8480 INPUT D
8490 E= D* C
8500 GOSUB 120:PRINT
8510 PLOT 6,3
8520 GOSUB 120:PRINT D;" ";A$;" = ";E;" ";B$
8530 PLOT 6,2
8540 IF Q9< > 0THEN PLOT 3,64,0:FOR I= 1TO 2000:NEXT :GOTO 8640
8550 GOTO 8290
8560 C$= A$
8570 A$= B$
8580 B$= C$
8590 GOSUB 120:PRINT "ENTER THE VALUE IN ";A$;" ";
8600 INPUT D
8610 E= D/ C
8620 GOTO 8500
8630 GOTO 2040
8640 PLOT 27,11,6,2,12:GOTO 40000
8650 Q9= PEEK (32936)
8660 IF Q9= 0THEN 8310
8670 GOSUB 120:PRINT "YOUR CHOICE ?4"
8680 A= 4
8690 D= 1
8700 GOTO 8370
40000 PLOT 12
40010 REM  BEFORE ENDING THE PROGRAM, PUT THE TOP
40020 REM  OF MEMORY BACK WHERE IT WAS.
40030 GOSUB 40390
40040 AD= ER:Z= TM+ 34:GOSUB 40380
40050
40060 END
40070
40080 REM  QUAD DIRECTIONAL SCROLLING PATCH
40090 GOSUB 40390
40100 Z= 28672+ X+ X:IF D< > 2THEN Z= Z+ 128* Y:IF D= 3THEN Z= Z+ W+ W- (2- C)
40110 IF D= 2THEN Z= Z+ 128* (Y+ H- 1)
40120 AD= TM+ 2:GOSUB 40380
40130 POKE TM+ 5,H+ (D< 3):POKE TM+ 7,W* (C+ 1)+ (D> 2)* (1+ C)
40140 POKE TM+ 9,128+ 126* (D= 4)- 126* (D= 3):POKE TM+ 10,- 255* (D= 2OR D= 3)
40150 POKE TM+ 14,128+ 126* (D= 3)- 126* (D= 4):POKE TM+ 15,- 255* (D= 1OR D= 4)
40160 POKE TM+ 19,- (2- C)* (D< > 3)- (254+ C)* (D= 3):POKE TM+ 20,- 255* (D= 3)
40170 IF D= 1OR D= 4THEN Z= 130+ (2* (D= 1))- W- W:GOTO 40190
40180 Z= 128+ 2* (D= 3)+ W+ W:IF D= 2THEN Z= 256- Z
40190 POKE TM+ 27,Z:POKE TM+ 28,- 255* (D= 2)
40200 RETURN
40210
40220 GOSUB 40390:RESTORE 40230
40230 DATA 33,-1,-1,6,-1,14,-1,17,-1,-1,25
40240 DATA 126,17,-1,-1,25,119,17,-1,-1,25,13
40250 DATA 194,-1,-1,17,-1,-1,25,5,194,-1,-1,201
40260 IF TM> 65501THEN TM= TM- 34:GOTO 40300
40270 FOR J= 1TO 34:READ A
40280 IF A= > 0AND A< > PEEK (TM+ J)THEN J= 34:TM= TM- 34
40290 NEXT
40300 RESTORE 40230
40310 FOR J= 1TO 34:READ A:POKE TM+ J,A- (A< 0):NEXT
40320 Z= TM+ 1:AD= 33283:GOSUB 40380
40330 Z= TM:AD= ER:GOSUB 40380
40340 Z= TM+ 6:AD= TM+ 32:GOSUB 40380
40350 Z= TM+ 8:AD= TM+ 24:GOSUB 40380
40360 CLEAR 100:GOTO 20
40370
40380 ZZ= INT (Z/ 256):POKE AD,Z- 256* ZZ:POKE AD+ 1,ZZ:RETURN
40390 ER= 32940:TM= 256* PEEK (ER+ 1)+ PEEK (ER):RETURN