*DECK EXMREQ
PROC MEMREQ ( (NMRU) );
BEGIN # MEMREQ #
*IF DEF,IMS
#
**
*
* 1. PROC NAME AUTHOR DATE
* MEMREQ M. D. PICKARD 76/11/19
*
* 2. FUNCTION DESCRIPTION
* MEMREQ WILL ALTER THE ASSIGNED FIELD LENGTH OF THE CONTROL
* POINT BY A SPECIFIED NUMBER OF MEMORY REQUEST UNITS (MRU).
*
* 3. METHOD USED
* MULTIPLY THE NUMBER OF MRU"S REQUESTED BY MRU SIZE, ADD
* THAT TO THE CURRENT FIELD LENGTH AND MAKE MEMORY REQUEST
* TO THE OPERATING SYSTEM.
*
* 4. ENTRY PARAMETERS
* A. FORMAL PARAMETERS
* NMRU NUMBER OF MEMORY REQUEST UNITS REQUESTED
*
* B. TSBM GLOBAL
* CTSBLWA LOGICAL LAST WORD ADDRESS OF FIELD LENGTH
*
* 5. EXIT PARAMETERS
* CTSBLWA NEW LOGICAL LAST WORD ADDRESS
*
* 6. COMDECKS CALLED
* CYBERDEFS CYBER DEPENDENT VALUES
*
* 7. ROUTINES CALLED
* MEMORY MAKE MEMORY REQUEST TO OPERATING SYSTEM
*
* 8. DAYFILE MESSAGES
* NONE.
*
* ***** NOTE *****
*
* THIS ROUTINE IS OPERATING SYSTEM DEPENDENT
*
#
*ENDIF
CONTROL NOLIST; # CYBERDEFS, TSBDATA #
*CALL CYBERDEFS
*CALL TSBDATA
CONTROL LIST;
ITEM
NMRU U; # NUMBER OF MEMORY REQUEST UNITS REQUEST #
# MAY BE POSITIVE OR NEGATIVE #
XREF
BEGIN
PROC MEMORY;
END
ITEM
TYPE C(WC) = "CM "; # TYPE OF MEMORY REQUEST #
ARRAY STATIS P(1); # STATUS WORD PASSED TO MEMORY #
ITEM
REQFL U (0,0,HWL), # REQUESTED FIELD LENGTH #
REQZERO U (0,HWL,HWL); # LOWER HALF OF STATUS WORD #
REQZERO[0] = 0; # CLEAR PART OF STATUS WORD #
REQFL[0] = ( CTSBLWA + 9 ) + ( NMRU * MRU ); # INITIAL FIELD LEN.#
MEMORY(TYPE,STATIS); # REQUEST THE NEW FL #
CTSBLWA = REQFL[0] - 9; # SET CURRENT TSB LWA #
RETURN;
END TERM # MEMREQ #