File: fdevbf.x

package info (click to toggle)
iraf 2.18.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 86,000 kB
  • sloc: ansic: 115,890; fortran: 74,576; lisp: 18,888; yacc: 5,642; sh: 961; lex: 596; makefile: 509; asm: 159; csh: 54; xml: 33; sed: 4
file content (37 lines) | stat: -rw-r--r-- 985 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.

include	<syserr.h>
include	<config.h>
include	<fio.h>

# FDEVBF -- Install a new binary file device in the device table, if it has
# not already been installed.

procedure fdevbf (zard, zawr, zawt, zstt, zcls)

int	i, dev_epa
extern	zard(), zawr(), zawt(), zstt(), zcls()
include	<fio.com>

begin
	# Search the device table to see if the device is already installed.
	# The ZDEV array indices the EPA of the read procedure of each device
	# driver.

	call zlocpr (zard, dev_epa)
	for (i=1;  i < next_dev;  i=i+LEN_DTE)
	    if (zdev[i] == dev_epa)
		return

	# Device not found; install the new device in the device table.
	next_dev = next_dev + LEN_DTE
	if (next_dev > LEN_DEVTBL)
	    call syserr (SYS_FDEVTBLOVFL)
	else {
	    call zlocpr (zard, zdev[i])
	    call zlocpr (zawr, zdev[i+1])
	    call zlocpr (zawt, zdev[i+2])
	    call zlocpr (zstt, zdev[i+3])
	    call zlocpr (zcls, zdev[i+4])
	}
end