Discussion:
DYNALLOC
(too old to reply)
Bill Ogden
2018-07-05 14:29:55 UTC
Permalink
Raw Message
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)

LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type

DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'

DRBPTR DC X'80'
DC AL3(DRB)

Thanks..

BIll Ogden


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Bill Godfrey
2018-07-05 14:48:10 UTC
Permalink
Raw Message
Post by Bill Ogden
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)
LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type
DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'
DRBPTR DC X'80'
DC AL3(DRB)
Your A(TU1) should be A(TUPL), and TUPL should look like this:

TUPL DC A(TU1,TU2,TU3,TU4,TU5,TU6,TU7,TU8+X'80000000)

Bill

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Charles Mills
2018-07-05 15:14:41 UTC
Permalink
Raw Message
Should not be a S0C4 but don't you want pointers to ALL of the text units?

Charles


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Bill Godfrey
Sent: Thursday, July 5, 2018 7:48 AM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: DYNALLOC
Post by Bill Ogden
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)
LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type
DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'
DRBPTR DC X'80'
DC AL3(DRB)
Your A(TU1) should be A(TUPL), and TUPL should look like this:

TUPL DC A(TU1,TU2,TU3,TU4,TU5,TU6,TU7,TU8+X'80000000)

Bill

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Tom Marchant
2018-07-05 15:30:47 UTC
Permalink
Raw Message
Post by Charles Mills
Should not be a S0C4 but don't you want pointers to ALL of the text units?
He doesn't have pointers to any of his text units. X'0055',X'0001' is likely not a valid address.
--
Tom Marchant
Post by Charles Mills
-----Original Message-----
Sent: Thursday, July 5, 2018 7:48 AM
Subject: Re: DYNALLOC
Post by Bill Ogden
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)
LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type
DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'
DRBPTR DC X'80'
DC AL3(DRB)
TUPL DC A(TU1,TU2,TU3,TU4,TU5,TU6,TU7,TU8+X'80000000)
Bill
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Barkow, Eileen
2018-07-05 15:42:49 UTC
Permalink
Raw Message
Are you running with AMODE=24?
I think that you still need to, from looking at my old DYNALLOC pgms.

DS 0F
DYNBLKS EQU *
RBPOINT DC A(RBS) ADR REQ BLOCK PASSED IN R1
ORG RBPOINT S99RBP DSECT
DC X'80' HI ORDER BIT MUST BE ON
DS 0F
RBS EQU *
RB DS 0CL20 S99RB DSECT LOC BY RBPOINT
RBLN DC AL1(RBEL) LEN OF RB
RBVERB DC AL1(S99VRBAL) FUNC 01-07 01 FOR ALLOC
RBFLAG1 DC AL1(S99NOMNT) FLAG BYTE-DONT CONSIDER OFFLINE UNITS
RBFLAG2 DS X 2ND FLAG BYTE
RBERROR DS XL2 ERROR REASON CODE
RBINFO DS XL2 INFO REASON CODE
RBTXTPP DS A(TXPOINTS) LIST OF TEXT PTRS
DS F RESERVED
RBAUTHFL DS XL4 FLAGS FOR AUTH FUNCTIONS
RBEL EQU *-RB

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Tom Marchant
Sent: Thursday, July 05, 2018 11:31 AM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: DYNALLOC
Post by Charles Mills
Should not be a S0C4 but don't you want pointers to ALL of the text units?
He doesn't have pointers to any of his text units. X'0055',X'0001' is likely not a valid address.

--
Tom Marchant
Post by Charles Mills
-----Original Message-----
Sent: Thursday, July 5, 2018 7:48 AM
Subject: Re: DYNALLOC
Post by Bill Ogden
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)
LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type
DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'
DRBPTR DC X'80'
DC AL3(DRB)
TUPL DC A(TU1,TU2,TU3,TU4,TU5,TU6,TU7,TU8+X'80000000)
Bill
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN


________________________________

This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Seymour J Metz
2018-07-05 17:04:09 UTC
Permalink
Raw Message
AFAIK only DAIR requires AMODE(24), not DYNALLOC.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List <IBM-***@listserv.ua.edu> on behalf of Barkow, Eileen <***@DOITT.NYC.GOV>
Sent: Thursday, July 5, 2018 11:42 AM
To: IBM-***@listserv.ua.edu
Subject: Re: DYNALLOC

Are you running with AMODE=24?
I think that you still need to, from looking at my old DYNALLOC pgms.

DS 0F
DYNBLKS EQU *
RBPOINT DC A(RBS) ADR REQ BLOCK PASSED IN R1
ORG RBPOINT S99RBP DSECT
DC X'80' HI ORDER BIT MUST BE ON
DS 0F
RBS EQU *
RB DS 0CL20 S99RB DSECT LOC BY RBPOINT
RBLN DC AL1(RBEL) LEN OF RB
RBVERB DC AL1(S99VRBAL) FUNC 01-07 01 FOR ALLOC
RBFLAG1 DC AL1(S99NOMNT) FLAG BYTE-DONT CONSIDER OFFLINE UNITS
RBFLAG2 DS X 2ND FLAG BYTE
RBERROR DS XL2 ERROR REASON CODE
RBINFO DS XL2 INFO REASON CODE
RBTXTPP DS A(TXPOINTS) LIST OF TEXT PTRS
DS F RESERVED
RBAUTHFL DS XL4 FLAGS FOR AUTH FUNCTIONS
RBEL EQU *-RB

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-***@LISTSERV.UA.EDU] On Behalf Of Tom Marchant
Sent: Thursday, July 05, 2018 11:31 AM
To: IBM-***@LISTSERV.UA.EDU
Subject: Re: DYNALLOC
Post by Charles Mills
Should not be a S0C4 but don't you want pointers to ALL of the text units?
He doesn't have pointers to any of his text units. X'0055',X'0001' is likely not a valid address.

--
Tom Marchant
Post by Charles Mills
-----Original Message-----
Sent: Thursday, July 5, 2018 7:48 AM
Subject: Re: DYNALLOC
Post by Bill Ogden
It has been a few decades since I used DYNALLOC and I am now doing
something stupid that results in an 0C4 somewhere in never-never land. Can
someone give me a clue without going to much trouble? (DRB and DRBPTR are
on full word boundaries.)
LA 1,DRBPTR
DYNALLOC
...
...
TU1 DC X'0055',X'0001',X'0008',C'xxxxxxxx' Returned DDname
TU2 DC X'0002',X'0001',X'000A',C'SYS1.TRASH' DSname
TU3 DC X'0004',X'0001',X'0001',X'04' DISP=NEW
TU4 DC X'0005',X'0001',X'0001',X'04' DISP=DELETE
TU5 DC X'0008',X'0000' Allocate in cylinders
TU6 DC X'000A',X'0001',X'0003',X'00000A' 10 cylinders
TU7 DC X'0010',X'0001',X'0006',C'WORK01' volser
TU8 DC X'0015',X'0001',X'0004',C'3390' UNIT type
DRB DC X'14'
DC X'01' verb = dsname allocation
DC X'6080' flags
DC X'00000000' error codes
DC A(TU1)
DC X'00000000'
DRBPTR DC X'80'
DC AL3(DRB)
TUPL DC A(TU1,TU2,TU3,TU4,TU5,TU6,TU7,TU8+X'80000000)
Bill
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN


________________________________

This e-mail, including any attachments, may be confidential, privileged or otherwise legally protected. It is intended only for the addressee. If you received this e-mail in error or from someone who was not authorized to send it to you, do not disseminate, copy or otherwise use this e-mail or its attachments. Please notify the sender immediately by reply e-mail and delete the e-mail from your system.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Steve Smith
2018-07-05 18:00:06 UTC
Permalink
Raw Message
DYNALLOC certainly does not require AMODE 24, or RMODE 24. The coding
technique used in Bill Ogden's and Eileen's examples do. Bill Godfrey's
works in either 24 or 31 modes. He also identified the main problem.

FWIW, there's no need to write code that looks like it was extracted from a
dump. Why not, for example:

TU1 DC Y(DALRTDDN,1,8)
TU1DDN DC CL8'?'

sas
Post by Seymour J Metz
AFAIK only DAIR requires AMODE(24), not DYNALLOC.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
Sent: Thursday, July 5, 2018 11:42 AM
Subject: Re: DYNALLOC
Are you running with AMODE=24?
I think that you still need to, from looking at my old DYNALLOC pgms.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Loading...