Smart questions
Smart answers
Smart people
Join Tek-Tips Forums
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Member Login




Remember Me
Forgot Password?
Join Us!

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips now!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

Join Tek-Tips
*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.
Jobs from Indeed

Link To This Forum!

Partner Button
Add Stickiness To Your Site By Linking To This Professionally Managed Technical Forum.
Just copy and paste the
code below into your site.

karao76 (Programmer) (OP)
20 May 03 16:43
I have an assembler pgm (load module) that takes an input record which is in binary and translates it into a character based record. The binary record is 64 bytes and the translated record is about 900 bytes. I am trying to call this assembler program from my REXX program but I dont know how to pass the record structures that it needs because the parameters on a call cant exceed 100 characters . Let me know how to do it?


KiwiREXXDude (Programmer)
28 May 03 2:37
I think this has been asked and answered previously, but there are 2 ways of doing it (assuming you are running on an OS/390).

1) use call e.g. CALL 'MYPGM' 'MYPARM'
2) use SELECT in ISPF e.g. Address 'ISPEXEC' "Select Pgm(MYPGM) Parm(MYPARM)"
GiulianoGalassi (Programmer)
5 Jun 03 10:22
1° set Rexx variable with record value
2° built the Assembler Program with Tso Rexx
"IKJCT441" interface routine
3° get the Rexx Variable into Assembler program and map it with opportune Dsect equal the record structure

example for put Rexx Variable by Assembler Program:
the program put the Rexx variabile named "V1234" initialized with value "September"
         ....
CVTPTR   EQU   16    
CVTTVT   EQU   X'9C'
         IKJTSVT  Tso Vector Table Dsect  
         .....
MYPGM    CSECT ,
         .....
         L     R15,CVTPTR    Access the CVT                 
         L     R15,CVTTVT(,R15) Access theTSVT              
         L     R15,TSVTVACC-TSVT(,R15)  service
         ST    R15,IKJCT441  service address  
         .....
         LA    R1,IKJCTLST service parm list
         L     R15,IKJCT441 service address
         BALR  R14,R15     execute service
         ST    R15,RETCODE             
         .....


RETCODE  DS    F
IKJCT441 DS    F  service address word

IKJCTLST DS    0F   service parmlist block
         DC    A(ECODE01) ptr to function adr        
         DC    A(NAMEP01) ptr to var name adr         
         DC    A(NAMEL01) ptr to var length adr        
         DC    A(VALUEP01)ptr to var value text adr        
         DC    A(VALUEL01)ptr to var value ll adr        
         DC    X'80',AL3(TOKEN01) ptr to last chain ptr
*
ECODE01  DC    A(TSVEUPDT) function var "Update"
NAMEP01  DC    AL1(0),AL3(VARNAME)
NAMEL01  DC    F'5' Rexx var name length=5 bytes
VALUEP01 DC    AL1(0),AL3(VARTEXT)
VALUEL01 DC    F'9' Rexx var value length
TOKEN01  DC    F'0' bottom block chain
*
VARNAME  DC    CL8'V1234'  Rexx var name
VARTEXT  DC    CL80' ' Rexx var output
         ORG   VARTEXT    
         DC    C'September' Rexx var value
         ORG   ,


note:
the Linkage Amode must be 24 in Read and 31 in Write for Rexx environment

if you want get the variable already existing must change the assembler code from
ECODE01  DC    A(TSVEUPDT) function var "Update"
                   to
ECODE01  DC    A(TSVERETR) function var "Get"
and do not to ddeclare the variable value & it's length




bye bye !!!!!!!!!

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Back To Forum

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close