On Fri, 15 Aug 2025 12:19:59 +0000, Seymour J Metz <[email protected]> wrote:
>Read the GOFF documentation. Are you saying OMF doesn't support VD references? Note that I don't need long external names, so I don't need GOFF for that. But if VD is only supported for GOFF, that might be an explanation as for why I didn't see it in the manual. I had previously assumed it was there, but I was just failing to find it. There are references to the CSECT being RMODE 64, so some level of 64-bit has presumably been added to OMF. BFN. Paul. >________________________________________ >From: IBMaMainframe Discussion List <[email protected]> on behalf of >Paul Edwards <[email protected]> >Sent: Thursday, August 14, 2025 11:38 PM >To: [email protected] <[email protected]> >Subject: Re: Running a program RMODE64 > > >External Message: Use Caution > > >On Thu, 14 Aug 2025 20:26:14 -0400, Joseph Reichman <[email protected]> >wrote: > >Hi Jopeph. > >I am interested in RMODE 64 on z/OS too. And have >some questions too. > > >Page 196 shows that RMODE 64 exists as a concept: > >https://publib.boulder.ibm.com/epubs/pdf/iea2b2b1.pdf > >On page 199 I can see V() references in the RLD. > >Where are VD() references documented? > > > > >> It seems you can run a program that is rmode64 >> With synchx linkx and attachx > >Does this mean thatoyou can't go EXEC PGM= >and have the program potentially go above 4 GiB? > > >Page 291 shows that AMODE=64 existsb but not RMODE=64 >But perhaps if the RMODE is ANY, z/OS can further check >the internals of the load module and decide to locate >it above 4 GiB? > > >I don't have direct access to z/OS. Would someone be >able to assemble this (it may need corrections) and >give me the object code for ONE and TWO, plus the >resulting load module unloaded with IEBCOPY and >transferred with ftp binary with locsite rdw > >Thanks. Paul. > > > >//PDPMVS JOB CLASS=C,REGION=0K,TIME=1440 >//* >//PDPASM PROC LIST='NOLIST' >//ASM EXEC PGM=ASMA90, >// PARM='DECK,&LIST,TERM' >//SYSLIB DD DSN=SYS1.MACLIB,DISP=SHR,DCB=BLKSIZE=32720 >// DD DSN=&&amp;MACLIB,DISP=(OLD,PASS) >// DD DSN=SYS1.MODGEN,DISP=SHR >//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(20,10)) >//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(20,10)) >//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(20,10)) >//SYSTERM DD SYSOUT=* >//SYSPRINT DD SYSOUT=* >//SYSLIN DD DUMMY >//SYSGO DD DUMMY >//SYSPUNCH DD DSN=&&amp;OBJSET,UNIT=SYSALLDA,SPACE=(80,(9000,9000)), >// DISP=(MOD,PASS) >//* >// PEND >//CREATE EXEC PGM=IEFBR14 >//DD13 DD DSN=&&amp;LOADLIB,DISP=(,PASS), >// DCB=(RECFM=U,LRECL=0,BLKSIZE=6144), >// SPACE=(CYL,(10,10,20)),UNIT=SYSALLDA >//DD14 DD DSN=&&amp;MACLIB,DISP=(,PASS), >// DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160), >// SPACE=(CYL,(10,10,20)),UNIT=SYSALLDA >//* >//ONE EXEC PDPASM,LIST='LIST' >//SYSIN DD * >*********************************************************************** >* * >* This program written by Paul Edwards. * >* Released to the public domain * >* * >*********************************************************************** >*********************************************************************** >* * >* ONE - call TWO to set R15 * >* * >*********************************************************************** >* > PRINT GEN >* YREGS was not part of the SYS1.MACLIB shipped with MVS 3.8j >* so may not be available, so do our own defines instead. >* YREGS >R0 EQU 0 >R1 EQU 1 >R2 EQU 2 >R3 EQU 3 >R4 EQU 4 >R5 EQU 5 >R6 EQU 6 >R7 EQU 7 >R8 EQU 8 >R9 EQU 9 >R10 EQU 10 >R11 EQU 11 >R12 EQU 12 >R13 EQU 13 >R14 EQU 14 >R15 EQU 15 >SUBPOOL EQU 0 > CSECT >* > ENTRY ONE >ONE DS 0H > SAVE (14,12),,ONE > LR R10,R15 > USING ONE,R10 > LR R9,R13 > LA R13,SAVEAREA > LG R15,=VD(TWO) > LGR R0,R14 > BALR R14,R15 > LGR R14,R0 > LR R13,R9 >* LA R15,0 > RETURN (14,12),RC=(15) >SAVEAREA DS 19F > END >/* >//TWO EXEC PDPASM,LIST='LIST' >//SYSIN DD * >*********************************************************************** >* * >* This program written by Paul Edwards. * >* Released to the public domain * >* * >*********************************************************************** >*********************************************************************** >* * >* return 5 in R15 * >* * >*********************************************************************** >* > PRINT GEN >* YREGS was not part of the SYS1.MACLIB shipped with MVS 3.8j >* so may not be available, so do our own defines instead. >* YREGS >R0 EQU 0 >R1 EQU 1 >R2 EQU 2 >R3 EQU 3 >R4 EQU 4 >R5 EQU 5 >R6 EQU 6 >R7 EQU 7 >R8 EQU 8 >R9 EQU 9 >R10 EQU 10 >R11 EQU 11 >R12 EQU 12 >R13 EQU 13 >R14 EQU 14 >R15 EQU 15 >SUBPOOL EQU 0 > CSECT >* > ENTRY TWO >TWO DS 0H > LA R15,5 > BR R14 > END >/* >//* >//LKED EXEC PGM=IEWL,PARM='MAP,LIST,AMODE=64,RMODE=ANY' >//SYSLIN DD DSN=&&amp;OBJSET,DISP=(OLD,DELETE) >//*SYSLIB not needed >//SYSLMOD DD DSN=&&amp;LOADLIB(PDPTEST),DISP=(OLD,PASS) >//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(2,1)) >//SYSPRINT DD SYSOUT=* >//SYSABEND DD SYSOUT=* >//SYSIN DD * >/* >//* >//PDPTEST EXEC PGM=PDPTEST,PARM='', >// COND=(4,LT,LKED) >//STEPLIB DD DSN=&&amp;LOADLIB,DISP=(OLD,PASS) >//SYSPRINT DD SYSOUT=* >//SYSTERM DD SYSOUT=* >//SYSABEND DD SYSOUT=* >//SYSIN DD DUMMY >//* >// > >---------------------------------------------------------------------- >For IBM-MAIN subscribe / signoff / archive access instructions, >send email to [email protected] with the message: INFO IBM-MAIN > > > >---------------------------------------------------------------------- >For IBM-MAIN subscribe / signoff / archive access instructions, >send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
