*
*T*      COPYRIGHT (C) HONEYWELL INFORMATION SYSTEMS INC., 1979.
*
         SYSTEM   FORTLIB
         SYSTEM   BPM
         REF      9SETN
         DEF      YGTTIM            THE SUBROUTINE
*
*   Copyright text
*
COPYRITE DSECT   0
         TEXT 'COPYRIGHT (C) HONEYWELL INFORMATION SYSTEMS INC., 1979.'
         CSECT
YGTTIM   EQU      %
         LI,ND    1                 # OF ARGS PASSED DOWN
         BAL,LR   9SETN             SETUP THE ARG
         CHAR     TIME
         M:TIME   TEMPTIME          GET THE TIME AND DATE
         LI,6     BA(TEMPTIME)
         LW,7     TIME              BA(USER BUFFER)
         LI,8     16                LENGTH OF TIME MESSAGE
         STB,8    7                 STORE FOR MBS
         MBS,6    0                 MOVE TO FORTRAN DATA AREA
         B        *15               RETURN TO FORTRAN CALLER
DATA     DSECT    0                 THE DATA
TIME%O   RES      1                 OFFSET FOR THE TIME
TIME     RES      1                 BA(TIME)
         RES      1                 PASSED DOWN LENGTH
         DATA     0                 DON'T CHECK FOR CONSISTANT LENGTHS
TEMPTIME RES      4                 BUFFER FOR TIME CAL
         PAGE
*   This routine is called from YUHEAD in module #11.  It is called
*   after the first WRITE to F:108 is done which puts 3 lines of
*   heading.  This routine does a 'M:DEVICE F:108,(NLINES)' to determine
*   how many lines are on a logical page.  If zero or a negative number
*   is returned, we look at the field LVA of the F:108 DCB.  If it is
*   non-zero, we return it to the user, else we assume they are ONLINE
*   and return 32767(a nice big number!)
*
         REF      F:108             DCB USED FOR OUTPUT
         REF      9SET1             ROUTINE TO SET UP ARGUMENT
         DEF      NLINES
NLINES   EQU      %
         CI,14    0                 WERE ANY ARGUMENTS PASSED?
         BLE      *15               NOPE!  FORGET THIS!!
         LI,ND    1                 # OF ARGUMENTS PASSED DOWN
         BAL,LR   9SET1             SET UP THE ARGUMENT
         INTG     NLINE
         AI,15    -1                THIS IS JUST INCASE WE RECEIVE
         AW,15    14                   MORE THAN 1 ARGUMENT
         STW,8    SAVE8             SAVE R8(M:DEVICE ... CLOBBERS IT)
         M:DEVICE F:108,(NLINES)    GET # LINES REMAINING ON THE PAGE
         CI,8     0                 WAS VALUE RETURNED AS # LINES LEFT P
         BLE      %+6               NOPE!  GET MAX LINES PER PAGE FROM D
         AI,8     4                 ADD 4 FOR # LINES ALREADY WRITTEN
         MTW,0    *X'4F'            Are we ONLINE?
         BGEZ     STNLINES          Nope!
         AI,8     -1                Subtract 1 for the PAGENATION headin
         B        STNLINES
         LW,8     F:108+10          GET MAX LINES PER PAGE(LVA) FROM DCB
         SLS,8    -17               ISOLATE IT
         CI,8     0                 WAS IT ZERO?
         BG       STNLINES          NOPE!  LOOKS GOOD
         LI,8     32767             MAKE MAX A BIG NUMBER!
STNLINES EQU      %
         STW,8    *NLINE            STORE IT IN THEIR AREA
         LW,8     SAVE8             RESTORE REGISTER 8
         B        *15
SAVE8    RES,4    1                 AREA TO SAVE R8(M:DEVICE... USES R8)
NLINE    RES,4    1                 WA(THEIR AREA)
         END
