ASMB,R
      NAM HLP09,7 92903-16372 REV.1805  770810
* 
*     SOURCE 92903-18372
* 
      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 HLP09     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 
HLP09 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 NO 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 BUFA2 
      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 HLP09,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
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
.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
* 
*  MESSAGE STORAGE
* 
* 
MES1  BYT 33,46,144,112 
      ASC 22, A function only answer allows only CONTINUE 
      ASC 18,, DELETE or NEXT ENTRY keys as an- 
      BYT 33,46,144,112 
      ASC 12, swers to the question.
      BYT 33,46,141,53,65,66,103,0  POSITION  CURSOR -  81
* 
MES2  BYT 33,46,144,112 
      ASC 22, A value may be displayed when asking a ques 
      ASC 18,tion to help the HP3070 user answer
      BYT 33,46,144,112 
      ASC  8, that question.
      BYT 33,46,141,53,66,64,103,0  POSITION  CURSOR -  81
* 
MES3  BYT 33,46,144,112 
      ASC 22, The displayed value may be taken as the def 
      ASC 18,ault answer when the ENTER key is
      BYT 33,46,144,112 
      ASC 22, pressed on the HP3070 as answer to the ques 
      ASC  3,tion.
      BYT 33,46,141,53,63,60,103,0  POSITION  CURSOR -  81
* 
MES4  BYT 33,46,144,112 
      ASC 22, The default value is the value taken as ans 
      ASC 18,wer when the ENTER key is pressed on 
      BYT 33,46,144,112 
      ASC 19, the HP3070 as answer to the question. 
      BYT 33,46,141,53,64,62,103,0  POSITION  CURSOR -  81
* 
MES5  BYT 33,46,144,112 
      ASC 22, If the value entered is for a data base ite 
      ASC 18,m, its name in the data base schema
      BYT 33,46,144,112 
      ASC 10, must be given here. 
      BYT 33,46,141,53,66,60,103,0  POSITION  CURSOR -  81
* 
MES6  BYT 33,46,144,112 
      ASC 22, If not specified prompting lights are assig 
      ASC 18,ned in numerical order (lights 5,10
      BYT 33,46,144,112 
      ASC 18, and 15 are reserved for the system).
      BYT 33,46,141,53,64,64,103,0  POSITION  CURSOR -  81
* 
MES7  ASC 1,-1
* 
* 
      END HLP09 
                        