PROGRAM PRINT.MAP * PROMPT '' * OPEN 'MD' TO local.md.file THEN OPEN 'PROGRAM.MAP' TO map.file THEN * CRT @(-1):'Print program execution tree' * GOSUB 1000 * IF acct.name='' THEN LOOP CRT 'Account .. : ': INPUT acct.name UNTIL acct.name='' DO LOOP CRT 'Routine .. : ': INPUT routine.name UNTIL routine.name='' DO GOSUB 2000 REPEAT REPEAT END ELSE IF cmd.buff='' THEN CRT 'IF specifying from the commmand line, program list mus be supplied' END ELSE LOOP UNTIL cmd.buff='' DO routine.name = cmd.buff<1> cmd.buff = DELETE(cmd.buff,1) GOSUB 2000 REPEAT END END * END ELSE CRT 'No access to execution map file (PROGRAM.MAP)' END END ELSE CRT 'No MD access' END * GOTO 9999 * 1000 * * PROCREAD cmd.buff ELSE TCLREAD cmd.buff END * cmd.buff = TRIM(cmd.buff) no.of.fields = DCOUNT(cmd.buff,' ') FOR a.ptr=no.of.fields TO 1 STEP -1 cmd.buff = FIELD(cmd.buff,' ',a.ptr) NEXT a.ptr * cmd = cmd.buff<1> cmd.buff = DELETE(cmd.buff,1) * IF cmd='RUN' THEN cmd.buff = DELETE(cmd.buff,1) cmd = cmd.buff<1> cmd.buff = DELETE(cmd.buff,1) END * acct.name = cmd.buff<1> cmd.buff = DELETE(cmd.buff,1) * RETURN * 2000 * * DATA acct.name DATA routine.name EXECUTE 'PRINT.MAP.EXEC' * RETURN * 9999 *