ASMB,R,L,C HED DMESG 91740-16032 REV 1840 * (C) HEWLETT PACKARD CO. 1978 NAM DMESG,7 91740-16032 REV 1840 780628 SPC 1 ****************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. 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 ****************************************************** * *DMESG TELLOP MESSAGE SUBROUTINE * *SOURCE PART # 91740-18032 * *REL PART # 91740-16032 * *WRITTEN BY: LARRY POMATTO * *DATE WRITTEN: 7-30-74 * *MODIFIED BY: JEAN-PIERRE BAUDOUIN * *DATE MODIFIED: MAY 1976 * ********************************************************* * * MODIFIED BY DMT ON 6/28/78 TO CHANGE ERROR RETURN * ********************************************************* SPC 1 * * LIBRARY SUBROUTINE APPENDED TO RTE USER PROGRAM THAT SENDS * MESSAGES TO THE SYSTEM CONSOLE AT THE GIVEN DESTINATION NODE. * * CALLING SEQUENCE: * JSB DMESG * DEF *+4 * DEF DESTINATION * DEF BUFFER * DEF BUFFER LENGTH * RETURN--A&B CONTAIN ASCII ERROR CODE IF ANY; * OTHERWISE A & B ARE BOTH ZERO. * SPC 3 ENT DMESG * EXT DEXEC,.ENTR,#NODE,$LIBR,$LIBX,$CVT3 * SUP * * GET MESSAGE ADDRESS AND LENGTH. * DEST NOP BUFAD NOP BUFL NOP DMESG NOP JSB .ENTR GET PRAM ADDRESS DEF DEST CLA LDB BUFL,I GET LENGTH SSB POSITIVE WORD COUNT? JMP *+4 NO, TREAT AS BYTE COUNT BLS CONVERT LNGT IN WORDS TO CMB,INB,SZB,RSS LNGT IN (-) BYTES JMP LENER ERROR IF ZERO OR NOT PASSED STA BUFL INITIALIZE FOR NEXT TIME STB 0 ADA N10 ADJUST ACTUAL BUFFER LENGTH STA LNGT SAVE FOR THE "DEXEC" CALL ADA K82 NOW MAKE SURE ORIGINAL LNGT SSA WASN'T > 72 CHARACTERS JMP LENER IT WAS! ERROR CMB,INB INB CONVERT TO WORD COUNT BRS FOR THE "MVW" STB MVLEN * * MOVE MESSAGE TO INTERNAL BUFFER. * LDA BUFAD GET ORIGIN ADDRESS LDB DFOUT GET DESTINATION ADDRESS MVW MVLEN MOVE THE BUFFER * CCE SET FOR DECIMAL CONVERSION LDA #NODE GET LOCAL NODE # JSB $LIBR FENCE OFF NOP JSB $CVT3 CONVERT TO ASCII LDB NUMA GT BUFFER ADDRESS MVW B3 MOVE 6 CHARACTERS JSB $LIBX DEF *+1 DEF *+1 FENCE BACK ON * SEND THE MESSAGE WITH ID PREFIX. * JSB DEXEC DEF *+6 DEF DEST,I DEF D2I WRITE-NO ABORT DEF B1 DEF OUTBF DEF LNGT * JMP DMESG,I RETURN TO CALLER WITH ERROR IN A & B. CLA NO ERROR--CLEAR CLB REGISTERS. JMP DMESG,I RETURN SPC 2 LENER DLD DS03 RETURN WITH ASCII ERROR JMP DMESG,I CODE IN A & B REG. * * * CONSTANTS AND WORKING STORAGE. * MVLEN NOP LNGT NOP B1 OCT 1 D2I OCT 100002 B3 OCT 3 K82 DEC 82 N10 DEC -10 DS03 ASC 2,DS03 DFOUT DEF OUTBF+5 NUMA DEF OUTBF+1 OUTBF ASC 5,=N000000: BSS 37 * SIZE EQU * * END