Trailing-Edge
-
PDP-10 Archives
-
BB-D351B-SM
-
sources/nbio.mac
There are 2 other files named nbio.mac in the archive. Click here to see a list.
; NBIO - Non-blocking I/O module
;
;
; COPYRIGHT (c) 1979, 1980
; DIGITAL EQUIPMENT CORPORATION
;
; This software is furnished under a license and may be used
; and copied only in accordance with the terms of such license
; and with the inclusion of the above copyright notice. This
; software or any other copies thereof may not be provided or
; otherwise made available to any other person. No title to
; and ownership of the software is hereby transferred.
;
; The information in this software is subject to change
; without notice and should not be construed as a commitment
; by DIGITAL EQUIPMENT CORPORATION.
;
; DIGITAL assumes no responsibility for the use or reliability
; of its software on equipment which is not supplied by
; DIGITAL.
;
; Macro - SNOOZE
;
; Function - This macro allows IBMSPL to deschedule tasks in an I/O wait
; for some FE device action to finish. D60JSY checks during assembly
; for a SNOOZE macro definition. If there is one, it will be used
; instead of it's default sleep routine.
;
; Parameters -
;
; MS/ Number of milliseconds to wait
; TYPE/ If set to keyword IOWAIT, will be desceduled until
; the I/O activity flag is set.
Define SNOOZE (MS,TYPE) <
MOVX S1,MS/^d333 ;; Time delay in 1/3 seconds
AOS S1 ;; Always delay for 1/3 second
IFIDN <TYPE>,<IOWAIT>,<
TLO S1,10 ;; TW.IOD - SCHED flag
>;End if TYPE=IOWAIT
PUSHJ P,SNZ## ;; Call IBMSPL external DESCHED rtn
>;End SNOOZE
; IBMSPL dependent test flags
FTNDNU==-1 ; Stop checking for DSR during D60OPN call