View previous topic :: View next topic
|
Author |
Message |
rammraju
New User
Joined: 05 Mar 2005 Posts: 65 Location: Hyderabad
|
|
|
|
Hi,
I have a cobol program, it calls an assembler routine inside it. when i execute the program the assembler is throwing a return code of 3936 and my job ends abnormally with return code 3936. But assembler is returning the required data and the output of cobol program is fine but the job ends with return code 3936.
Can anyone let me know what is this return code for and if possible please share assembler return codes with me.
Thanks in advance |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10886 Location: italy
|
|
|
|
Quote: |
Can anyone let me know what is this return code for and if possible please share assembler return codes with me. |
We cannot help You if the assembler routine is home written..
if its a routine for some program product You need to look at the provider
documentation
the general convention on return codes is that they are loaded into
register 15 before returning to the calling program,
the reason for the strange return code is most probably
a coding error in the assembler routine
as far as the return codes values.. anything goes as long as
the values are documented and acted on accordingly
regards
e.s |
|
Back to top |
|
|
rammraju
New User
Joined: 05 Mar 2005 Posts: 65 Location: Hyderabad
|
|
|
|
is there a way that i can check the return codes after every instruction (Like display as we use in cobol) |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Check the asm-module; if it's a user error somewhere the return code has to be set in the module. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
is there a way that i can check the return codes after every instruction |
Do you have control of the assembler source? |
|
Back to top |
|
|
rammraju
New User
Joined: 05 Mar 2005 Posts: 65 Location: Hyderabad
|
|
|
|
actually i donot know assembler, i am trying to debug the issue.
I am displaying the RETURN-CODE register (which i think is the register 15) after each call to assembler. it is displaying as 8832 (actually i have moved RETURN-CODE to 9(4) variable and displaying it).
but the job ends with 3936 |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
|
|
I recall that what ever is in register 15 when the assembler returns to the cobol program is the return code. If everything is ok, set R15 to zero just prior to thr return: "SR 15,15"... |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Ok, so
Quote: |
actually i donot know assembler, i am trying to debug the issue. |
The question still needs an answer
Quote: |
Do you have control of the assembler source? |
Where did the assembler module come from?
Does your COBOL program set the return code before ending? If you just want to ignore the 3636 form the assembler module (if indeed it is from the assembler module) you need to MOVE ZERO TO RETURN-CODE before you issue the GOBACK. |
|
Back to top |
|
|
rammraju
New User
Joined: 05 Mar 2005 Posts: 65 Location: Hyderabad
|
|
|
|
Yes, Currently i am doing doing that Dick, moving zero to Return code register just after the call to the assembler. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello RamaMohan,
Is the process now working as needed? |
|
Back to top |
|
|
rammraju
New User
Joined: 05 Mar 2005 Posts: 65 Location: Hyderabad
|
|
|
|
Yes it is working fine. |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10886 Location: italy
|
|
|
|
Quote: |
Yes it is working fine |
I am glad that You solved Your problem,
but still I am convinced that the "owner" of the assembler subroutine
should fix it |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
Yes it is working fine. |
Good to hear - thank you for posting that you have what you need
Quote: |
but still I am convinced that the "owner" of the assembler subroutine should fix it
|
Me too! |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Nice he modified the ASM-module but IMHO there has to be reason why it returned this error code. What if the module is called by other programs with different expectations? Has been investigated this ASM is called only by the program of TS? Just wondered |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hi George,
Quote: |
Nice he modified the ASM-module |
I believe the modification was made to the calling program, not the called ASM. I suspect that the called ASM module is not setting an rc, but what is returned is what was already in the register due to whatever in the code. |
|
Back to top |
|
|
|