ASMB NAM SSIGN,7 24306-60001 REV.2026 791205 * * ******************************************************************* * (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. ******************************************************************* * * * SOURCE: 24306-18019 * RELOC: 24306-60001 * * * ****************************************************************** * * * * * *FUNCTION - INTERROGATE THE SIGN AND RETURN WITH A *CODE AS TO WHAT THE SIGN IS. ALSO, MODIFY THE SIGN *AS SPECIFIED. * *CALLING SEQUENCE - CALL SSIGN(JSTR,J,JNEW,JOLD) *WHERE JSTR NAMES THE ONE-DIMENSIONAL STRING INTEGER ARRAY THAT IS *TO BE CONVERTED *JBEG IS AN INTEGER CONSTANT, INTEGER VARIABLE, OR *INTEGER EXPRESSION DEFINING THE FIRST CHARACTER *POSITION IN JSTR TO BE CONVERTED. *NEWS CONTAINS THE CODE FOR THE NEW SIGN. * +1 - POSITIVE, 0 - OPPOSITE OF ORIGINAL SIGN, -1 - NEGATIVE *NOLDS IS SET TO THE CODE OF THE ORIGINAL SIGN. * +1 - NON-NEGATIVE, -1 - NEGATIVE * ENT SSIGN EXT .ENTR,S.GET,SPUT PARAM BSS 4 SSIGN NOP JSB .ENTR TRANSFER PARAMETERS DEF PARAM CLA,INA STA PARAM+3,I JOLD=1 JSB S.GET GET JSTR(J) DEF *+4 DEF PARAM,I DEF PARAM+1,I DEF JTEST LDA JTEST SSA,RSS IS JTEST>=0 JMP CONT IF SO CCA IF NOT JOLD=-1 STA PARAM+3,I IF NOT JOLD=-1 CONT LDA PARAM+2,I MPY JTEST SSA JMP SWTCH SZA JMP PUT IF JNEW*JTEST>O PUT JSTR(J) LDA PARAM+2,I CMA,INA IF JNEW*JTEST=0 SSA,SZA JMP PUT AND JNEW<=0 OR SWTCH LDA JTEST IF JNEW*JTEST<0 CMA THEN JTEST=-JTEST-1 STA JTEST PUT JSB SPUT PUT JSTR(J) DEF *+4 DEF PARAM,I DEF PARAM+1,I DEF JTEST JMP SSIGN,I RETURN JTEST BSS 1 END END$