Thanks to all.  The following can be used to calculate a patch space between 
128 bytes and 256 bytes.

(((*-MODNAME+255)/128)*128)-(*-MODNAME)

Chris Blaicher
Principal Software Engineer, Software Development
Syncsort Incorporated
50 Tice Boulevard, Woodcliff Lake, NJ 07677
P: 201-930-8260  |  M: 512-627-3803
E: [email protected]


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]] On 
Behalf Of Bill Planer
Sent: Thursday, January 23, 2014 3:10 PM
To: MVS List Server 2
Subject: Re: Force module to a length

I don't think you can multiply or divide a relocatable symbol, which the first 
* is.  I think the following would work:

SPACE  EQU  ((*-START+255)/128)*128

Where START is a label for the first location of your module or the CSECT name.

Bill Planer



-----Original Message-----
From: Blaicher, Christopher Y.
Sent: Thursday, January 23, 2014 14:55
To: [email protected]
Subject: Force module to a length

I am sure I have done this in the past, but a senior moment has kicked in ...

I want to round a module to a multiple of 128 bytes and I want at least 128 
free bytes at the end of the module.  I tried putting this at the end of the 
code and get the following with this error.

0                                   5303 SPACE    EQU   ((*+255)/128)*128
** ASMA032E RELOCATABLE VALUE OR UNRESOLVED SYMBOL FOUND WHEN ABSOLUTE VALUE 
REQUIRED - ((*+255)/128)*128 Any ideas where I went wrong?

Chris Blaicher
Principal Software Engineer, Software Development Syncsort Incorporated
50 Tice Boulevard, Woodcliff Lake, NJ 07677
P: 201-930-8260  |  M: 512-627-3803
E: [email protected]

Reply via email to