First of all, I'd like to thank everybody who helped me with the subsystem
documentation and debugging, especially, Sam Knutson, Tom Schmidt and
Binyamin Dissen - your input was much appreciated.

Let me also share some of the experience [for the archive]:

a) Contrary to the doc "Using the SSI", do NOT place your function routines
in either LPA or the LNKLST [while debugging, of course]. The latter
requires LOAD-TO-GLOBAL option on the SSVTI entry which causes the routine
to be stuck in CSA. In either case this becomes a PITA if you need to
refresh the code after a recompile [there are programmatic ways of
refreshing a function but they require extra coding]. Instead - code a small
stub to load your function, define it in SSVTI so that your actual function
routine can happily live in any APF-authorized library NOT associated with
the LNKLST.

b) If during CLOSE you'd like to reuse the working storage acquired by OPEN,
you might be able to keep its pointer in SSDASSCM 

c) Personally, I like the idea of a single working storage shared among the
various entry points [helps debugging], so I am also preserving its pointer
in a task-level NAME/TOKEN pair, where the name suffix is made of such ACB
fields as ACBUJFCB and/or ACBDEB. Whether the entry points are passed the
"true" user ACB or the protected copy, these fields are going to remain the
same. This way the GetPut routine can easily construct a proper token name
and retrieve its value. Comes handy, because the GetPut routine does need to
access the DCB built during Open.

d) However, the token retriever [IEANTRT] needs 52 bytes: 4 arguments with
the total length of 36 bytes plus 4 addresses. Don't you hate to
OBTAIN/RELEASE 52 bytes upon each and every entry just for the purpose of
locating working storage?  Me too.  Luckily, there is a tricky workaround
[left as an exercise and also to prevent flames]

-Victor-   

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to