[comp.lang.asm370] Channel programming

A01MES1@NIU.BITNET (Michael Stack) (09/21/89)

If you are REALLY interested in learning about channel programming
DASD devices, and you are a member of SHARE, and you have a 'fiche
viewer, and you still have the Proceedings from SHARE 70 (from the
spring of 1988), then I recommend to you Sessions O347 and O348,
"MVSE: Channel Programming - Reviewing the Basics", given by R. P.
Rannie (of NIU) and D. C. Hann.  The notes from the presentations
can be found on pages 8038-8116 (card 25) of the Proceedings.
Much of the information is taken from a Systems Programming course
taught here.

This sequence of sessions is given regularly at SHARE meetings (seems
that there is some demand out there), so if you are going to attend
one, you might check the agenda.


Michael Stack
Northern Illinois University

RKOGUT@BROWNVM.BITNET ("R. Kogut") (09/21/89)

I can't suggest any specific source, but a good principle is to find the
oldest version of Principles of Ops, preferably an early /360 version from
the 60's. Although it will omit the newer architectural 'enhancements', the
fact that things were simpler back then makes the old manuals much more
readable (and shorter). If you do use any version of Principles of Ops, skip
most of it the first time and concentrate on reading about the basic kinds of
CCWs and how they are hooked together to make channel programs. Read about
SIO and HIO/HDV, but ignore all of the details of the various condition codes.
Do try to learn about CSW status flags, especially CE, DE, UC, and maybe UE.
Then pick a Components Description manual for a device you know something about
or want to try and program. It will explain in detail the CCWs for that device
as well as the CSW codes and SENSE information (look only at the first byte of
the latter). Many of these manuals (certainly the disk ones) include examples
of 'standard' channel programs. Good luck.