ASMB,R,L,C * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. 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. * * **************************************************************** * * NAME: PART OF MATH LIBRARY * SOURCE: 24998-18XXX SEE NAM FOR LAST THREE DIGITS * RELOC: PART OF 24998-12001 * PGMR: BG & JTS * HED "ERR0" ERROR PRINT FOR RTE,DOS,, AND DOS-III NAM ERR0,7 24998-1X250 REV.2001 771122 ENT ERR0 EXT REIO,ER0.E EXT PNAME SPC 1 * PURPOSE: * THIS IS A GENERAL PURPOSE ERROR ROUTINE FOR VARIOUS MATH ROUTINES * IN THE LIBRARY. SPC 1 * USES: * THIS ROUTINE WILL PRINT ON LOGICAL UNIT 6 THE CONTENTS OF THE * A & B-REGISTER IN ASCII IN THE FOLLOWING FORM. * * ! /PROGM : AA BB @12345B! * * WHERE THE MESSAGE STARTS AT !, AA=A-REG.,BB=B-REG, 12345 = OCTAL * ADDRESS OF P-1 OF THE CALL TO ERR0 AND "PROGM" = NAME OF CALLING * PROGRAM. SPC 1 * CALLED: * ASSEMBLY ONLY * MESSA & MESSB ARE THE FOUR CHARACTERS OF THE MESSAGE * LDA MESSA * LDB MESSB * JSB ERR0 * A&B-REG=0 SPC 1 * EXAMPLE: * DLD X Y = SQRT (X) * JSB SQRT P+2 RETURN IF OK, ELSE P+1 RETURN * JSB ERR0 SQRT RETURN IF X IS NEGATIVE * DST Y ZERO RETURNED. SPC 1 ERR0 NOP STA MESSS+5 FIRST WORD OF ERROR CODE STB MESSS+7 2ND WORD OF ERROR CODE LDA ERR0 GET P+2 ADDRESS ADA DM2 CALC P+0 ADDRESS LDB DFADS GET ADDRESS OF MEM BUFFER RAL,CLE,SLA POSITION MEM ADDRESS & SKIP AGAIN LDA TEMPW GET NEXT OCT DIGIT ALF,RAR ROTATE LEFT 3 STA TEMPW SAVE FOR NEXT PASS AND O7 MASK DOWN TO DIGIT IOR O60 MIRGE IN TO ASCII SEZ,RSS SKIP IF LO-CHAR IN WORD ALF,SLA,ALF POSITION TO HI-HALF IOR B,I MIRGE IN HI-HALF STA B,I AND PUT IN WORD SEZ,CME BUMP WORD TO NEXT WORD? INB YES, DONE WITH BOTH CHARS CPB DFEND DONE WITH 5 CHARS? SEZ,RSS YES JMP AGAIN NO, FINISH CONVERSION IOR "B" LAST CHAR IS "B" STA B,I AND PUT IN LAST WORD JSB PNAME ADD PROGRAM NAME TO MESSAGE DEF *+2 DEF MESSS+1 JSB REIO DEF *+5 DEF D2 RCODE=2 FOR WRITE DEF ER0.E LIST DEV = 6 DEF MESSS FWA OF MESSS DEF D12 12 WORDS OF MESSAGE CLA CLB JMP ERR0,I EXIT D12 DEC 12 DM2 DEC -2 TEMPW NOP "B" OCT 102 DFADS DEF IADRS-3 DFEND DEF IADRS-1 MESSS ASC 12, /PROGS : 03 UN @12345B IADRS EQU * O7 OCT 7 O60 OCT 60 D2 OCT 2 B EQU 1 END * *