aboutsummaryrefslogtreecommitdiff
path: root/sys/osb/nmiupk32.x
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
commitfa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch)
treebdda434976bc09c864f2e4fa6f16ba1952b1e555 /sys/osb/nmiupk32.x
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'sys/osb/nmiupk32.x')
-rw-r--r--sys/osb/nmiupk32.x28
1 files changed, 28 insertions, 0 deletions
diff --git a/sys/osb/nmiupk32.x b/sys/osb/nmiupk32.x
new file mode 100644
index 00000000..f42907fa
--- /dev/null
+++ b/sys/osb/nmiupk32.x
@@ -0,0 +1,28 @@
+# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.
+
+include <mach.h>
+
+# NMIUPK32 -- Unpack a 32 bit signed NMI array into an SPP array of the
+# indicated datatype.
+
+procedure nmiupk32 (nmi, spp, nelems, spp_datatype)
+
+int nmi[ARB] #I input NMI format array
+int spp[ARB] #O output SPP format array
+int nelems #I number of integers to be converted
+int spp_datatype #I SPP datatype code
+
+int nmi_bytes
+int spp_bytes
+int sizeof()
+
+begin
+ nmi_bytes = 32 / NBITS_BYTE
+ spp_bytes = sizeof(spp_datatype) * SZB_CHAR
+
+ # for 64bit integer
+ if ( 2 * nmi_bytes == spp_bytes )
+ call iupk32 (nmi, spp, nelems)
+
+ call achti (nmi, spp, nelems, spp_datatype)
+end