REP 32/40 ;11C1
ADDM P3,MAXMAX## ;INCREASE THE MAXIMUM VALUE FOR CORMAX
DPB P3,P1 ;INDICATE THAT THIS PAGE EXISTS IN NXMTAB
WIT
DPB P3,P1 ;INDICATE THIS PAGE EXISTS IN NXMTAB
PUSHJ P,MEMOZR ;ZERO OUT THE PAGE AND CHECK FOR NXM
JRST MEMON8 ;GOT AN NXM
ADDM P3,MAXMAX## ;INCREASE THE MAXIMUM VALUE FOR CORMAX
REP 1/41 ;11C2
;HERE WHEN MEMORY HAS BEEN MARKED ON LINE TO ADD ALL PAGES WHICH
; WERE OFF LINE TO THE FREE CORE LIST
WIT
;HERE WHEN MEMORY HAS BEEN MARKED ON LINE AND CHECKED FOR NXM.
;ADD ALL PAGES WHICH WERE OFF LINE TO THE FREE CORE LIST.
REP 21/41 ;11C3
;HERE TO REFERENCE PAGES ADDED TO THE FREE CORE LIST SO IF THEY ARE
; OFF LINE, IT WILL BE DETECTED BEFORE THEY ARE ATTEMPTED TO BE USED
MEMON9:
HRRZ T1,P2 ;FIRST PAGE SET ON LINE
IDIVI T1,^D36 ;COMPUTE WORD AND BIT POSITION WITHIN NXMTAB
MOVE T2,BITTBL##(T2) ;MASK CORRESPONDING TO THAT BIT POSITION
TDNE T2,NXMTAB##(T1) ;IS THIS PAGE NOW ON LINE?
JRST MEMO11 ;NO, FORGET IT
HRRZ T3,P2 ;YES, GET PAGE NUMBER
MOVE T4,.CPMAP##
IFE FTKLP,<
TRO T3,PM.ACC+PM.WRT;ACCESS ALLOWED AND WRITEABLE
HRLM T3,.MEUPM(T4)
>
IFN FTKLP,<
HRLI T3,(<PM.DCD>B2+PM.WRT)
MOVEM T3,.EUPMP/PAGSIZ##(T4)
>
CLRPGT (0,.EUPMP) ;FLUSH PAGE TABLE SO NEW MAPPING IS IN EFFECT