Compucolor.org – Virtual Media

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

1 PRINT "K":GOTO 1000
270 REM


		SUBROUTINES


300 REM PAUSE
310 PLOT 3,64,0:FOR PAUSE= 1TO 720:NEXT PAUSE:RETURN
500 REM

ROUTINE TO CONVERT '1.2K' TO 1200


505 B$= "PNUIOKM":C= 1:B2$= ""
510 FOR A1= 1TO LEN (A$):B1$= MID$ (A$,A1,1)
515 IF B1$= " "GOTO 530
520 FOR W= 1TO 7:IF B1$= MID$ (B$,W,1)THEN C= VAL ("1E"+ STR$ ((W- 5)* 3)):GOTO 535
525 NEXT W
530 B2$= B2$+ B1$:NEXT A1
535 A= VAL (B2$)* C:RETURN
650 REM 

INITALISE A1$,A2$


660 FOR A1= 0TO 7:READ A2$(A1):NEXT A1
670 FOR A1= 1TO 5:READ A1$(A1):NEXT A1
675 FOR A1= 1TO 5:READ P(A1,1),P(A1,2):NEXT A1:RETURN
680 PRINT
690 DATA " MEG"," KILO",""," MILLI"," MICRO"," NANO"," PICO"," <PICO"
691 DATA OHMS,OHMS,FARAD,HERTZ,"% TIME HIGH"
692 DATA 43,7,43,15,43,22,13,1,13,3
700 REM  

SUBROUTINE TO AUTO-SCALE A WITH SUFFIX A1$(B)


707 IF A= 0THEN B= 0:GOTO 740
710 A= ABS (A):B= INT (LOG (A)/ LOG (10)):IF B< 0GOTO 720
715 FOR B1= 1TO B:A= A/ 10:NEXT B1
720 IF B> 0GOTO 730
725 FOR B1= 1TO ABS (B):A= A* 10:NEXT B1
730 IF ABS (B)/ 3< > INT (ABS (B)/ 3)THEN B= B- 1:A= A* 10:GOTO 730
735 IF B> 6OR B< - 15THEN PRINT "OUT OF RANGE"SGN (B)" VE":RETURN
740 PLOT 3,P(N,1),P(N,2):PRINT A;A2$(2- B/ 3)" "A1$(N):RETURN
1000 REM

		START OF PROGRAM


1010 GOSUB 2000:REM 			GRAPHICS
1020 CLEAR 1000:GOSUB 660:REM 	INITIALISE DATA
1078 FOR Q= 1TO 5:A(Q)= - 1:NEXT Q
1080 FOR Q= 1TO 3:REM ONLY 3 NEEDED
1090 PLOT 3,1,26:PRINT "ENTER NUMBER OF VARIABLE "SPC( 10)"":POKE 33278,0:PLOT 3,26,26,6,1
1095 IF PEEK (33278)= 0GOTO 1095
1096 N= PEEK (33278)- 48
1100 IF N< 1OR N> 5THEN PRINT "  ERROR":GOSUB 300:GOTO 1090
1101 PLOT 3,2,N* 2+ 14:PRINT "*"
1106 IF A(N)> = 0THEN Q= Q- 1:PLOT 3,P(N,1),P(N,2):PRINT SPC( 20):A(N)= - 1:SUM= SUM- 2^ N
1110 PLOT 6,7,3,1,28:PRINT "VALUE"SPC( 10)"":PLOT 3,7,28:INPUT "";A$:IF VAL (A$)< 0THEN PLOT 3,2,N* 2+ 14,32:GOTO 1090
1111 SUM= SUM+ 2^ N
1113 GOSUB 500:A(N)= A
1115 PLOT 6,39:GOSUB 700:PLOT 6,7
1120 PLOT 3,2,N* 2+ 14:PRINT "*":NEXT Q
1125 IF SUM= 56GOTO 3000
1130 FOR N= 1TO 5:IF A(N)= - 1THEN ON NGOTO 1220,1240,1260,1280,1290
1135 NEXT N:PLOT 3,0,27,6,7:END
1140 GOTO 1400
1200 REM  CALCULATION ROUTINES
1220 A(1)= 1/ (LOG (2)* A(3)* A(4))- 2* A(2):GOTO 1300
1240 A(2)= (1/ (LOG (2)* A(3)* A(4))- A(1))/ 2:GOTO 1300
1260 A(3)= 1/ (LOG (2)* (A(1)+ 2* A(2))* A(4)):GOTO 1300
1280 A(4)= 1/ (LOG (2)* (A(1)+ 2* A(2))* A(3)):GOTO 1300
1290 A(5)= INT (1000* (A(1)+ A(2))/ (A(1)+ 2* A(2)))/ 10
1300 PLOT 6,15:A= A(N):GOSUB 700:GOTO 1135
2000 REM

		GRAPHICS


2005 PLOT 12,6,3,2,0,0,242,127,0,127,127,0,127,0,0,255,30
2010 E$= "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
2020 PLOT 6,7,3,25,10:PRINT "neeeeeo  b":PLOT 3,25,17:PRINT "lm"
2025 PLOT 3,32,12:PRINT "eeeeeeeeee":PLOT 3,32,17:PRINT "eeeeeeeeeee":PLOT 3,16,25:PRINT E$
2026 PLOT 3,29,3:PRINT ""
2029 REM VERTICAL MODE 
2030 PLOT 27,10,3,25,11:PRINT "aaaaaa":PLOT 3,31,11:PRINT "bbbbbb"
2040 PLOT 3,26,18:PRINT "aaaaaaa":PLOT 3,31,18:PRINT "aaaaaaa"
2045 PLOT 3,42,4:PRINT "aaaaaaaaaaaaaaaaaaaaa":PLOT 3,28,4:PRINT "taaa"
2050 PLOT 3,35,11:PRINT "uwaaaa":PLOT 3,15,13:PRINT "aaaaaaaaaaav"
2059 REM NORM.
2065 PLOT 27,11,3,28,8:PRINT "a  teeu":PLOT 3,27,9:PRINT "tu  a  b"
2080 PLOT 3,15,12:PRINT "t"LEFT$ (E$,9)
2100 REM (FLG OFF) END GRAPHICS START DETAIL
2130 R$= "xx":C$= "B":L$= "xx":C$= C$+ C$
2140 PLOT 3,41,7:PRINT R$:PLOT 3,41,14:PRINT R$:PLOT 3,41,20:PRINT C$:PLOT 3,30,20:PRINT C$
2150 PLOT 3,14,16:PRINT L$:PLOT 3,14,17:PRINT L$:PLOT 3,14,18:PRINT L$
2160 PLOT 6,2,3,28,11,56,3,44,20:PRINT "C":PLOT 3,33,20:PRINT "0.1"
2165 PLOT 27,10,3,30,11:PRINT "27  65":PLOT 3,26,11:PRINT "43   1":PLOT 27,11
2170 PLOT 6,1,3,44,6:PRINT "RA":PLOT 3,44,14:PRINT "RB"
2180 PLOT 6,4,3,10,14:PRINT "LOAD"
2190 PLOT 3,27,14:PRINT "555"
2200 PLOT 6,6,3,15,10:PRINT "ffffffff"
2220 PLOT 3,15,9:PRINT "aa
a
laa
a
l"
2240 PLOT 6,2,3,16,11:PRINT "OUTPUT"
2260 PLOT 3,15,7:PRINT "|":PLOT 3,18,7:PRINT "b":PLOT 3,14,6:PRINT "TH  TL"
2290 PLOT 6,6,3,1,3:PRINT "DUTY CYCLE=":PLOT 6,2,3,3,5:PRINT "TH*100%"
2296 PLOT 3,2,6:PRINT "gggggggggg":PLOT 3,3,7:PRINT "TH + TL"
2300 PLOT 6,6,3,55,3:PRINT "B
"
2310 PLOT 3,55,24:PRINT "B
"
2320 PLOT 3,50,2:PRINT "SUPPLY"
2330 PLOT 3,48,5:PRINT "5 - 18 V"
2340 PLOT 3,30,2:PRINT "<gggg10-12 MA"
2350 PLOT 6,2,3,40,25:PRINT "jj{j"
2360 PLOT 3,40,26:PRINT "ffff"
2370 PLOT 6,6,3,1,1:PRINT "FREQUENCY ="
2380 PLOT 3,1,16:PRINT "1 RA"
2390 PLOT 3,1,18:PRINT "2 RB"
2400 PLOT 3,1,20:PRINT "3 C"
2410 PLOT 3,1,22:PRINT "4 FREQUENCY"
2420 PLOT 3,1,24:PRINT "5 DUTY CYCLE"
2425 PLOT 3,1,30:PRINT "ABBREVIATIONS :-     PICO NANO UMICRO IMILLI OHM KILO MEG"
2430 RETURN
3000 REM DUTY CYCLE DEFINED
3020 REM SUM=56
3025 PLOT 6,15
3030 A(2)= (1- A(5)/ 100)/ (A(4)* LOG (2)* A(3))
3040 A= A(2):N= 2:GOSUB 700
3050 A(1)= (100- 2* A(5))/ (A(5)- 100)* A(2)
3060 A= A(1):N= 1:GOSUB 700
3080 GOTO 1300