Or16 (or, 16 bit), Pop (pop from tos and push to offset), Pop1 (pop from tos and push short to offset) – Echelon Neuron User Manual
Page 197

pushd #d’8 ; (d’8, 0)
call _not16 ; (d’247, d’255)
_or16 (Or, 16 Bit)
This function returns the bitwise OR of two 16-bit values.
Stack Transformation: (a(2), b(2) -- a(2) | b(2))
Location: Near
Registers Affected: None
Example:
This example determines h’1234 OR h’4321.
pushd #h’1234 ; (h’34, h’12)
pushd #h’4321 ; (h,21, h’43, h’34, h’12)
call _or16 ; (h’35, h’53)
_pop (Pop from TOS and Push to Offset)
This function writes a location on the stack. It can be thought of as an extension
to the instruction POP [DSP][offset], which writes TOS into the stack at offset.
For _pop, the offset is two less than what would be used in the POP instruction.
Stack Transformation: (offset, value -- …, value, …)
Location: Near
Registers Affected: None
Example:
This example does the equivalent of a POP [DSP][-3].
; (a, b, c, d, e)
push #@lb(-d’5) ; (-5, a, b, c, d, e)
call _pop ; (b, c, d, a)
_pop1 (Pop from TOS and Push Short to Offset)
This function is very similar to _pop. The difference is that –d’18 is added to the
offset prior to use. This allows PUSHS to be used to push the offset, and thus it
is more efficient to pass in the offset.
Stack Transformation: (offset, value -- …, value, …)
Location: Near
Registers Affected: None
Neuron Assembly Language Reference
187