HPlogo SNA IMF Programmer's Reference Manual: HP 3000 MPE/iX Computer Systems > Chapter 2 Using SNA IMF Intrinsics

Types of Intrinsics: Wait and No-Wait I/O

» 

Technical documentation

» Feedback

 » Table of Contents

 » Glossary

 » Index

SNA IMF intrinsics can be divided into two categories: intrinsics used with standard (wait) MPE I/O, and intrinsics used with no-wait MPE I/O. With standard MPE I/O, a program that has issued an I/O request must suspend activity until the I/O request has finished. With no-wait I/O, or unblocked I/O, a program that has issued an I/O request may continue processing and issue additional I/O requests without waiting for previous I/O requests to finish. No-wait I/O overlaps the processing of multiple I/O requests, overlaps I/O with CPU processing, and responds to the completion of the first of several outstanding I/O requests.

Standard MPE Wait I/O

A program using standard MPE wait I/O must suspend activity after issuing an I/O request until the request has finished. It cannot issue another I/O request until the previous request has finished. Table 2-1 “SNA IMF Intrinsics, Wait and No-Wait I/O” shows the intrinsics that can be used with standard (wait) MPE I/O. These intrinsics can also be used with no-wait MPE I/O.

Table 2-1 SNA IMF Intrinsics, Wait and No-Wait I/O

Intrinsic

Function

ACQUIRE3270Allows your program to start Pass Thru on your own terminal or on any free terminal or printer that is not under MPE control.
ATTRLISTReturns the locations of attribute characters within a specified subsection or within all subsections of a screen.
CLOSE3270Emulates turning off a specified device.
ERR3270Returns the error message associated with a given SNA IMF intrinsic error number.
EXTFIELDATTR(for Asian users) Returns information about the attributes of a specified field, including the DBCS attribute.
FIELDATTRReturns information about the attributes of a specified field.
OPEN3270Emulates turning on the power of an emulated IBM 3278 display station or 3287 printer. The OPEN3270 intrinsic allocates the internal screen image used by SNA IMF.
PRINT3270Produces a hard copy of the internal screen image.
READFIELDReads a field of data from the internal screen image and returns the data to an HP application program.
READSCREENReads all or a specified part of the internal screen image and returns the data to an HP application program.
READSTREAMReads all or part of the untranslated host data stream.
RECV3270Allows your program to receive the screen after modification by the host. Also informs your program that the host has just sent data.
RESET3270Emulates pressing the [RESET] key on an IBM 3278 display station keyboard.
SCREENATTRReturns information about the attributes of the internal screen image.
STREAM3270Emulates typing a series of keystrokes on an IBM 3278 display station keyboard. Allows you to do special function key operations and to update multiple data fields with one intrinsic call.
TRAN3270Emulates pressing one of the transmit keys on the 3278 display station keyboard. TRAN3270 sends modified data to the host the next time the host polls the device.
VER3270Returns the number of the version of SNA IMF that is being executed on the HP 3000.
WRITEFIELDWrites data from the HP application program into an unprotected field of the internal screen image.
WRITESTREAMCreates the data stream that an HP application program sends to the host.

 

No-Wait MPE I/O

No-wait MPE I/O requires MPE privileged mode (PM) capability. However, you do not need PM capability to write an SNA IMF application that uses no-wait I/O, because the SNA IMF intrinsics themselves have PM capability. When your application calls the SNA IMF OPEN3270 intrinsic with bit 15 of the flags parameter set to 1 (the no-wait I/O option), your program can call any of the SNA IMF intrinsics with no-wait I/O, whether or not you have PM capability.

If you do not have PM capability, SNA IMF intrinsics are the only intrinsics you can call with no-wait I/O. If you call, for example, the MPE FREAD intrinsic, your program will suspend processing until the I/O request has finished, even though you specified no-wait I/O in your OPEN3270 intrinsic call.

If your program will use no-wait MPE I/O, it must be written in COBOL II, FORTRAN, Pascal, C, or SPL. The IOWAIT and IODONTWAIT intrinsics, which are used with no-wait I/O, return a functional value, pass parameters by value, allow a variable number of parameters, and set condition codes. Neither COBOL nor BASIC has these capabilities.

Table 2-2 “SNA IMF Intrinsics, No-Wait I/O Only” shows the intrinsics used only with no-wait MPE I/O. Two of these intrinsics, IOWAIT and IODONTWAIT, are actually MPE intrinsics. You can call them directly using SNA IMF/V, but if you are using SNA IMF/XL, you must use the SNA IMF/XL intrinsics IOWAIT3270 and IODONTWAIT3270, which in turn call the MPE intrinsics IOWAIT and IODONTWAIT.

In addition to the intrinsics listed in Table 2-2 “SNA IMF Intrinsics, No-Wait I/O Only”, all of the intrinsics listed in Table 2-1 “SNA IMF Intrinsics, Wait and No-Wait I/O” can be used with no-wait MPE I/O.

Table 2-2 SNA IMF Intrinsics, No-Wait I/O Only

Intrinsic

Function

ABORT3270Aborts an outstanding no-wait RECV3270 or TRAN3270 request.
IODONTWAIT(SNA IMF/V only) Informs a user program that a previous I/O operation has completed.
IODONTWAIT3270(SNA IMF/XL only) Informs a user program that a previous I/O operation has completed.
IOWAIT(SNA IMF/V only) Waits for a previous no-wait I/O request to complete.
IOWAIT3270(SNA IMF/XL only) Waits for a previous no-wait I/O request to complete.

 

WARNING! Privileged mode bypasses the normal checks and restrictions that apply to standard users (those using blocked I/O). It is possible for a privileged mode program to destroy file integrity, including the MPE operating system. On request, Hewlett-Packard will investigate and attempt to resolve problems resulting from using privileged mode. Although this service is not available under the standard service contract, it is available on a time and materials basis. Hewlett-Packard does not support, under any type of contract, corrections or changes to the MPE operating system.
Feedback to webmaster