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 /sys/etc/gen | |
download | iraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz |
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'sys/etc/gen')
-rw-r--r-- | sys/etc/gen/miireadd.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/miireadi.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/miireadl.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/miireadr.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/miireads.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/miiwrited.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/miiwritei.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/miiwritel.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/miiwriter.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/miiwrites.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/mkpkg | 30 | ||||
-rw-r--r-- | sys/etc/gen/nmireadb.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmireadd.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmireadi.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmireadl.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmireadr.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmireads.x | 50 | ||||
-rw-r--r-- | sys/etc/gen/nmiwriteb.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/nmiwrited.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/nmiwritei.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/nmiwritel.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/nmiwriter.x | 28 | ||||
-rw-r--r-- | sys/etc/gen/nmiwrites.x | 28 |
23 files changed, 888 insertions, 0 deletions
diff --git a/sys/etc/gen/miireadd.x b/sys/etc/gen/miireadd.x new file mode 100644 index 00000000..de15b8c1 --- /dev/null +++ b/sys/etc/gen/miireadd.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIREAD -- Read a block of data stored externally in MII format. +# Data is returned in the format of the local host machine. + +int procedure mii_readd (fd, spp, maxelem) + +int fd #I input file +double spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int miipksize(), miinelem(), read() +errchk read() + +long note() + +begin + pksize = miipksize (maxelem, MII_DOUBLE) + nelem = EOF + + if (pksize > maxelem * SZ_DOUBLE) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_DOUBLE)) + call miiupkd (Memc[bp], spp, nelem, TY_DOUBLE) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_DOUBLE)) + call miiupkd (spp, spp, nelem, TY_DOUBLE) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/miireadi.x b/sys/etc/gen/miireadi.x new file mode 100644 index 00000000..666166e6 --- /dev/null +++ b/sys/etc/gen/miireadi.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIREAD -- Read a block of data stored externally in MII format. +# Data is returned in the format of the local host machine. + +int procedure mii_readi (fd, spp, maxelem) + +int fd #I input file +int spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int miipksize(), miinelem(), read() +errchk read() + +long note() + +begin + pksize = miipksize (maxelem, MII_INT) + nelem = EOF + + if (pksize > maxelem * SZ_INT) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_INT)) + call miiupki (Memc[bp], spp, nelem, TY_INT) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_INT)) + call miiupki (spp, spp, nelem, TY_INT) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/miireadl.x b/sys/etc/gen/miireadl.x new file mode 100644 index 00000000..7a43688c --- /dev/null +++ b/sys/etc/gen/miireadl.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIREAD -- Read a block of data stored externally in MII format. +# Data is returned in the format of the local host machine. + +int procedure mii_readl (fd, spp, maxelem) + +int fd #I input file +long spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int miipksize(), miinelem(), read() +errchk read() + +long note() + +begin + pksize = miipksize (maxelem, MII_LONG) + nelem = EOF + + if (pksize > maxelem * SZ_LONG) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_LONG)) + call miiupkl (Memc[bp], spp, nelem, TY_LONG) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_LONG)) + call miiupkl (spp, spp, nelem, TY_LONG) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/miireadr.x b/sys/etc/gen/miireadr.x new file mode 100644 index 00000000..f3cded45 --- /dev/null +++ b/sys/etc/gen/miireadr.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIREAD -- Read a block of data stored externally in MII format. +# Data is returned in the format of the local host machine. + +int procedure mii_readr (fd, spp, maxelem) + +int fd #I input file +real spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int miipksize(), miinelem(), read() +errchk read() + +long note() + +begin + pksize = miipksize (maxelem, MII_REAL) + nelem = EOF + + if (pksize > maxelem * SZ_REAL) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_REAL)) + call miiupkr (Memc[bp], spp, nelem, TY_REAL) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_REAL)) + call miiupkr (spp, spp, nelem, TY_REAL) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/miireads.x b/sys/etc/gen/miireads.x new file mode 100644 index 00000000..acd7481a --- /dev/null +++ b/sys/etc/gen/miireads.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIREAD -- Read a block of data stored externally in MII format. +# Data is returned in the format of the local host machine. + +int procedure mii_reads (fd, spp, maxelem) + +int fd #I input file +short spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int miipksize(), miinelem(), read() +errchk read() + +long note() + +begin + pksize = miipksize (maxelem, MII_SHORT) + nelem = EOF + + if (pksize > maxelem * SZ_SHORT) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_SHORT)) + call miiupks (Memc[bp], spp, nelem, TY_SHORT) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, miinelem (nchars, MII_SHORT)) + call miiupks (spp, spp, nelem, TY_SHORT) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/miiwrited.x b/sys/etc/gen/miiwrited.x new file mode 100644 index 00000000..0b8d45c1 --- /dev/null +++ b/sys/etc/gen/miiwrited.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIWRITE -- Write a block of data to a file in MII format. +# The input data is in the host system native binary format. + +procedure mii_writed (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int miipksize() + +begin + call smark (sp) + + bufsize = miipksize (nelem, MII_DOUBLE) + call salloc (bp, bufsize, TY_CHAR) + + call miipakd (spp, Memc[bp], nelem, TY_DOUBLE) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/miiwritei.x b/sys/etc/gen/miiwritei.x new file mode 100644 index 00000000..aa52be4a --- /dev/null +++ b/sys/etc/gen/miiwritei.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIWRITE -- Write a block of data to a file in MII format. +# The input data is in the host system native binary format. + +procedure mii_writei (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int miipksize() + +begin + call smark (sp) + + bufsize = miipksize (nelem, MII_INT) + call salloc (bp, bufsize, TY_CHAR) + + call miipaki (spp, Memc[bp], nelem, TY_INT) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/miiwritel.x b/sys/etc/gen/miiwritel.x new file mode 100644 index 00000000..f9b800a5 --- /dev/null +++ b/sys/etc/gen/miiwritel.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIWRITE -- Write a block of data to a file in MII format. +# The input data is in the host system native binary format. + +procedure mii_writel (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int miipksize() + +begin + call smark (sp) + + bufsize = miipksize (nelem, MII_LONG) + call salloc (bp, bufsize, TY_CHAR) + + call miipakl (spp, Memc[bp], nelem, TY_LONG) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/miiwriter.x b/sys/etc/gen/miiwriter.x new file mode 100644 index 00000000..94dcec38 --- /dev/null +++ b/sys/etc/gen/miiwriter.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIWRITE -- Write a block of data to a file in MII format. +# The input data is in the host system native binary format. + +procedure mii_writer (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int miipksize() + +begin + call smark (sp) + + bufsize = miipksize (nelem, MII_REAL) + call salloc (bp, bufsize, TY_CHAR) + + call miipakr (spp, Memc[bp], nelem, TY_REAL) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/miiwrites.x b/sys/etc/gen/miiwrites.x new file mode 100644 index 00000000..ec2f48aa --- /dev/null +++ b/sys/etc/gen/miiwrites.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <mii.h> + +# MIIWRITE -- Write a block of data to a file in MII format. +# The input data is in the host system native binary format. + +procedure mii_writes (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int miipksize() + +begin + call smark (sp) + + bufsize = miipksize (nelem, MII_SHORT) + call salloc (bp, bufsize, TY_CHAR) + + call miipaks (spp, Memc[bp], nelem, TY_SHORT) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/mkpkg b/sys/etc/gen/mkpkg new file mode 100644 index 00000000..5437d80d --- /dev/null +++ b/sys/etc/gen/mkpkg @@ -0,0 +1,30 @@ +# Make the ETC portion of the system library libsys.a. + +$checkout libsys.a lib$ +$update libsys.a +$checkin libsys.a lib$ +$exit + +libsys.a: + miireadd.x <mii.h> + miireadi.x <mii.h> + miireadl.x <mii.h> + miireadr.x <mii.h> + miireads.x <mii.h> + miiwrited.x <mii.h> + miiwritei.x <mii.h> + miiwritel.x <mii.h> + miiwriter.x <mii.h> + miiwrites.x <mii.h> + + nmireadd.x <nmi.h> + nmireadi.x <nmi.h> + nmireadl.x <nmi.h> + nmireadr.x <nmi.h> + nmireads.x <nmi.h> + nmiwrited.x <nmi.h> + nmiwritei.x <nmi.h> + nmiwritel.x <nmi.h> + nmiwriter.x <nmi.h> + nmiwrites.x <nmi.h> + ; diff --git a/sys/etc/gen/nmireadb.x b/sys/etc/gen/nmireadb.x new file mode 100644 index 00000000..c3c0f75e --- /dev/null +++ b/sys/etc/gen/nmireadb.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMIREAD -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_readb (fd, spp, maxelem) + +int fd #I input file +bool spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_BOOL) + nelem = EOF + + if (pksize > maxelem * SZ_BOOL) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_BOOL)) + call nmiupkb (Memc[bp], spp, nelem, TY_BOOL) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_BOOL)) + call nmiupkb (spp, spp, nelem, TY_BOOL) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmireadd.x b/sys/etc/gen/nmireadd.x new file mode 100644 index 00000000..2d7c086a --- /dev/null +++ b/sys/etc/gen/nmireadd.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_READ -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_readd (fd, spp, maxelem) + +int fd #I input file +double spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_DOUBLE) + nelem = EOF + + if (pksize > maxelem * SZ_DOUBLE) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_DOUBLE)) + call nmiupkd (Memc[bp], spp, nelem, TY_DOUBLE) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_DOUBLE)) + call nmiupkd (spp, spp, nelem, TY_DOUBLE) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmireadi.x b/sys/etc/gen/nmireadi.x new file mode 100644 index 00000000..c07d5914 --- /dev/null +++ b/sys/etc/gen/nmireadi.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_READ -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_readi (fd, spp, maxelem) + +int fd #I input file +int spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_INT) + nelem = EOF + + if (pksize > maxelem * SZ_INT) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_INT)) + call nmiupki (Memc[bp], spp, nelem, TY_INT) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_INT)) + call nmiupki (spp, spp, nelem, TY_INT) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmireadl.x b/sys/etc/gen/nmireadl.x new file mode 100644 index 00000000..888beedf --- /dev/null +++ b/sys/etc/gen/nmireadl.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_READ -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_readl (fd, spp, maxelem) + +int fd #I input file +long spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_LONG) + nelem = EOF + + if (pksize > maxelem * SZ_LONG) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_LONG)) + call nmiupkl (Memc[bp], spp, nelem, TY_LONG) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_LONG)) + call nmiupkl (spp, spp, nelem, TY_LONG) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmireadr.x b/sys/etc/gen/nmireadr.x new file mode 100644 index 00000000..e8338400 --- /dev/null +++ b/sys/etc/gen/nmireadr.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_READ -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_readr (fd, spp, maxelem) + +int fd #I input file +real spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_REAL) + nelem = EOF + + if (pksize > maxelem * SZ_REAL) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_REAL)) + call nmiupkr (Memc[bp], spp, nelem, TY_REAL) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_REAL)) + call nmiupkr (spp, spp, nelem, TY_REAL) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmireads.x b/sys/etc/gen/nmireads.x new file mode 100644 index 00000000..190ce28f --- /dev/null +++ b/sys/etc/gen/nmireads.x @@ -0,0 +1,50 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_READ -- Read a block of data stored externally in NMI format. +# Data is returned in the format of the local host machine. + +int procedure nmi_reads (fd, spp, maxelem) + +int fd #I input file +short spp[ARB] #O receives data +int maxelem # max number of data elements to be read + +pointer sp, bp +int pksize, nchars, nelem +int nmipksize(), nminelem(), read() +errchk read() + +long note() + +begin + pksize = nmipksize (maxelem, NMI_SHORT) + nelem = EOF + + if (pksize > maxelem * SZ_SHORT) { + # Read data into local buffer and unpack into user buffer. + + call smark (sp) + call salloc (bp, pksize, TY_CHAR) + + nchars = read (fd, Memc[bp], pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_SHORT)) + call nmiupks (Memc[bp], spp, nelem, TY_SHORT) + } + + call sfree (sp) + + } else { + # Read data into user buffer and unpack in place. + + nchars = read (fd, spp, pksize) + if (nchars != EOF) { + nelem = min (maxelem, nminelem (nchars, NMI_SHORT)) + call nmiupks (spp, spp, nelem, TY_SHORT) + } + } + + return (nelem) +end diff --git a/sys/etc/gen/nmiwriteb.x b/sys/etc/gen/nmiwriteb.x new file mode 100644 index 00000000..9e3c19a0 --- /dev/null +++ b/sys/etc/gen/nmiwriteb.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMIWRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writeb (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_BOOL) + call salloc (bp, bufsize, TY_CHAR) + + call nmipakb (spp, Memc[bp], nelem, TY_BOOL) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/nmiwrited.x b/sys/etc/gen/nmiwrited.x new file mode 100644 index 00000000..d357fe4c --- /dev/null +++ b/sys/etc/gen/nmiwrited.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_WRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writed (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_DOUBLE) + call salloc (bp, bufsize, TY_CHAR) + + call nmipakd (spp, Memc[bp], nelem, TY_DOUBLE) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/nmiwritei.x b/sys/etc/gen/nmiwritei.x new file mode 100644 index 00000000..98e33f12 --- /dev/null +++ b/sys/etc/gen/nmiwritei.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_WRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writei (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_INT) + call salloc (bp, bufsize, TY_CHAR) + + call nmipaki (spp, Memc[bp], nelem, TY_INT) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/nmiwritel.x b/sys/etc/gen/nmiwritel.x new file mode 100644 index 00000000..0772b954 --- /dev/null +++ b/sys/etc/gen/nmiwritel.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_WRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writel (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_LONG) + call salloc (bp, bufsize, TY_CHAR) + + call nmipakl (spp, Memc[bp], nelem, TY_LONG) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/nmiwriter.x b/sys/etc/gen/nmiwriter.x new file mode 100644 index 00000000..3f22404b --- /dev/null +++ b/sys/etc/gen/nmiwriter.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_WRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writer (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_REAL) + call salloc (bp, bufsize, TY_CHAR) + + call nmipakr (spp, Memc[bp], nelem, TY_REAL) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end diff --git a/sys/etc/gen/nmiwrites.x b/sys/etc/gen/nmiwrites.x new file mode 100644 index 00000000..ed284024 --- /dev/null +++ b/sys/etc/gen/nmiwrites.x @@ -0,0 +1,28 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +include <nmi.h> + +# NMI_WRITE -- Write a block of data to a file in NMI format. +# The input data is in the host system native binary format. + +procedure nmi_writes (fd, spp, nelem) + +int fd #I output file +int spp[ARB] #I native format data to be written +int nelem #I number of data elements to be written + +pointer sp, bp +int bufsize +int nmipksize() + +begin + call smark (sp) + + bufsize = nmipksize (nelem, NMI_SHORT) + call salloc (bp, bufsize, TY_CHAR) + + call nmipaks (spp, Memc[bp], nelem, TY_SHORT) + call write (fd, Memc[bp], bufsize) + + call sfree (sp) +end |