From: SMTP%"MACRO32@WKUVX1.WKU.EDU" 19-JAN-1995 10:13:29.15 To: EVERHART CC: Subj: RE: sch$postef X-ListName: "VMS Internals, MACRO, & BLISS Discussions" Warnings-To: <> Errors-To: owner-macro32@WKUVX1.WKU.EDU Sender: owner-macro32@WKUVX1.WKU.EDU Date: Thu, 19 Jan 1995 09:19:16 EST From: "Brian Schenkenberger, VAXman-" Reply-To: MACRO32@WKUVX1.WKU.EDU To: MACRO32@WKUVX1.WKU.EDU Message-ID: <0098AB06.325674E0.1@AdvSysCon.COM> Subject: RE: sch$postef In message <90800281105991/81965@SCOTS>, "Ian Miller - Softel Systems" writes: >I wish to set a local event flag inanother process. You only get three wishes!? >Can I CMKRNL then use SCH$POSTEF ? If so can someone tell me exactly what >the registers passed to and used by this routine. I have seen some examples >but would like somebody to check he VMS listings. Your first wish.... Here's an excerpt from the comment header of SCH$POSTEF. This should provide all the info you'll need. JSB G^SCH$POSTEF INPUTS: R1 - PROCESS IDENTIFICATION (PID) R2 - PRIORITY INCREMENT CLASS NUMBER R3 - EVENT FLAG NUMBER OUTPUT: R0 - COMPLETION STATUS CODE R4 - PCB ADDRESS OF PROCESS SPECIFIED BY PID COMPLETION CODES: SS$_NORMAL, SS$_NONEXPR, SS$_WASCLR, SS$_WASSET SS$_ILLEFC, SS$_UNASEFC SIDE EFFECTS: CAN CAUSE RESCHEDULING OF ONE OR MORE PROCESSES. ENVIRONMENT: NO SPINLOCKS NEEDED. >Also if I wish to clear a event flag for another processcan I just find the >PCB and clear the bit in PCB$L_EFCU or PCB$L_EFCS (with IPL=8 and SCHED spinlock >of course) ? Your second wish... Try the routine SCH$CLREF. This clears the bit using BBCCI -- no spinlock is held. JSB G^SCH$CLREF - WILL RETURN VIA RET ON ERROR. JSB G^SCH$CLREFR - ALTERNATE ENTRY POINT. ALWAYS RETURNS VIA RSB. INPUTS: R3 - EVENT FLAG NUMBER, ZERO FILLED. R4 - PCB ADDRESS OUTPUT: R0 - COMPLETION STATUS, ERROR IF BIT 0 CLEAR. COMPLETION CODES: SS$_WASCLR, SS$_WASSET, SS$_ILLEFC, SS$_UNASEFC Hope this helps and remember, you have only one wish left! ;-) ------- VAXman-