diff options
author | Joe Hunkeler <jhunkeler@gmail.com> | 2015-08-11 16:51:37 -0400 |
---|---|---|
committer | Joe Hunkeler <jhunkeler@gmail.com> | 2015-08-11 16:51:37 -0400 |
commit | 40e5a5811c6ffce9b0974e93cdd927cbcf60c157 (patch) | |
tree | 4464880c571602d54f6ae114729bf62a89518057 /pkg/images/tv/display/iisio.x | |
download | iraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz |
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'pkg/images/tv/display/iisio.x')
-rw-r--r-- | pkg/images/tv/display/iisio.x | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/pkg/images/tv/display/iisio.x b/pkg/images/tv/display/iisio.x new file mode 100644 index 00000000..ad3902ed --- /dev/null +++ b/pkg/images/tv/display/iisio.x @@ -0,0 +1,43 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mach.h> +include <knet.h> +include "zdisplay.h" +include "iis.h" + +# IISIO -- Synchronous i/o to the IIS. + +procedure iisio (buf, nbytes, status) + +short buf[ARB] +int nbytes +int status + +int xferid +int and() +include "iis.com" + +begin + call iiswt (iischan, status) + xferid = XFERID(hdr) + + if (swap_bytes) + call bswap2 (hdr, 1, hdr, 1, SZB_IISHDR) + call zawrgd (iischan, hdr, SZB_IISHDR, 0) + call iiswt (iischan, status) + + if (and (xferid, IREAD) != 0) { + call zardgd (iischan, buf, nbytes, 0) + call iiswt (iischan, status) + if (swap_bytes && and(xferid,PACKED) == 0) + call bswap2 (buf, 1, buf, 1, nbytes) + } else { + if (swap_bytes && and(xferid,PACKED) == 0) + call bswap2 (buf, 1, buf, 1, nbytes) + call zawrgd (iischan, buf, nbytes, 0) + call iiswt (iischan, status) + } + + if (status <= 0) + status = EOF +end |