MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Advantages of Converting 24 to 31 Bit Address
Goto page Previous  1, 2
 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming
View previous topic :: View next topic  
Author Message
semigeezer
Supermod


Joined: 03 Jan 2003
Posts: 1014
Topics: 13
Location: Atlantis

PostPosted: Thu Jun 10, 2004 8:36 pm    Post subject: Reply with quote

Why wouldn't this work? Think about it in assember rather than COBOL. Your data resides below the line so the addresses of the data are of the form ??XXXXXX where the ?? nibbles don't matter to a 24 bit program. That data is being accessed by a 31 bit mode program, but the parameter list used to pass the addresses of the data to the 31 bit program (via the LINK SVC) will have 00 or 80 as the first byte in each address. That makes the addresses 00XXXXXX or 80XXXXXX which is perfectly acceptable to a 31 bit program. The CBL DATA(31) clause should refer to storage dynamically allocated by the 2nd program (that storage which is GETMAIN'ed for local use) but has no bearing on how the parameters are addressed. temporary storage may be above the line, but that is used only by the 2nd routine (*)

* I don't know cobol terminology, and LE uses conventions other than 'standard linkage conventions', but the processing concepts are the same as in regular assembler.
Back to top
View user's profile Send private message Visit poster's website
Bithead
Advanced


Joined: 03 Jan 2003
Posts: 550
Topics: 23
Location: Michigan, USA

PostPosted: Fri Jun 11, 2004 8:52 am    Post subject: Reply with quote

I found my mistake. I had a 31 bit program calling a 24 bit program with data(31) rather that a 24 bit program calling a 31 bit program. The first will fail, the second should not.

I will get this sorted out just in time to include 64 bit addressing into the mix!
Back to top
View user's profile Send private message
reddy_niranjan
Beginner


Joined: 07 Jun 2004
Posts: 3
Topics: 1

PostPosted: Wed Jun 16, 2004 4:16 am    Post subject: Reply with quote

Is this DATA(31) or DATA(24) is must be in first line of IGYCRCTL step??

What is the actual differance and relations between DATA(31) & AMODE(31)??
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12382
Topics: 75
Location: San Jose

PostPosted: Wed Jun 16, 2004 7:20 am    Post subject: Reply with quote

Niranjan reddy,

Please search before posting. DATA(24|31) is a compiler option and check this link which explains about all the cobol compiler options

http://www.mvsforums.com/helpboards/viewtopic.php?t=321&highlight=compile+options

Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming All times are GMT - 5 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group