ASMB,R
      NAM HLP05,7 92080-1X362 REV.2026  800408        
* 
*     SOURCE 92080-18362
* 
      SPC 2 
**************************************************************
* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978.  ALL RIGHTS    *
* RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- *
* PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH-  *
* OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.  *
**************************************************************
      SPC 2 
      SUP 
* 
**********************************************************************
*                                                                    *
*                   THIS SUBROUTINE IS USED TO PRINT A HELP MESSAGE  *
*  ON LINES 23 AND 24 OF THE TGP SCREENS                             *
*                   THE CURSOR IS POSITIONEDAT THE FIELD WHERE THE   *
*  HELP SOFT KEY WAS PRESSED.                                        *
*                   THIS SUBROUTINE IS CALLED WITH TWO PARAMETERS :  *
*                                                                    *
*           - PAR#1 =  HELP  MESSAGE # TO OUTPUT                     *
*           - PAR#2 =  HELP  FIELD # ON THE SCREEN                   *
*                                                                    *
**********************************************************************
* 
* 
      ENT HLP05     ENTRY POINT 
      EXT EXEC
      EXT .ENTR 
      EXT &REMP 
      EXT &MVW
      COM ILU       TERM. LU
* 
*  GET CALLING PARAMETERS 
* 
NMESS NOP           FIRST PARM. ADDRESS 
NOF   NOP           SECD. PARM. ADDRESS 
ILST  NOP           THIRD PARAM ADDRESS 
HLP05 NOP           ENTRY POINT 
      JSB .ENTR     SUBR. TO GET
      DEF NMESS     PARM. ADDRESS 
* 
* 
*  MOVE HELP  MESSAGE IN OUTPUT BUFFER
* 
      LDA NMESS,I   GET ERROR MESSAGE # 
      SZA,RSS       IS 0 ?
*     JMP HLPC      YES, GIVE GENERAL HELP MESSAGE
      LDA =B13      YES, GIVE GENERAL HELP MESSAGE
      ADA AMES0     COMPUTE MESSAGE 
      LDB A,I       ADDRESS 
      STB P1        STORE IT
      CMB,INB       MINUS STARTING ADDRESS
      STB IST        OF MESSAGE IN IST
      INA            COMPUTE NEXT MESSAGE 
      LDA A,I       STARTING ADDRESS
      ADA IST       COMPUTE MESSAGE LENGTH
      STA P2        STORE IT
      LDA P1        BUFFER SOURCE ADDRESS 
      LDB BUFAD     BUFFER DEST ADDRESS 
      JSB &MVW      MOVE WORDS
P2    NOP           BUFFER LENGTH 
* 
      LDB BUFAD     COMPUTE CURRENT 
      ADB P2        ADDRESS IN OUTPUT BUFFER
* 
      LDA BUF1      INCLUDE FORMAT ON 
      STA B,I       IN OUTPUT BUFFER
      INB           INCREMENT ADDRESS IN OUT. BUFFER
* 
      LDA D.10      COMPUTE OUTPUT BUFFER LENGTH
      ADA P2
      STA ILN       STORE IT
      JMP HLPB
* 
HLPC  LDA D.10
      STA ILN 
      LDB BUFAD 
      LDA BUF1
      STA B,I 
      INB 
* 
* NOW INCLUDE TABS IN BUFFER
* 
HLPB  LDA NOF,I     GET HELP  FIELD # 
      CPA D.1       IS 1 ?
      JMP HLPA      YES NO TABS 
      ADA .D1       DECREMENT 
      STA P5        STORE # OF FIELD
      ADA ILN       INCREMENT OUTPUT BUFFER 
      STA ILN       LENGTH
      LDA P5        GET FIELD # 
      CMA,INA       MAKE IT NEG 
      STA P4
      LDA B 
      STB P2        SORE B
      LDB TAB 
      JSB &REMP     MOVE TABS IN BUFFER 
P4    NOP 
* 
      LDB P2        RESTORE B 
      LDA P5        INCREMENT ADDRESS IN
      ADB A 
* 
HLPA  LDA ILST,I    IS LAST FIELD IN SCREEN ? 
      SZA 
      JMP HPLD      NO
      LDA BUFA2     YES 
      RSS           SKIP
HPLD  LDA BUFA3 
      JSB &MVW      INCLUDE KEY ENABLE
      DEC 3         IN BUFFER 
* 
      JSB EXEC      WRITE MESSAGE 
      DEF *+5 
      DEF D.2 
      DEF ILU 
      DEF BUF 
      DEF ILN 
* 
      JMP HLP05,I 
* 
* 
*  BUFFER DATA
* 
BUF   BYT 33,130,33,46,141,62,62,162,60,103  FORMAT OFF:POS.CURSOR
      BYT 33,112    CLEAR DISPLAY 
BUFER BSS 140       MESSAGE BUFFER
* 
* STORAGE , CONSTANTS ..
* 
BUFAD DEF BUFER     BUFF. ADDRESS 
BUFA2 DEF BUF2
BUFA3 DEF BUF3
A     EQU 0         A REGISTER
B     EQU 1         B REGISTER
IST   NOP 
P1    NOP           SOURCE ADDRESS BUFFER ADDRESS 
P5    NOP 
ILN   NOP             BUFFER LENGTH 
TAB   BYT 33,111
BUF1  BYT 33,127    FORMAT ON 
BUF2  BYT 0,0,0,33,142,137                   ERASE h,KEY. ENABLE
BUF3  BYT 0,0,33,142,0,137 CLEAR DISP,KEY. ENABLE 
.D1   DEC -1
D.10  DEC 10
D.1   DEC 1 
D.2   DEC 2 
* 
*  MESSAGE ADDRESS
* 
AMES0 DEF AMES1-1 
AMES1 DEF MES1
      DEF MES2
      DEF MES3
      DEF MES4
      DEF MES5
      DEF MES6
      DEF MES7
      DEF MES8
      DEF MES9
      DEF MES10 
      DEF MES11 
      DEF MES12 
* 
*  MESSAGE STORAGE
* 
* 
MES1  BYT 33,46,144,112 
      ASC 22, When the value is entered on the HP3070 ter 
      ASC 18,minals it is subsequently divided by 
      BYT 33,46,144,112 
      ASC 22, the modulo number(if any) : An error occurs 
      ASC 18, if the remainder is not zero. 
* 
MES2  BYT 33,46,144,112 
      ASC 22, Arithmetic operations may be performed loca 
      ASC 18,lly before entering the answer if
      BYT 33,46,144,112 
      ASC 22, the arithmetic operators are defined and en 
      ASC 12,abled for this question. 
      BYT 33,46,141,53,61,66,103,0  POSITION  CURSOR -  81
* 
MES3  BYT 33,46,144,112 
      ASC 22, When the NEXT ENTRY key is pressed as answe 
      ASC 18,r to the question the current entry
      BYT 33,46,144,112 
      ASC 22, in the chain is ignored and the next entry
      ASC  6,is fetched.
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  81
* 
MES4  BYT 33,46,144,112 
      ASC 22, This is the name of the user written valida 
      ASC 18,tion subroutine to which the answer
      BYT 33,46,144,112 
      ASC 22, to the question is passed by the Transactio 
      ASC  9,n Monitor Program. 
      BYT 33,46,141,53,61,70,103,0  POSITION  CURSOR -  81
* 
MES5  BYT 33,46,144,112 
      ASC 22, The maximum string length accepted is 126.
      ASC 18,This field is automatically filled 
      BYT 33,46,144,112 
      ASC 22, by the program if the answer is related to
      ASC  9,a data base item.
      BYT 33,46,141,53,61,70,103,0  POSITION  CURSOR -  81
* 
MES6  BYT 33,46,144,112 
      ASC 22, As on a punched card a string may be positi 
      ASC 18,onned on the storage media at the
      BYT 33,46,144,112 
      ASC 22, beginning (L) or at the end (R) of the fiel 
      ASC  9,d reserved for it. 
      BYT 33,46,141,53,61,70,103,0  POSITION  CURSOR -  81
* 
MES7  BYT 33,46,144,112 
      ASC 22, For example if the mask is 99-999A the answ 
      ASC 18,er must be 2 digits followed by -
      BYT 33,46,144,112 
      ASC 22, followed by 3 digits followed by an alphabe 
      ASC  7,tic character. 
      BYT 33,46,141,53,62,62,103,0  POSITION  CURSOR -  81
* 
MES8  BYT 33,46,144,103 
      ASC 7,WARNING ONLY :
      BYT 33,46,144,100 
      ASC 15, Default value outside limits
* 
MES9  BYT 33,46,144,103 
      ASC 7,WARNING ONLY :
      BYT 33,46,144,100 
      ASC 21, Length greater than previously specified
MES10 BYT 33,46,144,112 
      ASC 22, Enter a default value if desired. If left b 
      ASC 18,lank the system will assume 0 for
      BYT 33,46,144,112 
      ASC 22, a numeric field and blanks for a string fie 
      ASC  2,ld.
      BYT 33,46,141,53,71,66,103,0
MES11 BYT 33,46,144,112 
      ASC 22, Please see the DATACAP/1000 Reference Manua 
      ASC 18,l for further information. 
      BYT 33,46,144,112 
      ASC  1, 
      BYT 33,46,141,53,67,70,103,0
MES12 ASC 1,-1
* 
* 
* 
      END HLP05 
                                                                                                                                