HOME XFN TIME HPIL EXT I/O HEPAX

HP 82183A Extended I/O Module

HP 82183A While the HP 82183A Extended I/O Module is plugged into the HP-41, the following functions are available for your use. All functions are programmable. Appropriate peripherals must be connected to the Hewlett-Packard Interface Loop for most of the functions to be executed normally.

Mass Storage Operations

COPYFL Copies nonprivate file (named in ALPHA) from master device to device addressed by number in X.
DIRX Returns to ALPHA the name of file whose position in primary medium's directory is specified by number in X. If X exceeds number of files on medium, DIRX replaces 0 in X and leaves ALPHA unchanged.
FLLENG Places in X the length of the file specified in ALPHA. Length values are interpreted as follows: PR, number of bytes; DA, KE, ST, and WA, number of registers; AS, undefined; ??, unknown.
FLTYPE For file named in ALPHA, places in X a two-character ALPHA string representing the file type, as follows: PR, program; DA, data; KE, key assignment; ST, status; WA, write-all; AS, ASCII; ??, unknown.
MCOPY Copies contents of master medium onto all other media. Places in X the number of records copied. Ignores any cassette drive having its door opened prior to execution.
MCOPYPV Same as MCOPY, except that all HP-41 program files are made "private."
MVERIFY Checks each mass storage device to verify that number of records specified in X can be read without error. Ignores any cassette drive having its door opened prior to execution.

Character Manipulation Functions

ALENGIO Places in X the length of current ALPHA string. Skips leading nulls.
ANUMDEL Returns to X the value of a number represented by a string of numerical characters in the ALPHA register. Deletes from ALPHA all characters from beginning through the numerical character used.
ATOXL Reverse of XTOAL. Removes first character from ALPHA and places in X the corresponding character code.
ATOXR Reverse of XTOAR. Places character code of last character of ALPHA string into X and deletes that character from string.
ATOXX Replaces number in X with code for character in ALPHA position indicated by that number (where -24 ≤ |x| ≤ 23, and any fractional part of |x| is ignored). Does not alter contents of ALPHA. A positive number in X specifies position from leftmost non-null character (position 0) in current string. A negative number specifies absolute ALPHA register position numbered from right.
X<>FIO Exchanges value in X with decimal equivalent of binary value represented by flags 00 through 07. Resets these flags according to value in X when function executed (where 0 ≤ |x| ≤ 255, and any fractional part of |x| is ignored).
Flag 07 06 05 04 03 02 01 00
Value 128 64 32 16 8 4 2 1
XTOAL Reverse of ATOXL. Adds to left of first non-null character in ALPHA the character corresponding to the character code in X. Original string in ALPHA shifts one space to right.
XTOAR Reverse of ATOXR. Appends to end of current string in ALPHA the character corresponding to character code in X.
YTOAX Replaces a character in ALPHA with another character specified by a character code in Y. Position in ALPHA determined by value in X in same way as for ATOXX.

HP-IL Control Functions

AID Places in X the accessory ID of primary device.
CLRDEV Resets primary device to its initial state typically, the power-on state.
CLRLOOP Simultaneously clears all devices on loop.
DEVL Sends to primary device the Device-Dependent Listener command number specified in X. Command number must be in the range 0 ≤ |n| ≤ 31 (and any fractional part of |n| is ignored).
DEVT Sends to primary device the Device-Dependent Talker command number specified in X. Command number must be in the range 0 ≤ |n| ≤ 31 (and any fractional part of |n| is ignored).
FINDAID Uses accessory ID to locate device of specific class or type. Returns device address to X. Loop search begins with primary device. If ID is positive, search continues until specified device is found. If ID is negative, search continues until address is found for first device in device class corresponding to absolute value of ID.
ID Returns to ALPHA a string containing ID of primary device.
INAC Replaces contents of ALPHA with string of bytes from primary device. Adds bytes to string until either 23rd byte in sequence is received or the byte (character) specified in X is received (in which case the string terminates with byte preceding the byte specified in X). Clears flag 17 if byte specified in X is received; otherwise sets flag 17. INAC inserts dummy character "0" at beginning of string.
INACL Replaces ALPHA contents with a dummy "0" character and a string of bytes from primary device. Transmission halts when either a linefeed code 10 is received (which clears flag 17) or 23 characters have been received (which sets flag 17). Both the linefeed and any carriage returns (character code 13) are deleted from the string in ALPHA.
INAE Replaces ALPHA contents with string of bytes from primary device. Terminates input when either an End message is received or ALPHA is filled (24 bytes). Sets flag 17 if End message received; clears flag 17 if ALPHA filled before End received.
INAN Replaces ALPHA contents with a string of up to 23 bytes from primary device, and terminates string with dummy "0" character. Value in X specifies number of bytes to be transmitted from primary device.
INP Causes primary device to send to HP-41 a series of bytes that the HP-41 can translate into a program. First four bytes received indicate program length in bytes. Last two bytes contain program checksum. This program replaces last program in memory.
INXB Directs primary device to send one byte of data to X.
LOCK If primary device has remote override switch (for manually placing device into Local mode), disables this switch. Device must already be in Remote mode. Executing NOTREM cancels LOCK.
NLOOP Places value in X indicating number of decices currently on HP-IL, excluding HP-41 itself (and any devices that do not respond to the Auto-Address message).
NOTREM Returns devices having Remote and Local modes to Local mode control, and disables not-remote-enabled state.
OUTAC Sends all but first non-null character in ALPHA string to device. Adds to end of string the character specified by the character code in X.
OUTACL Sends string in ALPHA minus first non-null character to primary device. Sends carriage return and line feed following string.
OUTAE Sends ALPHA string minus first non-null character to primary device. Final character serves as part of the string and as an End message.
OUTAN Transmits to primary device up to 23 ALPHA characters, as specified by value in X (where 0 ≤ |x| ≤ 23, and any fractional part of |x| is ignored). Leading (first non-null) character is not transmitted. Using zero (default) in X causes transfer of all characters following the leading character, regardless of string length.
OUTP Sends from HP-41 to primary device the program containing the global label in ALPHA. Does not send "private" programs.
OUTXB Sends to primary device the eight-bit byte equivalent of decimal byte value in X (where 0 ≤ |x| ≤ 255, and any fractional part of |x| is ignored).
POLL Sends Identify message around loop and indicates loop's response by displaying a to 255. Response number is decimal equivalent of the eight parallel poll bits.
POLLD Disables parallel poll response of primary device. (Cancels effect of a previous POLLE directed to that device.)
POLLE Enables primary device to respond to a parallel poll. Uses enable number in X to assign one of the eight parallel poll bits to device and to specify whether device requests service. Using an enable number in the range 0 ≤ |x| ≤ 7 assigns bit number |x| and indicates "Service Not Requested". Using an enable number in the range 8 ≤ |x| ≤ 15 assigns bit number (|x| - 7) and indicates "Service Requested". (The fractional part of any enable number is ignored.)
POLLUNC Disables parallel poll responses of all devices.
RCLSEL Returns HP-IL address specified by most recent execution of SELECT. Address is that of primary device if (1) 1 SELECT 1 executed since HP-IL module last installed and (2) loop contains device having selected address.
SRQ? Tests loop for service request by sending HP-IL Identify message. When executed in running program, if device responds with service request, HP-41 executes program line following SRQ? otherwise bypasses program line following SRQ?. When executed from keyboard, if device responds with service request, HP-41 displays YES; otherwise displays NO.
STAT Reads up to 23 bytes of status from primary device and stores these bytes as character string in ALPHA. Inserts dummy character ("S" for "status") at beginning of string.
XFER Until End of Transmission message received, transfers data from primary device to the device specified by the HP-IL address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). When executed in a program, End of Transmission message signals the HP-41 to resume program execution.
XFERC Transfers data from primary device to device specified by HP-IL address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). Transfer halts after character specified by code in Y is sent.
XFERCL Transfers data from primary device to device specified by address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). Transfer halts when linefeed character is sent.
XFERE Transfers data between primary and another device specified by address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). Transmission ends when primary device sends End message.
XFERN Transfers number of bytes specified in Y from primary device to device at address specified by value in X (where 1 ≤ |x| ≤ 30, and any fractional part of Ixl is ignored).

Advanced Control Functions

ADROFF Disables the automatic loop addressing and talker/listener commands used by data transfer functions. Sets flag 34. (Does not affect HP-IL module INA and OUTA functions.)
ADRON Enables the automatic loop addressing and talker/listener commands used by data transfer functions. Clears flag 34. (Does not affect HP-IL module INA and OUTA functions.)
DDL Sends Device-Dependent Listener command message specified by value in X to all active listeners (where 0 ≤ |x| ≤ 31, and any fractional part of |x| is ignored).
DDT Sends Device-Dependent Talker message specified by value in X to currently active talker (where 0 ≤ |x| ≤ 31, and any fractional part of |x| is ignored).
LAD Switches to listener the device specified by HP-IL address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). (Sends Listen Address and Ready For Command messages.)
SEND Sends to primary device the command message specified by the command number in X (where 0 ≤ |x| ≤ 255, and any fractional part of |x| is ignored), followed by a Ready-For-Command message. (For HP-IL Command Message Table, refer to section 5 of your I/O module owner's manual.)
TAD Switches to talker the device specified by HP-IL address in X (where 1 ≤ |x| ≤ 30, and any fractional part of |x| is ignored). (Sends Talker Address message to device.)
UNL Removes all currently addressed listeners from listener status. (Sends Unlisten message.)
UNT Removes current talker from talker status. (Sends Untalk message followed by Ready For Command message.)