Pure speculation on my part:
There are some systems or software components that require that on all calls
(even when the number of parameters is fixed) the last parameter address has
the high order bit set. I recall GDDM, where this was the case.
When I wanted to call GDDM routines from PASCAL/VS (in the 80s), this
was a nightmare.
The GDDM routines complained, because PASCAL/VS did not set the high
order bit
on the last parameter address.
I had to generate ASSEMBLER interfaces in between to insert the high
order bit
at the appropriate position - that is: for every GDDM call there had to
be a short
ASSEMBLER stub that knew the number of parameters and inserted the high
order
bit at the proper position.
Maybe the first word in PLITDLI has exactly the same purpose.
Kind regards
Bernd
Am 11.04.2012 00:19, schrieb Frank Swarbrick:
I don't know if this is relevant, but I was looking at the PL/I DL/I (IMS)
interface (PLITDLI) and noticed that they actually have to pass, as the first
parameter, a fullword containing the remaining number of items! Crazy!
For example, in COBOL you say:
call 'CBLTDLI' using ghnp, pcb-mask, i-o-area, ssa-1 ssa-2.
In PL/I it looks like you'd do something like this:
call PLITDLI (five, ghnp, pcb-mask, i-o-area, ssa-1 ssa-2);
See here for more details:
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.ims11.doc.apg%2Fims_imsdbpliapp.htm
I was pretty happy about what I learned about PL/I until I saw this. Yuck!
Frank
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN