For that matter, if you want to use a macro, you can set up something like
this, that creates a single character ORG for any size input string:

         MACRO
&LABEL   CHARTBL                                                       $
               &INITHEX=40,       INITIALIZATION CHARACTER             $
               &STR1=,            CHARACTER STRING TO PROCESS          $
               &STR2=,            CHARACTER STRING TO PROCESS          $
               &STR3=             CHARACTER STRING TO PROCESS
         LCLA  &STRLEN            LENGTH OF STRING INPUT
         LCLA  &I                 LOOP CONTROL
         LCLC  &CHAR              INDIVIDUAL STRING CHARACTER
.* --------------------------------------------------------------------
&STRLEN  SETA  K'&STR1+K'&STR2+K'&STR3
         AIF  (&STRLEN GT 0).BUILDIT
         MNOTE 4,'AT LEAST ONE STRING SHOULD BE ENTERED, USING DEFAULT'
.* --------------------------------------------------------------------
.BUILDIT  ANOP
&LABEL   DC 256X'&INITHEX'        TABLE DEFINITION WITH INIT CHAR
.* --------------------------------------------------------------------
.* LOOP EACH OF THE THREE STRINGS, BUILDING A DC FOR EACH CHAR
.STR1GO  ANOP
&I       SETA 1
         AIF (K'&STR1 EQ 0).STR2GO
.STR1LOOP ANOP
&CHAR    SETC '&STR1'(&I,1)
         ORG  &LABEL+C'&CHAR'
         DC   C'&CHAR'
.STR1INC ANOP
&I       SETA  &I+1
         AIF (&I LE K'&STR1).STR1LOOP
.* --------------------------------------------------------------------
.STR2GO  ANOP
&I       SETA 1
         AIF (K'&STR2 EQ 0).STR3GO
.STR2LOOP ANOP
&CHAR    SETC '&STR2'(&I,1)
         ORG  &LABEL+C'&CHAR'
         DC   C'&CHAR'
.STR2INC ANOP
&I       SETA  &I+1
         AIF (&I LE K'&STR2).STR2LOOP
.* --------------------------------------------------------------------
.STR3GO  ANOP
&I       SETA 1
         AIF (K'&STR3 EQ 0).ENDSTR
.STR3LOOP ANOP
&CHAR    SETC '&STR3'(&I,1)
         ORG  &LABEL+C'&CHAR'
         DC   C'&CHAR'
.STR3INC ANOP
&I       SETA  &I+1
         AIF (&I LE K'&STR3).STR3LOOP
.* --------------------------------------------------------------------
.ENDSTR  ANOP
         ORG
         MEND

Reply via email to