Table of Contents

DMSIOW Abstract

Statistics

Type ASSEMBLE
Source Lines : 222
Fixes Applied : 1
Most Recent Version : Tuesday, December 12, 1978
Last Fix ID : [HRC002DS]

Synopsis

Module

       DMSIOW                                                   P3031

Function

       PLACE THE VIRTUAL CPU IN THE WAIT STATE UNTIL THE COMPLETION
       OF AN I/O OPERATION ON ONE OR MORE DEVICES.

Attributes

       NUCLEUS RESIDENT,  REENTRANT, CALLED VIA SVC  OR BALR
       IF CALLER'S SYSTEM MASK IS X'00'.

Operation

       WAIT LOOKS UP  THE FIRST SYMBOLIC DEVICE  NAME IN THE
       USER-DEFINED   INTERRUPT   TABLE  (IF   ANY   --   AS
       INITIALIZED BY  THE HNDINT  FUNCTION PROGRAM),  OR IN
       THE DEVICE  TABLE (DEVTAB)  IN THE  NUCLEUS.  IF  THE
       DEVICE IS  NOT IN EITHER  TABLE, WAIT RETURNS  TO THE
       CALLER WITH ERROR CODE 1.

       IF THE  DEVICE WAS FOUND,  WAIT PUTS  THE PSEUDO-WAIT
       BIT IN THE CORRESPONDING DEVICE TABLE ENTRY ON.  WAIT
       REPEATS THIS PROCEDURE FOR  EACH SYMBOLIC DEVICE NAME
       ON THE PARAMETER  LIST. IT THEN LOADS A  PSW WITH THE
       WAIT BIT  ON.  THIS  CAUSES THE  SYSTEM TO  ENTER THE
       WAIT  STATE UNTIL  AN  I/O OPERATION  IN  ONE OF  THE
       SPECIFIED  DEVICES   IS  COMPLETED.  AFTER   THE  I/O
       OPERATION  IS  COMPLETED, IOINT  RETURNS  CONTROL  TO
       WAIT,  WHICH   PLACES  THE   SYMBOLIC  NAME   OF  THE
       INTERUPTING DEVICE (THAT IS, THE  DEVICE ON WHICH THE
       I/O OPERATION WAS COMPLETED) IN THE LAST ENTRY IN THE
       PARAMETER LIST AND RETURNS CONTROL TO THE CALLER.

       WAIT CAN BE CALLED VIA SVC,  OR CAN ALSO BE CALLED BY
       BALR IF THE  CALLER'S SYSTEM MASK IS  X'00'. FOR DISK
       RESIDENT PROGRAMS DOING THEIR OWN I/O OPERATIONS WAIT
       SHOULD BE CALLED VIA SVC.

Calls to Other Routines

       NONE.