NonStop S-Series Server Description Manual (G06.27+)
TNS Instruction Set
HP NonStop S-Series Server Description Manual—520331-004
11-33
Definitions of TNS Instructions
NSTO (-34---). Nondestructive Store From A. The contents of the A register are
stored into the effective address memory location. The register stack is not modified.
For binary coding details, refer to Table B-1 on page B-1.
ONED (000003). One Double. A doubleword 1 is pushed onto the top of the register
stack (BA). Condition Code is set.
ORG (000045). OR to Memory. The word in B is logically ORed to a word in the
current data segment that is specified by the 16-bit address in A. The result remains in
the data segment location, and A and B are deleted from the stack. Condition Code is
set.
ORLI (0040--). OR Left Immediate Operand With A. The 8-bit immediate operand is
shifted left eight places and merged with A by a logical inclusive OR. The sign bit is
not propagated but is actually part of the instruction opcode. Condition Code is set.
(For binary coding details, refer to Table B-2 on page B-2; for an example, see
Figure 11-6 on page 11-7.)
ORRI (0044--). OR Right Immediate Operand With A. The 8-bit immediate operand is
merged with the A register by a logical inclusive OR. The sign bit is not propagated but
is actually part of the instruction opcode. Condition Code is set. (For binary coding
details, refer to Table B-2 on page B-2; for an example, see Figure 11-6 on page 11-7.)
ORS (000035). OR to SG Memory. The word in B is logically ORed to a word in the
system data segment that is specified by the 16-bit address in A. The result remains in
the system data location, and A and B are deleted from the stack. A refers to an
address in the system data segment. Condition Code is set.
ORX (000047). OR to Extended Memory. The word in C is logically ORed to a word in
memory that is specified by the 32-bit even-byte address in BA. The result remains in
the memory location, and A, B, and C are deleted from the stack. Condition Code is
set.
PCAL (027---). Procedure Call. Control is transferred to an instruction specified by an
entry in the procedure entry point (PEP) table; the specific PEP entry is indicated by
the PEP Number field of the instruction. First, a three-word stack marker, consisting of
the current P, ENV, and L, is stored on the top of the current stack. (This copy of ENV
includes the space ID index in bits 11:15; CC and RP are not preserved.) If the caller
is not privileged, the PEP number is checked against PEP[0] and PEP[1] to see if the
call is legal. If the call is not legal, an instruction failure trap occurs. (If the caller is
privileged, no checks are made.) L and S are set to S + 3 to point to the base of a new
local data area. The final value of S is then checked for a value greater than 32767; if
it is, a stack overflow trap occurs. Finally, P is set from the PEP entry and control is
transferred to the procedure.