DELAY SHELL GUIDE(C) Copyright 1991, by Rijksuniversiteit Leiden
User's Guide
Reference Guide
DELAY SHELL GUIDE
Version: 1.6
Date: 7 October 1997
Author: P.C. Jonkers
Huygens Laboratorium
Rijksuniversiteit Leiden
Table of Contents
User's Guide. . . . . . . . . . . . . . . . . . 5
Introduction. . . . . . . . . . . . . . . . 7
Hardware. . . . . . . . . . . . . . . . . . 9
General . . . . . . . . . . . . . . . . 9
Rulbus rack . . . . . . . . . . . . . . 9
Rulbus monitor. . . . . . . . . . . . . 9
Fan Out 12 x 50 Ohm . . . . . . . . . . 9
Interval Timer. . . . . . . . . . . . . 9
High Resolution Delay . . . . . . . . 10
Software. . . . . . . . . . . . . . . . . 11
General . . . . . . . . . . . . . . . 11
Installation. . . . . . . . . . . . . 11
Interval Timer. . . . . . . . . . . . 11
High Resolution Delay . . . . . . . . 12
Reference Guide . . . . . . . . . . . . . . . 15
Section 1. Commands. . . . . . . . . . . 17
intro(1). . . . . . . . . . . . . . . 19
alias(1). . . . . . . . . . . . . . . 21
delay_sh(1) . . . . . . . . . . . . . 22
echo(1) . . . . . . . . . . . . . . . 26
exit(1) . . . . . . . . . . . . . . . 27
help(1) . . . . . . . . . . . . . . . 28
history(1). . . . . . . . . . . . . . 29
hrdclock(1) . . . . . . . . . . . . . 30
hrdcontrol(1) . . . . . . . . . . . . 31
hrddevice(1). . . . . . . . . . . . . 32
hrdedge(1). . . . . . . . . . . . . . 33
hrdload(1). . . . . . . . . . . . . . 34
hrdstep(1). . . . . . . . . . . . . . 35
hrdtime(1). . . . . . . . . . . . . . 36
itdevice(1) . . . . . . . . . . . . . 37
itrdcount(1). . . . . . . . . . . . . 38
itrdmode(1) . . . . . . . . . . . . . 39
itwrcount(1). . . . . . . . . . . . . 40
pause(1). . . . . . . . . . . . . . . 41
prompt(1) . . . . . . . . . . . . . . 42
rack(1) . . . . . . . . . . . . . . . 43
repeat(1) . . . . . . . . . . . . . . 44
run(1). . . . . . . . . . . . . . . . 45
test(1) . . . . . . . . . . . . . . . 46
time(1) . . . . . . . . . . . . . . . 47
unalias(1). . . . . . . . . . . . . . 48
version(1). . . . . . . . . . . . . . 49
!(1). . . . . . . . . . . . . . . . . 50
Section 2. System Calls. . . . . . . . . 51
intro(2). . . . . . . . . . . . . . . 53
Section 3. C Runtime Library . . . . . . 55
intro(3). . . . . . . . . . . . . . . 57
Section 4. File Formats. . . . . . . . . 59
intro(4). . . . . . . . . . . . . . . 61
delay_sh.hlp(4) . . . . . . . . . . . 63
delay_sh.pro(4) . . . . . . . . . . . 64
delay_sh.usr(4) . . . . . . . . . . . 65
rulbus.sys(4) . . . . . . . . . . . . 66
DELAY SHELL GUIDE(C) Copyright 1991, by Rijksuniversiteit Leiden
User's Guide
Introduction
This guide contains all nescessary information to program a delay configuration
consisting of a RULBUS rack with RB9102 and RB9006 units. RB9102 is an
Interval Timer (IT), that can generate four different waveforms with a
programmable frequency. RB9006 is a High Resolution Delay (HRD), that
generates trigger pulses. The delay of the pulses can be programmed.
To operate a configuration using those units you need a number of devices. At
first a computer running under DOS that is connected by means of a RULBUS
interface and RULBUS flatcable to a RULBUS rack. In the 19'' RULBUS rack
you can slide cassettes with different RULBUS cards. Aside of the RB9006 and
RB9102 units you will also need a RULBUS monitor in your rack to monitor
the bus activity and the power supplies. Furthermore, to be able to derive all
clock signals from one master clock oscillator (to reduce jitter), a FAN-OUT
12x50 ohm (RB9101) has been developed, this card supplies you with twelve
identical output signals which are the same as the input signal.
The guide consists of two parts; the user's guide and the reference guide. The
user's guide gives information about the usage of the entire configuration.
Hardware as well as software operation will be discussed. From the user's guide
you will be able to learn how to operate the DELAY_SH program and how to
use RULBUS RB9102 and RB9006 units. The reference guide contains
descriptions of each of the DELAY SHELL commands. A brief synopsis will
give you all nescessary information on how to use a certain command. A more
extensive description explains exactly how the command works and what
options you have in using it. All DELAY SHELL commands as well as all
general commands that can be used are described.
Hardware
General
The hardware mainly consists of two different RULBUS units: RB9102 and
RB9006. The RB9102 unit is an Interval Timer and the RB9006 is a High
Resolution Delay. To operate a delay configuration using those units, a number
of hardware devices are nescessary. To program the devices you need a
computer running DOS, with a RULBUS interface card. The computer must be
linked to a RULBUS rack by means of a RULBUS flatcable. The RULBUS rack
is a 19 inch rack in which you can slide cassettes with different RULBUS cards.
In the RULBUS rack there have to be a number of devices. At first, the
RULBUS monitor, a RULBUS card that displays the status of the rack, and the
RULBUS power supplies. Also you will need an Interval Timer (IT) unit and
(several) High Resolution Delay's (HRD). To be able to use multiple High
Resolution Delay's, a Fan Out 12x50 ohm has been developed, which (in case
of more delay cards) also has to be installed in your RULBUS rack.
Rulbus rack
The rulbus rack is a 19 inch rack in which you can slide cartridges containing
one or more eurocards. At the back of the rack there is a rulbus flatcable to
connect the rulbus cards to the power supply and the computer.
Rulbus monitor
The rulbus monitor is a rulbus card that is present in every rulbus rack. It
monitors the bus activity. It tests the power supply voltages and indicates by
means of a LED if they deviate more than five percent of the nominal values
(+5V, +15V, -15V). Also the rulbus monitor detects if the bus address is not
$FF; then it will indicate 'RULBUS active' by means of another LED. A third
LED indicates a RULBUS interrupt.
Fan Out 12 x 50 Ohm
The Fan Out 12 x 50 Ohm (RB9101) can be used to simply multiply the number
of clock signals available. It has one input and twelve identical outputs that are
capable of driving 50 ohm loads. Using this device makes it possible to derive
all clock signals for the configuration from one master clock oscillator. This is
very important to eliminate most jitter.
Interval Timer
The Interval Timer (IT) divides an incoming signal by a software programmable
divisor. The division is done in three steps; the input signal can be used directly,
or you can already divide it by 2, 4, 8, or 16 using the prescaler that is present
on the Interval Timer card. This is done by setting a jumper on the card. Also
by one of these jumpers you can choose to use the RULBUS 4 MHz clock
instead of an external clock. Then the signal proceeds to counter0, counter0
divides the incoming signal, and the outcoming signal of counter0 is the input
for both counter1 and counter2. Counter1 and counter2 then independently
divide the signal that the counters get from counter0. So the signal at the outputs
out1a, out1b and out1c of the Interval Timer will be the input signal divided
by cr0 and cr1. The signal at out2a, out2b and out2c will be the input signal
divided by cr0 and cr2. All three counters can be programmed independently.
The Interval Timer has four operating modes, each generating their own output
waveform. The available operating modes are: interrupt, rate, square and strobe.
Counter0 however should always operate as a rate generator because its output
functions as the cr1 and cr2 input (clock) signal.
High Resolution Delay
The High Resolution Delay (HRD) is used to generate trigger pulses. It consists
of a low resolution delay generator followed by two high resolution delay's in
parallel.
The low resolution part consists of a 16-bit downcounter that obtains its
clock signal directly from the clock input. Counting is started with a pulse on
the trigger input. When the counter reaches zero, it generates a pulse at the
sync output and triggers the high resolution delay generators. The counter value
can be programmed in the 16-bit cr-register.
The high resolution delay generators consist of a Digital Programmable
Delay Generator ic (AD9500). The trigger pulse (from the sync output) starts
a linear ramp that is compared with a reference voltage. When the ramp reaches
the reference voltage, the High Resolution Delay generates an output pulse on
the out1a,b or out2a,b outputs. The reference voltage is programmed in the 8-
bit dg1- or dg2-register.
To avoid most jitter it is important that the High Resolution Delay's clock
and trigger signals are synchronized. This can be achieved by deriving the
trigger signal from the clock generator used by the HRD. Because the frequency
of the trigger signal is much lower than the clock frequency, the trigger signal
is generated by the Interval Timer, which can divide the incoming clock signal
to obtain a relatively low-frequency trigger signal. To use the HRD and the
Interval Timer devices together, you should connect the clock output of the
external clock to the HRD clock input as well as the Interval Timer's in input.
The Interval Timer's output should be used as trigger input for the High
Resolution Delay.
The High Resolution Delay has two outputs that can independently be
programmed. Each output is available twice. The total delay consists of the low
resolution delay added to the high resolution delay. The low resolution delay can
be programmed in the cr-register and depends on the clock frequency. The high
resolution delay can be programmed in the two dg-registers (DG1, DG2) and is
determined by certain components used in the HRD. The active edge of all in-
and outputs can be programmed in the ctl (control) register.
Software
General
The driver software to program both the Interval Timer as well as the High
Resolution Delay, has been combined in the so-called DELAY SHELL
(delay_sh). The Delay shell contains a number of commands that can be used
to program both RULBUS devices. In addition to that, there are a number of
general commands that may be useful to the user. If the Delay shell is started,
the delay_sh.pro profile will be run. Default, a brief explanation of the shell will
appear, followed by a list of all commands and a prompt. All Interval Timer
related commands begin with IT, and similarly all commands of the High
Resolution Delay start with HRD. The exact description of each command is
given in the Delay shell reference guide. A general procedure to program both
devices will be described here.
Installation
The Delay shell 1.6 diskette has the following directory structure:
\lib
\shell
\sou
To install the Delay_sh program, go to the root directory and type:
install directoryPathname
This will copy the delay_sh program and its associated files (delay_sh.pro,
delay_sh.hlp and delay_sh.usr) to the specified drive, directory. If the destination
directory does not yet exist, it will be created.
To run the program go to the \shell directory and type:
delay_sh
This will execute the Delay shell.
Interval Timer
Always start to program the Interval Timer(s) before the High Resolution
Delay('s). To program the Interval Timer you have four commands. Only two
are needed to actually program the counters. The other commands are just useful
tools to give you certain information about the device. To program the IT
(Interval Timer), first select the desired device number with the itdevice
command. Default this value is 0. Next you can program the three Interval
Timer counters. Start with cr0, then program cr1 and cr2. The itwrcount
command is used to do so. If you finished this, the Interval Timer is
programmed and working. The two remaining commands (itrdcount,
itrdmode) can be used to get information on the current operating mode or
counting value of each of the IT counters. Reading the registers 'on the fly' will
not affect the counting procedure.
High Resolution Delay
To program the High Resolution Delay there are seven commands. Like with the
Interval Timer, you should start to select the desired device number with the
hrddevice command. Default this value is 0. Then you can start supplying the
software driver with the nescessary information on the used clock frequency
(with the hrdclock command) and the used HRD's high resolution steptime
(usually 1 nsec) by means of the hrdstep command. Then, you can set the
desired active edge of all in- and outputs. This can be done either by setting a
bitmask (command: hrdcontrol), or by a list of names and polarities with the
hrdedge command. Next you can program the desired delay times for the low
resolution cr-register and the high resolution dg-registers. You can directly load
the registers (and calculate yourself what the delay time will be) by means of
the hrdload command. Or you can use the hrdtime command to program the
registers by setting a delay time in seconds. After doing this, the HRD will have
been programmed.
DELAY SHELL GUIDE(C) Copyright 1991, by Rijksuniversiteit Leiden
Reference Guide
Section 1. Commands
intro(1) Delay shell guide intro(1)
NAME
intro - introduction to section 1 (commands)
DESCRIPTION
Section 1 describes the commands of the Delay shell.
alias(1) Delay shell guide alias(1)
NAME
alias - define or display alias
SYNOPSIS
alias [-h] [name[=value] ...]
-h : display help
name : name of new command
value: a command line
DESCRIPTION
alias creates or displays command aliases. The shell checks for the first
word of a command in the list of currently defined aliases. If a match is
found, the shell replaces the alias with its associated string value. The
result is a new commandline that might begin with a built-in command
or an external command. The new commandline will not be checked for
aliases again. If alias is called without parameters, it displays all the
currently defined aliases and their associated values. If only name is
specified, alias displays name and its associated value. If alias is
called with parameters of the form name=value, it creates an alias for
each name with the given string value. If value contains spaces, the entire
expression should be included in quotation marks. If the -h option is
specified, alias displays a help message.
alias : show list of all defined commands
alias -h : display help
alias name : diplay the definition (value) of the specified
command
alias name=value: define a new command
EXAMPLE
alias "dir=dir/w"
alias "hrdinfo=echo HRD settings:; hrddevice; hrdtime"
SEE ALSO
history(1), unalias(1)
delay_sh(1) Delay shell guide delay_sh(1)
NAME
delay_sh - High Resolution Delay & Interval Timer shell
SYNOPSIS
delay_sh [-c cmdstring] [scriptfile [arg ...]]
cmdstring : a Delay shell command
scriptfile: a Delay shell scriptfile
DESCRIPTION
The description of the Delay shell is divided in the following subsections:
Options and Invocation, Command Syntax, Command Execution, Quoting,
Parameter Substitution, Filename Generation, Redirection, Variables and
Internal Commands. The order of subsections dealing with substitution or
interpretation of input reflects the order in which the shell performs those
substitutions and interpretations.
Because much of the functionality of the shell is found in built-in
commands, some features of the shell are documented only in the specific
pages for that built-in command.
Options and Invocation
This shell is intended as an extra shell around the DOS command
interpreter command.com. The shell can work in either interactive or
script interpreting mode. When the shell starts in interactive mode, it
begins by executing the file specified by the environment variable
'$RULSHL_PRO' if it is set, or else the file 'delay_sh.pro' if it exists.
The shell does not complain if any of these files cannot be found. If there
is at least one argument, the first such argument is taken as the name of
a shell command file (shellscript) to execute. Subsequent arguments are
assigned to the positional parameters which usually serve as arguments to
shell command files. See Parameter Substitution for information about
positional parameters. If no options are given, the shell starts interpreting
the commands entered on the commandline.
The shell understands the following options on the commandline:
-c cmdstring
Executes the one argument cmdstring as if it where an inputline
to the shell and then exits. This is used by programs or batchfiles
that wish to call the shell for a single command.
Command Syntax
The shell implements a simple command syntax that allows to control the
execution and combination of individual commands. When the shell scans
its input, the following characters are always treated specially:
; < > space tab new-line
Because these characters normally delimit arguments, they must be quoted
to be included in an argument (see Quoting below). A simple command
is a list of arguments separated by whitespace (blanks or tabs). An
argument with an unescaped '#' introduces a comment, and input up to
the next new-line is discarded.
A command may be one of the following:
command:simple command
command; command
command;
';' is the sequential execution operator. The second command is executed
only after the first command has completed.
Command Execution
External commands undergo the normal DOS path search.
Quoting
In order to override the special meaning of certain special characters,
several quoting mechanisms are provided in the shell. In general the
special meaning of any character can be turned off with a preceding
backslash '\'. This escape mechanism however, can get cumbersome, and
you have to know which characters need to be escaped.
As an alternative, the most stringent quoting mechanism is to surround the
entire command argument with apostrophe (single quote) characters. You
can also surround arguments with quotation (double quote) characters.
This shell makes no distinction between both types of quotation. Inside
quotations, no command substitutions are made. Everything between
quotation marks is within one command argument.
Parameter Substitution
The parameters listed below and variables in the environment space,
defined before the shell started may be expanded into the argument list
of any command before execution. A variable or parameter is expanded
by putting '$' in front of the name or the symbol, as in:
command $environment_variable
The following parameters are built-in to the shell:
# Expands to the number of positional parameters.
d A single digit d expands to the dth positional parameter, or null
string if that parameter is not set.
? Expands to the exit status of the last command executed.
Filename Generation
No special filename generation takes place in this shell.
Redirection
Typically, commands running under the Delay shell make use of three
standard input/output streams:
- standard input (0)
- standard output (1)
- standard error (2)
The number shown after the name of each stream above, is the file
descriptor number associated with that stream. Normally all three of these
file descriptors will represent the user's terminal. However it is possible
to redirect these file descriptors to or from another file (so that I/O on
the associated streams takes place on the file instead of the terminal). In
fact, you can redirect the I/O streams associated with the file descriptors
'0' and '1', using the following commandline constructs:
name
Tells the shell to use the file name as standard output (file
descriptor 1). The file will be created if it does not already exist.
Output written to the file will overwrite the current contents of the
file (if any).
>>name
Is the same as >name except that output is appended to the current
contents of the file (if any).
The scope of redirection is limited to a simple command.
Variables
Within the Delay shell, the DOS environment variables are available
through the '$var' variable expansion. It is not possible to set variables
in the shell.
The following are variables that the shell understands:
RULSHL_PRO
This variable specifies the pathname of the profile to run at
startup of the shell. The profile can contain predefined
aliases and standard commands to execute. If this variable is
not set, the name of the profile to run is composed of the full
shell pathname where the extension is replaced with '.pro'.
RULSHL_HLP
This variable specifies the pathname of the file with help
texts on the standard shell commands. If this variable is not
set, the name of the helpfile is composed of the full
pathname of the shell, where the extension is replaced with
'.hlp'.
RULSHL_USR
This variable specifies the pathname of the file with user
defined help texts. If this variable is not set, the name of the
user helpfile is composed of the full pathname of the shell,
where the extension is replaced with '.usr'.
Internal Commands
The following commands are built into the shell:
alias echo exit help history hrdclock hrdcontrol hrddevice hrdedge
hrdload hrdstep hrdtime itdevice itrdcount itrdmode itwrcount pause
prompt rack repeat run test time unalias version !
See the specific manual pages for details on these commands.
delay_sh : start Delay shell in interactive mode
delay_sh scriptfile arg: execute the specified scriptfile
delay_sh -c command : execute the specified command(s)
SYNTAX
command [options] [arg ...] [; command [options] [arg ...] ...]
EXAMPLE
delay_sh -c itwrcount cr0 rate 23
FILES
delay_sh.pro - file with startup commands
delay_sh.hlp - file with help texts on standard commands
delay_sh.usr - file with help texts on specific Delay shell commands
SEE ALSO
alias(1), delay_sh.pro(4), delay_sh.hlp(4), delay_sh.usr(4), echo(1), exit(1),
help(1), history(1), hrdclock(1), hrdcontrol(1), hrddevice(1), hrdedge(1),
hrdload(1), hrdstep(1), hrdtime(1), itdevice(1), itrdcount(1), itrdmode(1),
itwrcount(1), prompt(1), repeat(1), run(1), test(1), time(1), unalias(1),
version(1), !(1)
echo(1) Delay shell guide echo(1)
NAME
echo - write arguments to standard output
SYNOPSIS
echo [-n] [argument ...]
-n : do not end with newline
argument: arguments to be echoed
DESCRIPTION
echo writes the specified argument to the standard output. Arguments are
scanned for standard C-style escape sequences:
\a : alert (Bell)
\b : backspace
\f : formfeed
\n : newline
\r : carriage return
\t : tabulator stop
\c : do not end with newline
\ooo: octal number
The final argument is followed by a new-line unless '\c' is found
somewhere in the arguments. Arguments are subject to standard argument
manipulation (expansion).
echo argument... : echo the specified arguments
echo -n argument... : echo the specified arguments but don't end with
a newline
EXAMPLE
echo "hallo \n"
SEE ALSO
delay_sh(1)
exit(1) Delay shell guide exit(1)
NAME
exit - terminate the Delay shell
SYNOPSIS
exit [status]
status: 0..255
DESCRIPTION
The exit command terminates the shell. The value of status is returned
to the parent process as the exit status or DOS errorlevel of the shell. If
status is omitted, a value of zero is returned.
EXAMPLE
exit 24
help(1) Delay shell guide help(1)
NAME
help - display help on specified command
SYNOPSIS
help [item...]
item: any Delay shell command
DESCRIPTION
help tries to give information about the command specified by item. The
help command acts as a mnemonic reference tool for command options.
It offers more information than the standard usage message displayed by
all commands, but considerably less than the manual pages in the
reference manual. Output for a single command is intentionally brief, and
should usually fit one CRT screen. help will first look in the file
specified by the environment variable '$RULSHL_HLP' if it is set, or if
not set in file 'programPathname.hlp'. Further it looks for user defined
help in the file specified by the environment variable '$RULSHL_USR'
if it is set, or if not set in file 'programPathname.usr'. If no helptext is
found on the specified command, help displays the message 'No
information on 'command'.'. If no item is specified, help shows the
available commands.
help : show the available commands
help item...: display help on the specified item
EXAMPLE
help itwrcount
FILES
delay_sh.hlp - file with help texts on standard commands
delay_sh.usr - file with help texts on specific Delay shell commands
SEE ALSO
delay_sh(1), delay_sh.hlp(4), delay_sh.usr(4)
history(1) Delay shell guide history(1)
NAME
history - display previous commands
SYNOPSIS
history
DESCRIPTION
history displays a number of previously entered commands. The
commands displayed can be reentered with the ! command.
EXAMPLE
history
SEE ALSO
!(1), alias(1), unalias(1)
hrdclock(1) Delay shell guide hrdclock(1)
NAME
hrdclock - set clock frequency for HRD driver software
SYNOPSIS
hrdclock [frequency]
frequency: clock frequency in Hertz
DESCRIPTION
hrdclock is used to set the HRD clock frequency for the driver software.
With this information the driver software calculates the low resolution
delay. Set hrdclock before loading the HRD registers. When an invalid
number of arguments is specified, hrdclock displays a help message.
EXAMPLE
hrdclock 1E7
SEE ALSO
hrdstep(1)
hrdcontrol(1) Delay shell guide hrdcontrol(1)
NAME
hrdcontrol - set active edge of HRD in- and outputs
SYNOPSIS
hrdcontrol polarity bitmask
polarity: p, n, i
bitmask : binary 8-bit mask to specify in- and outputs
7 6 5 4 3 2 1 0
7 6 : not used
5 : trigger input
4 : out1a output
3 : out1b output
2 : out2a output
1 : out2b output
0 : sync input
DESCRIPTION
hrdcontrol can set the active edge of one or more of the HRD in- and
outputs. The polarity for the active edge is specified by 'p' for positive,
'n' for negative or 'i' for inverse polarity. To specify the in- and outputs,
set the corresponding bits of the bitmask to 1. The bitmask may be
specified in decimal (eg.: 123), or hexadecimal (eg.: 0xAB, $AB) form.
EXAMPLE
hrdcontrol p '$24'
SEE ALSO
hrdedge(1)
hrddevice(1) Delay shell guide hrddevice(1)
NAME
hrddevice - set or display High Resolution Delay device number
SYNOPSIS
hrddevice [devnum]
devnum: rulbus device number for selected HRD device
DESCRIPTION
hrddevice sets or displays the RULBUS device number. If no devnum
is specified hrddevice displays the current device number. If a devnum
is given, it is used for subsequent HRD commands. With this RULBUS
device number the address of the HRD is obtained from the rulbus.sys
file. Default, the device number is 0.
EXAMPLE
hrddevice 3
FILES
rulbus.sys(4) - file with device number-address information
SEE ALSO
itdevice(1), rulbus.sys(4)
hrdedge(1) Delay shell guide hrdedge(1)
NAME
hrdedge - set or display active edge of HRD in- and outputs
SYNOPSIS
hrdedge [-h] [[polarity] in/output...]
-h : displays help
polarity : p, n or i
in/output: trig, sync, out1a, out1b, out2a, out2b, all
DESCRIPTION
hrdedge sets or displays the active edge of the HRD in- and outputs. If
no arguments are given, hrdedge displays the current settings of all in-
and outputs. If one or more in- or outputnames are given, their settings
are displayed. If a polarity is given before the in- and outputnames,
their active edge is set according to the polarity specified. A 'p'
polarity sets the active edge to positive, 'n' to negative and 'i' sets it
to inverse. If the -h option is specified hrdedge displays a help message.
hrdedge : display all current settings.
hrdedge -h : display help.
hrdedge in/output... : display the current setting(s) of the
specified in- or output(s).
hrdedge polarity in/output... : set the active edge of the specified
in- or output(s) to positive, or
negative going, or invert their current setting.
EXAMPLE
hrdedge p trig sync
SEE ALSO
hrdcontrol(1)
hrdload(1) Delay shell guide hrdload(1)
NAME
hrdload - load HRD registers directly
SYNOPSIS
hrdload register value
register : cr, ctl, dg1, dg2
value cr : 0..65535
value dg1: 0..255
value dg2: 0..255
value ctl: 0..$3F
DESCRIPTION
hrdload loads a value directly into one of the HRD registers. The cr-
register contains the counter value for the low resolution delay generator.
The delay time of the low resolution delay generator, is value / clock
frequency. The dg-registers contain the value for the high resolution delay
generators. The delay of the high resolution delay generators is value *
steptime. The ctl-register is used to set the active edge of the HRD's in-
and outputs. Value can be specified in decimal notation (eg.:123) or
hexadecimal notation (eg.:0xAB or $AB). If an invalid number of
arguments is specified, a help message will be displayed.
EXAMPLE
hrdload dg1 0x30
SEE ALSO
hrdtime(1)
hrdstep(1) Delay shell guide hrdstep(1)
NAME
hrdstep - set or display high resolution step for hrdtime command
SYNOPSIS
hrdstep [time]
time: 10E-12..20E-6 [s]
DESCRIPTION
hrdstep sets or displays the high resolution HRD steptime for the
hrdtime command. The hrdstep value is used by the software to
calculate the high resolution delay time. The steptime is determined by
the components used in the HRD. P1, R10 and C15 for dg1 and P2, R16
and C22 for dg2. The steptime ranges from 10 ps to ñ 20 æs. If time is
specified this value is saved for later use. If no argument is given
hrdstep displays the current steptime. When an invalid number of
arguments is given, hrdstep displays a help message.
EXAMPLE
hrdstep 1E-9
SEE ALSO
hrdclock(1), hrdtime(1)
hrdtime(1) Delay shell guide hrdtime(1)
NAME
hrdtime - set or display delay time for HRD registers
SYNOPSIS
hrdtime [-h] [register...] [[+-] time]
-h : display help
register: cr, dg1, dg2
+Ä : add/subtract time from current delay
time : delay in seconds
DESCRIPTION
hrdtime sets or displays the delay time of the HRD delay generators. If
no delaytime is given hrdtime displays the delaytime of the specified
delay generators or, if none is specified, of all delay generators. If time
is specified, the specified delay generator(s) is(are) set to this delaytime.
If the + or Ä operator is specified direct in front of time, the specified
time will be added or subtracted from the current delay for that delay
generator.
hrdtime : display current settings for all three
registers
hrdtime -h : display help message
hrdtime register... : display current settings for specified
registers
hrdtime register... time : set absolute delay for specified registers
hrdtime register... +/-time: set relative delay for specified registers
EXAMPLE
hrdtime dg1 dg2 +50e-9
SEE ALSO
hrdload(1)
itdevice(1) Delay shell guide itdevice(1)
NAME
itdevice - set or display Interval Timer device number
SYNOPSIS
itdevice [devnum]
devnum: rulbus device number for selected IT device
DESCRIPTION
itdevice sets or displays the RULBUS device number. If no devnum is
specified itdevice displays the current device number. If a devnum is
given, it is used for subsequent IT commands. With this RULBUS device
number the address of the IT is obtained from the rulbus.sys file. Default,
the device number is 0.
EXAMPLE
itdevice 3
FILES
rulbus.sys(4) - file with device number-address information
SEE ALSO
hrddevice(1), rulbus.sys(4)
itrdcount(1) Delay shell guide itrdcount(1)
NAME
itrdcount - read current count of specified Interval Timer counter
SYNOPSIS
itrdcount counter
counter: cr0, cr1, cr2
DESCRIPTION
itrdcount displays the current count of the specified Interval Timer
counter. The itrdcount command does not affect the counting procedure.
Counter can be any of the IT counters (cr0, cr1, cr2). If an invalid
number of arguments is specified, itrdcount displays a help message.
EXAMPLE
itrdcount cr1
SEE ALSO
itwrcount(1)
itrdmode(1) Delay shell guide itrdmode(1)
NAME
itrdmode - read current operating mode of specified Interval Timer
counter
SYNOPSIS
itrdmode counter
counter: cr0, cr1, cr2
DESCRIPTION
itrdmode displays the operating mode of the specified Interval Timer
counter. The itrdmode command does not affect the counting process.
Counter can be one of the Interval Timer counters (cr0, cr1, cr2). If an
invalid number of arguments is specified, itrdmode displays a help
message.
EXAMPLE
itrdmode cr0
SEE ALSO
itrdcount(1), itwrcount(1)
itwrcount(1) Delay shell guide itwrcount(1)
NAME
itwrcount - write operating mode and divisor for the specified Interval
Timer counter
SYNOPSIS
itwrcount counter mode value
counter: cr0, cr1, cr2
mode : interrupt, rate, square, strobe
value : 1..36535 (2..36535 for rate and square)
DESCRIPTION
itwrcount sets the selected operating mode for the specified Interval
Timer counter and programs the counter with the specified divisor. Valid
counters are cr0, cr1 and cr2. Operating modes are: interrupt, rate, square
and strobe. The divisor must be in the range of 1 .. 36535. For rate and
square however the divisor ranges from 2..36535. The total division of the
Interval Timer will be the cr0 divisor multiplied by the cr1 or cr2 divisor
(depending on the selected output: out1 -> cr0*cr1; out2 -> cr0*cr2).
EXAMPLE
itwrcount cr2 rate 247
SEE ALSO
itrdcount(1)
pause(1) Delay shell guide pause(1)
NAME
pause - display message and wait for a keypress
SYNOPSIS
pause [message ...]
message: ascii text
DESCRIPTION
pause displays the given message, if specified, and waits for a keypress.
During the execution of the pause command no action takes place.
EXAMPLE
pause 'Process paused until a key is pressed.'
SEE ALSO
repeat(1)
prompt(1) Delay shell guide prompt(1)
NAME
prompt - show or set prompt
SYNOPSIS
prompt [text]
text: any ascii text, $d, $p, $n, $t, $v, $g, $l, $b, $q, $e, $h, $_
DESCRIPTION
prompt can show the current contents of the prompt variable, or sets
prompt to a specified text, interpreting special characters as shown below.
prompt : show current prompt
prompt text: set prompt to the specified text
$d: date
$p: drive/directory
$n: drive
$t: time
$v: DOS-version
$g: >
$l: <
$b: |
$q: =
$e: escape character
$h: $
$_: start of newline
EXAMPLE
prompt 'Date= $d$_Time= $t'
rack(1) Delay shell guide rack(1)
NAME
rack - select RULBUS rack, or display number of currently selected
RULBUS rack
SYNOPSIS
rack [number]
number: 0..14
DESCRIPTION
rack selects the RULBUS rack. If no arguments are given, rack displays
the number of the currently selected rack. If a number is given, rack will
set the RULBUS rack number to the number specified. Default the
number zero rack is selected.
EXAMPLE
rack 12
SEE ALSO
hrddevice(1), itdevice(1)
repeat(1) Delay shell guide repeat(1)
NAME
repeat - repeat specified command
SYNOPSIS
repeat [-d] [-stime] [count] command [arg...]
-d : display sequence number
-stime : sleep time seconds between each execution of command
count : number of times to repeat
command: a Delay shell command
DESCRIPTION
The repeat command repeatedly excecutes the given command count
times, or infinitely if no count is given. You can interrupt an internal
Delay shell command with . It is not possible to interrupt an external
command, so be careful with infinitely repeating external commands. If -
d is specified repeat displays a sequence number before the command
is executed. If -s is given repeat sleeps time seconds between each
execution of command.
EXAMPLE
repeat -d itrdcount cr0
run(1) Delay shell guide run(1)
NAME
run - run script from specified scriptfile
SYNOPSIS
run scriptfile
scriptfile: Delay shell scriptfile
DESCRIPTION
run runs the script from the specified Delay shell scriptfile. It is possible
to nest the execution of scripts, i.e. one script can run another script as a
subroutine.
EXAMPLE
run file.dsh
test(1) Delay shell guide test(1)
NAME
test - test any rulbus address
SYNOPSIS
test [address]
address: any rulbus address
DESCRIPTION
test can be used to test a rulbus address by continuously writing to that
address until a key is pressed. Address may be the address of any rulbus
register of any rulbus device. The specified address must include the
RULBUS base address of the IBM-RULBUS converter. If an invalid
number of arguments is specified, test will display a help message.
EXAMPLE
test '$283'
time(1) Delay shell guide time(1)
NAME
time - display elapsed time for specified commands
SYNOPSIS
time command [arg...]
command: a commandline
DESCRIPTION
time runs the commandline given as its argument and displays the time
to execute this commandline. The time is displayed in the form 12h 34m
56.78s.
EXAMPLE
time hrdload cr 123
unalias(1) Delay shell guide unalias(1)
NAME
unalias - remove aliases
SYNOPSIS
unalias [-h] name ...
-h : display help
name: an alias name
DESCRIPTION
unalias removes each alias name. When the -h option is used, a help
message is displayed.
unalias -h : display help message
unalias command: remove alias
EXAMPLE
unalias timerinfo
SEE ALSO
alias(1)
version(1) Delay shell guide version(1)
NAME
version - show version of the Delay shell program
SYNOPSIS
version
DESCRIPTION
version displays the version logo of the delay shell program.
EXAMPLE
version
!(1) Delay shell guide !(1)
NAME
! - execute command from history list
SYNOPSIS
!number [supplement]
number : number of command from history list
supplement: command supplement
DESCRIPTION
! executes the specified command from the history list.
!number : execute command number from history list
!number supplement: execute command number, supplement added.
EXAMPLE
!4
SEE ALSO
alias(1), history(1), unalias(1)
Section 2. System Calls
intro(2) Delay shell guide intro(2)
NAME
intro - introduction to system calls
DESCRIPTION
Because the Delay shell does not provide a system call interface, Section
2 is provided solely as a placeholder.
Section 3. C Runtime Library
intro(3) Delay shell guide intro(3)
NAME
intro - introduction to the C runtime library
DESCRIPTION
Because the Delay shell does not provide a C library interface, Section 3
is provided solely as a placeholder.
Section 4. File Formats
intro(4) Delay shell guide intro(4)
NAME
intro - introduction to file formats
DESCRIPTION
Section 4 of the Delay shell Reference manual gives more detailed
information on the formats of files used by the various commands
described in Section 1.
delay_sh.hlp(4) Delay shell guide delay_sh.hlp(4)
NAME
delay_sh.hlp - format of the delay_sh.hlp file
DESCRIPTION
help(1) uses the file delay_sh.hlp to display help texts on the general
delay shell commands. When help is asked by the user, the delay shell
searches the delay_sh.hlp file for help on the specified command. If a
help text is found it will be displayed, if not, the delay shell will continue
searching the file with user specified help texts (if it exists).
Syntax:
The format of the entries in the file is as in:
#commandname
helptext
helptext
...
commandname: a delay shell command name
helptext : the matching helptext
: space
: newline
An entry starts with a '#' in the first column, directly followed by the
commandname. The following lines contain the helptext, where each line
starts with a single space. The entry ends when the next '#' is
encountered in the first column, or end of file is reached. The last line of
the helptext of one entry and the startline of the next entry are separated
by an empty line.
SEE ALSO
delay_sh.usr(4), help(1)
delay_sh.pro(4) Delay shell guide delay_sh.pro(4)
NAME
delay_sh.pro - format of the delay_sh.pro file
DESCRIPTION
delay_sh(1) interpretes the delay_sh.pro shell script before executing
any other commands, if the environment variable '$RULSHL_PRO' is not
set to specify another file. Any delay shell command may be specified in
the delay_sh.pro file. Execution of this file facilitates custom
initialization (e.g. setting predefined aliases).
SEE ALSO
delay_sh(1)
delay_sh.usr(4) Delay shell guide delay_sh.usr(4)
NAME
delay_sh.usr - format of the delay_sh.usr file
DESCRIPTION
help(1) uses the file delay_sh.usr to display user defined help texts
on the delay shell commands. When help is asked by the user, the delay
shell searches the delay_sh.usr file for help on the specified command.
If a help text is found it will be displayed, if not, the delay shell will
display the 'No information on 'command'' message.
Syntax:
The format of the entries in the file is as in:
#commandname
helptext
helptext
...
commandname: a delay shell command name
helptext : the matching helptext
: space
: newline
An entry starts with a '#' in the first column, directly followed by the
commandname. The following lines contain the helptext, where each line
starts with a single space. The entry ends when the next '#' is
encountered in the first column, or end of file is reached. The last line of
the helptext of one entry and the startline of the next entry are separated
by an empty line.
SEE ALSO
delay_sh.hlp(4), help(1)
rulbus.sys(4) Delay shell guide rulbus.sys(4)
NAME
rulbus.sys - format of the rulbus.sys file
DESCRIPTION
The rulbus.sys file describes the configuration of the RULBUS system.
It contains a list of all available rulbus devices and their device numbers
and corresponding addresses. The RULBUS initialization routine
rb_ini() searches for the rulbus.sys file on the default drive, default
directory. The file is used for the assignment of addresses to a number of
variables:
rulbus : RULBUS base port address (local to rb_ini())
deviceptr->max : highest valid device number (used by driver)
deviceptr->ad[n]: port address for device n (used by driver)
Syntax:
[ ]
[ ]; comments
[ ]keyword [ ]address[ ][;comments]
[ ]identifier [ ]number [ ]address[ ][;comments]
comments : any printable ascii text
keyword : name as shown below (case unsensitive)
identifier : name not being keyword (case unsensitive)
number : number of device
address : port address relative to 'rulbus'
[ ] : optional
: carriage return, linefeed sequence
keyword : rulbus
Note : numbers and addresses may be specified using octal (Ooo),
decimal or hexadecimal (0xhh, $hh) notation.
SEE ALSO
delay_sh(1)
EXAMPLE
hrd 0 0xD8;RB 9006 High Resolution Delay
hrd 1 0xE0;RB 9006 High Resolution Delay