ASMB
      NAM SCARY,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-18006
*     RELOC:     24306-60001
* 
* 
* 
******************************************************************
* 
* 
* 
* 
* 
*FUNCTION - SCARY RESOLVES ALL CARRIES WITHIN THE SPECIFIED FIELD 
*AND INDICATES ANY HIGH-ORDER CARRY OUT OF THE FIELD. 
* 
*CALLING SEQUENCE - CALL SCARY(JSTR,J,JLAST,KARRY)
*WHERE JSTR NAMES A ONE-DIMENSIONAL INTEGER ARRAY WHICH IS
*INTERROGATED FOR CARRIES.
*J IS AN INTEGER CONSTANT, INTEGER VARIABLE, OR INTEGER EXPRESSION
*INDICATING THE BEGINNING OF THE FIELD. 
*JLAST IS AN INTEGER CONSTANT, INTEGER VARIABLE, OR INTEGER 
*EXPRESSION INDICATING THE END OF THE FIELD.
*KARRY IS AN INTEGER VARIABLE USED TO HOLD ANY CARRY FROM 
*THE HIGH ORDER POSITION OF JSTR AFTER EXECUTION OF SCARY.
*IF THERE IS NO CARRY, KARRY=0. 
* 
      ENT SCARY 
      EXT .ENTR,S.GET,SPUT
PARAM BSS 4 
SCARY NOP 
      JSB .ENTR     TRANSFER PARAMETERS 
      DEF PARAM 
      CLA           NCARY=O 
      STA NCARY 
      LDA PARAM+2,I JNOW=JLAST
      STA JNOW
GET   JSB S.GET      CALL S.GET(JSTR,JNOW,JCHAR)
      DEF *+4 
      DEF PARAM,I 
      DEF JNOW
      DEF JCHAR 
      LDA NCARY     JTEST=JCHAR+NCARY 
      ADA JCHAR 
      MPY ONE 
      DIV TEN 
      STA NCARY     NCARY=JTEST/10
      STB JTEST     JTEST=JTEST-10*NCARY
      SSB,RSS       IS JTEST<0? 
      JMP PUT       IF N0T
      ADB TEN       JTEST=JTEST+10
      STB JTEST 
      ADA NEG1      NCARY=NCARY-1 
      STA NCARY 
PUT   JSB SPUT      CALL SPUT(JSTR,JNOW,JTEST)
      DEF *+4 
      DEF PARAM,I 
      DEF JNOW
      DEF JTEST 
      LDA JNOW      JNOW=JNOW-1 
      ADA NEG1
      STA JNOW
      LDB PARAM+1,I REG B=-J
      CMB,INB 
      ADA 1 
      SSA,RSS       IS JNOW-J<O?
      JMP GET       IF NOT
      LDA NCARY     KARRY=NCARY 
      STA PARAM+3,I 
      JMP SCARY,I   RETURN
NCARY OCT 0 
JNOW  OCT 0 
JCHAR OCT 0 
JTEST OCT 0 
TEN   DEC 10
NEG1  DEC -1
ONE   OCT 1 
      END 
      END$
                                                                                                              