10 REM *************************************************************** 15 REM * NAME PIECHART * 20 REM * VERSION 3.20 * 25 REM * DATE 07/07/87 * 30 REM * MODIFIED BY S.Y. Wu * 35 REM *************************************************************** 40 DEF SEG=&H40 45 IF ( PEEK(&H10) AND &H30 ) <> &H30 THEN GOTO 1700 50 CLS : LOCATE 3,1 55 PRINT CHR$(7);"***** IMPROPER DISPLAY ADAPTOR *****" 60 PRINT : END 1700 DEF SEG 1710 key off 1800 DSAM$="NO" 1900 GOTO 2005 2000 DSAM$="YES" 2005 DIM R(100),A$(100) 2010 CLS 2020 SCREEN 1,0:COLOR 1,0 2030 LR=50:SR=44 2040 T$="The Operations of S&S Cor." 2050 N=6 2060 S=0 2070 FOR I=1 TO N 2080 READ R(I) : READ A$(I) 2090 S=S+R(I) 2100 NEXT 2110 FOR I=1 TO N:R(I)=R(I)/S:NEXT 2120 A2=0 2130 CLS 2140 LOCATE 2,20-LEN(T$)/2:PRINT T$ 2150 LINE (8*(19.5-LEN(T$)/2)-8,7)-(8*(19.5+LEN(T$)/2) ,16),2,B 2160 FOR C=1 TO N 2170 A1=A2:A2=A2+R(C)*2*3.1415926# 2180 AA=(A1+A2)/2 2190 CX=160+COS(AA)*(LR-SR) 2200 CY=100-SIN(AA)*(LR-SR) 2210 CIRCLE (CX,CY),SR,1,-A1-.001,-A2,5/6 2220 PAINT (CX+COS(AA)*.8*SR,CY-SIN(AA)*.8*SR),C MOD 4,1 2230 LX=CX+COS(AA)*(16+SR)-4*LEN(A$(C)):LY=CY-SIN(AA)*(SR+16) 2240 LOCATE 1+(LY\8),1+(LX\8):PRINT A$(C); 2250 LINE ((LX\8)*8,8*((LY\8)+1))-((LX\8)*8+8*LEN(A$(C)),8*((LY\8)+1)),1 2260 NEXT C 2270 ' 2280 DATA 30,"P C" 2290 DATA 10,"Mini Computer" 2300 DATA 14,"Peripheral" 2310 DATA 12,"Data Service" 2320 DATA 14,"Software" 2330 DATA 8,"Main Frame" 2340 LOCATE 1,1 : 2350 FOR X=1 TO 4000 2360 A$=INKEY$ : IF A$=CHR$(27) THEN 2390 2370 NEXT X 2380 SCREEN 0,1:IF DSAM$="YES" THEN CHAIN "EARTH",2000 ELSE COLOR 7,0,0:WIDTH 80:CLS 2390 SCREEN 0,1:IF DSAM$="YES" THEN CHAIN "cafdemo" ELSE COLOR 7,0,0:WIDTH 80:key on:CLS