* %GOTO PICABSL; /* 00900001 MACRO 01800001 IHAPICA 02700001 PICA DSECT 03600001 SPACE 04500001 ********************************************************************** 05400001 * 05450001 * LEVEL=1 05500001 * 06300001 * PROGRAM INTERRUPTION CONTROL AREA (PICA) 07200001 * 08100001 * A PICA IS CREATED AND INITIALIZED BY THE EXECUTABLE CODE 09000001 * PRODUCED BY THE EXPANSION OF THE SPIE MACRO DURING AN 09900001 * ASSEMBLY OF THE SOURCE PROGRAM. AT THIS TIME, THE PICA IS 10800001 * INITIALIZED WITH THE PROGRAM MASK, THE ADDRESS OF THE USER 11700001 * PROGRAM-INTERRUPTION EXIT ROUTINE, AND AN INTERRUPTION MASK. 12600001 * 13500001 ********************************************************************** 14400001 SPACE 15300001 PICAEXIT DS 0F - 16200001 PICAPRMK DS B - PROGRAM MASK TO BE USED IN THE PSW - 17100001 * BITS 0-3 ARE ZERO; BITS 4-7 CONTAIN MASK 18000001 PICEXITA DS AL3 - ADDRESS OF THE USER'S PROGRAM INTER- 18900001 * RUPTION EXIT RTN 19800001 PICAITMK DS 0F - MASK WHICH INDICATES ON WHICH PROGRAM 20700001 * INTERRUPTION TYPES THE EXIT RTN IS TO 21600001 * BE USED - LENGTH IS 4 BYTES. 22500001 PICITMK1 DS BL1 - 23400001 PICAEXT EQU X'80' - AN EXTENDED PICA IS IN EFFECT 24300001 PICACD1 EQU X'40' - OPERATION 25200001 PICACD2 EQU X'20' - PRIVILEGED OPERATION 26100001 PICACD3 EQU X'10' - EXECUTE 27000001 PICACD4 EQU X'08' - PROTECTION 27900001 PICACD5 EQU X'04' - ADDRESSING 28800001 PICACD6 EQU X'02' - SPECIFICATION 29700001 PICACD7 EQU X'01' - DATA INTRPT HANDLED 30600001 PICITMK2 DS BL1 - 31500001 PICACD8 EQU X'80' - FIXED-POINT OVERFLOW 32400001 PICACD9 EQU X'40' - FIXED-POINT DIVIDE 33300001 PICACD10 EQU X'20' - DECIMAL OVERFLOW 34200001 PICACD11 EQU X'10' - DECIMAL DIVIDE 35100001 PICACD12 EQU X'08' - EXPONENT OVERFLOW 36000001 PICACD13 EQU X'04' - EXPONENT UNDERFLOW 36900001 PICACD14 EQU X'02' - SIGNIFICANCE 37800001 PICACD15 EQU X'01' - FLOATING-POINT DIVIDE 38700001 PICITMK3 DS BL1 - 39600001 PICACD17 EQU X'40' - PAGE TRANSLATION 40500001 PICITMK4 DS BL1 - 41400001 MEND , */ 42300001 *%PICABSL : ; 43200001 *DECLARE 44100001 * 1 PICA BASED(PICAPTR), 45000001 * 45900001 */* **************************************************************** */ 46800001 */* */ 46850001 */* LEVEL=1 */ 46900001 */* */ 47700001 */* PROGRAM INTERRUPTION CONTROL AREA (PICA) */ 48600001 */* */ 49500001 */* A PICA IS CREATED AND INITIALIZED BY THE EXECUTABLE CODE */ 50400001 */* PRODUCED BY THE EXPANSION OF THE SPIE MACRO DURING AN */ 51300001 */* ASSEMBLY OF THE SOURCE PROGRAM. AT THIS TIME, THE PICA IS */ 52200001 */* INITIALIZED WITH THE PROGRAM MASK, THE ADDRESS OF THE USER */ 53100001 */* PROGRAM-INTERRUPTION EXIT ROUTINE, AND AN INTERRUPTION MASK */ 54000001 */* */ 54900001 */* **************************************************************** */ 55800001 * 56700001 * 2 PICAEXIT FIXED(31), 57600001 * 3 PICAPRMK CHAR(1), /* PROGRAM MASK TO BE USED 58500001 * IN THE PSW - BITS 0-3 59400001 * ARE ZERO; BITS 4-7 60300001 * CONTAIN MASK */ 61200001 * 3 PICEXITA PTR(24) BDY(BYTE), /* ADDRESS OF THE USER'S 62100001 * PROGRAM INTER- RUPTION 63000001 * EXIT RTN */ 63900001 * 2 PICAITMK FIXED(31), /* MASK WHICH INDICATES ON 64800001 * WHICH PROGRAM 65700001 * INTERRUPTION TYPES THE 66600001 * EXIT RTN IS TO BE USED 67500001 * - LENGTH IS 4 BYTES. */ 68400001 * 3 PICITMK1 CHAR(1), 69300001 * 4 PICAEXT BIT(1), /* AN EXTENDED PICA IS IN 70200001 * EFFECT */ 71100001 * 4 PICACD1 BIT(1), /* OPERATION */ 72000001 * 4 PICACD2 BIT(1), /* PRIVILEGED OPERATION */ 72900001 * 4 PICACD3 BIT(1), /* EXECUTE */ 73800001 * 4 PICACD4 BIT(1), /* PROTECTION */ 74700001 * 4 PICACD5 BIT(1), /* ADDRESSING */ 75600001 * 4 PICACD6 BIT(1), /* SPECIFICATION */ 76500001 * 4 PICACD7 BIT(1), /* DATA INTRPT HANDLED */ 77400001 * 3 PICITMK2 CHAR(1), 78300001 * 4 PICACD8 BIT(1), /* FIXED-POINT OVERFLOW */ 79200001 * 4 PICACD9 BIT(1), /* FIXED-POINT DIVIDE */ 80100001 * 4 PICACD10 BIT(1), /* DECIMAL OVERFLOW */ 81000001 * 4 PICACD11 BIT(1), /* DECIMAL DIVIDE */ 81900001 * 4 PICACD12 BIT(1), /* EXPONENT OVERFLOW */ 82800001 * 4 PICACD13 BIT(1), /* EXPONENT UNDERFLOW */ 83700001 * 4 PICACD14 BIT(1), /* SIGNIFICANCE */ 84600001 * 4 PICACD15 BIT(1), /* FLOATING-POINT DIVIDE */ 85500001 * 3 PICITMK3 CHAR(1), 86400001 * 4 * BIT(1), /* RESERVED */ 87300001 * 4 PICACD17 BIT(1), /* PAGE TRANSLATION */ 88200001 * 4 * BIT(1), /* RESERVED */ 89100001 * 4 * BIT(1), /* RESERVED */ 90000001 * 4 * BIT(1), /* RESERVED */ 90900001 * 4 * BIT(1), /* RESERVED */ 91800001 * 4 * BIT(1), /* RESERVED */ 92700001 * 4 * BIT(1), /* RESERVED */ 93600001 * 3 PICITMK4 CHAR(1); 94500001