GSIMULTI CSECT 00010012 *************************************************************** 00011001 * THIS PROGRAMS READS A FILE AND LOADS THE TSCACMRB WITH EACH 00012001 * RECORD. THE FILE IS LEFT OPEN (EVEN WHEN PROGRAM EXITS) 00013001 * UNTIL PROGRAM IS CALLED AGAIN AND EOF IS REACHED. 00013101 * 00013201 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 00013302 * !! RETURN CODES ARE SENT BACK THRU TSCAUFBL, OFFSET=158 !! 00013402 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 00013502 * 00013601 * TSCAUFBL = 0 RECORD RETURNED THRU TSCACMRB 00013701 * = 4 EOF HIT 00013801 * = 12 FILE IS EMPTY 00013901 * = 16 FATAL ERROR (YOU PROBABLY WILL GET A BAD ABEND 00014001 * INSTEAD OF THIS, BUT I'LL TRY ANYWAY 00015001 * INPUT DDNAME = RECIN, LRECL = 60, BLOCK = 600, RECFM = FB 00016001 * INPUT FILE IS MADE UP OF MANY 'LOGICAL' RECORDS. 00017001 * EACH RECORD IS A FIELD IN A PANEL. 'LOGICAL' RECORDS ARE MADE UP 00018001 * OF THESE FIELDS. 00019001 * VALID INPUT RECORDS: 00019101 * 3,3,1,(DATA) THIS MUST BE FIRST RECORD OF A LOGICAL REC 00019212 * OR UPD R xxxxx,xx (NEW) 00019313 * N,(DATA) WHERE N IS A 1 TO 2 DIGIT NUMBER (MANY OF THESE) 00019412 * IF THERE IS ANOTHER COMMA, IT AND EVERYTHING ELSE 00019501 * AFTER THE COMMA WILL BE BLANKED (X40) OUT 00019601 * OR xx,(DATA),, (NEW) 00019812 * OR xx,(DATA),EN,xx (NEW) 00019913 * N,(DATA),EN,EN THE ',EN,EN' IS REQ, INDICATES END OF LOGICAL 00020012 * RECORD 00020101 * OR N,(DATA),END,END (NEW) 00020212 * OR N,(DATA),en,en (NEW) 00020312 * OR N,(DATA),end,end (NEW) 00020412 * 00020501 **************************************************************** 00020601 PRINT GEN OR PRINT GEN 00020701 *******STANDARD STARTUP************************************************ 00020801 STM R14,R12,12(R13) SAVE ALL CALLER REGS IN CALLER AREA 00020901 LR R12,R15 GET ENTRY ADDRESS TO MY PROG 00021001 USING GSIMULTI,R12 SET BASE R12 00021112 LA R8,SAVEAREA GET SAVE AREA ADDRESS 00021201 ST R13,4(R8) SAVE CALLER SAVE AREA ADDRESS 00021301 ST R8,8(R13) SAVE MINE TOO 00021401 LR R13,R8 NOW LET R13 POINT TO MINE 00021501 B START 00021601 DC CL20'BOB BARNES 1/26/94 ' 00022012 DC CL20' VERSION 1.0 ' 00023012 DC CL20'DD=RECIN 80/800 FB' 00024005 *******END***********END*********************************************** 00025001 START L R8,0(R1) GET PARAM POINTER 00026001 USING TSCA,R8 LINK TSCA DSECT 00027001 * WTO 'STARTING GSIMULTI..',ROUTCDE=11 00028017 L R4,TSCAUFLD RECORD COUNTER 00029001 LA R5,TSCAUFLD 00029101 LA R6,BLANK4 00029201 CLC 0(4,R5),0(R6) IF EQUAL TO X40 THEN FIRST TIME 00029301 BNE ADD1 ELSE SKIP FILE OPEN 00029401 * WTO 'THEY WERE = ',ROUTCDE=11 00029501 *************************************** 00029601 * OPEN INPUT FILE AND SET UP DCB. * 00029701 * THE FILE WILL REMAIN OPEN EVEN WHEN * 00029801 * PROGRAM EXITS UNTIL EOF IS HIT * 00029901 *************************************** 00030001 L R4,FZERO INITIALIZE RECORD COUNTER 00030101 LA R5,DCBEND SET ADDR OF END OF DCB 00030201 LA R0,DCB SET ADDR OF BEGINNING OF DCB 00030301 SR R5,R0 R5 = R5 - R0 00030401 * L R3,R5 00030501 * LA R5,8(R5) GET SIZE OF DCB 00030605 GETMAIN R,LV=500 GET STORAGE, DROP CALC, JUST GET 500 00030710 ST R5,0(R1) STORE SIZE INTO R1 00030801 BCTR R5,R0 00030901 EX R5,MVC MVC = MVC 8(0,1),DCB 00031001 LR R6,R1 R1 NOW HAS DCB INFO 00031101 ST R6,TSCAUPTR STORE IT INTO TSCAUPTR 00031201 LA R6,8(R6) 00031301 OPEN ((R6),INPUT) OPEN THE FILE 00031401 * X LOAD EP=GSIMOVE1 LOAD ME 00031501 ************** FILE IS OPEN **************************** 00031601 ADD1 A R4,ONE ADD 1 TO RECORD COUNTER 00031701 ST R4,TSCAUFLD STORE IT 00031801 L R6,TSCAUPTR GET DCB INFO 00031901 LA R5,8(R6) GET DCB ADDR 00032001 USING IHADCB,R5 SET UP ADDRESSING INTO IHADCB 00032101 LA R7,EOF TELL DCB WHERE EOF IS 00032201 ST R7,DCBEODAD DITTO 00032301 DROP 5 00032401 * CLEAR OUT CMRB 00032501 MVI TSCACMRB,C' ' CLEAR OUT THE CMRB 00032601 MVC TSCACMRB+1(79),TSCACMRB 00032703 READ GET (5),LINERCD GET A RECORD 00032801 * LOAD CMRB AND SET SIZE 00032901 MVC TSCACMOF,=F'80' SIZE OF CMRB 00033003 MVC TSCACMRB+0(80),LINERCD LOAD THE CMRB 00033103 * SNAP OPEN (SS,OUTPUT) 00033201 ************************************************** 00033301 * CHECK FOR VALID INPUT 00033401 ************************************************** 00033501 SR R9,R9 JUST A JOKE, I DON'T NEED IT 00033601 SR R10,R10 DATA INDICATOR, SET TO 0 00033701 LA R7,TSCACMRB SET START ADDRESS OF LINE 00033801 LA R11,TSCACMRB LOAD ADDR OF BUFFER 00033901 A R11,TSCACMOF ADD LENGTH OF INPUT REC 00034001 CLC TSCAFBL,ONE ARE WE IN THE MIDDLE OF REC? 00035001 BE ROCKIN YES, SKIP PRE CHECK 00036001 MVC TSCAFBL,ONE WE'RE NOW IN REC 00037001 CLC TSCACMRB(6),=CL6'3,3,1,' VERIFY START STRING 00038001 BE ROCKSET DOES =, GO TO ROCKSET 00038112 CLC TSCACMRB(6),=CL6'UPD R ' VERIFY START STRING 00038212 BE UPCONT 00038315 WTO 'UPD ERROR, NOT EQUAL',ROUTCDE=11 00038417 B KILL DOES NOT =, EXIT 00038515 * ONT WTO 'THEY WERE EQUAL',ROUTCDE=11 00038617 UPCONT A R7,=F'5' SYNC UP WITH OTHER TYPE DATA LINES 00038717 FDNXT A R7,=F'1' 00038813 CLI 0(R7),COMMA FIND NEXT COMMA 00038912 * WTO 'LOOKING FOR COMMA',ROUTCDE=11 00039017 BNE FDNXT 00039112 CLC 0(R7),=CL2' ' THIS SHOULD NOT BE BLANK 00039216 BE KILL SOMETHING'S WRONG . . . 00039313 A R10,ONE 00039417 B ERRCHK IF UPD, THEN NOTHING ELSE TO DO 00039512 * WTO '-----PASSED 3,3 CK ',ROUTCDE=11 00039601 ROCKSET A R7,=F'4' SYNC UP WITH OTHER TYPE DATA LINES 00039712 ********************************************** 00039801 * READY TO ROCK, START PARSING * 00039901 ********************************************** 00040001 ROCKIN CLI 0(R7),COMMA BETTER NOT START WITH COMMA... 00040101 BE KILL WE DID, POOP OUT 00040201 * WTO '-----PASSED FIRST COMMA ',ROUTCDE=11 00040317 CLI 0(R7),BLANK BETTER NOT START WITH BLANK... 00040401 BE KILL WE DID, POOP OUT 00040501 * WTO '-----PASSED FIRST BLNK ',ROUTCDE=11 00040617 A R7,ONE GET NEXT CHAR 00040701 CLI 0(R7),COMMA IS IT A COMMA? 00040801 BE VDATA YES, START CHECK THE STRING 00040901 * WTO '-----DID NOT FIND COMA ',ROUTCDE=11 00041017 A R7,ONE GET NEXT CHAR 00041101 CLI 0(R7),COMMA IS IT A COMMA? 00041201 BNE KILL NOPE, WE'RE OUTTA HERE 00041301 * WTO '-----COMA IS OK ',ROUTCDE=11 00041417 VDATA A R7,ONE GET NEXT 00041501 CR R7,R11 END OF BUFFER? 00041601 BE ERRCHK YUP, MAKE SURE WE GOT DATA 00041701 * WTO '-----IN VDATA ',ROUTCDE=11 00041817 CLI 0(R7),COMMA SECOND COMMA? 00041901 BE COMMA2 YES, MAKE SURE IT'S OK 00042001 CLI 0(R7),BLANK BLANK? WHO CARES? 00042101 BE VDATA GET NEXT CHAR 00042201 A R10,ONE WE HAVE DATA, SET FLAG 00042301 B VDATA GET NEXT CHAR 00042401 EOR MVC TSCAFBL,FZERO WE'VE HIT END OF LOGICAL REC, SET F 00042501 WTO '!!!!!!!! EOR DETECT !!!!!!!',ROUTCDE=11 00042607 ERRCHK C R10,FZERO DO WE HAVE DATA? R10 TELLS US... 00042701 BE KILL NOPE, BLEW IT 00042801 * WTO 'VALID R10 ^= 0 ',ROUTCDE=11 00042917 B CLEANUP THIS BUF IS DONE! GETTA OUT HERE 00043001 COMMA2 CLC 0(6,R7),=C',EN,EN' VALID LOGICAL END OF REC? 00043101 * WTO '-----IN COMMA2 ',ROUTCDE=11 00043217 BE EOR YES, RESET IN-REC FLAG 00043301 CLC 0(6,R7),=C',en,en' check for lower case also 00043402 BE EOR 00043502 CLC 0(8,R7),=C',END,END' CHECK FOR FULL WORD 00043612 BE EOR 00043712 CLC 0(8,R7),=C',end,end' check for lower case also 00043812 BE EOR 00043912 CLC 0(4,R7),=C',EN,' THIS IS A ,EN,XXX 00044018 BE ERRCHK 00044120 CLC 0(5,R7),=C',END,' THIS IS A ,EN,XXX 00044221 BE ERRCHK 00044321 CLC 0(4,R7),=C',en,' THIS IS A ,EN,XXX 00044421 BE ERRCHK 00044521 CLC 0(5,R7),=C',end,' THIS IS A ,EN,XXX 00044621 BE ERRCHK 00044721 CLI 1(R7),COMMA YES, MUST HAVE SECOND COMMA 00044818 BE ERRCHK WE GOTTA IT, MAKE SURE WE HAVE DATA 00044901 WTO 'ERROR: WE HAVE HIT AN ILLEGAL',ROUTCDE=11 00045018 WTO 'SECOND COMMA W/O A VALID EN,EN',ROUTCDE=11 00045118 B KILL 00046018 ********************************************** 00046601 * WRAP UP SECTION * 00046701 ********************************************** 00046801 EOF MVC TSCACMOF,=F'0' 00046901 WTO ' SUCCESS, ** FREEMAIN AND EXIT **',ROUTCDE=11 00047005 MVC TSCAUFBL,=F'4' DONE, EOF 00047101 BCT R4,WRAP IF R4 = 1 (NO RECS), 00047201 MVC TSCAUFBL,=F'12' FILE WAS EMPTY 00047301 WRAP L R6,TSCAUPTR GET DCB INFO 00047401 LA R5,8(R6) GET DCB ADDR 00047501 CLOSE ((R5)) CLOSE THE FILE 00047601 * X DELETE EP=GSIMULTI DELETE ME 00047712 L R0,0(R6) 00047801 FREEMAIN R,LV=500,A=(6) RELEASE STORAGE 00047905 B CLEANUP RESET REGS 00048001 KILL MVC TSCAUFBL,=F'16' 00048101 WTO 'KILL CALLED! FATAL ERROR',ROUTCDE=11 00048205 * SNAP CLOSE (SS) 00048301 * ANUP WTO 'CLEAN UP, RELOAD REGISTERS',ROUTCDE=11 00048411 CLEANUP L R13,4(R13) LOAD CALLER SAVE AREA BACK TO REG13 00048511 LM R14,R12,12(R13) RESTORE ALL CALLER REGS 00048601 SR R15,R15 ZEROS R15 - RETURN CODE 00048701 BR R14 00048801 DBUG DS 0H 00048901 LR R2,R0 00049001 MVC DBUGWORK(2),1(R2) 00049101 UNPK DBUGCHAR(5),DBUGWORK(3) 00049201 TR DBUGCHAR(4),DBUGTBL-240 00049301 MVC DBUGWTO+8+33(4),DBUGCHAR 00049401 DBUGWTO WTO 'SYNAD ENTERED, EXCEPTION VALUE = ', X00049501 ROUTCDE=11 00049601 ABEND 1234 00049701 MVC MVC 8(0,1),DCB 00049801 *********************************************************************** 00049901 R0 EQU 0 00050001 R1 EQU 1 00050101 R2 EQU 2 00050201 R3 EQU 3 00050301 R4 EQU 4 00050401 R5 EQU 5 00050501 R6 EQU 6 00050601 R7 EQU 7 00050701 R8 EQU 8 00050801 R9 EQU 9 00050901 R10 EQU 10 00051001 R11 EQU 11 00051101 R12 EQU 12 00051201 R13 EQU 13 00051301 R14 EQU 14 00051401 R15 EQU 15 00051501 DS 0F INSURE DOUBLEWORD BOUNDARIES 00051601 SAVEAREA DS 18F REGISTER SAVE AREA 00051701 DBUGWORK DS CL3 00051801 DBUGCHAR DS CL5 00051901 DBUGTBL DC C'0123456789ABCDEF' 00052001 RNID DS F 00052101 LINERCD DS 2CL256 00052201 SP DS F 00052301 COMMA EQU C',' 00052401 HAT EQU C'^' 00052501 BLANK EQU C' ' 00052601 THREE DC F'3' 00052701 ONE DC F'1' 00052801 FZERO DC F'0' 00052901 BLANK4 DC 8X'40404040' 00053001 STRTUP DC CL6'3,3,1,' 00053101 DUM DS F 00053201 DCB DCB DDNAME=RECIN,DSORG=PS,MACRF=GM, X00053301 RECFM=FB,LRECL=80,BLKSIZE=800,SYNAD=KILL 00053410 DCBEND DS 0D 00053501 * SS DCB DSORG=PS,RECFM=VBA,MACRF=(W),LRECL=125,BLKSIZE=882, 00053601 * SNAP DDNAME=SNAP 00053701 DCBD DSORG=PS,DEVD=DA 00053801 ***************************************************************** 00053901 ** 00054001 ** TERMINAL SIMULATOR COMMUNICATIONS AREA 00054101 ** 00054201 ***************************************************************** 00054301 TSCA DSECT * TERMINAL SIMULATOR COMM AREA 00054401 DS 0F 00054501 TSCAACRN DS CL4 * "TSCA" ACRONYM 00054601 TSCAFRET DS F * FUNCTION RETURN CODE 00054701 TSCAFRES DS F * FUNCTION REASON CODE 00054801 TSCACPNL DS CL8 * THE CURRENT INFO/ PANEL NAME 00054901 TSCALFID DS CL8 * THE REC ID OF LAST FILED RECORD 00055001 TSCACRID DS CL8 * THE REC ID OF CURRENT RECORD 00055101 TSCAUFLD DS CL8 * USER DEFINABLE FIELD 00055201 TSCAMSGC DS F * THE # OF MESSAGES ON MSG CHAIN 00055301 TSCACPOS DS F * BYTE # OF STRING FOUND IN TESTFIELD 00055401 TSCATPLC DS F * # OF LINES ON THE CURRENT TABLE PNL 00055501 TSCATPLN DS F * LINE # OF THE CURR. LINE ON TBL PNL 00055601 TSCAMTBL DS F * MAX. DATA LEN. ALLOWED FOR TSCATBLL 00055701 TSCACTBL DS F * CURRENT LENGTH OF DATA IN TSCATBLL 00055801 TSCATBLL DS CL256 * CURRENT TABLE PANEL LINE 00055901 TSCAVDA DS 0CL12 * VARIABLE DATA AREA 00056001 TSCAVDAM DS F * MAX. LEN. OF VARIABLE DATA AREA 00056101 TSCAVDAL DS F * CURRENT LEN. OF VARIABLE DATA AREA 00056201 TSCAVDAP DS A * ADDRESS OF THE VARIABLE DATA AREA 00056301 TSCAFB DS 0CL8 * FLATTEN BUFFER INFO 00056401 TSCAFBL DS F * SIZE OF THE FLATTEN BUFFER 00056501 TSCAFBP DS A * -> FLATTEN BUFFER 00056601 TSCAUFB DS 0CL8 * UNFLATTEN BUFFER INFO 00056701 TSCAUFBL DS F * SIZE OF THE UNFLATTEN BUFFER 00056801 TSCAUFBP DS A * -> UNFLATTEN BUFFER 00056901 TSCAUPTR DS A * FULL WORD PTR RESERVED FOR USER 00057001 *************************************************************** 00057101 ** 00057201 ** FIELDS TSCAVPHR, TSCARSWD, TSCARPWD, TSCASDFL AND TSCASDF 00057301 ** ARE USED BY THE FINDSDATA AND FINDSJRNL FUNCTIONS 00057401 ** 00057501 *************************************************************** 00057601 TSCAVPHR DS 0CL20 * VIS. PHRASE RET. BY FSD,FSJ 00057701 TSCAVPHL DS F * LENGTH OF THE VISIBLE PHRASE 00057801 TSCAVPH DS CL16 * THE ASSOCIATED VISIBLE PHRASE 00057901 TSCARSWD DS 0CL14 * S-WORD RET. BY FINDSATA,FINDSJRNL 00058001 TSCARSDL DS F * ACTUAL RETURNED S-WORD LENGTH 00058101 TSCARSD DS CL10 * ACTUAL RETURNED S-WORD VALUE 00058201 TSCARRBL DS H * TSCARRB DATA LENGTH 00058301 TSCARPWD DS 0CL14 * P-WORD RET. BY FINDSATA,FINDSJRNL 00058401 TSCARPDL DS F * ACTUAL RETURNED P-WORD LENGTH 00058501 TSCARPD DS CL10 * ACTUAL RETURNED P-WORD VALUE 00058601 TSCARSV9 DS CL2 * RESERVED 00058701 TSCASDFL DS F * LENGTH OF STRUCTURED DATA 00058801 TSCASDF DS CL256 * STRUCT. DATA-TEXT OR S/PWORD DATA 00058901 TSCACMOF DS F * OFFSET IN COMMAND BUFF. NEXT BYTE 00059001 TSCACMRB DS 2CL256 * COMMAND LINE REPLY BUFFER 00059101 TSCARRB DS 2CL256 * RESIDUAL REPLY BUFFER 00059201 *************************************************************** 00060001 ** 00070001 ** TERMINAL SIMULATION CONTROL 00080001 ** 00090001 *************************************************************** 00100001 TSCACLIN DS 0CL208 * CONTROL LINES 00110001 TSCAFUNC DS CL10 * FUNCTION NAME 00120001 TSCA0FLG DS XL1 * CONTROL FLAG "0" 00130001 TSCA0VAR EQU X'80' * A: GET VARIABLE DATA 00140001 TSCA0FST EQU X'40' * B: FIND FIRST OR NEWEST OCC FSD,FJR 00150001 TSCA0LST EQU X'20' * C: FIND LAST OR OLDEST OCC FSD,FJR 00160001 TSCA0FLO EQU X'10' * D: TESTFLOW: 0=PANEL 1=MESSAGE 00170001 TSCA0FND EQU X'08' * E: FIND STRING ANYWHERE 00180001 TSCA0TRO EQU X'04' * F: TRACE CONTROL LINES 00190001 TSCA0TRL EQU X'02' * G: TRACE LINK FUNCTION 00200001 TSCAMODL EQU X'01' * H: WHEN SET USER ELSE IBM EXIT 00210001 TSCA1FLG DS XL1 * CONTROL FLAG "1" 00220001 TSCA1ANL EQU X'80' * I: APPLY NOT LOGIC 00230001 TSCA1STG EQU X'40' * J: TREAT AS STRING DATA 00240001 TSCA1PNL EQU X'20' * K: PRINT THE CURRENT PANEL 00250001 TSCA1MSG EQU X'10' * L: PRINT THE MESSAGE CHAIN 00260001 TSCA1TSC EQU X'08' * M: PRINT THE TSCA 00270001 TSCA1CRD EQU X'04' * N: FLATTEN CURRENT RECORD 00280001 TSCA1LRD EQU X'02' * O: FLATTEN LAST RECORD FILED 00290001 TSCA1RET EQU X'01' * P: RETAIN RECORD ID, UNFLATTEN 00300001 TSCA2FLG DS XL1 * CONTROL FLAG "2" 00310001 TSCA2RS1 EQU X'80' * RESERVED 00320001 TSCA2SGM EQU X'40' * R: SAVE GENERATED MESSAGE 00330001 TSCA2IDT EQU X'20' * S: INSERT DATA TYPE, HEX = ON 00340001 TSCA2RSV EQU X'1F' * RESERVED 00350001 TSCA3FLG DS XL1 * CONTROL FLAG "3" - RESERVED 00360001 TSCASHDR DS 0CL13 * S-WORD INFORMATION 00370001 TSCASIX DS H * S-WORD INDEX 00380001 TSCASWDL DS XL1 * S-WORD DATA LENGTH 00390001 TSCASWD DS CL10 * S-WORD DATA 00400001 TSCARSV1 DS XL1 * RESERVED 00410001 TSCAPHDR DS 0CL9 * PWORD INFORMATION 00420001 TSCAPIX DS H * PWORD INDEX 00430001 TSCAPFXL DS XL1 * PREFIX LENGTH 00440001 TSCAPFX DS CL6 * ACTUAL PREFIX 00450001 TSCARSV2 DS XL1 * RESERVED 00460001 TSCAVHDR DS 0CL33 * VALIDATION DATA INFORMATION 00470001 TSCAVALL DS XL1 * VALIDATION DATA LENGTH 00480001 TSCAVAL DS CL32 * VALIDATION DATA 00490001 TSCARSV3 DS XL1 * RESERVED 00500001 TSCANHDR DS 0CL13 * NEW S-WORD INFORMATION 00510001 TSCANSIX DS H * NEW S-WORD INDEX 00520001 TSCANSDL DS XL1 * NEW S-WORD DATA LENGTH 00530001 TSCANSWD DS CL10 * NEW S-WORD DATA 00540001 TSCARSV4 DS XL1 * RESERVED 00550001 TSCATFLD DS 0CL13 * TSCA FIELD INFORMATION 00560001 TSCAFLD DS CL8 * TSCA FIELD NAME 00570001 TSCAATTR DS XL1 * FIELD ATTRIBUTE - SEE CONSTANT 00580001 TSCAMASK DS XL1 * MASK OFFSET TO TSCA BIT 00590001 TSCAFLEN DS H * TSCA FIELD LENGTH 00600001 TSCAOFFS DS H * OFFSET TO TSCA FIELD 00610001 TSCARSV5 DS XL1 * RESERVED 00620001 TSCAIFLL DS XL1 * SETFIELD FIELD LENGTH 00630001 TSCALHDR DS 0CL33 * LITERAL/TEST DATA INFO 00640001 TSCALITL DS XL1 * LITERAL DATA / TEST DATA LENGTH 00650001 TSCALIT DS CL32 * LITERAL DATA / TEST DATA 00660001 TSCANLHD DS 0CL33 * NEW DATA INFORMATION 00670001 TSCANDAL DS XL1 * NEW DATA LENGTH 00680001 TSCANDAT DS CL32 * NEW DATA 00690001 TSCALABE DS 0CL10 * CONTROL LINE LABEL INFORMATION 00700001 TSCATNUM DS H * TARGET CONTROL LINE OF BRANCH 00710001 TSCALABL DS CL8 * LABEL NAME 00720001 TSCAPANL DS CL8 * PANEL NAME/ MESSAGE ID 00730001 TSCAFUEX DS CL8 * FUNCTION EXIT NAME 00740001 TSCAVNAM DS CL8 * VERIFY NAME 00750001 TSCAIFLD DS CL8 * PANEL INPUT FROM SETFIELD 00760001 TSCANPHD DS 0CL9 * NEW P-WORD INFORMATION 00770001 TSCANPIX DS XL2 * NEW P-WORD INDEX 00780001 TSCANPFL DS XL1 * NEW P-WORD LENGTH 00790001 TSCANPFX DS CL6 * ACTUAL NEW PREFIX 00800001 TSCARSV7 DS XL1 * RESERVED 00810001 TSCANVHD DS 0CL33 * NEW VALIDATION DATA INFORMATION 00820001 TSCANVLL DS XL1 * NEW VALIDATION DATA LENGTH 00830001 TSCANVAL DS CL32 * NEW VALIDATION DATA 00840001 TSCARSV6 DS XL1 * RESERVED 00850001 TSCAPTCH DS CL24 * EXPANSION AREA 00860001 ***************************************************************** 00870001 ** 00880001 ** THE FOLLOWING ARE CONSTANTS USED FOR THE ATTRIBUTE OF THE TSCA 00890001 ** FIELDS. THEY ARE THE ONLY LEGAL SETTINGS FOR THE TSCA ATTR. 00900001 ** 00910001 ***************************************************************** 00920001 TSCACHAR EQU X'01' * ATTRIBUTE IS CHARACTER 00930001 TSCAFIXD EQU X'02' * ATTRIBUTE IS FIXED 00940001 TSCABIT EQU X'03' * ATTRIBUTE IS BIT 00950001 TSCAPOIN EQU X'04' * ATTRIBUTE IS POINTER 00960001 TSCAACRY EQU C'TSCA' * TSCA ACRONYM 00970001 END GSIMULTI 00980012