10  COM X[103,22],M[19,19],U[19,19],Q[20],V[20],P[78]
30  COM M$[60],N$[72]
40  COM N,K,N8,K8,N9,K9,Q9,Q7,Q5,Q4,Q3,Q2,Q1
45  COM I3,I4,U9,X$[20]
50  REM: 31 JUL 74
52  REM:Q1=1 FOR>NEWC;=2 FOR>CRTS;=3 FOR>COMM"
60  DIM C$[10],U$[4],L[22]
65  GOTO Q1 OF 70,2000,1000
70  IF Q9>1 THEN 90
72  PRINT "WANT EXPLANATION ";
80  INPUT C$
82  IF C$[1,1]#"N" THEN 200
84  PRINT 
90  IF Q9>1 THEN 96
92  PRINT "BE SURE YOUR 'COMMON' SPECIFICATIONS ARE COMPATIBLE"
94  PRINT "WITH THE NEW IDA 'COMMON.'"
96  PRINT 
100  PRINT "* NEW COMMAND NAME = ";
110  ENTER 30,Q8,C$
120  PRINT 
130  IF Q8>0 THEN 132
131  GOTO 72
132  IF C$[1,1]="?" THEN 72
140  IF C$[1,4]#"HELP" THEN 500
142  PRINT '10"'HELP' IS ONE OF THE IDA COMMANDS"
144  PRINT 
150  GOTO 72
200  PRINT '10'13"TO USE 'NEWC' THE USER MUST:"
210  PRINT "1. HAVE A 4-LETTER NAME FOR THE NEW COMMAND THAT IS"
211  PRINT "   DIFFERENT FROM THOSE USED IN THE SYSTEM $IDA."
212  PRINT "   ISSUE THE IDA COMMAND 'LIST' TO GET A LIST OF ALL THE"
213  PRINT "   IDA COMMANDS."
220  PRINT "2. HAVE A PROGRAM IN HIS LIBRARY BY THAT NAME."
225  PRINT "   THE PROGRAM MUST HAVE THE SAME 'COMMON' VARIABLES"
230  PRINT "   AS THOSE OF $IDA."
235  PRINT "   (GET AND LIST $IDACOM TO SEE REQUIRED FORMAT.)"
237  PRINT "   (GET AND RUN $IDAVAR TO GET AN EXPLANATION OF THE"
238  PRINT "   VARIABLES USED IN 'COMMON.')"
239  PRINT 
240  PRINT "TO USE 'NEWC', REISSUE 'NEWC' COMMAND."
242  GOTO 9998
500  IF LEN(C$)=4 THEN 508
502  PRINT "NEW COMMAND NAME MUST HAVE 4 CHARACTERS."
504  PRINT "'NEWC' NOT EXECUTED."
506  GOTO 9998
508  RESTORE 
510  FOR I=1 TO 118
520  READ U$
530  IF C$[1,4]=U$ THEN 600
540  NEXT I
550  GOTO 800
600  PRINT "THE NAME YOU CHOSE IS THE SAME AS ONE OF THE $IDA"
610  PRINT "SYSTEM COMMAND NAMES.  YOU SHOULD FIRST CHANGE"
620  PRINT "YOUR PROGRAM NAME TO ONE THAT IS DIFFERENT FROM"
630  PRINT "ALL THE IDA COMMAND NAMES BEFORE CREATING THE"
640  PRINT "NEW COMMAND."
650  GOTO 9998
800  U9=U9+1
802  IF U9 <= 5 THEN 810
804  PRINT "ONLY 5 USER DEFINED COMMANDS ARE ALLOWED."
806  PRINT "NEW COMMAND NOT ACCEPTED."
808  GOTO 9998
810  X$[U9*4-3,U9*4]=C$[1,4]
820  PRINT "NEW COMMAND NAME ACCEPTED."
825  PRINT 
830  GOTO 9998
999  REM: >COMM
1000  PRINT "CURRENT, OR SOON TO BE IMPLEMENTED IDA COMMANDS ARE:"
1002  PRINT 
1004  PRINT "MISCELLANEOUS COMMANDS:"
1008  L=4
1010  GOSUB 1400
1012  L=8
1014  GOSUB 1400
1016  L=5
1018  GOSUB 1400
1020  L=4
1022  GOSUB 1400
1024  PRINT 
1026  GOSUB 9020
1030  PRINT "DATA DEFINITION COMMANDS:"
1034  L=3
1036  GOSUB 1400
1038  L=5
1039  GOSUB 1400
1042  PRINT 
1044  GOSUB 9020
1050  PRINT "DATA EDITING COMMANDS:"
1054  L=5
1056  GOSUB 1400
1058  FOR J=1 TO 2
1060  L=6
1062  GOSUB 1400
1064  NEXT J
1070  L=3
1072  GOSUB 1400
1074  PRINT 
1076  GOSUB 9020
1080  PRINT "PRINT AND PLOT COMMANDS:"
1082  FOR J=1 TO 3
1084  L=5
1086  GOSUB 1400
1088  NEXT J
1092  L=4
1094  GOSUB 1400
1096  PRINT 
1098  GOSUB 9020
1100  PRINT "TRANSFORMATION COMMANDS:"
1102  L=4
1104  GOSUB 1400
1106  L=8
1108  GOSUB 1400
1110  L=5
1112  GOSUB 1400
1120  PRINT 
1122  GOSUB 9020
1124  PRINT "SUMMARY AND ONE SAMPLE STATISTICS:"
1128  L=4
1130  GOSUB 1400
1132  L=3
1133  GOSUB 1400
1134  PRINT 
1136  GOSUB 9020
1150  PRINT "REGRESSION ANALYSIS:"
1152  L=8
1154  GOSUB 1400
1156  L=6
1158  GOSUB 1400
1160  PRINT 
1162  GOSUB 9020
1164  PRINT "TIME-SERIES ANALYSIS:"
1166  L=6
1168  GOSUB 1400
1180  PRINT 
1181  GOSUB 9020
1182  PRINT 
1190  PRINT "COMMANDS TO BE IMPLEMENTED SOME TIME IN THE FUTURE:"
1196  L=6
1197  GOSUB 1400
1198  IF Q9=3 THEN 9998
1200  PRINT 
1210  PRINT "EXECUTING SOME OF THE ABOVE COMMANDS AT THE FIRST PROMPT LEVEL"
1220  PRINT "WILL GIVE AN OPTION OF AN EXPLANATION."
1230  PRINT "IF NOT, THE COMMAND 'EXPLAIN', OR 'EXPL', WILL USUALLY GIVE"
1232  PRINT "A BRIEF EXPLANATION."
1240  PRINT "'INFO' WILL GIVE EXPLANATIONS FOR ALL COMMANDS WITHIN A GROUP,"
1250  PRINT "E.G., ALL TRANSFORMATIONS."
1260  GOTO 9998
1400  FOR I=1 TO L
1410  READ U$
1420  PRINT  USING "#,4A4X";U$
1430  NEXT I
1440  PRINT 
1450  RETURN 
2000  IF Q9=3 THEN 2040
2010  PRINT "ARE YOU USING A CATHODE RAY TERMINAL  NOW ";
2020  GOTO 2050
2040  PRINT "*  USING CRT ";
2050  INPUT C$
2052  IF C$[1,1]="?" THEN 9996
2054  IF C$[1,1]="Y" THEN 2070
2060  IF C$[1,1]="N" THEN 9996
2062  PRINT "PLEASE ANSWER "'10"YES,"'10"NO,"'10"OR"'10"?"
2064  GOTO 2010
2070  P[64]=1
2072  IF Q9=3 THEN 9998
2080  PRINT "IF YOU GET THE PROMPT 'MORE?' OR SOMETHING LIKE IT AT THE END OF"
2090  PRINT "SOME PRINTOUT, RESPOND WITH A CARRIAGE RETURN ONLY WHEN YOU ARE"
2092  PRINT "READY TO GO ON. "'10'13"YOU MIGHT TRY THE COMMAND 'COMM'."
2099  GOTO 9998
8000  DATA "CHGP","CRTS","MISS","QUIT"
8002  DATA "COMM","EXPL","HELP","INFO","LIST","NEWC","NEWS","PAUS"
8004  DATA "CALC","CRFI","FILE","GAUS","PSAM"
8006  DATA "NAME","RDIM","SPAD","SAVF"
8020  DATA "ENTE","ENTS","ENRA"
8030  DATA "CRSP","INDX","RAND","EOBR","EOBS"
8040  DATA "CHGO","APPO","APPB","APPV","APPS"
8042  DATA "DELO","DELB","RECO","RETO","RETB","SELR"
8044  DATA "DELV","MOVE","MSOR","PSOR","SAVR","SORT"
8046  DATA "ZERC","ZERR","ZERS"
8060  DATA "PRTS","PRTO","PRTV","PRTR","PRTF"
8065  DATA "FPRS","FPRO","FPRV","FPRR","FPRF"
8070  DATA "FREQ","HIST","NORM","PLTS","SCAT"
8075  DATA "CTAB","MTAB","MPLS","RVSF"
8090  DATA "CATE","RANK","DIFF","LAGG"
8095  DATA "ABSO","ADDC","MULC","EXPO","LOGE","LOG1","POWE","STAN"
8100  DATA "ADDV","DIVI","DOTP","MULV","SUBV"
8102  DATA "CORR","COVA","PARC","MEAN"
8104  DATA "DURB","RUNS","SERC"
8110  DATA "REGR","FORW","STEP","BACK","ALLS","SUBS","SWEE","SAMP"
8120  DATA "COEF","SUMM","BCOR","BCOV","SEPR","ANOV"
8130  DATA "AUTO","BOXJ","CROS","PACF","SPEC","STAR"
8170  DATA "COMP","DUMP","ENLI","PLTC","TRAN","WLSR"
9020  IF P[64]=0 OR P[64]>10 THEN 9190
9022  IF Q9=3 THEN 9030
9024  PRINT "* MORE COMMANDS ? ";
9026  GOTO 9040
9030  PRINT "* MORE ? ";
9040  ENTER 255,Q8,C$
9050  PRINT 
9070  IF Q8>0 THEN 9130
9080  PRINT "PLEASE RESPOND:"
9090  PRINT "NO,"'10"FOLLOWED BY A CARRIAGE RETURN, ";
9100  PRINT "IF YOU DON'T WANT ANY MORE COMMANDS,"
9110  PRINT "WITH A CARRIAGE RETURN ONLY,"'10"IF YOU WANT MORE COMMANDS."
9120  GOTO 9030
9130  IF C$="" THEN 9190
9132  IF C$[1,1]="Y" THEN 9190
9140  IF C$[1,1]="N" THEN 9998
9150  IF C$[1,1]="?" THEN 9080
9160  PRINT "INVALID RESPONSE."
9170  GOTO 9080
9190  RETURN 
9996  PRINT "'CRTS' NOT EXECUTED."
9998  CHAIN "$IDA",150
9999  END 
