On 4/14/2016 1:11 PM, Savor, Thomas (Alpharetta) wrote:
CHECK DECB1 LH WORK1,DCBBLKSI Block size at time of READ L WORK2,DECB1+16 Status area address SH WORK1,14(WORK2) WORK1 has block length
Of course being curious it looks to me that DECB+16 points to IOB Address Then looking at the IOB DSECT (IEZIOB), 14 from the beginning = returned block length. 14 from the beginning is accurate...from my dump. However when trying to map this with IEZIOB, it seems to have wrong displacement. ORG IOBPREFX @L3A
The macro expands a prefix, either in-line or as a DSECT. To get correct results, use USING IOBSTDRD,...
Or you could gamble a little and subtract A(IOBSTDRD-IOBPREFX) from the DECB1+16 obtained address, but that may break if/when the macro is modified. Offset 14 points into the CSW, subtracting the unread count. If you plan to use this for production, note that the count is an unsigned halfword, and will produce incorrect results when someone plays with the CCWs.
Gerhard Postpischil Bradford, VT ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN