1 
 2      dcl     1 iocb                 aligned based (iocb_ptr),
 3                                                             /* I/O control block. */
 4                2 iocb_version       fixed init (1),         /* Version number of structure. */
 5                2 name               char (32),              /* I/O name of this block. */
 6                2 actual_iocb_ptr    ptr,                    /* IOCB ultimately SYNed to. */
 7                2 attach_descrip_ptr ptr,                    /* Ptr to printable attach description. */
 8                2 attach_data_ptr    ptr,                    /* Ptr to attach data structure. */
 9                2 open_descrip_ptr   ptr,                    /* Ptr to printable open description. */
10                2 open_data_ptr      ptr,                    /* Ptr to open data structure (old SDB). */
11                2 reserved           bit (72),               /* Reserved for future use. */
12                2 detach_iocb        entry (ptr, fixed (35)),/* detach_iocb(p,s) */
13                2 open               entry (ptr, fixed, bit (1) aligned, fixed (35)),
14                                                             /* open(p,mode,not_used,s) */
15                2 close              entry (ptr, fixed (35)),/* close(p,s) */
16                2 get_line           entry (ptr, ptr, fixed (21), fixed (21), fixed (35)),
17                                                             /* get_line(p,bufptr,buflen,actlen,s) */
18                2 get_chars          entry (ptr, ptr, fixed (21), fixed (21), fixed (35)),
19                                                             /* get_chars(p,bufptr,buflen,actlen,s) */
20                2 put_chars          entry (ptr, ptr, fixed (21), fixed (35)),
21                                                             /* put_chars(p,bufptr,buflen,s) */
22                2 modes              entry (ptr, char (*), char (*), fixed (35)),
23                                                             /* modes(p,newmode,oldmode,s) */
24                2 position           entry (ptr, fixed, fixed (21), fixed (35)),
25                                                             /* position(p,u1,u2,s) */
26                2 control            entry (ptr, char (*), ptr, fixed (35)),
27                                                             /* control(p,order,infptr,s) */
28                2 read_record        entry (ptr, ptr, fixed (21), fixed (21), fixed (35)),
29                                                             /* read_record(p,bufptr,buflen,actlen,s) */
30                2 write_record       entry (ptr, ptr, fixed (21), fixed (35)),
31                                                             /* write_record(p,bufptr,buflen,s) */
32                2 rewrite_record     entry (ptr, ptr, fixed (21), fixed (35)),
33                                                             /* rewrite_record(p,bufptr,buflen,s) */
34                2 delete_record      entry (ptr, fixed (35)),/* delete_record(p,s) */
35                2 seek_key           entry (ptr, char (256) varying, fixed (21), fixed (35)),
36                                                             /* seek_key(p,key,len,s) */
37                2 read_key           entry (ptr, char (256) varying, fixed (21), fixed (35)),
38                                                             /* read_key(p,key,len,s) */
39                2 read_length        entry (ptr, fixed (21), fixed (35));
40                                                             /* read_length(p,len,s) */
41