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] 46 COM C$[6],N1,K1,M1,M2 50 REM:26MAY74 60 REM:C$ IS FILE BEING MODIFIED 62 REM:Q1=1 FOR >>SUBC;=2 FOR>>REDEFINE;=3 FOR >>PNAME;=4 FOR >>MODNAME 64 REM:Q1=5 FOR >>PTEXT;=6 FOR >>MODTEXT 80 FILES * 90 ASSIGN C$,1,Q8 100 DIM A$[70],B$[72],D$[72],E$[70],F$[70],G$[70],H$[70],I$[70],J$[70],S$[12] 108 B$=" " 200 GOTO Q1 OF 400,1000,2000,3000,5000,6000 399 REM:>>SUBCOMMAND 400 Z1=0 405 IF Q9=3 THEN 490 410 PRINT "WANT EXPLANATIONS, TOO "; 415 INPUT D$ 420 IF D$[1,1]="N" THEN 490 425 Z1=1 426 GOTO 490 430 DATA "POBS PRINT OUT VALUES OF SPECIFIED OBSERVATION(S) IN FILE" 432 DATA "MODO MODIFY VALUE(S) OF VARIABLES IN 1 OBSERVATION IN FILE" 434 DATA "PNAM PRINT OUT CURRENT NAMES OF VARIABLES IN FILE" 436 DATA "MODN MODIFY CURRENT NAME(S) IN FILE" 440 DATA "PTEX PRINT OUT CURRENT TEXT DESCRIBING FILE" 450 DATA "MODT MODIFY CURRENT TEXT IN FILE" 451 DATA "STAT PRINT OUT CURRENT STATUS OF FILE." 452 DATA "SUBC LIST SUBCOMMANDS" 453 DATA "QUIT QUIT USING 'CRFI'" 460 DATA "REDE REDEFINE NUMBER OF OBSERVATIONS, VARIABLES, OR MISSING VALUE" 490 RESTORE 492 PRINT "'CRFI' SUBCOMMANDS:" 494 PRINT 496 FOR I=1 TO 10 498 READ D$ 500 IF Z1=0 THEN 550 510 PRINT D$ 520 GOTO 600 550 PRINT USING "#,4A3X";D$[1,4] 600 NEXT I 610 PRINT 615 IF Q9=3 THEN 9998 620 PRINT "FURTHER EXPLANATION AVAILABLE BY RE-EXECUTING 'CRFI' AT PROMPT" 630 PRINT "LEVEL 1." 650 GOTO 9998 999 REM:>>REDEFINE 1000 PRINT "SORRY, REDEFINE NOT YET IMPLEMENTED." 1010 GOTO 9998 1999 REM:>>PNAME 2000 IF P[2]#0 THEN 2008 2001 GOTO 3001 2005 IMAGE "VARIABLES",4D,"-",4D 2008 READ #1,P[2] 2010 READ #1;D$ 2015 PRINT 2020 PRINT D$" FOR '"C$"'" 2030 PRINT 2035 Z=K1 2040 Y=INT(.9999+Z/10) 2050 J0=1 2060 FOR I=1 TO Y 2070 READ #1;D$ 2075 Z=K1 MIN (J0+9) 2080 PRINT USING 2005;J0,Z 2082 J0=J0+10 2090 FOR J=1 TO 10 2092 PRINT USING "#,6AX";D$[6*J-5,6*J] 2094 NEXT J 2096 PRINT 2098 PRINT 2100 NEXT I 2110 GOTO 9998 2999 REM:>>MODNAME 3000 IF P[2]#0 THEN 3005 3001 PRINT C$" HAS NO NAME RECORDS IN IT." 3002 REM:LATER WILL ALLOW PERSON TO ADD NAMES IF THERE IS ROOM 3003 GOTO 9998 3005 PRINT "NUMBER OF VARIABLE"; 3010 INPUT Z 3015 IF Z=0 THEN 9998 3020 IF Z <= K1 THEN 3050 3030 PRINT "ONLY"K1"VARIABLES IN "C$". TRY AGAIN!" 3040 GOTO 3000 3050 GOSUB 3600 3060 READ #1,R 3070 IF Z>70 THEN 3090 3080 READ #1;J$ 3090 GOSUB 3560 3100 PRINT "NAME OF VAR.#"Z"IS "D$[6*X-5,6*X] 3110 PRINT "WANT NEW NAME FOR VAR.#"Z; 3120 INPUT S$ 3130 IF S$[1,1]="Y" THEN 3180 3140 PRINT "WANT ANOTHER VARIABLE"; 3150 INPUT S$ 3160 IF S$[1,1]="Y" THEN 3000 3170 GOTO 9998 3180 PRINT 3190 S$=" " 3200 PRINT "NEW NAME FOR VAR.#"Z; 3210 INPUT S$[1,6] 3220 Q=BRK(0) 3230 D$[6*X-5,6*X]=S$ 3240 READ #1,R 3250 IF Z>70 THEN 3290 3260 READ #1;J$ 3270 GOSUB 3390 3280 READ #1,R 3290 IF Z>70 THEN 3310 3300 PRINT #1;"NAMES:" 3310 PRINT #1;A$,B$,H$,I$,E$,F$,G$ 3320 PRINT "VARIABLE"Z"IS RENAMED." 3330 Q=BRK(1) 3340 PRINT 3345 GOTO Q9 OF 3350,3350,3358 3350 PRINT " WANT TO LIST OR NAME MORE VARIABLES"; 3352 GOTO 3360 3358 PRINT "MORE VAR(S). "; 3360 INPUT S$ 3370 IF S$[1,1]="N" THEN 9998 3380 GOTO 3000 3390 READ #1;A$,B$,H$,I$,E$,F$,G$ 3400 GOTO Y OF 3410,3430,3450,3470,3490,3510,3530 3410 A$=D$ 3420 GOTO 3540 3430 B$=D$ 3440 GOTO 3540 3450 H$=D$ 3460 GOTO 3540 3470 I$=D$ 3480 GOTO 3540 3490 E$=D$ 3500 GOTO 3540 3510 F$=D$ 3520 GOTO 3540 3530 G$=D$ 3540 RETURN 3560 FOR I=1 TO Y 3570 READ #1;D$ 3580 NEXT I 3590 RETURN 3600 Y=INT(.9999+Z/10) 3610 R=N1+2 3620 IF Y<8 THEN 3660 3630 R=R+1 3640 Y=Y-7 3650 GOTO 3680 3660 X=Z 3670 IF X<11 THEN 3720 3680 X=Z-10*INT(Z/10) 3690 IF X#0 THEN 3720 3700 X=10 3710 REM:NAME FOR VAR#Z IS NAME X IN STRING Y OF RECORD R OF C$ 3720 RETURN 4999 REM:>>PTEXT 5000 IF P[3]#0 THEN 5020 5010 PRINT C$" HAS NO DESCRIPTIVE TEXT." 5012 REM:LATER WILL ALLOW PERSON TO ADD IT IF THERE IS ROOM 5014 GOTO 9998 5020 READ #1,P[3];D$ 5030 PRINT D$ 5040 FOR I=1 TO 7 5050 READ #1;D$ 5070 PRINT D$ 5080 NEXT I 5090 GOTO 9998 5999 REM:>>MODTEXT 6000 IF P[3]#0 THEN 6020 6010 GOTO 5010 6020 READ #1,P[3];D$ 6030 READ #1;A$,B$,H$,I$,E$,F$,G$ 6035 PRINT #1,P[3];"TEXT" 6040 PRINT "LINE 1 IS:" 6042 PRINT A$ 6044 D$=A$ 6046 GOSUB 6500 6050 PRINT "LINE 2 IS:" 6052 PRINT B$ 6054 D$=B$ 6056 GOSUB 6500 6060 PRINT "LINE 3 IS:" 6062 PRINT H$ 6064 D$=H$ 6066 GOSUB 6500 6070 PRINT "LINE 4 IS:" 6072 PRINT I$ 6074 D$=I$ 6076 GOSUB 6500 6080 PRINT "LINE 5 IS:" 6082 PRINT E$ 6084 D$=E$ 6086 GOSUB 6500 6090 PRINT "LINE 6 IS:" 6091 PRINT F$ 6092 D$=F$ 6094 GOSUB 6500 6100 PRINT "LINE 7 IS:" 6102 PRINT G$ 6104 D$=G$ 6106 GOSUB 6500 6200 GOTO 9998 6500 PRINT "WANT TO CHANGE LINE "; 6510 INPUT S$ 6520 IF S$[1,1]="N" THEN 6580 6530 PRINT "GIVE NEW LINE:" 6540 INPUT D$ 6550 IF LEN(D$)<71 THEN 6580 6560 PRINT "NEW LINE TOO LONG--CAN'T BE > 70 CHARACTERS." 6570 GOTO 6530 6580 PRINT #1;D$ 6590 RETURN 6999 GOTO 9998 9900 CHAIN "$IDA09",Z 9996 CHAIN "$IDA09",9996 9998 CHAIN "$IDA09",600 9999 END