HP3000-L Archives

March 2000, Week 4

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
"Johnson, Tracy" <[log in to unmask]>
Reply To:
Johnson, Tracy
Date:
Tue, 28 Mar 2000 19:41:10 +0100
Content-Type:
text/plain
Parts/Attachments:
text/plain (201 lines)
I'd log on as (MANAGER.SYS or MANAGER.VESOFT)
and run GOD.PUB.VESOFT for good measure, then
use it.  Once it is compiled, anybody should
then be able to use it.

As successful compile will show a file called
ACCESSL8 in the LISTF group of the VESOFT account
with a filecode of 176.

Tracy M. Johnson
TRW Automotive Electronics
Sensors & Components


-----Original Message-----
From: George Willis [mailto:[log in to unmask]]
Sent: Tuesday, March 28, 2000 9:55 AM
To: Johnson, Tracy; [log in to unmask]
Subject: RE: MPEX Flex listf


Thanks Tracy for sharing this MPEX command, however do you have a remedy for
the following message I get when attempting to use it?

FS2:>MPEX
listf command.pub.sys,^accessl
Processing     WHILE ISBOOLEAN (CALL LSTD'NEXT (@LOADINFO)) DO
                                    ^
Error: Privileged operator: CALL.
Error: Can't compile file
FS2:>

George Willis
Fayez Sarofim & Co.
Houston, Tx.

-----Original Message-----
From: Johnson, Tracy [mailto:[log in to unmask]]
Sent: Friday, March 24, 2000 10:47 AM
To: [log in to unmask]
Subject: Re: MPEX Flex listf


This reminds me that I had modified MPEX's LISTF,ACCESS so that it displays
on one line due to the high availability of 132 column screens.  (It easier
to use the FILTER command that way, no more CONTEXT parameters.)

I called it ACCESSL (L for LONG) code below:

VAR NUMOPENERS: SHORTINT;
VAR OPENERPINS: ARRAY [1024] OF SHORTINT;
VAR OPENERFNUMS: ARRAY [1024] OF SHORTINT;
VAR I: INTEGER;
VAR RFILEUSER: TFILEUSER;
VAR ROPENFILE: TOPENFILE;
VAR LOCKSTATE: INTEGER;
VAR F: STRING[8];
VAR JOBTYPE: STRING[1];
VAR JOBNUM: INTEGER;
VAR MAXOPENPIN: INTEGER;

SUBROUTINE CLEARF;
VAR FF: STRING[8];
BEGIN
FF:=F;
F:='';
SCOPY(FF)
END;

SUBROUTINE GETFMTACCESSMODE; RFILEUSER.FMTACCESSMODE;

SUBROUTINE GETCURRENTRECORD; RFILEUSER.CURRENTRECORD(RFILE);

SUBROUTINE GETFMTJOBNUM;
BEGIN
IF JOBNUM=0 THEN 7*' '
            ELSE STRWRITE('#',JOBTYPE:1,JOBNUM:5:'LEFT')
END;

SUBROUTINE GETFMTLOGON;
BEGIN
TRY
  STRWRITE(VEJOBINFO(JOBTYPE,JOBNUM).FMTLOGON:'DOWNSHIFT') +
   (IF JOBTYPE='S' THEN ' (ldev '+VEJOBINFO(JOBTYPE,JOBNUM).LDEVIN+')'
                   ELSE '')
RECOVER
  SEG (STRWRITE('(original opener inaccesssible)'))
END;

SUBROUTINE DOLOADED;
VAR WROTELOADED: BOOLEAN;
VAR LOADINFO: TLOADINFO;
BEGIN
IFVERSION5 THEN
  IF LOADED THEN
    SEG (BEGIN
    WROTELOADED:=TRUE;
    LOADINFO.TYPE:=255;
    WHILE ISBOOLEAN (CALL LSTD'NEXT (@LOADINFO)) DO
      IF (LOADINFO.UFID)[0]=(ISDOUBLEPTR(UFID))[0] THEN
        IF LOADINFO.ISPROGRAM AND LOADINFO.PROGALLOCATED THEN
          WRITELN (CLEARF:10,
                 IF LOADINFO.PROGAUTOALLOCATED THEN "AUTOALLOCATED"
                                               ELSE "ALLOCATED")
        ELSE IF LOADINFO.ISPROCESS THEN
          BEGIN
          JOBTYPE:=PINJOBTYPE(LOADINFO.PROCESSPIN);
          JOBNUM:=PINJOBNUMBER(LOADINFO.PROCESSPIN);
          WRITELN (CLEARF:10, "LOADED":10, GETFMTJOBNUM,
                   LOADINFO.PROCESSPIN:4:'LEFT',
                   IF JOBNUM=0 OR JOBTYPE='' THEN ''
                                             ELSE GETFMTLOGON);
          END
        ELSE IF LOADINFO.ISSL THEN
          WRITELN (CLEARF:10, "SL LOADED");
    IF F<>'' THEN
      WRITELN (CLEARF:10, "LOADED":10,"SYSTEM");
    END);
END;

MPEXHEADER1:="FILENAME ---TYPE--- JOBNUM PIN ---------PROGRAM----"+
             "----- ACCESS  RECORD -LOCK-"+
             "----- SESSION NAME -----";
MPEXHEADER2:="";
MPEXHEADER3:="";
MAXOPENPIN:=1024;

FOR RFILE IN MPEXFILESETGENERAL (1, TRUE)
  SELECT SEG (OPENED OR STORED OR RESTORED OR LOADED OR READING
                     OR STORESTAT<>0)
  DO
    BEGIN
    F:=SCOPYFILE;
    IFVERSION5 THEN
      DOLOADED;
    IF RESTORED OR RESTORING THEN
      WRITELN (CLEARF:10, "BEING RESTORED")
    ELSE IF STORED OR STORING THEN
      WRITELN (CLEARF:10, "BEING STORED")
    ELSE IF CBU THEN
      WRITELN (CLEARF:10, "OPEN BY CONCURRENT-BACKUP");

    NUMOPENERS:=0;
    IF OPENED THEN
      BEGIN
      IFVERSION5 THEN
        ROPENFILEREAD (RFILE, UFID, ROPENFILE);
      TRY
        CALL FOPENERS (@RFILE, (@RFILEUSER.GUFDPTR-@RFILEUSER)/2,
                       CALLDPARM(0), CALLDPARM(0),
                       @NUMOPENERS, @OPENERPINS, @OPENERFNUMS);
      RECOVER;
      IF NUMOPENERS=0 THEN
        SEG (WRITELN (CLEARF:10, "OPENED":10,
                      "(accessor information unavailable)"));
      (* Kludge:  Would be better as a FOR loop, but then WRITELNs
         within it wouldn't do the outer FOR loop's PAGEHEADs.
         Too bad.  EV 92/12/26. *)
      I:=0;
      WHILE I<MIN(NUMOPENERS,MAXOPENPIN) DO
        BEGIN
        RFILEUSERREAD (OPENERPINS[I], OPENERFNUMS[I], RFILEUSER);
        IF OPENERPINS[I]=0 THEN
          SEG (WRITELN (CLEARF:10,
                        "OPENED":10, "":7, "":4, "GLOBALLY":26,
                        GETFMTACCESSMODE:8, GETCURRENTRECORD:6))
        ELSE
          BEGIN
          IFVERSIONXL THEN
            LOCKSTATE:=-1
          ELSE
            LOCKSTATE:=SIGNEXTEND (CALL RIN'PIN'STATUS (ROPENFILE.RIN,
                                                      OPENERPINS[I]));
          JOBTYPE:=PINJOBTYPE(OPENERPINS[I]);
          JOBNUM:=PINJOBNUMBER(OPENERPINS[I]);
          WRITELN (CLEARF:10, "OPENED":10, GETFMTJOBNUM,
                   OPENERPINS[I]:4:"LEFT",
                   " ",
                   PINPROGNAME(OPENERPINS[I]):26,
                   GETFMTACCESSMODE:8,
                   GETCURRENTRECORD:6, " ",
                   IF LOCKSTATE=-1 THEN "       "
                   ELSE IF LOCKSTATE=0 THEN "LOCKER "
                   ELSE STRWRITE ("WAIT:", LOCKSTATE),
                   GETFMTLOGON);
          END;
        I:=I+1;
        END;
      END
    ELSE IF READING AND VALIDCOLDLOADID THEN
      WRITELN (CLEARF:10, "SYSTEM PROTECTED");
    IF NUMOPENERS > MAXOPENPIN THEN
      SEG( WRITELN ( CLEARF:10,
                     "(Output truncated: Can't recover more than ",
                     MAXOPENPIN," accessors)"));
    END;

Tracy M. Johnson
TRW Automotive Electronics
Sensors & Components

ATOM RSS1 RSS2