Programming Interface Information:
This information is NOT
intended to be
used as Programming Interfaces of VM/ESA. It is to be
used for diagnosis only.
|
DIOSECT
Prolog
Control Block Contents
DIOSECT DSECT
Storage Layout
Cross Reference (Contains links to field and bit definitions)
DIOSECT Prolog
Name : DIOSECT
Description: Disk I/O Work Area
DSECT : DIOSECT
Notes : MODULE TYPE - Macro
Function : This is the bilingual macro
containing the mapping of the disk I/O work
area used primarily by module DMSDIO. DIOSECT
describes the fields used by DMSDIO as a work
area when reading and writing actual blocks of
data on CMS disks. DIOSECT is pointed to by a
V-constant in DMSNUC, and referenced indirectly
by ADIOSECT in NUCON.
DIOSECT Control Block Content
DIOSECT DSECT
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure DIOSECT Disk I/O Work Area
0000 0 Dbl-Word 8 IOOLD IO-OLD-PSW (FROM INTERRUPT
ROUTINE)
0008 8 Dbl-Word 8 DIOCSW CSW (FROM INTERRUPT ROUTINE)
WAIT CALLING SEQUENCE
0010 16 Signed 4 * (0)
0010 16 Character 8 PWAIT
0018 24 Character 4 * FILLED IN TO CORRECT SYMBOLIC
DISK NO.
001C 28 Signed 4 *
0020 32 Signed 4 *
0024 36 Signed 4 QQDSK1 1ST TWO BYTES ALWAYS = 0
00000026 QQDSK2 QQDSK1+2 HALFWORD COPY OF 16TH
TRACK DISK-ADDRESS
CCW CHAIN
0050 80 Bitstring 7 SEEKADR SEEK/SEARCH INFO (1ST 3 BYTES ARE
0)
0057 87 Bitstring 1 SECTNUM SECTOR NUMBER
FBA CCWS FOR USE IN ONE-CMS-BLK OPERATIONS
FULL MINIDISK NEXT OPERATION
DEFINE EXTENT LIST
0070 112 Bitstring 1 FBACD1 MASK
0071 113 Bitstring 3 * RESERVED
0074 116 Signed 4 FBACD1MO MAJOR OFFSET
0078 120 Signed 4 FBACD1FB FIRST BLOCK OFFSET
007C 124 Signed 4 FBACD1LB LAST BLOCK OFFSET
LOCATE LIST
0080 128 Bitstring 1 FBACL1 OPERATION
0081 129 Bitstring 1 * AUX BYTE
0082 130 Signed 2 FBACL1NB NUMBER OF BLKS
0084 132 Signed 4 FBACL1BO BLOCK OFFSET
I/O INFO
0088 136 Signed 4 LASTCYL BECOMES 'LAST CYLINDER-NUMBER
USED'
008C 140 Signed 4 LASTHED BECOMES 'LAST HEAD-NUMBER USED'
0090 144 Bitstring 1 DEVTYP DEVICE TYPE FROM THE DEVTAB
0091 145 Bitstring 1 DIOFLAG RDTK/WRTK FLAG:
.1.. .... DIODYBUF X'40' DYnamic BUFfer obtained
..1. .... DIOFLSB X'20' Sense bytes stored on I/O
error
...1 .... DIOFLCSW X'10' CSW stored on I/O error
.... .1.. TOOBIG X'04' BYTE-COUNT > 800
.... ..1. WRTKF X'02' WRITING FIRST CHAIN LINK
.... ...1 QQTRK X'01' HANDLING FIRST CHAIN LINK
00000018 DIAGNUM 24 **** NUMBER ASSIGNED BY 'CP'
FOR DIAGNOSE I/O ****
00000004 DIOBKWTH 4 Default block width is 4..
0098 152 Dbl-Word 8 * (0)
0098 152 Bitstring 32 SENSB SENSE INFORMATION
MISCELLANEOUS STORAGE...
00C0 192 Dbl-Word 8 DOUBLE (SCRATCH-AREA, FOR CVD USE ETC.)
KEEP THE FOLLOWING THREE IN ORDER...
00C8 200 Signed 4 XRSAVE (15) REGISTERS 0-14 SAVED HERE FOR
RDTK-WRTK
0104 260 Address 3 * FIRST 3 BYTES OF R15 ERROR-CODE
0107 263 Address 1 ERRCODE ERROR-CODE (IN R15 AT EXIT)
KEEP THE FOLLOWING TWO IN ORDER..
0108 264 Signed 4 FREER0 NO. DBL-WORDS OF FREE STORAGE (IF
ANY)
010C 268 Signed 4 DIOFREE ADD. OF FREE STORAGE FOR BUFFER
OR CCW'S
0110 272 Signed 2 DIOSNSCT SENSE BYTE COUNT
0112 274 Signed 2 * RESERVED
0120 288 Bitstring 1 DIAGRET CP
0121 289 Bitstring 1 IOCOMM SET TO READ (06) OR WRITE (05)
0122 290 Bitstring 1 LASTREC NUMBER (1-14) OF THE LAST RECORD
PROCESSED
0128 296 Dbl-Word 8 DIOCCW01 (128) CCW BUILD AREA FOR LONG
OPERATIONS VA09499
00000080 DIOCCWLN (*-DIOCCW01)/8 Number of Dwords
in work area
0528 1320 Signed 4 DIODIEPL (7) Reserve storage for DISKDIE
parameter list
0544 1348 Signed 4 * Reserved
0548 1352 Dbl-Word 8 * (0)
0128 296 Signed 4 DIOBUFEN Max number of SBILIST entries
that can be built in the workarea
0130 304 Dbl-Word 8 DIOSBIOP (11) SBIOP block build area
0000000C DIODWUSD (*-DIOCCW01)/8 Number of d-words
used
0188 392 Dbl-Word 8 DIOSBL01 (0) SBILIST build area
00000074 DIOSBLMX DIOCCWLN-DIODWUSD Number of
SBILISTS buildable in static save
area
ECKD CCW CHAIN
0560 1376 Signed 4 * (0) Set up alignment
0560 1376 Bitstring 16 DIODEX (0) Define extent parameter list
0560 1376 Bitstring 1 DIOMASK MASK BYTE
0561 1377 Bitstring 1 DIOATTRB EXTENDED CKD IMPLEMENTED
0562 1378 Signed 2 DIOBLKSZ Maximum block size allowed
0564 1380 Bitstring 3 * RESERVED /*VA59119*/
0567 1383 Bitstring 1 DIOGLOA7 GLOBAL ATTRIBUTE BYTE SEVEN
/*VA59119*/
.1.. .... DIOR0FMT X'40' R0 is standard /*VA59119*/
0568 1384 Signed 2 DIOBEGCC Beginning cylinder extent
056A 1386 Signed 2 DIOBEGHH Beginning head extent
056C 1388 Signed 2 DIOENDCC End cylinder extent
056E 1390 Signed 2 DIOENDHH End head extent
0570 1392 Signed 4 * (0) Set up alignment
0570 1392 Bitstring 16 DIOLOC (0) Locate record parameter list
0570 1392 Bitstring 1 DIOOPBYT OP CODE BYTE
0571 1393 Bitstring 1 DIOAUX AUXILIARY BYTE
0572 1394 Bitstring 1 * RESERVED - SET TO ZEROS
0573 1395 Bitstring 1 DIORECNO NUMBER OF RECORDS TO PROCESS
0574 1396 Signed 2 DIOSEEKC Seek cylinder
0576 1398 Signed 2 DIOSEEKH Seek head
0578 1400 Signed 2 DIOSRCHC Search cylinder
057A 1402 Signed 2 DIOSRCHH Search head
057C 1404 Bitstring 1 DIOSRCHR SEARCH RECORD NUMBER
057D 1405 Bitstring 1 DIOSSECT SECTOR NUMBER
057E 1406 Signed 2 DIOTLF Transfer length factor
** CMS EQUATE SYMBOLS
.... 1... ECMM X'08' - BIT 12 - EXTENDED CONTROL
MODE MASK
.... .1.. MCKM X'04' - BIT 13 - MACHINE CHECK
MASK
.... ..1. WAIT X'02' - BIT 14 - WAIT STATE MASK
.... ...1 PROB X'01' - BIT 15 - PROBLEM STATE
MASK
.... 1... FOFM X'08' - BIT 36 - FIXED-POINT
OVERFLOW MASK
.... .1.. DOFM X'04' - BIT 37 - DECIMAL OVERFLOW
MASK
.... ..1. EUFM X'02' - BIT 38 - EXPONENT
UNDERFLOW MASK
.... ...1 SIGM X'01' - BIT 39 - SIGNIFICANCE
MASK
1... .... PCI X'80' - BIT 40 -
PROGRAM-CONTROLLED INTERRUPTION
.1.. .... ICL X'40' - BIT 41 - INCORRECT LENGTH
..1. .... PGC X'20' - BIT 42 - PROGRAM CHECK
...1 .... PTC X'10' - BIT 43 - PROTECTION CHECK
.... 1... CDC X'08' - BIT 44 - CHANNEL DATA
CHECK
.... .1.. CCC X'04' - BIT 45 - CHANNEL CONTROL
CHECK
.... ..1. ICC X'02' - BIT 46 - INTERFACE
CONTROL CHECK
.... ...1 CHC X'01' - BIT 47 - CHAINING CHECK
Common sense bits
1... .... CRJ X'80' - Bit 0 - Command reject
.1.. .... IR X'40' - Bit 1 - Intervention rqd
..1. .... BOC X'20' - Bit 2 - Bus out check
...1 .... EQC X'10' - Bit 3 - Equipment check
.... 1... DTC X'08' - Bit 4 - Data check
.... .1.. OVR X'04' - Bit 5 - Overrun
** CMS EQUATE SYMBOLS
COMMON CHANNEL COMMAND CODES
.... ...1 WRITE X'01' - WRITE
.... ..1. READ X'02' - READ
.... ..1. FBAIPL X'02' - FBA IPL READ
.11. ..11 FBADEF X'63' - FBA DEFINE EXTENTS CCW OP
11.. .... FBADWDT X'C0' - FBA DEFINE EXTENTS WR
DATA FLAG
.1.. .... FBADWIN X'40' - FBA DEFINE EXTENTS WR
INHIBIT
.1.. ..11 FBALOC X'43' - FBA LOCATE CCW OP
.... .11. FBALRDT X'06' - FBA LOCATE RD DATA FLAG
.... ...1 FBALWDT X'01' - FBA LOCATE WR DATA FLAG
.1.. ..1. FBARD X'42' - FBA READ DATA
.1.. ...1 FBAWR X'41' - FBA WRITE DATA
.11. ..11 DEFEXT X'63' EXTENDED CKD DEFINE EXTENT
CCW OP
.1.. .111 LOCREC X'47' EXTENDED CKD LOCATE RECORD
CCW OP
1... .1.1 WRTUPDT X'85' EXTENDED CKD WRITE UPDATE
DATA
.... ..11 NOP X'03' - NO OPERATION
.... .1.. SENSE X'04' - SENSE
.... .1.1 WRDATA X'05' - WRITE DATA
.... .11. RDDATA X'06' - READ DATA
.... .111 SEEK X'07' - SEEK
.... 1... TIC X'08' - TRANSFER IN CHANNEL
.... 1..1 WRITE1 X'09' - WRITE AND SPACE 1
.... 1.1. RDCONS X'0A' - READ FROM CONSOLE
..1. ..11 SETSEC X'23' - SET SECTOR
..11 ...1 SEARCH X'31' - SEARCH ID EQUAL
BITS DEVINED IN A CHANNEL COMMAND WORD (CCW)
1... .... CD X'80' - BIT 32 - CHAIN DATA
.1.. .... CC X'40' - BIT 33 - COMMAND CHAIN
..1. .... SILI X'20' - BIT 34 - SUPPRESS
INCORRECT LENGTH
...1 .... SKIP X'10' - BIT 35 - SUPPRESS DATA
TRANSFER
.... 1... PCIF X'08' - BIT 36 - CAUSE PROGRAM
CONTROL INTERRUPT
.... .1.. IDA X'04' - BIT 37 - INDIRECT DATA
ADDRESS
DIOSECT Storage Layout
*** DIOSECT - Disk I/O Work Area
*
* +-------------------------------------------------------+
* 0 | IOOLD |
* +-------------------------------------------------------+
* 8 | DIOCSW |
* +-------------------------------------------------------+
* 10 | PWAIT |
* +---------------------------+---------------------------+
* 18 |///////////////////////////|///////////////////////////|
* +---------------------------+---------------------------+
* 20 |///////////////////////////| QQDSK1 |
* +---------------------------+---------------------------+
* 28 |///////////////////////////////////////////////////////|
* =///////////////////////////////////////////////////////=
* |///////////////////////////////////////////////////////|
* +------------------------------------------------+------+
* 50 | SEEKADR |:TNUM |
* +------------------------------------------------+------+
* 58 |///////////////////////////////////////////////////////|
* =///////////////////////////////////////////////////////=
* |///////////////////////////////////////////////////////|
* +------+--------------------+---------------------------+
* 70 |FBACD1|////////////////////| FBACD1MO |
* +------+--------------------+---------------------------+
* 78 | FBACD1FB | FBACD1LB |
* +------+------+-------------+---------------------------+
* 80 |FBACL1|//////| FBACL1NB | FBACL1BO |
* +------+------+-------------+---------------------------+
* 88 | LASTCYL | LASTHED |
* +------+------+-------------+---------------------------+
* 90 |DEVTYP|:FLAG |/////////////////////////////////////////|
* +------+------+-----------------------------------------+
* 98 | |
* = SENSB =
* | |
* +-------------------------------------------------------+
* B8 |///////////////////////////////////////////////////////|
* +-------------------------------------------------------+
* C0 | DOUBLE |
* +-------------------------------------------------------+
* C8 | |
* = XRSAVE =
* | +--------------------+------+
* 100 | |////////////////////|:CODE |
* +---------------------------+--------------------+------+
* 108 | FREER0 | DIOFREE |
* +-------------+-------------+---------------------------+
* 110 | DIOSNSCT |/////////////|///////////////////////////|
* +-------------+-------------+///////////////////////////|
* |///////////////////////////////////////////////////////|
* +------+------+------+----------------------------------+
* 120 |:GRET |IOCOMM|:TREC |//////////////////////////////////|
* +------+------+------+----------------------------------+
* 128 | |
* = DIOCCW01 =
* | |
* +-------------------------------------------------------+
* 528 | |
* = DIODIEPL =
* | +---------------------------+
* 540 | |///////////////////////////|
* +---------------------------+---------------------------+
* 548 |///////////////////////////////////////////////////////|
* =///////////////////////////////////////////////////////=
* |///////////////////////////////////////////////////////|
* +------+------+-------------+--------------------+------+
* 560 |:MASK |:ATTRB| DIOBLKSZ |////////////////////|:GLOA7|
* +------+------+-------------+-------------+------+------+
* 568 | DIOBEGCC | DIOBEGHH | DIOENDCC | DIOENDHH |
* +------+------+------+------+-------------+-------------+
* 570 |:OPBYT|DIOAUX|//////|:RECNO| DIOSEEKC | DIOSEEKH |
* +------+------+------+------+------+------+-------------+
* 578 | DIOSRCHC | DIOSRCHH |:SRCHR|:SSECT| DIOTLF |
* +-------------+-------------+------+------+-------------+
* 580
*
*** DIOSECT - Disk I/O Work Area
*** Overlay for DIOCCW01 in DIOSECT
*
* +---------------------------+---------------------------+
* 128 | DIOBUFEN |///////////////////////////|
* +---------------------------+---------------------------+
* 130 | |
* = DIOSBIOP =
* | |
* +-------------------------------------------------------+
* 188 | |
* = DIOSBL01 =
* | |
* +-------------------------------------------------------+
*
*** Overlay for DIOCCW01 in DIOSECT
DIOSECT Cross Reference (contains links to field and bit definitions)
Symbol Dspl Value
-------------- ---- -----
BOC 057E 20
CC 057E 40
CCC 057E 04
CD 057E 80
CDC 057E 08
CHC 057E 01
CRJ 057E 80
DEFEXT 057E 63
DEVTYP 0090
DIAGNUM 0091 00000018
DIAGRET 0120
DIOATTRB 0561
DIOAUX 0571
DIOBEGCC 0568
DIOBEGHH 056A
DIOBKWTH 0091 00000004
DIOBLKSZ 0562
DIOBUFEN 0128
DIOCCWLN 0128 00000080
DIOCCW01 0128
DIOCSW 0008
DIODEX 0560
DIODIEPL 0528
DIODWUSD 0130 0000000C
DIODYBUF 0091 40
DIOENDCC 056C
DIOENDHH 056E
DIOFLAG 0091
DIOFLCSW 0091 10
DIOFLSB 0091 20
DIOFREE 010C
DIOGLOA7 0567
DIOLOC 0570
DIOMASK 0560
DIOOPBYT 0570
DIORECNO 0573
DIOR0FMT 0567 40
DIOSBIOP 0130
DIOSBLMX 0188 00000074
DIOSBL01 0188
DIOSEEKC 0574
DIOSEEKH 0576
DIOSNSCT 0110
DIOSRCHC 0578
DIOSRCHH 057A
DIOSRCHR 057C
DIOSSECT 057D
DIOTLF 057E
DOFM 057E 04
DOUBLE 00C0
DTC 057E 08
ECMM 057E 08
EQC 057E 10
ERRCODE 0107
EUFM 057E 02
FBACD1 0070
FBACD1FB 0078
FBACD1LB 007C
FBACD1MO 0074
FBACL1 0080
FBACL1BO 0084
FBACL1NB 0082
FBADEF 057E 63
FBADWDT 057E C0
FBADWIN 057E 40
FBAIPL 057E 02
FBALOC 057E 43
FBALRDT 057E 06
FBALWDT 057E 01
FBARD 057E 42
FBAWR 057E 41
FOFM 057E 08
FREER0 0108
ICC 057E 02
ICL 057E 40
IDA 057E 04
IOCOMM 0121
IOOLD 0000
IR 057E 40
LASTCYL 0088
LASTHED 008C
LASTREC 0122
LOCREC 057E 47
MCKM 057E 04
NOP 057E 03
OVR 057E 04
PCI 057E 80
PCIF 057E 08
PGC 057E 20
PROB 057E 01
PTC 057E 10
PWAIT 0010
QQDSK1 0024
QQDSK2 0024 00000026
QQTRK 0091 01
RDCONS 057E 0A
RDDATA 057E 06
READ 057E 02
SEARCH 057E 31
SECTNUM 0057
SEEK 057E 07
SEEKADR 0050
SENSB 0098
SENSE 057E 04
SETSEC 057E 23
SIGM 057E 01
SILI 057E 20
SKIP 057E 10
TIC 057E 08
TOOBIG 0091 04
WAIT 057E 02
WRDATA 057E 05
WRITE 057E 01
WRITE1 057E 09
WRTKF 0091 02
WRTUPDT 057E 85
XRSAVE 00C8
This information is
based on VM/ESA 2.4.0.
Last updated on 12 Aug 1999 at 11:19:18 EDT.
Copyright IBM Corporation, 1990, 1999
|