$JOB ASSIST TEST01XX,NOLOAD COMMENTS * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * * A USEFUL SET OF PARM OPTIONS TO TRY THIS BATCH WITH IS: * PARM='BATCH,CPAGE,SSX,PD=2,P=4,RD=50,T=3,R=190' (360/67) * * IT MAY BE INTERESTING TO COMPARE RESULTS WITH AND WITHOUT * THE FOLLOWING OPTIONS: NOLOAD, CMPRS, LARGE * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== * ========== CONTROL PROGRAM/PARM HANDLING TESTS ========== END ********* THESE CARDS SHOULD BE SKIPPED BY ASSIST $ENTRY THIS ENTRY CARD SHOULD BE IGNORED ********** TEST0100 - TEST 026 KEYPUNCH CONVERSION $JOB ASSIST TEST0100,KP#26,SS,SSX,SSD TITLE @TEST 026 KEYPUNCH OPTION@ *ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 &-@%*<#,$. * LETTERS ABCDEFGHIJKLMNOPQRSTUVWXYZ * DIGITS 0123456789 * PLUS & MINUS - TIMES * DIVIDE / LEFT PAREN % RIGHT PAREN < * QUOTE @ EQUALS # COMMA , DOLLAR $ PERIOD . TEST026 CSECT USING *,15 READLOOP XREAD CARD BNZ EOF XPRNT CARD-1,81 B READLOOP EOF BR 14 DC C@0@ CARD DS CL80 END $ENTRY *ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789 &-@%*<#,$. * LETTERS ABCDEFGHIJKLMNOPQRSTUVWXYZ * DIGITS 0123456789 * PLUS & MINUS - TIMES * DIVIDE / LEFT PAREN % RIGHT PAREN < * QUOTE @ EQUALS # COMMA , DOLLAR $ PERIOD . ********* TEST JOB 0101 - TEST PAGE CONTROL, RELOCATION MODE $JOB ASSIST TEST0101,PD=1,SSD,TD=0.05,DEBUG=8,RELOC TITLE 'TEST RELOC MODE, RECORD OVERRRUN, DUMP SINGLE SPACE' TEST CSECT USING *,15 XDUMP , MAKE SURE XDUMP WORKS OK RELOCATED LOOP EQU * L 1,16 CVT POINTER XDUMP 0(1),160 DUMP CVT L 1,0(1) TCB WORD L 1,4(1) CURRENT TCB XDUMP 0(1),80 DUMP TCB L 1,12(1) TIOT XDUMP 0(1),100 SHPW PIECE OF TIOT B LOOP LOOP WHILE PRINTING END $ENTRY CARD REQUIRD FOR EXECUTION ********** TEST RUN 0102 - TEST FOR OVERRUN (RECORD) IN ASSEMBLY ********* ALSO CHECK TO MAKE SURE CPAGE AND BATCH CAN'T BE OVERRIDEN $JOB ASSIST TEST0102,R=10,P=2,SS,NOCPAGE,NOBATCH TITLE 'OVERRRUN RECORDS IN ASSEMBLY' TEST CSECT *1 *2 *3 *4 *5 *6 *7 *8 *9 END $ENTRY NO ERROR DURING EXEC, BUT SHOULD NOT EXEC ANYWAY. ********* TEST RUN 0103 - OVERRUN PAGE LIMIT IN ASSEMBLY $JOB ASSIST TEST0103,P=1,NOSS,R=100 TITLE 'OVERRRUN PAGE LIMIT DURING ASSEMBLY' TESTOVER CSECT EJECT A EQU * SHOULD NOT PRINT-OVER*************** END $ENTRY SHOULD NOT EXECUTE ********** TEST RUN 0104 - TIME OVERRUN DURING ASSEMBLY $JOB ASSIST TEST0104,T=0.01 TITLE 'TIME OVERRUN DURING ASSEMBLY' * * * * * * * * * * * * * * * END $ENTRY SHOULD BE SKIPPED BY ASSIST ********** TEST RUN 0105 - TEST NULLING OF DUMP PARMS $JOB ASSIST TEST0105,TD=0,RD=0,PD=0,R=100,L=50,P=2 TITLE 'LOOP, SAVING NOTHING FOR DUMP' TEST CSECT BR 15 LOOP, WAIT FOR DUMP END $ENTRY THIS CARD REQUIRED ********** TEST RUN 0106 - MAKE SURE $ENTRY CARD REQUIRED $JOB ASSIST TEST0106,T=1,R=50,L=50,P=1,NOLIST TITLE 'TEST TO MAKE SURE $ENTRY CARD REQUIRED' TEST CSECT BR 15 LOOP, BUT SHOULD NEVER EXECUTE END ********* THIS SHOULD BE $ENTRY CARD TO OBTAIN EXECUTION ********** TEST RUN 0107 - REPLACE MONITOR TEST $JOB ASSIST TEST0107,REPL TITLE 'EVALUT REPLACEMENT TEST' EVALUT CSECT EXTRN SDBCDX WILL USE THIS INSTEAD USING *,15 ST 14,SAVE14 SAVE 14 CLC 0(5,7),=CL5'X+Y+Z' ABEND CODE BE 0 YES, BRANCH OUT AND BLOW UP L 15,=V(SDBCDX) TREAT ALL AS SELF-DEF TERM BALR 14,15 CALL IT USING *,14 NOTE TEMP L 14,SAVE14 RELOAD REG TO RETUNR BR 14 SAVE14 DS F SAVE WORD FOR R14 END $ENTRY FIRST $ENTRY CARD, FOR REPLACE RUN TITLE 'TEST PROGRAM FOR REPLACEA RUN' TESTREPL CSECT USING *,15 A EQU B+C+D SHOULD GIVE WRONG ANSWER E EQU 0 SHOULD BE CORRECT F EQU X+Y+Z SHOULD BLOW UP R EQU A+B+C+D SHOULD NOT BE CALLED END $ENTRY 2ND $ENTRY, SHOULD GET NO EXEC ********** TEST0109 - MAKE SURE XREAD STOPPED WHEN IN RELOC MODE $JOB ASSIST TEST0109,RELOC TITLE 'TEST CONTROL OVER BAD XREAD IN RELOC MODE' USING *,15 XREAD 0 TRY TO READ CARD INTO LOW CORE $ENTRY ********* THIS DATA CARD SHOULD NOT BE ALLOWED TO BE READ $JOB ASSIST TEST20XX,NOLOAD COMMENTS * ========== OBJECT DECK OUTPUT TESTS DEC * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== * ========== OBJECT DECK OUTPUT TEST DECKS ========== END ********** TEST20000 - TEST DECK FACILITY - NORMAL DECK $JOB ASSIST TEST2000,DECK TITLE 'TEST NORMAL OBJECT DECK OUTPUT' * **NOTE** SPECIFY NO $ENTRY CARD - JUST GET DECK. CSECT USING *,15 NORMAL NENTRY B BEGIN GO AROUND CONSTANT DC C'NORMAL ENTRY POINT TEST' DS 0H FIX TEMPORARY BUG BEGIN XREAD CARD BNZ 0(14) RETURN WHEN EOF XPRNT CARD-1,81 PRINT IT B BEGIN LOOP DC C'0' CARD DS CL80 TEST FILL END ********** TEST2010 TEST DECK FACILITY - ENTRY POINT NOT FIRST BYTE $JOB ASSIST TEST2010,DECK TITLE 'TEST TO MAKE SURE CAN ENTER NOT AT BEGINNING' * ALSO TEST FOR EXACT LENGTH 2*56 TESTDECK CSECT DC C'// WILL BLOW UP IF ENTERS HERE //' USING TESTE,15 NOTE USING TESTE XPRNT =CL20'0*** GOOD DECK ***',20 BR 14 QUIT LTORG ORG TESTDECK+112 112 BYTES - EXACTLY TWO TXT CARDS END TESTE ENTER NOT AT BEGINNING ********* TEST2020 - GET DECK FOR PROGRAM REQUIRING RELOC MODE $JOB ASSIST TEST2020,DECK,RELOC,T=2,R=100 TITLE 'GET DECK FOR PROGRAM REQUIRING RELOC MODE' TEST CSECT USING *,15 XDUMP , MAKE SURE XDUMP WORKS OK RELOCATED LOOP EQU * L 1,16 CVT POINTER XDUMP 0(1),160 DUMP CVT L 1,0(1) TCB WORD L 1,4(1) CURRENT TCB XDUMP 0(1),80 DUMP TCB L 1,12(1) TIOT XDUMP 0(1),100 SHPW PIECE OF TIOT B LOOP LOOP WHILE PRINTING END $ENTRY ********** TEST2030 MAKE SURE DECK NOT PUNCHED IF TOO MANY ERRORS $JOB ASSIST TEST2030,DECK,NERR=0 TITLE 'MAKE SURE NO DECK PUNCHED IF TOO MANY ERRORS' DC C'THIS BETTER NOT BE PUNCHED INTO OBJECT DECK' THIS IS A BAD CARD WITH ERRORS WHICH SHOULD STOP DECK END ********** TEST2040 MAKE SURE NO DECK PUNCHED IF REPL MODE $JOB ASSIST TEST2040,REPL,DECK TITLE 'TEST TO MAKE SURE NO DECK PUNCHED IF REPL RUN' EVALUT CSECT BR 14 RETURN END $ENTRY TITLE 'TEST DECK PART 2 FOR NO DECK DURING REPL' * DON'T USE ANY CALLS TO EVALUT, SO WILL BE OK CSECT DC F'0' END ********** TEST2050 PUNCH OBJECT DECK WHICH WILL BE TOO BIG $JOB ASSIST TEST2050,DECK TITLE 'PUNCH OBJECT DECK NEEDING 5K-WILL BE TOO BIG' TESTBIG CSECT USING *,15 XPRNT =CL80' IF THIS MSG APPEARS, FREE= WAS TOO SMALL',80 BR 14 RETURN IF EVER GET HER LTORG ORG TESTBIG+5000 END $JOB ASSIST TEST30XX,NOLOAD COMMENTS * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * * ORIGINALLY TESTED WITH FOLLOWING PARM FIELD (ON 360/67): * PARM='BATCH,CPAGE,T=2,R=60' * * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== * ========== OBJECT DECK INPUT TESTS ========== END ********** TEST3000 - NORMAL OBJECT INPUT (FROM TEST2000) $JOB ASSIST TEST3000,OBJIN (NORMAL OBJECT INPUT - FROM TEST2000) TXT  â00NORMAL ENTRY POINT TEST5\0&â=\0©â000555555500000000 TXT  5555555555555555555555555555555555555555555555555555555500000001 TXT×  555555555555555555555555 00000002 END 00000003 $ENTRY TEST3000 ********* ONLY DATA CARD TO BE PRINTED BY TEST3000 ********** ********** TEST3010 - TEST ENTRY NOT AT BEGINNING (DECK:TEST2010 $JOB ASSIST TEST3010,OBJIN TXT  // WILL BLOW UP IF ENTERS HERE //5\0+§5555555555555500000000 TXT  5555555555555555555555555555555555555555555555555555555500000001 TXT×  0*** GOOD DECK *** 5555 00000002 END  00000003 $ENTRY TEST3010 ********** TEST3020 RELOC MODE TEST, DEC K FROM TEST2020 $JOB ASSIST TEST3020,OBJIN,RELOC,T=2,R=200 TXT0  ç-¨\/Ȩ¨\/&¨ \/šâ005555 00000000 END 0 00000001 $ENTRY TEST3020 ********** TEST3030 MAKE SURE NO DECK PUNCHED IF OBJIN USED. ********** DECK USED IS FROM TEST2000 $JOB ASSIST TEST3030,OBJIN,DECK TXT  â00NORMAL ENTRY POINT TEST5\0&â=\0©â000555555500000000 TXT  5555555555555555555555555555555555555555555555555555555500000001 TXT×  555555555555555555555555 00000002 END 00000003 $ENTRY ********** TEST3050 - RUN OUT OF SPACE(DECKS TEST2050+2020 TOGETHR) ********* SHOULD PRODUCE MSSG AL998 + AL999 $JOB ASSIST TEST3050,OBJIN TXT  \0&§ IF THIS MSG APPEARS, FREE= WAS TOO SMALL 00000000 TXT  55555555555555555555555500000001 TXT×  5555555555555555555555555555555555555555555555555555555500000002 TXTy  5555555555555555555555555555555555555555555555555555555500000003 TXT\  5555555555555555555555555555555555555555555555555555555500000004 TXT  5555555555555555555555555555555555555555555555555555555500000005 TXT&  5555555555555555555555555555555555555555555555555555555500000006 TXTh  5555555555555555555555555555555555555555555555555555555500000007 TXT{  5555555555555555555555555555555555555555555555555555555500000008 TXT8  5555555555555555555555555555555555555555555555555555555500000009 TXT  5555555555555555555555555555555555555555555555555555555500000010 TXT  5555555555555555555555555555555555555555555555555555555500000011 TXTÈ  5555555555555555555555555555555555555555555555555555555500000012 TXTQ  5555555555555555555555555555555555555555555555555555555500000013 TXT  5555555555555555555555555555555555555555555555555555555500000014 TXT«  5555555555555555555555555555555555555555555555555555555500000015 TXTø  5555555555555555555555555555555555555555555555555555555500000016 TXT¼  5555555555555555555555555555555555555555555555555555555500000017 TXT0  5555555555555555555555555555555555555555555555555555555500000018 TXT  5555555555555555555555555555555555555555555555555555555500000019 TXT-  5555555555555555555555555555555555555555555555555555555500000020 TXTq  5555555555555555555555555555555555555555555555555555555500000021 TXT}  5555555555555555555555555555555555555555555555555555555500000022 TXT   5555555555555555555555555555555555555555555555555555555500000023 TXT  5555555555555555555555555555555555555555555555555555555500000024 TXT û  5555555555555555555555555555555555555555555555555555555500000025 TXT µ  5555555555555555555555555555555555555555555555555555555500000026 TXT Y  5555555555555555555555555555555555555555555555555555555500000027 TXT  5555555555555555555555555555555555555555555555555555555500000028 TXT¨  5555555555555555555555555555555555555555555555555555555500000029 TXTŒ  5555555555555555555555555555555555555555555555555555555500000030 TXTH  5555555555555555555555555555555555555555555555555555555500000031 TXT  5555555555555555555555555555555555555555555555555555555500000032 TXT  5555555555555555555555555555555555555555555555555555555500000033 TXT×  5555555555555555555555555555555555555555555555555555555500000034 TXTy  5555555555555555555555555555555555555555555555555555555500000035 TXT\  5555555555555555555555555555555555555555555555555555555500000036 TXT  5555555555555555555555555555555555555555555555555555555500000037 TXT&  5555555555555555555555555555555555555555555555555555555500000038 TXTh  5555555555555555555555555555555555555555555555555555555500000039 TXT{  5555555555555555555555555555555555555555555555555555555500000040 TXT8  5555555555555555555555555555555555555555555555555555555500000041 TXT0  ç-¨\/Ȩ¨\/&¨ \/šâ005555 00000000 END 0 00000001 $ENTRY ********** TEST3060 NULL OBJECT DECK - SHOULD ABORT ********* SHOULD PRODUCE MSSG AL996 + AL999 $JOB ASSIST TEST3060,OBJIN END  00000003 $ENTRY ********** TEST3070 - BAD TXT ADDRESS ORDER. DECKS ARE 2020 + 2000 ********* SHOULD PRODUCE MSSG AL997 + AL999 $JOB ASSIST TEST3070,OBJIN TXT  55555555555555555555555500000001 TXT  \0&§ IF THIS MSG APPEARS, FREE= WAS TOO SMALL 00000000 $ENTRY $JOB ASSIST PROGTEST,NOLOAD STUDENT-WRITTEN PROGRAMS BEGIN NOW * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== * ========== STUDENT-WRITTEN PROGRAM EXAMPLES ========== END $JOB ASSIST PROGTEST TITLE 'MULTIPUNCHED DATA EXECUTION TEST' */AUTUMN70 JOB 'I9477,T=0005,R=0600,Z1335','SPENCER WILLIAM III' CS410.01 ** THIS BUG CAUSED BY USER READING IN MULTIPUNCHED DATA * AND SCANNING CHARACTERS OF VALUE > C'9'. * 0C7 INTERRUPT OCCURS IN XXXXDECI, 0C6 OR 0C4 IN XXXXSNAP. CSECT USING *,15 LA 10,1(0) LR 11,10 READ XREAD CARD1 BC 4,14 XPRNT CARD1-1,9 XDECI 6,CARD1 XDECI 7,CARD2 BCT 10,DATIN BCT 11,M1IN LA 11,1(0) LR 10,11 AR 11,6 B READ M1IN LA 10,1(0) AR 10,6 XPRNT =C'0',1 B READ DATIN LR 8,6 AR 8,7 ST 8,BUF MVC APB(4),BUF XDECO 8,IAPB LR 9,6 MR 8,7 ST 9,BUF MVC ATB(4),BUF XDECO 9,IATB LR 8,6 SRDA 8,32 DR 8,7 ST 9,BUF MVC ADB(4),BUF XDECO 9,IADB ST 6,BUF MVC A(4),BUF ST 7,BUF MVC B(4),BUF XDECO 6,IA XDECO 7,IB XPRNT CHAR,102 XPRNT IOUT,102 B READ DS F DC 4C' ' CHAR DC C' CHARACTER/INPUT,A ' A DS 4C DC C' ,B= ' B DS 4C DC C' A+B= ' APB DS 4C DC C' A/B= ' ADB DS 4C DC C' A*B= ' ATB DS 4C DS F DC 4C' ' IOUT DC C'0INTEGER/ ' IA DS 12C DC C' ' IB DS 12C DC C' ' IAPB DS 12C DC C' ' IADB DS 12C DC C' ' IATB DS 12C DC C' ' BUF DS F DS F DC 4C' ' CARD1 DS F CARD2 DS F DS 80C END $ENTRY 2 2 9 9 6 7 2 ABCDEFGH ÿÿÿÿÿÿÿÿÿ $JOB ASSIST PROGTEST TITLE 'OVERALL TEST - STUDENT-WRITTEN PROGRAM' * *** SHOULD EXECUTE 370 INSTRUCTIONS, PRINT 2 LINES, THEN * TERMINATE WITH 220 COMPLETION CODE (REWD PAS EOF). * CMPSC 404 - FALL 1970 - INSTRUCTORE R. VARNEY MAIN CSECT ENTRY IN,OUT,SUPERVR STM 14,12,12(13) BALR 12,0 USING *,12 ST 13,MAINSAV START LA 9,0 LA 6,0 LA 11,0 L 15,=V(COROUT2) BR 15 OUT ST 14,BIN1 L 15,BOUT1 BR 15 IN ST 14,BOUT1 L 15,BIN1 INX BR 15 SUPERVR L 13,MAINSAV LM 14,12,12(13) BR 14 LTORG DS 0F MAINSAV DS F BOUT1 DS F BIN1 DC V(COROUT1) COROUT2 CSECT ENTRY STORE,STORE1 PRINT NOGEN BALR 13,0 USING *,13 B OUT1 DS 0F BLANK DC 4C' ' OUTPUT DS 64C OUT1 LA 4,0 LA 1,OUTPUT LA 5,BLANK MVC 0(64,1),3(5) LA 3,3 LTR 9,9 BH STORE H1 L 15,=V(IN) BALR 14,15 STORE ST 10,OUTPUT(4) LA 4,1(4) CLI 10,C'.' BE H9 L 15,=V(IN) BALR 14,15 STORE1 BCT 3,STORE LA 3,3 LA 4,1(4) C 4,=F'63' BNE STORE H9 LA 3,3 XPRNT BLANK(3),65 CLI OUTPUT+62,C'.' BE SUPER LA 9,1 B OUT1 SUPER L 15,=V(SUPERVR) BR 15 LTORG COROUT1 CSECT BALR 8,0 USING *,8 B IN1 H2 L 15,=V(OUT) BALR 14,15 IN1 L 15,=V(NEXTCHAR) BALR 14,15 CLI 10,C'0' BL H2 ST 10,NUMBER LA 5,NUMBER PACK DOUBLE(8),0(4,5) CVB 5,DOUBLE L 15,=V(BEGIN) BALR 14,15 REPEAT L 15,=V(OUT) BALR 14,15 S 5,=F'1' BNM REPEAT B IN1 LTORG DS 0F NUMBER DS F DOUBLE DS D NEXTCHAR CSECT ENTRY BEGIN PRINT NOGEN BALR 7,0 USING *,7 B BEGIN DS 0F BLNK DC 4C' ' INPUT DS 16F ASTERICK DS F BEGIN ST 14,ASTERICK CHECK LTR 11,11 BNE F3 LTR 6,6 BE READ F1 C 6,=F'16' BNE F2 LA 6,0 READ XREAD INPUT,64 LA 2,3 XPRNT BLNK(2),65 F2 L 11,INPUT(6) F3 IC 10,C' ' SLDA 10,8 LA 6,1(6) CLI 10,C' ' BNE ASTERICK B CHECK LTORG END A2B5E3426FG0ZYW3210PQ89R. $ENTRY $JOB ASSIST ICTEST,NOLOAD * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== * ========== TEST DECKS FOR ASSEMBLER ========== TITLE ' TEST DECK - IC - SS2 OPERAND FIELD BUG' ICTESTAA CSECT USING *,15 * ALL LENGTHS EXPLICIT. AP A(15),B(16) * FIRST LENGTH EXPLICIT, 2ND IMPLIED. AP A(14),B AP A(14),=P'1' AP A(14),=C'1' AP A(14),=PL1'1' * BOTH LENGTHS IMPLICIT. AP A,B AP A,=P'1' AP A,=PL1'1' AP A,=C'1' * SECOND LENGTH EXPLICIT ONLY. AP A,B(4) * ***** NEXT 5 STMTS MUST BE FLAGGED ***** AL EQU L'A BL EQU L'B AL2 DC A(AL,BL) LA 0,AL LA 0,BL A DC PL5'1' B DC PL3'1' LA 0,L'A LA 0,L'B C DC P'1' LA 0,L'C AP A,C END $JOB ASSIST ICTEST,NOLOAD TITLE 'IC TEST - SS2 LENGTH PROBLEM - P CONSTANTS' * ***** ALL STATEMENTS LEGAL ICTESTAB CSECT USING *,15 AP A(14),=C'1' AP A(14),=C'1' AP A,=C'1' AP A(14),=B'1' AP A(14),=Z'1' AP A(14),=P'1' AP A(14),=H'1' AP A(14),=X'1' AP A(14),=PL1'1' AP A(14),=ZL1'1' AP A(14),=PL2'1' AP A,=PL2'1' A DC PL7'1' END $JOB ASSIST ICTEST,NOLOAD TITLE 'TEST FOR IC OR LT BUG - LITERAL OPERANDS IN SS2' * ***** ALL STATEMENTS LEGAL ***** IATESTAC CSECT USING *,15 AP 0(2,3),0(4,5) AP 0(2,3),=P'1' AP 0(2,3),0(4,5) AP 0(2,3),=PL2'1' AP A,0(4,5) AP A,=D'1' AP A(7),=D'1' A DS PL6 END $JOB ASSIST IBTEST,NOLOAD TITLE 'IB TEST - MAKE SURE EQU'S PROPERLY UNDEFINED' * ALL EQU'S SHOULD BE UNDEFINED START AL EQU A AL1 EQU L'A AL2 EQU A+L'A A13 EQU L'A+A A DS CL10 END $JOB ASSIST IBTEST,NOLOAD TITLE 'MISSING DELIMITER BUG' * *** TWO STATEMENTS SHOULD BE FLAGGED - NOT ABEND START DC C'XXXXXXXXXX WK SALARY END TITLE 'STORAGE ALLOCATION EXCESSION TEST-ASSEMBLER' START * THIS PROGRAM SHOULD CAUSE AN AS9## TERMINATION BECAUSE IT * WILL CAUSE THE ASSEMBLER TO OVERRUN STORAGE LIMITS. * CARDS ARE SUPPLIED UP TO 512K, ALTHOUGH A NUMBER OF * THEM WILL NOT APPEAR IN THE LISTING * ***NOTE *** THIS JOB WILL BE ACCEPTED IF NOLOAD USED. DC XL256'0',127XL256'0' 32K BYTES DC XL256'0',127XL256'0' 64K BYTES DC XL256'0',127XL256'0' 96K BYTES DC XL256'0',127XL256'0' 128K BYTES DC XL256'0',127XL256'0' 160K BYTES DC XL256'0',127XL256'0' 192K BYTES DC XL256'0',127XL256'0' 224K BYTES DC XL256'0',127XL256'0' 256K BYTES DC XL256'0',127XL256'0' 288K BYTES DC XL256'0',127XL256'0' 320K BYTES DC XL256'0',127XL256'0' 352K BYTES DC XL256'0',127XL256'0' 384K BYTES DC XL256'0',127XL256'0' 416K BYTES DC XL256'0',127XL256'0' 448K BYTES DC XL256'0',127XL256'0' 480K BYTES DC XL256'0',127XL256'0' 512K BYTES END $JOB ASSIST IAOPTEST TITLE 'IA-OP TEST - PASS 1 OPCODE RECOGNITION' * *** IN A COMPLETE VERSION OF ASSIST, NO STMTS FLAGGED. START RE EQU 2 EVEN FOR OK/ODD FOR TEST ODD REGS RG EQU 4 2ND REG- -EVEN TEST/ODD FOR REG TEST L EQU 10 LENGTH USING *,15 HAVE SIMPLE USING SET UP TITLE 'FIXED PT RR' SPM RE BALR RE,RG BCTR RE,RG BCR RE,RG BCR RE,RG SSK RE,RG ***FLAGGED IF NO PRIVILEGED OPS *** ISK RE,RG ***FLAGGED IF NO PRIVILEGED OPS *** SVC L ***FLAGGED IF NO PRIVILEGED OPS *** LPR RE,RG LNR RE,RG LTR RE,RG LCR RE,RG NR RE,RG CLR RE,RG OR RE,RG XR RE,RG LR RE,RG CR RE,RG AR RE,RG SR RE,RG MR RE,RG DR RE,RG ALR RE,RG SLR RE,RG TITLE 'FLOATING POINT RR' * *** ALL STMTS ON THIS PAGE MUST BE FLAGGED IF NO FLOATING PT. LPDR RE,RG LNDR RE,RG LTDR RE,RG LCDR RE,RG HDR RE,RG LDR RE,RG ADR RE,RG SDR RE,RG MDR RE,RG DDR RE,RG AWR RE,RG SWR RE,RG LPER RE,RG LNER RE,RG LTER RE,RG LCER RE,RG HER RE,RG LER RE,RG CER RE,RG AER RE,RG SER RE,RG MER RE,RG DER RE,RG AUR RE,RG SUR RE,RG TITLE 'FIXED PT RX' STH RE,H1 LA RE,C1 STC RE,C1 IC RE,C1 EX RE,H1 BAL RE,H1 BCT RE,H1 BC RE,H1 LH RE,H1 CH RE,H1 AH RE,H1 SH RE,H1 MH RE,H1 CVD RE,D1 CVB RE,D1 ST RE,F1 XDECO 5,C1+5 *** FLAGGED IF NO X-MACROS XDECI 5,C1 *** FLAGGED IF NO X-MACROS N RE,F1 CL RE,F1 O RE,F1 X RE,F1 L RE,F1 C RE,F1 A RE,F1 S RE,F1 M RE,F1 D RE,F1 AL RE,F1 SL RE,F1 TITLE 'FLOATING PT RX' * *** ALL STMTS ON THIS PAGE MUST BE FLAGGED IF NO FLOATING PT. STD RE,D1 LD RE,D1 CD RE,D1 AD RE,D1 SD RE,D1 MD RE,D1 DD RE,D1 AW RE,D1 SW RE,D1 STE RE,E1 LE RE,E1 CE RE,E1 AE RE,E1 SE RE,E1 ME RE,E1 DE RE,E1 AU RE,E1 SU RE,E1 TITLE 'RS AND SI FORMAT INSTRUCTIONS' SSM D1 ***INVALID IF NO PRIVILEGED OPS LPSW D1 ***INVALID IF NO PRIVILEGED OPS DIAG 0,0 **** INVALID IF NOT DEBUG WRD C1,1 ***INVALID IF NO PRIVILEGED OPS RDD C1,1 ***INVALID IF NO PRIVILEGED OPS BXH RE,RG,H1 BXLE RE,RG,H1 SRL RE,1 SLL RE,2(2) SRA RE,64 SLA RE,16 SRDL RE,0(1) SLDL RE,4(2) SRDA RE,0(3) SLDA RE,0(0) STM RE,RG,F1 TM C1,X'0' MVI C1,X'1' TS C1,X'1' NI C1,B'1' CLI C1,C'A' OI C1,C'''' XI C1,C'&&' LM RE,RG,F1 SIO D1 *** INVALID IF NO PRIVILEGED OPS TIO D1 *** INVALID IF NO PRIVILEGED OPS HIO D1 *** INVALID IF NO PRIVILEGED OPS TCH D1 *** INVALID IF NO PRIVILEGED OPS XREPL H1,0 ** FLAGGED IF NO REPLACE FEATURE TITLE 'SS INSTRUCTIONS' MVN C1,C2 MVC C1,C2 MVZ C1,C2 NC C1,C2 CLC C1,C2 OC C1,C2 XC C1,C2 TR C1,C2 TRT C1,C2 ED C1,C2 *** INVALID IF NO DECIMAL FEATURE EDMK C1,C2 *** INVALID IF NO DECIMAL FEATURE XREAD C1,L *** FLAGGED IF NO X-MACROS XPRNT C1,L *** FLAGGED IF NO X-MACROS XPNCH C1,L *** FLAGGED IF NO X-MACROS XDUMP D1,8 *** FLAGGED IF NO X-MACROS XLIMD C1 *** FLAGGED IF NO X-MACROS XDUMP , *** FLAGGED IF NO X-MACROS MVO C1,C2 PACK C1,C2 UNPK C1,C2 ZAP P1,P2 *** INVALID IF NO DECIMAL FEATURE CP P1,P2 *** INVALID IF NO DECIMAL FEATURE SP P1,P2 *** INVALID IF NO DECIMAL FEATURE MP C1,C2 *** INVALID IF NO DECIMAL FEATURE DP C1,C2 *** INVALID IF NO DECIMAL FEATURE SPACE 4 D1 DS D E1 DS E F1 DS F H1 DS H C1 DS C C2 DS C P1 DS P P2 DS P END $JOB ASSIST ICTEST TITLE 'TEST ALIGNMENT AND ODD REGISTER CHECKING - IC' * *** ALL STMTS USING H1,F1, OR D1 MUST BE FLAGGED . START RE EQU 1 ODD REGISTER RG EQU 3 ODD REGISTER - BAD L EQU 10 LENGTH USING *,15 HAVE SIMPLE USING SET UP TITLE 'FIXED PT RR' SPM RE BALR RE,RG BCTR RE,RG BCR RE,RG BCR RE,RG SSK RE,RG ***FLAGGED IF NO PRIVILEGED OPS *** ISK RE,RG ***FLAGGED IF NO PRIVILEGED OPS *** SVC L ***FLAGGED IF NO PRIVILEGED OPS *** LPR RE,RG LNR RE,RG LTR RE,RG LCR RE,RG NR RE,RG CLR RE,RG OR RE,RG XR RE,RG LR RE,RG CR RE,RG AR RE,RG SR RE,RG MR RE,RG ** ODD REGISTER ERROR DR RE,RG ** ODD REGISTER ERROR ALR RE,RG SLR RE,RG TITLE 'FLOATING POINT RR' * *** ALL STMTS ON THIS PAGE MUST BE FLAGGED IF NO FLOATING PT. * *** IF FLOATING PT EXISTS, ALL ON PAGE HAVE 2 ODD REG WARNS LPDR RE,RG LNDR RE,RG LTDR RE,RG LCDR RE,RG HDR RE,RG LDR RE,RG ADR RE,RG SDR RE,RG MDR RE,RG DDR RE,RG AWR RE,RG SWR RE,RG LPER RE,RG LNER RE,RG LTER RE,RG LCER RE,RG HER RE,RG LER RE,RG CER RE,RG AER RE,RG SER RE,RG MER RE,RG DER RE,RG AUR RE,RG SUR RE,RG TITLE 'FIXED PT RX' STH RE,H1 LA RE,C1 STC RE,C1 IC RE,C1 EX RE,H1 BAL RE,H1 BCT RE,H1 BC RE,H1 LH RE,H1 CH RE,H1 AH RE,H1 SH RE,H1 MH RE,H1 CVD RE,D1 CVB RE,D1 ST RE,F1 XDECO 5,C1+5 *** FLAGGED IF NO X-MACROS XDECI 5,C1 *** FLAGGED IF NO X-MACROS N RE,F1 CL RE,F1 O RE,F1 X RE,F1 L RE,F1 C RE,F1 A RE,F1 S RE,F1 M RE,F1 *** ODD REGISTER WARNING *** D RE,F1 *** ODD REGISTER WARNING *** AL RE,F1 SL RE,F1 TITLE 'FLOATING PT RX' * *** ALL STMTS ON THIS PAGE MUST BE FLAGGED IF NO FLOATING PT. * *** IF FLTING PT EXISTS, EACH ON PAGE HAS 1 ODD REG+1ALIGN WRN STD RE,D1 LD RE,D1 CD RE,D1 AD RE,D1 SD RE,D1 MD RE,D1 DD RE,D1 AW RE,D1 SW RE,D1 STE RE,E1 LE RE,E1 CE RE,E1 AE RE,E1 SE RE,E1 ME RE,E1 DE RE,E1 AU RE,E1 SU RE,E1 TITLE 'RS AND SI FORMAT INSTRUCTIONS' SSM D1 ***INVALID IF NO PRIVILEGED OPS LPSW D1 ***INVALID IF NO PRIVILEGED OPS DIAG 0,0 **** INVALID IF NOT DEBUG WRD C1,1 ***INVALID IF NO PRIVILEGED OPS RDD C1,1 ***INVALID IF NO PRIVILEGED OPS BXH RE,RG,H1 BXLE RE,RG,H1 SRL RE,1 SLL RE,2(2) SRA RE,64 SLA RE,16 SRDL RE,0(1) *** ODD REG WARNING **************** SLDL RE,4(2) *** ODD REG WARNING **************** SRDA RE,0(3) *** ODD REG WARNING **************** SLDA RE,0(0) *** ODD REG WARNING *************** STM RE,RG,F1 TM C1,X'0' MVI C1,X'1' TS C1,X'1' NI C1,B'1' CLI C1,C'A' OI C1,C'''' XI C1,C'&&' LM RE,RG,F1 SIO D1 *** INVALID IF NO PRIVILEGED OPS TIO D1 *** INVALID IF NO PRIVILEGED OPS HIO D1 *** INVALID IF NO PRIVILEGED OPS TCH D1 *** INVALID IF NO PRIVILEGED OPS XREPL C1,0 *** FLAGGED INVALID IF NO REPLACEMEN\ TITLE 'SS INSTRUCTIONS' MVN C1,C2 MVC C1,C2 MVZ C1,C2 NC C1,C2 CLC C1,C2 OC C1,C2 XC C1,C2 TR C1,C2 TRT C1,C2 ED C1,C2 *** INVALID IF NO DECIMAL FEATURE EDMK C1,C2 *** INVALID IF NO DECIMAL FEATURE XREAD C1,L *** FLAGGED IF NO X-MACROS XPRNT C1,L *** FLAGGED IF NO X-MACROS XPNCH C1,L *** FLAGGED IF NO X-MACROS XDUMP C1,8 *** FLAGGED IF NO X-MACROS XLIMD C1 *** FLAGGED IF NO X-MACROS XDUMP , *** FLAGGED IF NO X-MACROS MVO C1,C2 PACK C1,C2 UNPK C1,C2 ZAP P1,P2 *** INVALID IF NO DECIMAL FEATURE CP P1,P2 *** INVALID IF NO DECIMAL FEATURE SP P1,P2 *** INVALID IF NO DECIMAL FEATURE MP C1,C2 *** INVALID IF NO DECIMAL FEATURE DP C1,C2 *** INVALID IF NO DECIMAL FEATURE SPACE 4 DS 0D,F D1 DS F FULLWORD, BUT NO DOUBLEWORD DS 0F,H E1 DS H HALFWORD, BUT NO FULLWORD DS 0F,H F1 DS H HALFWORD, BUT NO FULLWORD DS 0H,C H1 DS C BYTE, BUT NOT HALFWORD C1 DS C C2 DS C P1 DS P P2 DS P END $JOB ASSIST IBTEST TITLE 'PASS 1 ASSEMBLER OPS TEST - (IB) ' START 100 DS F IBTEST CSECT CCW OP OK OPERAND-NOT IMPLEMENTED YET BAD CCW CNOP 0,8 CNOP 2,8 CNOP 4,8 CNOP 2,8 CNOP 6,8 CNOP 4,8 CNOP 2,4 CNOP 0,4 CNOP 0,4 BAD1 CNOP BADL CNOP 1,24 CNOP 2 CNOP 4, CNOP 2,7 CSECT1 CSECT DS F CSECT BALNP CSECT BLANK CSECT DS D CSECT ILLEGAL RECODE OF CSECT CSECT1 CSECT ILLEGAL RECODE DROP BAD3 DROP 10 ILLEGAL LABEL BAD4 DROP DROP X DCA DC X'1',B'2',C'3' DS CL256,XL DS D,CL256 DSA DS XL256,3D,4F,5C,10XL20 DS CL200,BL20, DC X'1',X'2', DC C'1',C'2',C'3',C'4, DC C'1',C'2',C'3',C'4, DC C'1',C'2',C'3',C'4',C'5',C'6',C'7',C'8',C'9',C'A',C'B' BAD6 DS DSECT MISSING LABEL ON DE DSECT MISSING LABEL ON DSECT DUMMY DSECT DS F DC C'A' ENTRY BAD1,BAD2,DCA,DSA ENTRY UNDEF,UNDEF2,BAD1 ILLEGAL ENTRY BAD1 ENTRY ORG *+10 ORG IBTEST ILLEGAL ORG *-8 ORG ORG DUMMY ORG UNDEF ORG NOTYET NOTYET DS F ILLNAME ORG PRINT OFF PRINT ON PRINT OFF,NOGEN,NODATA PRINT ON,GEN,DATA NAME PRINT OFF PRINT NAME2 PRINT PRINT ON SPACE BAD SPACE SPACE 100 TITLE NAMER TITLE LABELX END CSECT1 $JOB ASSIST COCNTEST TITLE 'CONSTANT RECOGNITION TEST (CO,CN)' * THIS DECK TESTS SECTIONS CODTL1 AND CNDTL2 FOR * * BEING ABLE TO RECOGNIZE ALL LEGAL TYPES OF CONSTANTS, AND * * CALL THE APPROPRIATE PASS 1 AND 2 ROUTINES. * CSECT START 0 A DC A(1) B DC B'1' C DC C'1' D DC D'1' E DC E'1' F DC F'1' H DC H'1' P DC P'1' V DC V(CSECT) X DC X'1' Z DC Z'1' END $JOB ASSIST EVTEST TITLE 'EXPRESSION EVALUATOR TEST DECK #1 - (EV)' EVTEST1 CSECT EV1 BR 14 JUST RETURN,NO EXECUTION ABS EQU 3 ABSOLUTE TERM REL1 DS D 1ST RELOCATABLE TERM REL2 DS D 2ND RELOCATABLE TERM ORG *-2 ORG *+5-*+5+*-*+* ORG *+10 DC CL(ABS+X'10')' ' USING EV1,15 NOTE USING DC A(REL1-2,REL1+8-REL2) LEGAL DC A(REL2) DC A(REL2+4-REL1*ABS DC A DC A(REL2+ABS-REL1) DC A(0+1-2+3-4+5- DC A(0+1-2+3-4+5-6+7-8+9-10+11-12+13-14+15) LEGAL DC A(0+1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16) TOO MANY TM LA 0,REL2-REL1 LEGAL LA 0,(REL2-REL1) LEGAL LA 0,(REL2-REL1+4)(1) LEGAL DC A((((((REL2-REL1)*8)/4)+3))) LEGAL DC A(REL2+8-REL1+ABS*3/4-5+6) LEGAL MVI *+1,REL2-REL1+4*(REL2-REL1) LEGAL LA 0,REL2+4-REL1+REL2(1) LEGAL MVI *+1,REL2 ILLEGAL,ABSOKUTE EXP REQUIRED LA 0,ABS+ABS-4*ABS/2 LEGAL LA 0,REL2+REL2 COMPLEX RELOCATABILITY LA 0,REL1+REL2 COMPLEX RELOCATABILITY DC A(X'FFFFFF'+1) EXPRESSION TOO LARGE DC A(3-4) EXPRESSION TOO SMALL (NEGATIVE) DC A(1+%) ILLEGAL CHARACTER DC A(TOOLONGSYM) SYMBOL TOO LONG DC A(((((((((0)))))))) TOO MANY PAREN LEVELS DC A(1+,) SYNTAX DC A(UNDEFSY) UNDEFINED SYMBOL END $JOB ASSIST ICTEST TITLE 'TEST-PASS 2 MACHINE OPS(IC)-PART A-NORMAL OPERANDS' ICTEST CSECT ENTRY ENTRY1 USING *,15 RA EQU 2 RB EQU 4 L1 EQU 200 L2 EQU 16 ABS1 EQU 8 LR AR 0,1 AR 10,0 AR 12,12 AR 0,16 ILLEGAL - TOO BIG AR 123,10 ILLEGAL-TOO BIG AR 1A ILLEGAL REGISTER/DELIMITE MR 1,2 WARNING - ODD REGISTER AR RA,RB A 0,=F'1' * *** NEXT 4 STMTS FLAGGED FOR ILLEGAL LITERAL USAGE. CVD 0,=C'1' STH 0,=F'1' STC 0,=F'1' STM 0,1,=F'1' A 0,X'10' A 0,B'1000' A 0,C'0' A 0,L'F1 A 0,X'10'+12 A 0,B'100'+8 A 0,C'0'+16 LA 0,*+10 A 0,F1 A 0,F1+4 A 0,F1-4 A 0,F1+4(RE) A 0,F1+4(RA) A 0,F1-4(2) A 0,0( A 0,4(8) A 0,2000(RA) A 0,ABS1 A 0,100 A 0,16(1) A 0,16(,1) A 0,16(1,2) A 0,16(1,) A 0,ABS1+4(1) BNE 0(2) LM 0,1,F1 LM RE LM RA,RB,4(2) STM RA,RB,ABS1(RA) SRDA RA,1 SRDA 0,2(1) SRDA RA,ABS1 SRDA RA,F1 MVI C1,0 MVI C1 MVI C1,X'1' MVI C1,F1-30 LA 0,*-20 MVC F1,F MVC F1,D1 MVC F1(6)D1 MVC F1(0),D1 MVC 2(3,4),2(5) MVC 1(2),2(RA) MVC 4(,6),C1 MVC F1+4(5),F1+6(0) UNPK F1+4,C1+3 UNPK F1-8(12),C1+6(0) UNPK F1(16),C1(16 UNPK F1-4(16),C1(17) SVC L1 SVC 256 SVC 255 SPM RA SIO D1+8 SIO 0(1) XDECI 0,0(,1) XDECO 0,4095(1,2) XLIMD 0(1,2),20 XPRNT 0(1,2) XPNCH F1(2) XPRNT F1 XPRNT F1,(1) XPRNT F1,120 CVB 0,C1(RA) ICPEA LA 0,126456789123 LA 0,C'1X' ICSDTRM LA 0,TOOLONGSYM ICYSM LA 0,123456789123456 ICDNUM LA 0,UNDEFIN ICSYM LA 0,ENTRY1 ICSYM MVC C1(256),C2 MVC C1(257),C2) LTORG D1 DS D F1 DS F C1 DS C C2 DS C END $JOB ASSIST BRTEST TITLE 'BASE REGISTER/USING/DROP TEST PROGRAM #1' BASETEST CSECT BALR 12,0 USING *,12 A1 LA 11,BASETEST ADDRESSIBILITY ERR NOP *-2 L 0,AA5 USING AA5,9 ST 1,AA5 USING AA5,10 AL 2,AA5 DROP 10 SL 3,AA5 USING DSECT,7 STH 4,DS1 LH 5,DS2 CVB 6,DS8 USING DSECT,10 CVD 7,DS8 USING DSECT2,10 M 8,DS4 D 8,DSEC2A DROP 10 B A1 IC 10,DSECT2A LA 11,OUTRANGE MH 15,*+6 DS 2000F OUTRANGE DS C AA5 DS F DSECT DSECT DS1 DS H DS2 DS HL8 DS4 DS A DS8 DS D DSECT2 DSECT DS CL80 DSECT2A DS P USING *,13,14,15 BASET2 CSECT LA 0,DSECT2A+5000 DROP 13,14,15 DROP 9,10,12 END $JOB ASSIST SDTEST TITLE 'SELF-DEFINING TERM PROCESSORS TESTS - (SD)' 02700000 SDTEST START X'20000' * TESTS FOR SBCDX ENTRY OF SDTERM * SDBCD EQU M'2' UNRECOGNIZABLE SDBCD1 EQU L'A * TESTS FOR BINARY SELF-DEFINING TERMS * SDB1 EQU B'1' SDBD7 EQU B'0101010' SDB8 EQU B'11111111' SDB16 EQU B'0000111100001111' SDB24 EQU B'111100001111000011110000' LONGEST LEGAL STRING' SDB25 EQU B'0000001111110000001111110' TOO LARGE SDB0 EQU B'' NULL CONSTANT SDB EQU B'012 ILLEGAL CHARACTER SDBE2 EQU B'000000001111111100000000 MISSING ' * TESTS FOR CHARACTER SELF-DEFINING TERM PROCESSOR * SDC1 EQU C'A' SDC1A EQU C'&&' SDC1B EQU C'''' SDC2A EQU C'#@' SDC2 EQU C'''''' SDC2B EQU C'&&''' SDC3 EQU C'012' SDC3A EQU C'''&&''' SDC4 EQU C'ABCD' TOO LARGE FOR SELF-DEFINING TERM SDCE1 EQU C'ABC MISSING DELIMIER SDCE2 EQU C'&&&' ODD # &'S - ILLEGAL SDCE3 EQU C''' ODD # OF '-S-MISSING ' SDCE4 EQU C''''''''' ILLEGAL SDC0 EQU C'' NULL CONSTANT * DECIMAL SELF-DEFINING TERM PROCESSOR TESTS * * THERE APPEARS TO BE NO WAY TO GET A NULL DECIMAL SD TERM, * * SINCE SDDTRM IS NOT CALLED UNLESS 1ST CHAR IS DIGIT * SDD1 EQU 1 SDD2 EQU 16 SDD3 EQU 256 SDD4 EQU 4096 SDD5 EQU 16384 SDD6 EQU 131072 SDD7 EQU 1048576 SDD8 EQU 15728640 SDD9 EQU 123456789 SDD9A EQU 999999999 SDD10 EQU 1234567890 TOO BIG * HEXADECIMAL SELF-DEFINING TERM PROCESSOR TESTS * SDX1 EQU X'1' SDX2 EQU X'FF' SDX3 EQU X'FAB' SDX4 EQU X'4CDE' SDX5 EQU X'12345' SDX5A EQU X'ABCDE' SDX5B EQU X'23456' SDX6 EQU X'ABCDEF' SDX7 EQU X'1234567' TOO BIG SDX0 EQU X'' NULL CONSTANT SDXE1 EQU X'02045 MISSING DELIMITER * SEPARATE CHECK FOR CHECK ONLY PART-PASS 1 * * LA 0,X'1' LEGAL LA 0,X'123 ILLEGAL LA 0,X'1234567 TOOTLONG END $JOB ASSIST ZTEST TITLE 'GARBAGE TEST' TEST START 16 RHEX EQU 8 ACCUMULATOR FOR HEX NUMBERS ASN20460 CTAB2 DC XL65'1' TRANSLATE TABLE TO FIND BALNKS ASN21360 ORG ORG *-20 DC C' ',X'0# 000',C' ',X'# 00' TEST FOR IN/OU LTORG CHEAD1 DC CL20'0 ** RESULTS',CL20' # OF CARDS',CL20' # OF DECIMAL#ASN21230 S',CL20' SUM OF DECIMALS',CL20' # OF HEXADECIMALS',CL30'#ASN21240 SUM OF HEXADECIMALS' ASN21250 DC C'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGH# #,$.@%*<#,$.@%*<#,$.@%*<#,$.@%*<#,$.@%*<#,$.@%*<#,$.@%*<# +_)>:;^?"=!(+_)›>:;^?"=!(+_)›>:;^?"=!(' RXN EQU 9 COUNTER FOR NUMBER OF X #'S ASN20470 PRINT ON DSECT CPATTERN DC X'402020202020202020212020' EDIT PATTERN FOR OUTPUT ASN21340 RLINK EQU 10 INTRNAL LINKAGE REGISTER ASN20480 RCRD EQU 5 COUTNER FOR NUMBER OF CARDS ASN20430 USING *,10 CARDIN DS CL80 AREA FOR INPUT OF CARD ASN21300 CHEAD0 DC CL130'1 *** I/O CONVERSIONS - J.R.MASHEY' ASN21210 CWORK DS 2D PRIMARY WORK AREA ASN21320 RDN EQU 7 COUNTER FOR NUMBER OF DECIMALS ASN20450 DC C' CXTAB DC XL199'FAFBFCFDFEFF',41X'1',C'0123456789ABCDEF' ASN21370 DC C'&&''',X'A',F CLI 1(RA),C'''' IS NEXT CHARACTER A ' BXH RA,RD,CC1LOOPA BUMP SCAN POINTER 1 AND BRANCH CCW CNOP 0,4 CNOP 2,8 CNOP 1,7 ENTRY X5 EXTRN X6 DC X' DC X'01^' DC F'1,2,3,4,5' CPACK1 PACK CWORK,0(0,R4) FOR DECIMAL CONVERT,LENGTH SUPPLIED ASN20740 CLI CARDIN,C'$' IS IT $ CARD ASN20590 CNOP 6,8 CINIT1 LM RCRD,RXN,=5F'0' ZERO ALL COUNTER REGISTERS ASN20540 BE COUTPUT YES-GO PRINT TOTALS ASN20600 CHEXOUT UNPK CWORK(9),CWORK(5) PERFORM OVERLAP UNPK ASN21120 TR CWORK,CXTAB TRANSLATE FA TO A,FB TO B,ETC ASN21130 XSAVE ASN20490 LA RCRD,1(RCRD) INCREMENT CARD COUNT ASN20610 LA R3,CARDIN STARTING ADDRESS FOR SCAN ASN20620 SPACE 2 ASN20630 L 10,=A(X) ST 10,=A(X) RDEC EQU 6 ACCUMULATOR FOR DECIMAL SUM ASN20440 IC 0,=C'1' LH 2,=H'2' DC A(SYMBOL,1,2,3) LTORG ASN21380 ALR RDEC,R0 ADD TO ACCUMULATOR ASN20710 CSECT DC B'0101010101',B'01',B'1',B'01010101' DROP 10 LA 3,=CL7'1' LA 4,=CL8' ' CONVIO START X'22020' ASN20410 CSCAN1 TRT 0(80,R3),CXTAB SCAN FOR SOME NUMBER,IGNORE BLANKS ASN20640 BZ CARDGT GO BACK AND GET NEXT CARD ASN20650 PRINT NOGEN ASN20390 CLI 0(R1),C'X' CHECK FOR X ASN20660 BE CHEXIN BRANCH TO CONVERT HEX CONSTANTS ASN20670 CDECIN BAL RLINK,CSCAN2 DO SECOND SCAN ASN20680 EX R1,CPACK1 DO VARIABLE LENGTH PACK ASN20690 CVB R0,CWORK PERFORM DEC-BIN CONVERSION ASN20700 LA RDN,1(RDN) INCREMENT NUMBER OF DECIMALS ASN20720 B CSCAN1 GO BACK FOR NEXT VALUE ASN20730 SPACE 2 ASN20750 CHEXIN BAL RLINK,CSCAN2 PERFORM SECOND SCAN ASN20760 EX R1,CTRAN1 DO TRANSLATE ASN20770 EX R1,CPACK2 PERFORM PACK,1 EXTRA BYTE ASN20780 AL RHEX,CWORK+4 ADD VALUE TO ACCUMULATOR ASN20790 LA RXN,1(RXN) INCRMENT COUNTER ASN20800 B CSCAN1 GO BACK FOR NEXT NUMBER ASN20810 CTRAN1 TR 0(0,R4),CXTAB TRANSLATE FOR HEXIN,LENGTH SUPPLIED ASN20820 CPACK2 PACK CWORK(9),1(0,R4) FOR HEXIN CONVERSION,LENGTH SUPPLIED ASN20830 SPACE 2 ASN20840 COUTPUT CPRT CHEAD1 PRINT HEADING ASN20850 CNVD CLINE+20(12),RCRD CONVERT NUMBER OF CARDS ASN20860 CNVD CLINE+40(12),RDN CONVERT NUMBER OF DECIMALS ASN20870 CNVD CLINE+60(12),RDEC GET DECIMAL SUM ASN20880 CNVX CLINE+84(8),RXN CONVERT NUMBER OF HEXES ASN20890 CNVX CLINE+104(8),RHEX CONVERT HEX SUM ASN20900 CPRT CLINE PRINT ALL VALUES ASN20910 CPRT =65CL2' *' PUT IN LINE OF ASTERSIKS ASN20920 CPRT CBLANKS PRINT BLANK LINE ASN20930 B CINIT1 GO BACK AND RE INIT ASN20940 CBLANKS DC CL130' ' FOR BLNK LINE ASN21310 SPACE 2 ASN20950 CALLDONE CALL PTCLOSE CLOSE PRINTER TO FLUSH BUFFER ASN20960 XRETURN SA=* ASN20980 SPACE 2 ASN20990 CSCAN2 LR R4,R1 SAVE POINTER ASN21000 TRT 0(80,R4),CTAB2 PERFORM TRANSLATE FOR BLANK ASN21010 LR R3,R1 SAVE POINTER TO BLANK ASN21020 SR R1,R4 FIND LENGTH OF FIELD ASN21030 BCTR R1,0 DECREMENT LENGTH TO LENGTH-1 ASN21040 BR RLINK RETURN TO CALLER ASN21050 SPACE 2 ASN21060 CDECOUT CVD R0,CWORK2 PERFORM DECIMAL CONVERSION ASN21070 MVC CWORK(12),CPATTERN MOVE EDITING PATTERN OVER ASN21080 ED CWORK(12),CWORK2+2 EDIT UP TO 11 DIGITS ASN21090 BR RLINK RETURN TO CALLER ASN21100 SPACE 2 ASN21110 BR RLINK RETURN TO CALLER ASN21140 SPACE 2 ASN21150 CPRINT CALL PTPUT CALL PRINTER ROUTINE ASN21160 BR RLINK RETURN TO CLLER ASN21170 SPACE 2 ASN21180 CLINE DC CL130' ' ASN21270 DS 0D ALIGN FOR SPEED ASN21280 EQUREGS ASN20420 CALL PTOPEN OPEN THE PRINTER ASN20500 CALL CROPEN OPEN CARD READER ASN20510 CPRT CHEAD0 PRINT HEADING ASN20520 SPACE 2 ASN20530 EJECT ASN20400 * *** DATA AREAS AND TRANSLATE TABLES *** * ASN21190 DS 0D ALIGN FOR SPEED ASN21220 DS 0D ALIGN FOR SPEED ASN21260 CARDGT LA R0,CARDIN ADDRESS OF INPUTAREA ASN20550 CALL CRGET GET 1 CARD ASN20560 B CALLDONE BRANCH ON EOF ASN20570 CPRT CARDIN-20 PRINT CARD ASN20580 DUMMY DSECT DS 0D ALIGN FOR SPEED ASN21200 DEBUG 2,X'00' $JOB ASSIST EXTEST * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== * ========== TEST DECKS FOR INTERPRETER FEATURES ========== TITLE 'X-MACRO TESTS - INTERPRETER' XMACTEST CSECT USING *,15 SPACE 1 XLOOP XREAD CARD BNZ XDONE QUIT IF NO MORE XPRNT CARD,80 PRINT IT XPNCH CARD PUNCH IT SPACE 1 LA 1,CARD INIT SCAN PTR XDEC XDECI 0,0(1) SCAN NUMBER BO XLOOP GO BACK IF BAD OR NO MORE XDECO 0,AREA CONVER T BACK XPNCH AREA,12 PUNCH IT B XDEC GO FOR NEXT NUMBER XDONE XDUMP XDUMP CARD,100 XLIMD XDONE DC H'0' ABEND TO SEE XLIMD EFFECTS CARD DC CL80' ',C'$' DELIMITER AREA DS CL12 END $ENTRY 1 2 3 4 5 -1 -2 -3 $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 1 - 0C1 - OPERATION' EXTEST1 CSECT DC H'0' 0C1 INTERRUPT END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 2 - 0C2 - PRIVILEGED OPERATION' * *** NOTE ONLY ASSEMBLES CORRECTLY IF PRIVILEGED OPS ALLOWED. EXTEST2 CSECT TIO 0(1) PRIVILEGED END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 2A - 0C2 - PRIVILEGED OPER(SVC)' * *** NOTE UNUSED SVC CODE CONSIDERED PRIVILEGED OPERATION. EXTEST2A CSECT SVC 128 SVC NOT IN CURRENT USE END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 3 - 0C3 - EXECUTE' EXTEST3 CSECT USING *,15 NOTE ENTRY USING EX2EX EX 0,EX2EX EXECUTE EXECUTE END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 4 - 0C4 - PROTECTION' EXTEST4 CSECT ST 0,4000(15) STORE OUT OF RANGE END $ENTRY $JOB ASSIST EXTEST,RELOC TITLE 'INTERPRETER TEST 5 - 0C5 - ADDRESSING' * *** NOTE THIS WILL GENERATE 0C4 IF RELOC OPTION NONEXISTNET, * SINCE NORMALLY ALL ADDRESS-OUT-OF-RANGE CONDITIONS ARE * TREATED AS 0C4'S RATHER THAN 0C5'S. EXTEST5 CSECT USING *,15 L 1,=F'-1' GET HUGE ADDRESS VALUE IC 1,0(1) SHOULD 0C5 BR 14 -RETURN IF DOESNT WORK RIGHT END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST # 6 - 0C6 - ODD REG SPECIFICATION' EXTEST6 CSECT MR 1,2 ODD REG IN MR-DR - 0C6 END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 6A - 0C6 - ODD REG SPECIFICATION' EXTEST6A CSECT SRDL 1,2 ODD REG IN DOUBLE SHIFT 0C6 END $ENTRY EXTEST $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 6B - 0C6 - ODD REG SPEC(FLTING PT' EXTEST6B CSECT AER 1,2 ODD FLOATING PT REG - 0C6 END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 6C - 0C6 - MISSING HALFWORD ALIGN' EXTEST6C CSECT USING *,15 NOTE ENTRY USING STH 0,*+1 ODD BOUNDARY - 0C6 END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 6D - 0C6 - MISSING FULLWORD ALIGN' EXTEST6D CSECT USING *,15 NOTE ENTRY USING ST 0,*+2 MISSING F ALIGNMENT - 0C6 END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 6E - 0C6 - MISSING D ALIGNMENT' EXTEST6E CSECT USING *,15 NOTE ENTRY USING CVD 0,*+4 MISSING DOUBLEWORD ALIGN END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST # 7 - 0C7 - INVALID CVB' EXTEST7 CSECT USING *,15 CVB 0,EXT7D CONVERT BASD VALUE - 0C7 EXT7D DS 0D DC 2F'0' INVALID VALUE FOR DECIMAL END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 8 - 0C8 - FIXED PT OVERFLOW' EXTEST8 CSECT USING *,15 LA 1,4000 S5T UP VALUE SPM 1 MASK OFF FOR NOW SLA 1,31 SINCE MASKED, CAUSES NO INTERRUPT LA 1,1 GET SMALL VALUE LCR 1,1 GET NEG NUMBER TO SET SPM MASK SPM 1 SET TO ALLOW INTERRUPT LA 1,4000 GET VALUE IN AR 1,1 DOUBLE B *-2 LOOP UNTIL OVERFLOW END $/ ASSIST INTERNAL DELIMITER CARD * * * * * * * * * * * * * TITLE 'INTERPRETER TEST 9 - 0C9 - FIXED PT DIVIDE' EXTEST9 CSECT LA 0,1 SMALL NONZERO VALUE SR 1,1 CLEAR TO GET 0 DR 0,0 DIVIDE 1 INTO 2-REG VALUE-OVERFLW END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 10 - 0CA - DECIMAL OVERFLW' EXTEST10 CSECT USING *,15 SR 0,0 CLEAR FOR MASK SPM 0 MASK OFF INTERRUPT AP EXT10A1,EXT10B1 OVERFLOW IS MASKED OFF L 0,EXT10M GET MASK SPM 0 PERMIT INTTERRUOT AP EXT10A,EXT10B CAUSE OVERFLOW EXT10A DC X'999999999F' EXT10A1 DC X'999999999F' EXT10B DC X'9F' EXT10B1 DC X'9F' EXT10M DC F'-1' FOR USE AS SPM MASK END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 11 - 0CB - DECIMAL DIVIDE' EXTEST11 CSECT USING *,15 DP EXT11A,EXT11B CASUE 0CB EXT11A DC X'9999999F' EXT11B DC X'0F' END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 16A - BRANCH OUT OF PROGRAM' EXTES16A CSECT USING *,15 B *+4000 BRANCH OUT OF RANGE END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST 16C - READ PAST END - OF - FILE' EXTES16C CSECT USING *,15 EXT16CA XREAD EXT16CD READ CARD IN XPRNT EXT16CD-1 PRINT IT OUT B EXT16CA LOOP,CAUSING END-OF-FILE CNOP 6,8 ALIGN TO PUT IN CARR CONT DC C' 0' EXT16CD DS 10D SPACE FOR CARD DC CL60' ' END $ENTRY 1ST AND ONLY CARD FOR READ PAST EOF TEST $JOB ASSIST EXTEST,R=30 TITLE 'LOOP WHILE PRINTING-PRODUCE 222 COMPLETION CODE' START USING *,15 LOOP XPRNT =CL30' *** LOOPING DURING PRINTING ***',30 B LOOP END $ENTRY $JOB ASSIST EXTEST,I=100 TITLE 'INSTRUCTION COUNT LOOP - EXCEED - 221 COMPLETION' START BR 15 TIGHT LOOP END $ENTRY $JOB ASSIST EXTEST,R=40 TITLE 'STOP XDUMP DURING EXEC - RECORD LIMIT -222 COMPLETION' START USING *,15 LOOP XDUMP AREA,20 B LOOP LOOP FOREVER AREA DC 5C'ABCD' END $ENTRY $JOB ASSIST EXTEST,I=10000 TITLE 'EXECTUION TEST #0A - LOOP - COMPLETION 221' * *** THIS PROGRAM USES TYPCIAL INSTRUCTION MIX TO OBTAIN * TIMING FOR PURE CPU PROGRAMS. EXTESTZ CSECT USING *,15 STM 14,12,12(13) LR 12,13 LA 13,EXTZSAVE ST 12,4(13) ST 13,8(12) BALR 12,0 USING *,12 LA 1,4000 SET UP FOR LOOP SPACE 2 EXTLOOP L 0,EXTF1 A 0,EXTF2 ST 0,EXTF3 LA 0,2 SLL 3,1 AR 0,1 IC 0,EXTF1 MVC EXTC1,EXTC2 CLC EXTC1,EXTC3 BNE *+4 SUCCESSFUL BRANCH LTR 0,0 SR 0,0 TM EXTC4,X'FF' BO *+4 SUCCESSFUL BRANCH BZ *+4 UNSECCESSFUL BRANCH BAL 14,*+4 SUCCESSFUL BAL BCR 0,1 BCTR 0,0 BCT 1,EXTLOOP CONTINUE LOOPING SPACE 1 XPRNT EXTM1 XPRNT EXTM2 L 13,4(13) LM 14,12,12(13) BR 14 EXTF1 DC F'1' EXTF2 DC F'2' EXTF3 DS F EXTC1 DS CL20 EXTC2 DC C'01234567890123456789' EXTC3 DC C'0123456789ABCDEFGHIJ' EXTC4 DC C'1' EXTM1 DC CL132'0********** USER BEGINNING **********' EXTM2 DC CL132'0********** USER ENDING **********' EXTZSAVE DC 18F'1' SAVE AREA END $ENTRY $JOB ASSIST EXTEST,I=5000 TITLE 'EXECUTION TEST #0B - (EX)' * *** USE TYPICAL INSTRUCTIONS TO OBTAIN CPU TIMING. EXTEST1 CSECT USING *,15 STM 14,12,12(13) LR 12,13 MOVE SA POINTER OVER LA 13,EXSAVE1 @ OUR SAVE AREA ST 12,EXSAVE1+4 ST 13,8(12) BACK POINTER BALR 12,0 NEW BASE USING *,12 NOTE NEW BASE DROP 15 GET RID OF OLD ONE LA 1,20 PUT IN LENGTH FOR XPRNT XPRNT EXMESS,(1) PRINT THIS MESSAGE LA 4,4 SET UP FOR INDEXING LA 1,1500 FOR LOOP COUNT SR 2,2 CLEAR REG BAL 3,*+8 BRANCH TO BCTR L 0,EXAREA(4) LOAD VALUE ST 0,EXAREA(4) STORE IT BACK LA 2,1(2) INCRMENT REG LTR 0,2 BCTR 1,3 LOOP THROUGH ST 0,EXAREA STORE REG L 13,4(13) PREV SAVE AREA LM 14,12,12(13) RESTORE REGS BR 14 RETURN EXAREA DC F'2' EXSAVE1 DC 18F'0' EXMESS DC C'0USER BEGINNING ' END $ENTRY $JOB ASSIST EXTES,I=5000 TITLE 'INTERPRETER TEST #0C - TIMING TEST - (EX)' * *** PROGRAM SHOULD COMPLETE 221. EXTESTZ CSECT * THIS PROGRAM USES TYPICAL INSTRUCTIONS TO OBTAIN TIMING. * USING *,15 STM 14,12,12(13) LR 12,13 LA 13,EXTZSAVE ST 12,4(13) ST 13,8(12) BALR 12,0 USING *,12 XLIMD EXTF1,200 LIMIT DUMP AREA LA 1,4000 SET UP FOR LOOP XPRNT EXTM1 SPACE 2 EXTLOOP L 0,EXTF1 A 0,EXTF2 ST 0,EXTF3 LA 0,2 SLL 3,1 AR 0,1 IC 0,EXTF1 MVC EXTC1,EXTC2 CLC EXTC1,EXTC3 BNE *+4 SUCCESSFUL BRANCH LTR 0,0 SR 0,0 TM EXTC4,X'FF' BO *+4 SUCCESSFUL BRANCH BZ *+4 UNSECCESSFUL BRANCH BAL 14,*+4 SUCCESSFUL BAL BCR 0,1 BCTR 0,0 BCT 1,EXTLOOP CONTINUE LOOPING XPRNT EXTM2 XDUMP EXTF1,300 XDUMP DC H'0' TEMPORARY BOMB OUT*********** L 13,4(13) LM 14,12,12(13) BR 14 EXTF1 DC F'1' EXTF2 DC F'2' EXTF3 DS F EXTC1 DS CL20 EXTC2 DC C'01234567890123456789' EXTC3 DC C'0123456789ABCDEFGHIJ' EXTC4 DC C'1' EXTM1 DC CL132'0********** USER BEGINNING **********' EXTM2 DC CL132'0********** USER ENDING **********' EXTZSAVE DC 18F'1' SAVE AREA END $ENTRY $JOB ASSIST EXTEST TITLE 'INTERPRETER TEST #0D - STANDARD INSTRUCTIONS - (EX)' * *** SHOULD COMPLETE WITH 0C1. EXTEST2 CSECT USING EXTEST2,15 NOTE INCOMING USING STM 14,12,12(13) SAVE REGS LR 1,13 MOVE OVER LA 13,EXSAVE2 @ SAVE AREA ST 1,4(13) LINK ST 13,8(1) LINK OTHER BALR 12,0 SET UP NEW BASE LA 2,16 PLACE VALUE LA 3,7 PLACE VALUE SR 0,0 CLEAR SPM 0 LR 1,2 NR 1,0 CLR 1,2 OR 1,2 XR 1,2 CR 1,3 AR 1,3 SR 1,3 ALR 1,3 SLR 1,3 LPR 1,3 LNR 1,3 LTR 1,3 LCR 1,3 BALR 6,0 LA 7,*+10 BALR 5,7 NOPR 0 BCTR 3,0 DECREMENT, NO BRANCH LA 7,*+10 SET UP FOR BCTR NOPR 0 SR 0,0 BNZ *+8 NOPR 0 NOPR 0 LA 2,10 LA 1,5 SET UP FOR MR MR 0,2 LA 3,3 DR 0,3 IC 0,EXC10 CH 0,EXH5 AH 0,EXH5 SH 0,EXH5 MH 0,EXH5 N 0,EX7 CL 0,EX7 O 0,EX7 X 0,EX7 C 0,EX7 A 0,EX7 S 0,EX7 AL 0,EX7 SL 0,EX7 EX 0,*-4 LA 1,7 EX 1,EXLA LH 0,EXH5 CVD 0,EXD CVB 1,EXD L 2,EXD STH 2,EXH STC 3,EXC ST 4,EXF LA 0,0(1,2) EXLA LA 5,45 EXH5 DC H'5' EXC10 DC C'1' EX7 DC F'7' EXD DS D EXF DS F EXH DC H'35' EXC DS C EXSAVE2 DS 18F SAVE AREA END $ENTRY $JOB ASSIST EXTEST TITLE 'TESTPROG FOR FLOATING PT ERRORS' * *** SHOULD 0C1 WITH CORRECT VALUES IN REGS. TESTD CSECT USING *,15 LD 0,ZERO LE 2,ZERO ZERO DC D'0' END $ENTRY $JOB ASSIST EXTEST TITLE 'CHECK FLOATING PT ASSEMBLY AND EXECUTION' * *** ASSEMBLE PROPERLY, ABEND WITH RIGHT #'S IN REGS TESTCDE CSECT USING *,15 LD 0,CON10 AD 0,CONM9 GET FLOATING -1 LD 2,CON95 MD 2,CON2 LD 4,CON100A DD 4,CON100MA GET -1 FLOATING PT LE 6,CONP1 AE 6,CONP1 GET FLOATING PT 2 AER 6,6 GET FLOATING PT 4 DC H'0' DUMP CON10 DC D'10.0' CONM9 DC D'-9.E0' CON95 DC D'.950' CON2 DC D'+2.00000' CON100A DC D'1.01E+2' CON100MA DC D'-1010E-1' NEGAYIVE OF PRECEDING CONP1 DC E'+1000E-3' 1 END $ENTRY $JOB ASSIST EXTEST TITLE 'EXECUTION TEST - CHECK TRT BUG - SHOULD 0C1' TESTTRT CSECT USING *,15 TRT A,B DO TEST,NOT FOUND XDUMP SR 1,1 CLEAR FOR INSERTS TRT C,B TEST,FOUND,LAST BYTE XDUMP TRT D,B TEST,FOUND IN MIDDLE XDUMP DC H'0' ABEND A DC X'0' WILL NOT BE FOUND B DC X'0001' TABLE C DC X'0001' WILL BE FOUND, LAST BYTE D DC X'0100' FOUND, NOT ON FIRST END $ENTRY $JOB ASSIST EXTEST TITLE 'EXECUTION TEST TO CHECK XDECI' * THIS JOB ABENDED ASSIST 10/15/70 WITH SOC4 & 10/14/70 WITH SOC6 */AUTUMN70 JOB 'I9481,T=0005,R=0600,Z4868','STALTER IRA A JR ' CS454.01 ** THIS BUG CAUSED BY USER READING IN MULTIPUNCHED DATA * AND SCANNING CHARACTERS OF VALUE > C'9'. * 0C7 INTERRUPT OCCURS IN XXXXDECI, 0C6 OR 0C4 IN XXXXSNAP. * *** SHOULD EXECUTE 29 INSTRUCTIONS, THEN RETURN NOMRALLY. CSECT USING *,15 * READ IN CHARACTER DATA XREAD CARD,8 XPRNT CC,9 XDECI 3,CARD+4 XDECI 2,CARD XDUMP * REGISTER 4 IS SECTION NUMBER LR 4,2 SRA 4,22 * REGISTER5 IS HOURS WORKED. LR 5,2 SRA 5,15 XDUMP N 5,X1 XDUMP * REGISTER 7 IS SALARY TO DATE. LR 6,2 LR 7,3 SRDA 6,25 N 7,X2 LR 6,3 SRA 6,13 N 6,X3 * REGISTER 8 IS BADGE NUMBERL LR 8,3 N 8,X4 XDUMP XDECO 4,CARD XDECO 5,CARD+12 XDECO 7,CARD+24 XDECO 6,CARD+36 XDECO 8,CARD+48 XPRNT CC,61 BR 14 DS 0F X1 DC X'0000007F' X2 DC X'003FFFFF' X3 DC X'00000FFF' X4 DC X'00001FFF' DS 3C CC DC C'0' CARD DS 60C END $ENTRY Û§  $STOP SAME AS END-OF-FILE ********** TEST RUN 0199 - APPEARS AFTER $STOP, SHOULD NOT BE READ AT ALL $JOB ASSIST TEST0199 ******ERROR IF THIS CARD APPEARS******