Someone already answered the register 0 question.
But I believe your point is valid about this part, and AXVAL being a
half-word and a LOAD instruction being used for it.
LA 1,1(0)
ST 1,AXNUM
.
L 4,AXVAL
ETDEF TYPE=SETDEF
.
the work areas are:
AXL DS 0F AXLIST
AXNUM DS H Number of AXs Requested
AXVAL DS H Returned AX (OR EAX)
But wait, there's more. It's also a problem that a STORE instruction
is used to set AXNUM as that's supposed to be a halfword (correct in the
code and matching the AXRES documentation), and the STORE instruction
(operating on 4 bytes) is going to put a 0 in for AXNUM, with the '1' going
into AXVAL... should be a STH to set AXNUM. Or, using a modern instruction,
AXNUM could be set via MVHHI.
Adam Johanson
Email: [email protected]