.ps 60,80 .lm 5 .rm 75 .ap .!(librarian will insert file name here) .blank 2 .c;BASD Port Display Submission .blank 2 .c;Dave Cook .c;Ball Aerospace Systems Division .c;P.O. 1062 .c;Boulder, Colo. 80306 .c;(303) 441-4058 .blank 2 .c;PORTS This program was a quick and dirty kludge that was slapped together in order to monitor the port usage. Here at BASD we have 80 DZ ports active at this time and a SHOW TERMINAL or USERS was not rapid or organized enough for our needs. PORTS simply scans through the ports looking for one that is allocated, if so, it fetches the owner's name and displays it on the screen. I wanted to try my hand at the LIB$SCREEN routines for two reasons, one was to get familiar with them, but the main reason was to make the PORTS display somewhat device independant since the LIB$SCREEN calls will access foreign terminal drivers. One refinement I would suggest is that the screen updating should be done only on the ports that change status. This version was a quick and dirty so it just goes through and updates the entire screen continuously. I used LIB$GET__FOREIGN so that the installed version may be operated from a single line. The only input required is the device name of the first port (of 64, since I could only squeeze that many port displays on the VT100 screen). The port name may be input in a variety of ways: .list .le;A single letter indicates the bank desired. I.e., 'B' will start with TTB0:. .le;Two letters indicate the bank and port number. I.e., 'B5' will start with TTB5:. .le;Three letter again indicate the bank and should be of the form 'TTB' to indicate the TTB0: bank. .le;Four letters indicate the specific port to start with such as 'TTB3' for TTB3:. .le;Other permutations such as the leading underscore (__) or trailing colon (:) will be ignored. A simple carriage return will default to TTA0: for the starting port. .end list