ASMB,R
      NAM TGP3,5  92080-16358 REV.2026  800402                
* 
*     SOURCE 92080-18358
* 
      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 
      HED *               -TGP3-
      SUP 
* 
*   PRGMR : JEAN CHARLES MIARD (HPG)
* 
**********************************************************************
*                                                                    *
*                                                                    *
*         THIS IS A SEGMENT OF THE TGP PROGRAM USED TO WRITE ON      *
*  THE 2640/2645 DISPLAY THE SCREEN MASKS USED TO COLLECT INFORMA-   *
*  TION TO BUILD A TRANSACTION SPECIFICATION .                       *
*                                                                    *
*        TGP3 PRINT SCREENS 8,9,10,11,12,19 AND 20 ACCORDING TO      *
*  ISCRN VALUE AND THEN LOADS THE REQUIRED SEGMENT TO ANALYSE THE    *
*  USER'S ANSWERS .                                                  *
*        BEFORE PRINTING THE SCREENS TGP3 INCLUDES IN THEM THE OLD   *
*  ANSWERS STORED IN IFORM,JFORM AND ILIBR .                         *
*        SOME SCREENS ARE DYNAMIC AND ONLY PARTS OF THE TOTAL        *
*  SCREEN ARE PRINTED .                                              *
*                                                                    *
*     IF INDIC=-77 THE SCREEN IS TO BE PRINTED WITHOUT ERASING       *
*     THE DISPLAY BEFORE (HELP MESSAGE) .                            *
*                                                                    *
*                                                                    *
*   WARNING !! * : CARE MUST BE TAKEN :                              *
*                                                                    *
*       PRINTED SCREEN # 8 CORRESPONDS TO ISCRN = 9 
*        ............    9  ....................  10                 *
*        ............   10  ....................  11                 *
*        ............   11  ....................  12                 *
*        ............   12  ....................  13                 *
*        ............   19  ....................  20                 *
*        ............   20  ....................  21                 *
*        ............   41  ....................  41                 *
*                                                                    *
**********************************************************************
* 
* 
* 
* 
      ENT TGP3      ENTRY POINT 
      EXT EXEC
      EXT TGP       MAIN PROGRAM
      EXT MOVCA     SUBR. MOVES CHARS.
      EXT MOVCX     SUBR. MOVES ANSWERS IN UNPRO. FIELDS
      EXT &REMP 
      EXT &MVW      MOVES WORDS 
* 
* 
*  DECLARATIONS COMMON VARIABLES *********
* 
      COM ILU,ISCRN,IQST,ISKIP,INDIC
      COM IFORM(780)  ANSWER STORAGE
      COM JFORM(1700) ANSWER STORAGE
      COM MFORM(28) 
      COM LFORM(42) ANSWER STORAGE
      COM ITT       TRANS TYPE
      COM IKEY(78)
      COM IUMAX     # OF U QUESTIONS
      COM IMMAX     #OF M QUESTIONS 
      COM IMODB     (0/1) 3070A/3070B 
      COM ILITE(15) 
      COM IMAI(225) 
      COM IMFLG,IMAS,IMDT,IMKY
      COM KFORM(2844) 
      COM ILIBR(67) 
      COM NIMAG 
      COM IBASE(10) 
* 
* WORD OFFSETS INTO IFORM 
* 
*     ANSWERS TO SCREENS 9,19,20,41 
* 
IAN89 EQU 637       SCREENS 8 & 9 
IAN19 EQU 0         SCREEN #10
IAN20 EQU 0         SCREEN #20
* 
* 
* WORD OFFSETS INTO JFORM 
* 
*     ANSWERS TO SCREENS 10,11,12 
* 
JAN10 EQU 0         SCREEN #10
JAN11 EQU 24        SCREEN #11
JAN12 EQU 24        SCREEN #12
* 
*     NO. OF CHARACTERS PER QUETION 
* 
JBYTE EQU 170 
* 
*     NO. OF WORDS PER QUESTION 
* 
JWORD EQU 85
* 
* 
* 
TGP3  LDA INDIC     GET INDICATOR 
      CPA .D77      IS IT PRINT FOR HELP ?
      RSS           YES 
      JMP CONT      NO JUMP 
      CLA 
      STA CL01
      STA CL02
      STA CL03
      STA CL04
      STA CL41
      STA CL05
CONT  LDA IQST      LOAD QUESTION # 
      ADA .D1       DECREMENT 
      MPY D.CH      MULT. PER # OF CHARS PER QUESTION 
      STA D.OFF     STORE IT
* 
*FIND SCREEN # TO DISPLAY 
* 
      LDA ISCRN      GET SCREEN # 
      CPA D.20      IS SCREEN 19 ?
      JMP SCR20     YES 
      CPA D.21      IS SCREEN 20 ?
      JMP SCR21     YES 
      CPA D.41      IS SCREEN 41 ?
      JMP SCR41 
      ADA .D9 
      ADA ASCR
      JMP A,I 
* 
*  TABLE OF ADDRESS FOR SCREENS 
* 
ASCR  DEF *+1,I 
      DEF SCR9
      DEF SCR9
      DEF SCR11 
      DEF SCR12 
      DEF SCR12 
* 
* 
* DATA SECTION
* 
A     EQU 0 
D.0   DEC 0 
D.1   DEC 1 
D.2   DEC 2 
D.5   DEC 5 
D.6   DEC 6 
D.8   DEC 8 
D.147 DEC 147 
.D9   DEC -9
.D77  DEC -77 
D.10  DEC 10
D.12  DEC 12
D.13  DEC 13
D.20  DEC 20
D.21  DEC 21
D.41  DEC 41
D1275 DEC 1275
D.57  DEC 57
D.CH  ABS JBYTE 
DBL09 NOP 
D.OFF NOP 
TAB   BYT 33,111
BUFA1 DEF BUF1
NULL  BYT 0,0 
NOCR  BYT 0,137     SUPPRESS CR,LF
* 
**********************************************************************
* 
*  SCREEN # 8 AND  9 LABELS FOR U AND M QUESTIONS 
* 
**********************************************************************
* 
* 
SCR9  LDA BUFA1     INITIALIZE
      LDB NULL      TAB BUFFER
      JSB &REMP     TO NULL.
      DEC -50 
* 
      LDA KFORM+1900 GET QUESTION INSERT FLAG.
      SZA,RSS       INSERTING A QUESTION? 
      JMP SCRXX     NO. 
* 
      LDA NOCR      YES.  RESET LAST WORD IN
      STA ESCR9     SCREEN TO SUPPRESS CR,LF. 
* 
*     INCLUDE # OF NECESSARY TABS.
* 
      LDA KFORM+1900 GET FIELD #. 
      CMA,INA       MAKE IT NEG.
      ISZ A         INCREMENT, IS IT THE FIRST FIELD? 
      RSS           NO. 
      JMP SCRXX     YES, CONTINUE TO NEXT ROUTINE.
      STA P3        STORE NEG # OF TABS.
      LDA BUFA1     TAB BUFFER ADDR.
      LDB TAB       TAB.
      JSB &REMP     INCLUDE TABS
P3    NOP           IN BUFFER.
* 
SCRXX LDA ISCRN     GET SCREEN #
      CPA D.10      IS 10 ? 
      JMP SCR10     YES ! 
      LDA IUMAX     GET # OF U QUESTIONS
      INA           INCREMENT 
      STA LNU9      TABLE OF OFFSETS LENGTH 
      LDA ASO10     CONSTRUCT TABLE OF CHAR OFFSETS 
      LDB ASO9
      JSB &MVW      MOVE OFFSETS IN TABLE LOCATION
LNU9  NOP           TABLE LENGTH
      LDA ASO9      INSERT
      ADA IUMAX     MINUS 1 
      INA           AT THE
      LDB .D1       END OF
      STB A,I       TABLE.
      JMP SCR91 
SCR10 LDA MQ        MOVE "M"
      STA T9        IN TITLE
      LDA IMMAX     NUMBER OF M QUESTIONS 
      INA           INCREMENT 
      STA LNM9      TABLE OF OFFSETS LENGTH 
      LDA ASO10 
      ADA IUMAX     CONSTRUCT TABLE OF OFFSSETS 
      LDB ASO9      SCREEN # 10 
      JSB &MVW
LNM9  NOP           TABLE LENGTH
      LDA ASO9
      ADA IMMAX     INSERT MINUS 1
      INA           AT THE END
      LDB .D1       OF THE TABLE
      STB A,I 
SCR91 JSB MOVCA     MOVE
      DEF *+6       FORM NAME 
      DEF IFORM     FROM ANSWER STORAGE 
      DEF D.57
      DEF T10       TO SCREEN TITLE 
      DEF D.1 
      DEF D.6       MOVE LENGTH 
      LDA IUMAX     # OF U QUESTIONS
      LDB ISCRN     SCREEN #
      CPB D.10      IS 10 ? 
      LDA IMMAX     YES GET # OF M QUESTIONS
      SZA,RSS       IS IT 0 ? 
      JMP WRIT9     YES ! 
      JSB MOVCX     NO MOVE ANSWERS IN UNPROTECTED FIELDS 
      DEF *+6 
      DEF IFORM+IAN89     ANSWER STORAGE
      DEF SOF9      TABLE OF OFFSETS IN IFORM 
      DEF BD9       TABLE OF BUFF DEST ADDRESSES
      DEF D.0       SOURCE OFFSET 
      DEF DBL09 
WRIT9 JSB EXEC      WRITE EXEC CALL 
      DEF *+5       RETURN POINT
      DEF D.2       CODE EXEC 
      DEF ILU       CONTROL WORD
      DEF BSCR9     BUF. LOCATION 
      DEF ILSC9     BUF.LENGTH
* 
      LDA KFORM+1900 GET QUESTION INSERT FLAG.
      SZA           INSERTING A QUES? 
      JMP CANS0     YES.  FORMAT MODE ALREADY ON, DON'T TURN IT ON AGAIN. 
      JMP CANS      NO, LOAD SEGMENT TO ANALYSE USER'S ANSWERS
* 
*  DATA SECTION 
* 
.D1   DEC -1
ASO9  DEF SOF9      TABLE OF OFFSETS ADDRESS
ASO10 DEF SOF10     TABLE OF OFFSETS ADDRESS
AUQ   DEF UQ        ADDRESS OF "U"
AMQ   DEF MQ        ADDRESS OF "M"
UQ    ASC 1,U-
MQ    ASC 1,M-
S10   ASC 1,9 
AT9   DEF T9
* 
*   TABLE OF OFFSETS FOR SCREEN # 8 & 9 
* 
SOF9  BSS 22        REAL TABLE
SOF10 DEC 1         TABLE OF ALL THE QUESTIONS (U & M)
      DEC 13
      DEC 25
      DEC 37
      DEC 49
      DEC 61
      DEC 73
      DEC 85
      DEC 97
      DEC 109 
      DEC 121 
      DEC 133 
      DEC 145 
      DEC 157 
      DEC 169 
      DEC 181 
      DEC 193 
      DEC 205 
      DEC 217 
      DEC 229 
      DEC 241 
      DEC -1
* 
*  TABLE OF BUFFER DEST ADDRESSES 
* 
BD9   DEF T0900 
      DEF T0901 
      DEF T0902 
      DEF T0903 
      DEF T0904 
      DEF T0905 
      DEF T0906 
      DEF T0907 
      DEF T0908 
      DEF T0909 
      DEF T0910 
      DEF T0911 
      DEF T0912 
      DEF T0913 
      DEF T0914 
      DEF T0915 
      DEF T0916 
      DEF T0917 
      DEF T0918 
      DEF T0919 
* 
* DATA SCREEN 8 AND 9 
* 
* 
*     LINE # :   1
* 
BSCR9 BYT 33,130    FORMAT OFF
      BYT 33,110    HOME UP 
CL01  BYT 33,112    CLEAR DISPLAY 
T91   ASC  3, 
      BYT 33,46,144,112 
T9    ASC  5,U-QUESTION 
      BYT 123,0 
      BYT 33,46,144,100 
      ASC 22, TO BE DEFINED IN THE TRANSACTION SPECIFICAT 
      ASC  2,ION
      BYT 33,46,144,104 
T10   ASC  3, 
      BYT 15,12 
* 
*     LINE # :   2
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,R,,,,,,,,,,,,T 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,R,,,,,,,,,,,,T 
      BYT 15,12 
* 
*     LINE # :   3
* 
      ASC  7,    Question 1 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0900 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,61,66,103,0  POSITION  CURSOR -  47
      ASC  5,Question 2 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0901 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :   4
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :   5
* 
      BYT 33,46,141,53,61,63,103,0  POSITION  CURSOR -  14
      ASC  1,3
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0902 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,65,103,0  POSITION  CURSOR -  56
      ASC  1,4
      BYT 16,56 
      BYT 33,46,144,102,17,33,133,0 
T0903 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :   6
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :   7
* 
      BYT 33,46,141,53,61,63,103,0  POSITION  CURSOR -  14
      ASC  1,5
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0904 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,65,103,0  POSITION  CURSOR -  56
      ASC  1,6
      BYT 16,56 
      BYT 33,46,144,102,17,33,133,0 
T0905 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :   8
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :   9
* 
      BYT 33,46,141,53,61,63,103,0  POSITION  CURSOR -  14
      ASC  1,7
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0906 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,65,103,0  POSITION  CURSOR -  56
      ASC  1,8
      BYT 16,56 
      BYT 33,46,144,102,17,33,133,0 
T0907 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  10
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  11
* 
      BYT 33,46,141,53,61,63,103,0  POSITION  CURSOR -  14
      BYT 71,0
      BYT 33,51,102,16
      ASC  1, . 
      BYT 33,46,144,102,17,33,133,0 
T0908 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,10 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0909 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  12
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  13
* 
      BYT 33,46,141,53,61,62,103,0  POSITION  CURSOR -  13
      ASC  1,11 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0910 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,12 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0911 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  14
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  15
* 
      BYT 33,46,141,53,61,62,103,0  POSITION  CURSOR -  13
      ASC  1,13 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0912 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,14 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0913 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  16
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  17
* 
      BYT 33,46,141,53,61,62,103,0  POSITION  CURSOR -  13
      ASC  1,15 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0914 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,16 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0915 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  18
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  19
* 
      BYT 33,46,141,53,61,62,103,0  POSITION  CURSOR -  13
      ASC  1,17 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0916 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,18 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0917 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  20
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,5,,,,,,,,,,,,6 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,5,,,,,,,,,,,,6 
      BYT 15,12 
* 
*     LINE # :  21
* 
      BYT 33,46,141,53,61,62,103,0  POSITION  CURSOR -  13
      ASC  1,19 
      BYT 40,0
      BYT 33,51,102,16
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0918 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 17,40 
      BYT 33,46,141,53,62,64,103,0  POSITION  CURSOR -  55
      ASC  1,20 
      BYT 40,16 
      BYT 56,0
      BYT 33,46,144,102,17,33,133,0 
T0919 ASC  6, 
      BYT 33,135,33,46,144,100,16,56
      BYT 15,12 
* 
*     LINE # :  22
* 
      BYT 33,46,141,53,61,65,103,0  POSITION  CURSOR -  16
      BYT 33,51,102,16
      ASC  7,F,,,,,,,,,,,,G 
      BYT 33,46,141,53,62,70,103,0  POSITION  CURSOR -  58
      ASC  7,F,,,,,,,,,,,,G 
      BYT 33,127,33,110 FORMAT ON * HOME CURSOR 
BUF1  BSS 50        TAB BUFFER
      BYT 33,142    KEYBOARD ENABLE 
ESCR9 BYT 15,12 
STAD9 EQU BSCR9 
LTAD9 EQU ESCR9 
ILSC9 ABS LTAD9-STAD9+1 
* 
************************************************************************* 
* 
* SCREEN # 10  : QUESTION SPECIFICATIONS
* 
************************************************************************
* 
* 
SCR11 LDA IQST      QUESTION #
      ADA .D1       DECREMENT 
      MPY D.12      QUEST NAME LENGTH 
      ADA D1275     COMPUTE CHAR. OFFSET OF 
      STA SOQST     QUEST. NAME IN IFORM AND SAVE 
      JSB MOVCA     MOVE QUESTION 
      DEF *+6       NAME FROM 
      DEF IFORM     ANSWER STORAGE
      DEF SOQST     SOURCE OFFSET 
      DEF T11       TO DESTINATION BUFFER 
      DEF D.1       SOURCE OFFSET 
      DEF D.12      # OF CHARACTERS TO MOVE 
* 
      JSB MOVCX     MOVE ANSWER INTO UNPROTECTED FIELDS 
      DEF *+6 
      DEF JFORM+JAN10   ANSWER STORAGE
      DEF SOF11     TABLE OF SOURCE CHARACTER OFFSETS 
      DEF BD11      TABLE OF DESTINATION BUFFERS
      DEF D.OFF     SOURCE OFFSET 
      DEF DBL09     QUESTION #
* 
      JSB MOVCX     MOVE DATA SET NAME TO 
      DEF *+6       SCREEN 10 
      DEF JFORM     SOURCE BUFFER 
      DEF SF11X     TBL OF SOURCE CHAR OFFSETS
      DEF BD11X     TABLE OF DESTINATION BUFFER 
      DEF D.OFF     SOURCE OFFSET 
      DEF DBL09 
* 
*---------------------------------------------------------------------
* SET UP SCREEN 10 ACCORDING TO ANSWERS OBTAINED IN SCREEN 41 AND    !
* "IMAGE" FLAG:                                                      !
*    IF NO 3077 IS USED, ASK FOR LIGHT NUMBER TO BE LIT              !
*    IF IMAGE, USER ROUTINES, OR NON-KEYBOARD INPUT DEVICES ARE      !
*        SPECIFIED, PRINT DISPLAY AND NON-KEYBOARD QUESTIONS         !
*    IF ANSWERS 1, 2, OR 3 IN SCR41 ARE "X" THEN OUTPUT QUESTION TO  !
*        BE DISPLAYED LINE                                           !
*    IF ANSWERS 2 OR 3 IN SCR41 ARE "X" THEN OUTPUT CRT/PRINTER      !
*        QUESTION SECTION                                            !
*    IF TRANSACTION TYPE IS 2 OR 3 THEN OUTPUT "IMAGE" QUESTIONS     !
*---------------------------------------------------------------------
* 
*   INITIALIZE VARIABLES INVOLVED 
* 
      LDA IL11      WORD COUNT OF QUESTIONS ALWAYS PRINTED
      STA ILS11 
* 
      LDA A.110     ADDRESS OF FIRST AVAILABLE BUFFER SPACE 
      STA BPNT      FOLLOWING QUESTIONS THAT ARE ALWAYS OUTPUT
* 
*   IF TRANSACTION TYPE USES 3075/3076 PREPARE TO OUTPUT
*   PROMPTING LIGHT NUMBER QUESTION 
* 
      LDA ITT       GET CONTROL WORD
      AND =B2000    IS BIT 10 SET? (YES=3077 PRESENT) 
      SZA 
      JMP SC119     3077 PRESENT
*  NO 3077, LOAD "PROMPTING LIGHT NUMBER" QUESTION INTO 
*  NEXT AVAILABLE BUFFER
* 
      LDA ILS11     SET OUTPUT WORD TO INCLUDE NEW QUESTION 
      ADA IL110 
      STA ILS11 
* 
      LDA A.111     SET AVAILABLE BUFFER TO INCLUDE 
      STA BPNT       LIGHT QUESTION 
* 
*  IF TRANSACTION TYPE (ITT) USES DB, UP, NON-KEYBOARD INPUT DEVICES
*  (BITS 1,2,5,6,10,13), THEN PREPARE TO OUTPUT "VALUE DISPLAY" AND 
*  "NON-KEYBOARD" QUESTIONS 
* 
SC119 LDA ITT       GET CONTROL WORD
      AND =B11063 
      SZA           IS EVERYTHING CLEAR?
      JMP SC114     NO-GO PRINT QUESTIONS 
      JMP SC110     ALL CLEAR MEANS BYPASS PRINTING 
* 
SC114 LDA IL111     SET OUTPUT WORD COUNT TO INCLUDE NEW QUESTION 
      STA LN111 
      ADA ILS11 
      STA ILS11 
* 
      LDB BPNT      CHECK TO SEE IF NEW OUTPUT LINES ARE IN 
      CPB A.111       OUTPUT BUFFER 
      JMP SC011       YES, CHECK "PRINTER" QUESTION 
*                    NO, MOVE NEW LINES INTO NEXT AVAILABLE BUFFER
      LDA A.111 
      JSB &MVW
LN111 BSS 1         WORD COUNT
* 
SC011 LDA BPNT      SET AVAILABLE BUFFER POINTER TO INCLUDE 
      ADA IL111       NEW LINES 
      STA BPNT
* 
*  IF ANSWERS TO QUESTIONS 1, 2, OR 3 IN SCR41 IS "X" THEN
*  PREPARE TO OUTPUT "TEXT" QUESTION
* 
SC110 LDA ITT       GET TRANSACTION TYPE
      AND =B20210   CHECK TO SEE IT CRT, DISPLAY, OR PRINTER THERE
      CPA =B0       0 MEANS NONE PRESENT
      JMP SC113     NONE- GO PROCESS "IMAGE"
*  YES ---- 
*  LOAD UP TEXT QUESTION FOR DISPLAY OR PRINTER 
* 
SC111 LDA IL112     ADJUST WORD COUNTER TO INCLUDE NEW LINES
      STA LN112 
      ADA ILS11 
      STA ILS11 
* 
      LDB BPNT      CHECK TO SEE IF NEW OUTPUT LINES ARE IN 
      CPB A.112        OUTPUT BUFFER
      JMP SC115     YES, CHECK CRT/PRINTER BLOCK
* 
      LDA A.112     NO, MOVE NEW LINES INTO OUTPUT BUFFER 
      JSB &MVW
LN112 BSS 1         WORD COUNT TO MOVE
* 
* RECHECK QUESTIONS 2 AND 3 IN SCR41 FOR "X". IF EITHER, PREPARE
* CRT/PRINTER QUESTIONS 
* 
SC115 LDA BPNT      SET AVAILABLE BUFFER POINTER TO INCLUDE 
      ADA IL112       NEW LINES 
      STA BPNT
      LDA ITT       GET TRANSACTION TYPE
      AND =B20010   CHECK FOR CRT OR PRINTER
      CPA =B0       0 MEANS NONE PRESENT
      JMP SC113     NONE- GO PROCESS "IMAGE"
* YES ----- 
*   LOAD UP CRT/PRINTER QUESTION BLOCK
* 
SC116 LDA IL113     ADJUST WORD COUNT TO INCLUDE NEW LINES
      STA LN113 
      ADA ILS11 
      STA ILS11 
* 
      LDB BPNT      ARE NEW OUTPUT LINES IN NEXT AVAILABLE BUFFER 
      CPB A.113 
      JMP SC117     YES, CHECK FOR IMAGE
* 
      LDA A.113     NO, MOVE LINES INTO OUTPUT BUFFER 
      JSB &MVW
LN113 BSS 1 
* 
SC117 LDA BPNT      SET AVAILABLE BUFFER POINTER TO INCLUDE 
      ADA IL113        CRT/PRINTER LINES
      STA BPNT
* 
*  CHECK FOR "IMAGE": IF SO ASK IMAGE QUESTIONS 
* 
SC113 LDA ITT       GET TRANSACTION TYPE
      AND =B2       IMAGE BIT SET?
      SZA,RSS 
      JMP WRT11     NO, IMAGE NOT USED
* 
*  YES, PREPARE TO OUTPUT "IMAGE" QUESTIONS 
* 
      LDA IL114     ADJUST WORD COUNT TO INCLUDE NEW LINES
      STA LN114 
      ADA ILS11 
      STA ILS11 
* 
      LDB BPNT
      CPB A.114     ARE NEW LINES IN NEXT AVAILABLE SPOT? 
      JMP WRT11     YES, WRITE SCREEN 
* 
      LDA A.114     NO, MOVE LINES INTO NEXT AVAILABLE BUFFER 
      JSB &MVW      MOVE WORDS
LN114 BSS 1         WORD COUNT
* 
* OUTPUT SCREEN 
* 
WRT11 JSB EXEC
      DEF *+5 
      DEF D.2 
      DEF ILU 
      DEF BSC11 
      DEF ILS11 
      JMP CANS      LOAD SEGMENT TO ANALYSE USER'S ANSWERS
* 
*---------------------------------------------------------------------
* 
* TABLE OF QUESTIONS
* 
SOQST NOP           QUESTION NAME OFFSET
SOF11 DEC 1,2       TABLE OF OFFSETS IN JFORM 
      DEC 3,5,6,7,8,9,10,11,27,33,34,-1 
SF11X DEC 147 
      DEC 153,-1
* 
*  TABLE OF DEST BUFFER ADDRESSES 
* 
BD11  DEF T1100 
      DEF T1102 
      DEF T1101 
      DEF T1103 
      DEF T1106 
      DEF T1105 
      DEF D1107  DUMMY
      DEF T1108 
      DEF T1109 
      DEF T1104 
      DEF T1110 
      DEF T1112 
* 
BD11X DEF T1111     DATA SET NAME FOR SCR 10
* 
* TABLE OF OFFSETS TO SCREEN 41 ANSWERS 
* 
Q41.1 DEC 1517  QUES 1
Q41.2 DEC 1515  QUES 2
Q41.3 DEC 1550  QUES 3
Q41.6 DEC 1518  QUES 6
Q41.7 DEC 1519  QUES 7
Q41.8 DEC 1548  QUES 8
* 
*  DUMMY STORAGE FOR D1107-SPARE JFORM(8+(IQST-1)*JBYTES) BYTE
D1107 DEC 1 
* 
ASCX  ASC 2,X 
* 
*  DATA SCREEN # 10 
* 
BSC11 BYT 33,130    FORMAT OFF
      BYT 33,110    HOME UP 
CL02  BYT 33,112    CLEAR DISPLAY 
* 
*---------------------------------------------------------------------
* 
* THIS PART OF THE SCREEN IS ALWAYS PRINTED OUT 
* 
* 
*     LINE # :   1
* 
      ASC 12,DETAILED SPECIFICATIONS
      BYT 33,51,102,16
      ASC  1,)
      BYT 17,40 
      ASC 22,A set of detailed specifications can be defi 
      ASC  3,ned fo 
      BYT 162,0 
      BYT 15,12 
* 
*     LINE # :   2
* 
      ASC  4,QUESTION 
      BYT 40,0
      BYT 33,46,144,104 
T11   ASC 6,
      BYT 33,46,144,100 
      ASC  1, 
      BYT 40,0
      BYT 33,51,102,16
      ASC  1,)
      BYT 40,17 
      ASC 13,each DATACAP/1000 question 
      BYT 15,12 
* 
*     LINE # :   3
* 
      BYT 33,51,102,16
      ASC 22,,,,,,,,,,,,,,,,,,,,,,,,,],,,,,,,,,,,,,,,,,,, 
      ASC 18,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 
* 
*     LINE # :   4
* 
      BYT 33,46,144,102,33,133
T1100 BYT 40,0
      BYT 33,135,33,46,144,100
      ASC 11, Specify answer type:
      BYT 33,46,144,104 
      BYT 123,0 
                                                                                                                                