Some of the uncertainty about how HLASM handles EBCDIC, ASCII, and other code pages may be due to a lack of detail in the explanations. I'll try:
* The mapping of EBCDIC source characters to other forms is limited in scope (as many have noted). This was intended. * HLASM was not designed to accept ASCII source programs. (On zLinux, however, a brief test is done on the first record to determine whether or not to translate the file to EBCDIC as it's read for processing.) * A CA-type constant simply translates standard EBCDIC source characters (code page 037) to generate ASCII object bytes (code page 819, I believe). * The TRANSLATE option lets you specify a translate table to be used for mapping EBCDIC source bytes to a different object encoding; the default table is 037-to-819 (I believe). Several typical translate tables are provided for common (extended) EBCDIC code pages, but you can write your own translate table as described in the Programmer's Guide. If you would like HLASM to accept and/or generate a wider variety of character sets, submit a "Request For Enhancement" through the HLASM web site, or with the help of your friendly local IBM representatives. Regards... John Ehrman
