ASMB,R,L,C
      HED DMESG 91700-16133 REV A * (C) HEWLETT PACKARD CO. 1976
      NAM DMESG,7 91700-16133 REV A 760318
      SPC 1 
******************************************************************
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1976.  ALL RIGHTS     *
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,      *
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT*
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.       *
******************************************************************
      SPC 2 
      SPC 1 
******************************************************
* 
*DMESG              TELLOP MESSAGE SUBROUTINE 
* 
*SOURCE PART #      91700-18133 
* 
*REL PART #         91700-16133 
* 
*WRITTEN BY:        LARRY POMATTO 
* 
*DATE WRITTEN:      7-30-74 
* 
*MODIFIED BY:       JEAN-PIERRE BAUDOUIN
* 
*DATE MODIFIED:     DEC 1975
* 
********************************************************* 
      SPC 1 
* 
* LIBRARY SUBROUTINE APPENDED TO RTE USER 
* PROGRAM FOR SENDING MESSAGES TO SATELLITE STATION 
* OPERATOR CONSOLE (LU 1).
* 
*     CALLING SEQUENCE: 
*                   JSB DMESG 
*                   DEF *+4 
*                   DEF COMMUNICATION LU
*                   DEF BUFFER
*                   DEF BUFFER LENGTH 
*                   <ERROR RETURN IF SIGN BIT SET ON LU,
*                    NORMAL RETURN OTHERWISE> 
*                   <NORMAL RETURN IF SIGN BIT SET ON LU> 
* 
      SPC 3 
      ENT DMESG 
* 
      EXT DEXEC,.ENTR 
* 
A     EQU 0 
* 
* GET MESSAGE ADDRESS AND LENGTH. 
* 
LU    NOP 
BUFAD NOP 
BUFL  NOP 
DMESG NOP 
      JSB .ENTR     GET PRAM ADDRESS
      DEF LU
      LDA BUFL,I    GET LENGTH
      CMA,INA       SET FOR DOWN COUNTER
      STA CNT 
      SZA,RSS       MAKE SURE NOT ZERO
      JMP DMESG,I   RETURN IF ZERO
      ADA D37       TEST FOR LENGTH GREATER THAN 37 WORDS 
      SSA 
      JMP DMESG,I   RETURN TO ERROR RETURN IF SO
* 
* MOVE MESSAGE TO INTERNAL BUFFER.
* 
      LDA DFOUT 
      STA TEMP
* 
LOOP  LDA BUFAD,I 
      STA TEMP,I
      ISZ BUFAD 
      ISZ TEMP
      ISZ CNT 
      JMP LOOP
* 
      LDA BUFL,I    ADJUST BUFFER LENGTH. 
      ADA B3
      STA BUFL
* 
      LDA LU,I      GET THE COM. LU 
      LDB D2        GET DEXEC CODE
      RAL,CLE,SLA,ERA IS SIGN BIT SET (STRIP IT)
      LDB D2I       YES, SET FOR NO ABORT CALL TO DEXEC 
      STB CNWD      SAVE FOR CALL 
      STA LU        SAVE
* 
* SEND THE MESSAGE WITH ID PREFIX.
* 
      JSB DEXEC 
      DEF *+6 
      DEF LU
      DEF CNWD
      DEF B1
      DEF OUTBF 
      DEF BUFL
* 
      JMP DMESG,I   RETURN TO CALLER (ERR RTRN IF LU HAD BIT15) 
      ISZ DMESG     SET FOR OK RETURN 
      JMP DMESG,I   RETURN
      SPC 2 
* 
* 
* CONSTANTS AND WORKING STORAGE.
* 
B1    OCT 1 
D2    DEC 2 
D2I   OCT 100002
B3    OCT 3 
D37   DEC 37
CNT   NOP 
TEMP  NOP 
DFOUT DEF OUTBF+3 
OUTBF ASC 3,=S00: 
      BSS 37
CNWD  NOP 
* 
SIZE  EQU * 
* 
      END 
    