ibm:vm370-lib:macro:dmsfrt.macro_src
Table of Contents
DMSFRT Source
References
- Fixes Applied : 0
- This Source Date : Saturday, December 9, 1978
- Last Fix ID : [Unmodified]
Source Listing
- DMSFRT.MACRO.txt
- MACRO 00001000
- DMSFRT &CSECT 00002000
- PUSH PRINT 00002200
- AIF ('&SYSPARM' NE 'SUP').ACC01 00002400
- PRINT OFF,NOGEN 00002600
- .ACC01 ANOP 00002800
- AIF ('&CSECT' NE 'CSECT' AND '&CSECT' NE 'TEST').D 00003000
- .C ANOP 00004000
- ENTRY DMSFRT 00005000
- DMSFRT DS 0D 00006000
- AIF ('&CSECT' EQ 'CSECT').CE 00007000
- FRDSECT EQU * 00008000
- AGO .CE 00009000
- .D ANOP 00010000
- FRDSECT DSECT 00011000
- .CE ANOP 00012000
- SPACE 00013000
- * THE FOLLOWING ARE THE FOUR FREE CHAIN ELEMENT HEADER BLOCKS 00014000
- FREELN DC 3F'0',AL1(FLNU+FLPA,NUCKEY,NUCCODE,0) LOWCORE NUCLEUS 00015000
- FREELU DC 3F'0',AL1(0,USERKEY,USERCODE,0) LOWCORE USER CHAIN 00016000
- FREEHN DC 3F'0',AL1(FLNU+FLHC,NUCKEY,NUCCODE,0) HIGHCORE NUCLEUS 00017000
- FREEHU DC 3F'0',AL1(FLHC,USERKEY,USERCODE,0) HIGHCORE USER CHAIN 00018000
- SPACE 00019000
- * THE FOLLOWING SYMBOLIC EQUATES DESCRIBE THE FORMAT OF EACH OF THE 00020000
- * FOUR FREE CHAIN ELEMENT HEADER BLOCKS. 00021000
- POINTER EQU 0 POINT TO FIRST FREE ELEMENT 00022000
- NUM EQU 4 NUMBER OF ELEMENTS IN CHAIN 00023000
- MAX EQU 8 MAXIMUM SIZE OF AN ELEMENT 00024000
- FLAGS EQU 12 FLAG BYTE 00025000
- SKEY EQU 13 STORAGE KEY FOR THIS CHAIN 00026000
- TCODE EQU 14 FREETAB TABLE CODE 00027000
- *UNUSED EQU 15 00028000
- BLOCKLEN EQU 16 SYMBOLIC LENGTH OF BLOCK 00029000
- SPACE 00030000
- * DEFINITIONS FOR THE 'FLAGS' FLAG BYTE 00031000
- FLCLN EQU X'80' CLEAN-UP FLAG 00032000
- FLCLB EQU X'40' CLOBBERED CHAIN FLAG 00033000
- FLHC EQU X'20' HIGH-CORE FLAG 00034000
- FLNU EQU X'10' NUCLEUS FLAG 00035000
- FLPA EQU X'08' PAGE AVAILABLE ON CHAIN 00036000
- SPACE 00037000
- * DEFINITIONS FOR 'SKEY' STORAGE KEY VALUES 00038000
- USERKEY EQU X'E0' USER STORAGE KEY 00039000
- NUCKEY EQU X'F0' NUCLEUS STORAGE KEY 00040000
- SPACE 00041000
- * DEFINITIONS FOR 'TCODE' FREETAB TABLE CODE VALUES 00042000
- USERCODE EQU 1 USER FREE STORAGE PAGE 00043000
- NUCCODE EQU 2 NUCLEUS FREE STORAGE PAGE 00044000
- TRNCODE EQU 3 TRANSIENT AREA PAGE 00045000
- USARCODE EQU 4 USER AREA PAGE 00046000
- SYSCODE EQU 5 SYSTEM PAGE 00047000
- MAXCODE EQU 5 MAXIMUM POSSIBLE CODE VALUE 00048000
- SPACE 3 00049000
- AFREETAB DC A(0) ADDRESS OF FREETAB TABLE 00050000
- FREELOW1 DS F ORIGINAL VALUE OF FREELOWE *00051000
- (SET BY INIT2) 00052000
- ACALL DS A ADDRESS OF CALLER (FOR ERRORS) 00053000
- SPACE 2 00054000
- * FLAGS SET BY EXAMINIG SVC 203 HALFWORD CODE 00055000
- FREEFLG1 DC BL1'0' 00056000
- FRF1C EQU X'80' CONDITIONAL REQUEST 00057000
- FRF1V EQU X'40' VARIABLE REQUEST 00058000
- FRF1N EQU X'20' NUCLEUS REQUEST 00059000
- FRF1E EQU X'10' FREE (VS FRET) REQUEST 00060000
- FRF1L EQU X'08' LOW-CORE IS OK 00061000
- FRF1H EQU X'04' HIGH-CORE IS OK 00062000
- FRF1M EQU X'02' MESSAGES WANTED ON ERROR 00063000
- FRF1B EQU X'01' 'TYPCALL' EQUALS 'BALR' IN MACRO 00064000
- SPACE 00065000
- * THE FOLLOWING BYTE HOLDS FLAGS INTERNAL TO THE DMSFRE ROUTINE. 00066000
- FREEFLG2 DC BL1'0' 00067000
- FRF2CL EQU X'80' CLEANUP FLAG 00068000
- FRF2SVP EQU X'40' SCHVPGE FLAG 00069000
- FRF2NOI EQU X'20' 2ND INITIALIZATION ROUTINE HAS *00070000
- NOT YET BEEN CALLED BY DMSINS 00071000
- FRF2CKE EQU X'10' DO A 'CHECK' EQCH TIME FREE *00072000
- OR FRET IS CALLED 00073000
- FRF2CKT EQU X'08' DO A CHECK THIS TI ME 00074000
- FRF2CKX EQU X'04' EXECUTING 'CHECK' ROUTINE NOW 00075000
- SPACE 4 00076000
- * FREE CHAIN ELEMENT DESCRIPTION. 00077000
- *POINTER EQU 0 POINTER TO NEXT FREE ELEMENT 00078000
- SIZE EQU 4 SIZE OF THIS ELEMENT IN BYTES 00079000
- EJECT 00080000
- POP PRINT 00080100
- MEND 00081000
ibm/vm370-lib/macro/dmsfrt.macro_src.txt ยท Last modified: 2023/08/06 13:38 by Site Administrator