Heck, doing it the hardest way possible would not be terribly burdensome. Code one line DC X'00',X'01',X'02',...,X'0F'
Repro that 15 times. Then using an editor select the first repro line and change all '0 to '1, then on the next line all '0 to '2, and so forth. Finally overtype 40 where the 5C is. Charles -----Original Message----- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Charles Mills Sent: Thursday, May 26, 2022 2:52 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Generating a TR field All of the above. A run-time loop would be trivial, and if executed once per run would not use noticeable CPU. A macro that used an incremented LCLA would be straightforward. @Ed's approach is elegant, although a maintenance newbie might have trouble understanding what 256AL1(*-TABLE) did. If the field is expected to be all, say, uppercase alphanumeric, and you could live with anything else being translated to SUB or ? or something like that, then hand-coding the table would not be too onerous. There are probably other arguably reasonable approaches. Charles -----Original Message----- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Ed Jaffe Sent: Thursday, May 26, 2022 2:36 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Generating a TR field On 5/26/2022 2:23 PM, Schmitt, Michael wrote: > I want to replace all '*' with a space in a field. That's a TR instruction, > right? But when I search through our 40 years of assembler code, I see no > uses of TR for such a purpose. > > I thinking this is because of difficulty in building the TR table. We'd need > to have 256 bytes where every byte's value in in ascending sequence: 00 01 02 > 03 04 05 06 07 08 09 0A etc, right? Except for the byte at offset x'5C', > which would have the value x'40'. > > Is there a slick way or a macro to build the TR table? Or do people just code > a TRT loop instead, since it is easier to build a TRT table? What you want should be trivial: |TABLE DC 256AL1(*-TABLE) | ORG TABLE+C'*' | DC CL1' ' | ORG , -- Phoenix Software International Edward E. Jaffe Chief Technology Officer 831 Parkview Drive North El Segundo, CA 90245 https://www.phoenixsoftware.com/ -------------------------------------------------------------------------------- This e-mail message, including any attachments, appended messages and the information contained therein, is for the sole use of the intended recipient(s). If you are not an intended recipient or have otherwise received this email message in error, any use, dissemination, distribution, review, storage or copying of this e-mail message and the information contained therein is strictly prohibited. If you are not an intended recipient, please contact the sender by reply e-mail and destroy all copies of this email message and do not otherwise utilize or retain this email message or any or all of the information contained therein. Although this email message and any attachments or appended messages are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by the sender for any loss or damage arising in any way from its opening or use.