Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How do you invoke a C program from Assembler when C is XPLINK

66 views
Skip to first unread message

Joe DeChirico

unread,
Oct 11, 2022, 4:30:39 PM10/11/22
to
Hi

Can someone tell me what I need to do to be able to invoke a C program from an Assembler program when the C program is XPLINK?

Thanks in advance for any info offered.

JD

Clem Martins

unread,
Jan 19, 2023, 11:57:47 AM1/19/23
to
JD,
The only rule is that the assembler must also be XPLINK, since non-XPLINK cannot invoke XPLINK in any language. Look at the procs that have X in the middle for XPLINK support.
Clem

--
This electronic communication and the information and any files transmitted
with it, or attached to it, are confidential and are intended solely for
the use of the individual or entity to whom it is addressed and may contain
information that is confidential, legally privileged, protected by privacy
laws, or otherwise restricted from disclosure to anyone else. If you are
not the intended recipient or the person responsible for delivering the
e-mail to the intended recipient, you are hereby notified that any use,
copying, distributing, dissemination, forwarding, printing, or copying of
this e-mail is strictly prohibited. If you received this e-mail in error,
please return the e-mail to the sender, delete it from your computer, and
destroy any printed copy of it.

naij...@gmail.com

unread,
Mar 16, 2023, 3:22:39 AM3/16/23
to
Is your assembler LE conforming? In which linkage, standard or XPLINK?
Is your XPLINK C a main program or sub-program (exported function in a DLL)? I guess the later.

1. For LE conforming assembler
1.1 you can consider using CEEVROND CWI from standard non-XPLINK linkage. You need to load and get function descriptor of the target program.
https://www.ibm.com/docs/en/zos/2.2.0?topic=services-ceevrond-run-downward-growing-stack
1.2 OR you can build your assembler as a non-XPLINK DLL which can make calls to another XPLINK DLL.
https://www.ibm.com/docs/en/zos/2.5.0?topic=wdc-writing-your-language-environment-conforming-assembler-dll-code
1.3 OR you can build your assembler with XPLINK linakge, as mentioned by Clem

2. For non-LE assembler
You may consider using CEEPIPI to call the target XPLINK program
https://www.ibm.com/docs/en/zos/2.2.0?topic=subroutines-xplink-considerations
0 new messages