ASMB,L,R,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 "$SETP" - SET UP POINTERS.
      NAM $SETP,6 24998-1X013 REV.2001 781106 
* 
      ENT $SETP 
      EXT .ZPRV 
* 
A     EQU 0 
B     EQU 1 
* 
*                   $SETP SETS A COLUMN OF POINTERS TO THE ADDRESSES
*                   OF A SPECIFIC COLUMN IN AN ARRAY, I.E. IT PERFORMS
* 
*                        DO 10 I=0,COUNT-1
*                     10 MEM(B+I)=A+I 
* 
*                   CALLING SEQUENCE: 
* 
*                        LDA <STARTING POINTER> 
*                        LDB <STARTING ADDR TO BE SET>  (BIT 15 IGNORED)
*                        JSB $SETP
*                        DEF COUNT   NUMBER OF POINTERS TO SET
*                        <RETURN> 
* 
* 
*                   RETURN:  A = 0. 
*                            B = B + COUNT  (BIT 15 = 0)
      SPC 3 
$SETP NOP 
      JSB .ZPRV     FOR SHARING.
      DEF LIBX
      STA REGA      SAVE A. 
      LDA $SETP,I   SET UP COUNT. 
      LDA A,I 
      CMA,INA 
      STA CNT 
      LDA REGA      RESTORE A 
      RBL,CLE,ERB   CLEAR B<15> 
SETP1 STA B,I       SET A POINTER.
      INA           BUMP VALUE. 
      INB           BUMP ADDR.
      ISZ CNT       DONE ?
      JMP SETP1     NO, AGAIN.
      CLA           YES, CLEAR A & RETURN.
      ISZ $SETP 
LIBX  JMP $SETP,I 
      DEF $SETP 
* 
CNT   BSS 1         - COUNT 
REGA  BSS 1         TEMP FOR A. 
* 
      END 
                                                        