home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib24a.dsk / JUNE.1985 / CHART.FILER.P.bas < prev    next >
BASIC Source File  |  2023-02-26  |  4KB  |  60 lines

  1. 3360  REM  **********************
  2. 3370  REM  * CHART.FILER.P      *
  3. 3380  REM  * BY MARK JESKE      *
  4. 3390  REM  * COPYRIGHT (C) 1985 *
  5. 3400  REM  * BY MICROSPARC, INC *
  6. 3410  REM  * CONCORD, MA  01826 *
  7. 3420  REM  **********************
  8. 3430  ONERR  GOTO 3470
  9. 3440  PRINT  CHR$(4)"RUN CHART.MANAGER.P"
  10. 3450  ONERR  GOTO 3470
  11. 3460  PRINT D$"CHAIN CHART.MANAGER.P,@3600"
  12. 3470  TEXT : VTAB 8
  13. 3480  CALL  -3288:E =  PEEK(222): POKE 216,0:L =  PEEK(218) + PEEK(219) *256
  14. 3490  IF E = 6  THEN  PRINT "CHART.MANAGER.P NOT ON THIS DISK.": PRINT "TRY ANOTHER.": GOTO 3720
  15. 3500  GOTO 3640
  16. 3510  HOME : INVERSE : PRINT "                --MENU--                ": NORMAL 
  17. 3520  VTAB 3: PRINT "1.  ENTER A NEW DATA TABLE.": PRINT "2.  LIST/EDIT A DATA TABLE.": PRINT "3.  ADD TO A DATA TABLE."
  18. 3530  PRINT "4.  PRINT BASIC STATISTICS FOR A TABLE.": PRINT "5.  TRANSFORM THE DATA.": PRINT "6.  PERFORM LINEAR REGRESSION ON TABLE.": PRINT "7.  SORT THE DATA TABLE.": PRINT "8.  LIST DATA TABLE ON PRINTER."
  19. 3540  PRINT "9.  SAVE THE TABLE TO DISK.": PRINT "10. LOAD A TABLE FROM DISK.": PRINT : PRINT "11. DRAW A SCATTER PLOT.": PRINT "12. DRAW A BAR GRAPH."
  20. 3550  PRINT "13. DRAW A PIE GRAPH.": PRINT "14. LABEL/VIEW A GRAPH.": PRINT "15. SAVE GRAPH TO DISK."
  21. 3560  PRINT "16. LOAD A GRAPH FROM DISK.": PRINT "17. DUMP GRAPHICS SCREEN TO PRINTER.": PRINT "18. END PROGRAM."
  22. 3570  VTAB 23: CALL  -868: INPUT "ENTER A NUMBER AND PRESS 'RETURN' :";Z$:Z =  VAL(Z$): IF Z <1  OR Z >18  THEN 3570
  23. 3580  HOME : IF NC >0  AND (Z = 1  OR Z = 10  OR Z = 18)  THEN  VTAB 5: PRINT "ANY DATA THAT HAS NOT BEEN SAVED WILL": PRINT "BE LOST.  OKAY TO PROCEED?(Y/N)": GET Z$: PRINT : HOME : IF Z$ < >"Y"  THEN 3510
  24. 3590  IF (Z < >1  AND Z < >10  AND Z < >14  AND Z < >16  AND Z < >15  AND Z < >17  AND Z < >18)  AND TF = 0  THEN  VTAB 8: PRINT "THERE IS NO DATA TABLE, TRY 1 OR 10.": GOSUB 3740: GOTO 3510
  25. 3600  ON Z GOTO 3450,3450,3450,3450,3450,3450,3450,3450,3810,3870,3450,3450,3450,3450,3920,3940,3450,3730
  26. 3610  PRINT : PRINT "NO SELECTION, OPTION ABORTED.": GOSUB 3740: GOTO 3510
  27. 3620  CALL  -3288:E =  PEEK(222): PRINT D$"CLOSE": POKE 216,0:L =  PEEK(218) + PEEK(219) *256
  28. 3630  TEXT : HOME : VTAB 8
  29. 3640  IF E = 9  THEN  PRINT "THIS DISK IS FULL.  PLEASE TRY ANOTHER.": GOTO 3720
  30. 3650  IF E = 5  THEN  PRINT "INCORRECT FILENAME, PLEASE TRY ANOTHER.": GOTO 3720
  31. 3660  IF E = 6  THEN  PRINT "NO SUCH FILENAME, PLEASE TRY ANOTHER.": GOTO 3720
  32. 3670  IF E = 13  THEN  PRINT "INCORRECT FILE TYPE, PLEASE TRY ANOTHER.": GOTO 3720
  33. 3680  IF E = 8  THEN  PRINT "I/O ERROR, PLEASE CHECK DRIVE DOOR.": GOTO 3720
  34. 3690  IF E = 4  THEN  PRINT "THIS DISK IS WRITE PROTECTED, PLEASE TRY": PRINT "ANOTHER DISKETTE.": GOTO 3720
  35. 3700  PRINT CHR(7); CHR$(7): PRINT "ERROR NUMBER "E" HAS OCCURED IN LINE": PRINT : PRINT L".": GOTO 3720
  36. 3710  END 
  37. 3720  GOSUB 3740: GOTO 3510
  38. 3730  HOME : END 
  39. 3740  PRINT 
  40. 3750  PRINT "PRESS ANY KEY TO CONTINUE ";: GET Z$: PRINT Z$: RETURN 
  41. 3760  PRINT : INPUT "DO YOU WANT A CATALOG OF THE DISK :";Z$: IF  LEFT$(Z$,1) = "Y"  THEN  PRINT D$"CAT": GET Z$: GOTO 3780
  42. 3770  IF  LEFT$(Z$,1) < >"N"  THEN  PRINT : PRINT "PLEASE ANSWER YES OR NO.": GOTO 3760
  43. 3780  PRINT : PRINT "PLEASE ENTER A FILENAME.": PRINT : PRINT "(NO COMMAS, COLONS, OR QUOTES PLEASE)"
  44. 3790  PRINT : INPUT "FILENAME :";Z$: IF Z$ = ""  THEN  POP : GOTO 3610
  45. 3800  RETURN 
  46. 3810  GOSUB 3760: ONERR  GOTO 3620
  47. 3820  PRINT D$"OPEN"Z$
  48. 3830  PRINT D$"WRITE"Z$
  49. 3840  PRINT NC: FOR L = 1 TO NC: PRINT C$(L): PRINT MAX(L): PRINT MIN(L): PRINT SUM(L): PRINT NR(L): FOR J = 1 TO NR(L): PRINT A(J,L): NEXT J: NEXT L
  50. 3850  PRINT D$"CLOSE"Z$
  51. 3860  PRINT : PRINT "DONE.": POKE 216,0: GOSUB 3740: GOTO 3510
  52. 3870  GOSUB 3760: ONERR  GOTO 3620
  53. 3880  PRINT D$"OPEN"Z$
  54. 3890  PRINT D$"READ"Z$
  55. 3900  INPUT NC: FOR L = 1 TO NC: INPUT C$(L): INPUT MAX(L): INPUT MIN(L): INPUT SUM(L): INPUT NR(L): FOR J = 1 TO NR(L): INPUT A(J,L): NEXT J: NEXT L
  56. 3910  PRINT D$"CLOSE"Z$:TF = 1: POKE 216,0: GOTO 3860
  57. 3920  GOSUB 3760: ONERR  GOTO 3620
  58. 3930  PRINT D$"BSAVE"Z$",A$2000,L$2000": POKE 216,0: GOSUB 3740: GOTO 3510
  59. 3940  GOSUB 3760: ONERR  GOTO 3620
  60. 3950  PRINT D$"BLOAD"Z$",A$2000": POKE 216,0: GOSUB 3740: GOTO 3510