Compucolor.org – Virtual Media

Listing of file='6P24.BAS;01' on disk='vmedia/color_graphics_2_suits-sector.ccvf'

5 REM  PROGRAM 6.24
6 REM  GRAPHING WIDGECO PRODUCTION
10 DIM EC(30),DE(30):REM  30 YEARS PRODUCTION OF ECONOMY
11                   REM  AND DELUXE MODEL WIDGETS
19
20 PLOT 14:REM  DOUBLE HEIGHT
30 PLOT 30,16,29,19:REM  SET COLORS; FLAG OFF
40 PLOT 12,27,24:REM  ERASE SCREEN & PAGE MODE
50 PRINT TAB( 33)"WIDGECO"
60 PLOT 15,18:REM  REGULAR HEIGHT; COLOR=GREEN
70 PRINT TAB( 27)"PRODUCTION HISTORY"
78
79 REM  SET UP GRAPH BORDERS
80 GOSUB 3000
88
89 REM  LABEL VERTICAL AXIS
90 GOSUB 2200
98
99 REM  PRINT LEGEND
100 GOSUB 2000
108
109 REM  GIVE INSTRUCTIONS
110 GOSUB 1700
118
119 REM  GET DATA
120 GOSUB 4000
298
299 REM  GET STARTING YEAR DESIRED
300 GOSUB 1600
308
309 REM  CHECK FOR ANY INPUT ERRORS
310 IF SY> 1949AND SY< 1980THEN 500
319
320 PLOT 28,11:REM  ERASE BAD INPUT
330 PLOT 6,65:REM  BLINK RED
340 PRINT TAB( 17)"DATA NOT AVAILABLE"
350 PLOT 6,1,3,64,0:REM  BLINK OFF; HIDE CURSOR
359
360 FOR T= 1TO 1000:NEXT :REM  PAUSE
369
370 GOTO 300
498
499 REM  ERASE GRAPH AREA & YEARS
500 GOSUB 1500
508
509 REM  DISPLAY NEW DATA
510 GOSUB 1000
518
519 REM  BACK FOR MORE
520 GOTO 300
997
998 REM  ***** SUBROUTINE TO DISPLAY NEW DATA *****
999
1000 PLOT 2:REM  GENERAL PLOT MODE
1010 PLOT 246,28:REM  Y0 OF Y BAR GRAPH
1020 PLOT 34:REM  X OF Y BAR GRAPH
1030 PLOT 255:REM  EXIT PLOT MODE
1039
1040 PLOT 3,16,26:REM  POSITION CURSOR
1049
1050 FOR X= 0TO 8:REM  FOR EACH OF THE 9 YEARS DISPLAYED...
1060   IF SY+ X> 1979THEN X= 8:GOTO 1160
1069
1070   PLOT 23:REM  WHITE
1080   PRINT SY+ X;:REM  PRINT THE YEAR
1090   PLOT 21:REM  MAGENTA
1100   Y1= EC(SY+ X- 1949)* 4+ 27:REM  HEIGHT OF Y BAR FOR
1101                              REM  ECONOMY MODEL
1102
1110   GOSUB 1200:REM  PLOT THE BAR
1120   PLOT 19:REM  YELLOW FOR DELUXE MODEL
1130   Y1= DE(SY+ X- 1949)* 4+ 27
1140   GOSUB 1200
1150   PLOT 2,243,128,128,255:REM  SKIP OVER & EXIT PLOT MODE
1160 NEXT
1169
1170 PRINT
1180 RETURN
1197
1198 REM  ***** SUBROUTINE TO PLOT A BAR *****
1199
1200 PLOT 2:REM  GENERAL PLOT MODE
1210 PLOT 244,Y1:REM  HEIGHT OF THE BAR
1220 PLOT 243:REM  INCREMENTAL Y BAR GRAPH SUBMODE
1230 PLOT 136:REM  INCREMENT TWICE TO THE RIGHT
1240 PLOT 128,128:REM  SKIP WITHOUT PLOTTING
1250 PLOT 255:REM  EXIT PLOT MODE
1260 RETURN
1497
1498 REM  ***** SUBROUTINE TO ERASE GRAPH AREA & YEARS *****
1499
1500 PLOT 3,0,26,11:REM  ERASE YEARS
1510 PLOT 3,64,0,16:REM  HIDE CURSOR; COLOR=BLACK
1519
1520 PLOT 2:REM  GENERAL PLOT MODE
1530 PLOT 246,28:REM  Y0 OF Y BAR GRAPH
1540 PLOT 32:REM  X OF Y BAR GRAPH
1550 PLOT 111:REM  HEIGHT OF Y BAR GRAPH
1560 PLOT 243:REM  INCREMENTAL Y BAR GRAPH SUBMODE
1569
1570 FOR X= 1TO 47:PLOT 136:NEXT
1579
1580 PLOT 255:REM  PLOT MODE EXIT
1590 RETURN
1596
1597 REM  ***** SUBROUTINE TO GET STARTING YEAR *****
1598
1599 REM  FIRST ERASE ANY PREVIOUS INPUT
1600 PLOT 3,0,30,11
1609
1610 INPUT "STARTING YEAR? ";SY$
1620 SY= VAL (SY$)
1630 RETURN
1697
1698 REM  ***** SUBROUTINE TO GIVE INSTRUCTIONS *****
1699
1700 PLOT 18:REM  GREEN
1710 Y= 8:REM  INITIAL CURSOR Y POSITION LESS 2
1720 GOSUB 1850:REM  POSITION CURSOR FOR NEXT LINE OF TEXT
1730 PRINT "FIGURES FOR WIDGECO'S PRODUCTION ARE AVAILABLE"
1740 GOSUB 1850
1750 PRINT "FOR THE YEARS 1950-1979.  WHEN REQUESTED, PLEASE"
1760 GOSUB 1850
1770 PRINT "INDICATE THE STARTING YEAR FOR WHICH GRAPHS OF"
1780 GOSUB 1850
1790 PRINT "THOSE FIGURES ARE DESIRED.  THAT YEAR AND UP TO"
1800 GOSUB 1850
1810 PRINT "EIGHT ADDITIONAL YEARS' DATA WILL BE DISPLAYED."
1820 RETURN
1847
1848 REM  **** SUBROUTINE TO SKIP LINE & REPOSITION CURSOR ****
1849
1850 Y= Y+ 2:PLOT 3,16,Y:RETURN
1997
1998 REM  ***** SUBROUTINE TO PRINT THE LEGEND *****
1999
2000 PLOT 3,21,28:REM  POSITION CURSOR
2010 PLOT 18:REM  GREEN
2020 PLOT 30,21:REM  FLAG ON; BACKGROUND=MAGENTA
2030 PLOT 32,32,32:REM  THREE SPACES IN MAGENTA
2040 PLOT 16:REM  BACKGROUND=BLACK (FOREGROUND IS STILL GREEN)
2050 PRINT " ECONOMY MODEL  ";
2059
2060 PLOT 19:REM  FLAG IS STILL ON, SO BACKGROUND BECOMES YELLOW
2070 PLOT 32,32,32:REM   THREE SPACES IN YELLOW
2080 PLOT 16,29:REM  BACKGROUND TO BLACK;  FLAG OFF
2090 PRINT " DELUXE MODEL "
2099
2100 RETURN
2197
2198 REM  ***** SUBROUTINE TO LABEL VERTICAL AXIS *****
2199
2200 PLOT 23:REM  WHITE
2209
2210 FOR Y= 5TO 20STEP 5
2220   PLOT 3,11,25- Y:REM  POSITION CURSOR
2230   PRINT Y
2240 NEXT
2249
2250 PLOT 22:REM  CYAN
2260 PLOT 3,0,9:REM  POSITION CURSOR
2269
2270 PRINT " NUMBER"
2280 PRINT
2290 PRINT "   OF"
2300 PRINT
2310 PRINT " WIDGETS"
2320 PRINT
2330 PRINT "( X1000 )"
2339
2340 RETURN
2997
2998 REM  ***** SUBROUTINE TO SET UP GRAPH BORDERS *****
2999
3000 PLOT 22:REM  CYAN
3010 PLOT 30:REM  FLAG ON FOR SPECIAL CHARACTERS
3020 PLOT 27,10:REM  VERTICAL MODE
3030 PLOT 3,14,5:REM  POSITION CURSOR
3038
3039 REM  DRAW VERTICAL AXIS
3040 FOR Y= 5TO 24:PLOT 98:NEXT
3049
3050 PLOT 27,24:REM  BACK TO PAGE MODE
3060 PLOT 3,15,25:REM  POSITION CURSOR
3068
3069 REM  DRAW HORIZONTAL AXIS
3070 FOR X= 15TO 63:PLOT 101:NEXT
3079
3080 PLOT 29:REM  FLAG OFF
3090 RETURN
3997
3998 REM  ***** SUBROUTINE TO GET DATA *****
3999
4000 RESTORE 4100
4009
4010 FOR J= 1TO 30
4020   READ EC(J),DE(J)
4030 NEXT
4039
4040 RETURN
4096
4097 REM  ***** THE DATA *****
4098
4099 REM  1950-1959
4100 DATA 5,3,7,4,7,5,6,5,8,5,9,6,8,5,10,5,11,5,12,6
4104 REM  1960-1969
4105 DATA 12,7,13,9,14,10,15,11,15,12,14,11,9,7,8,5,9,4,10,6
4109 REM  1970-1979
4110 DATA 11,7,13,9,17,15,16,14,16,10,15,8,16,8,17,8,16,8,16,10