ALLSTOP(OPCSDEFS) Optical Printer Control System ALLSTOP(OPCSDEFS)
NAME
allstop - define the ALLSTOP key
USAGE
allstop [port] [mask] [test] [0] # (all values in hex!)
EXAMPLES
allstop 0060 7f 46 0 # typical for SCROLL LOCK key
DESCRIPTION
This command defines the allstop key for the software. The ALLSTOP
button can be any key, or for that matter any bit on any port on the
IBM PC, but keyboard's (`) key is recommended.
All parameter values are in hexadecimal.
[port] is the port number to read in the range 0000-03ff.
Use 0060 for the keyboard.
[mask] is applied to the value received from the port
whenever the software is checking for an allstop condition.
This is applied before comparing to [test].
[test] is compared to the value read from the port after
[mask] is applied. If the result is the same as [test], an allstop
condition exists.
[0] is always zero.
Under normal conditions, [port] is 0060 (the keyboard port), [mask]
is usually '7f' (meaning mask off the high bit) and [test] is normally
'29', which is the (`) key's keyboard scancode.
The software essentially uses the following C code to read the port:
if ( ( inp(port) & mask ) == test )
{
/* An allstop condition exists */
}
BUGS
None.
SEE ALSO
DEENERGIZE(OPCSDEFS) - define port/bit to deenergize motors
ALLSTOP(OPDSDEFS) - define port/bit to detect the allstop key
BUCKLE(OPCSDEFS) - define port/bit to detect film buckles
VIEWER(OPCSDEFS) - define port/bit to detect viewer open
TRIPSWITCH(OPCSDEFS) - define port/bit to detect trip switches
SETBIT(OPCSDEFS) - set bit(s) on a port
CLRBIT(OPCSDEFS) - clear bit(s) on a port
XORBIT(OPCSDEFS) - invert bit(s) on a port
ORIGIN
Gregory Ercolano, Los Feliz California 09/11/90