On Tue, 12 Jul 2005 17:45:00 -0700, Edward E. Jaffe
<[EMAIL PROTECTED]> wrote:
>
>FYI. This test is incomplete/erroneous. The valid characters for modern
>3270 devices are x'00' and x'40' through x'FE' inclusive. x'01' through
>x'3F' and x'FF' will cause PROGxxx failures.
>
Ed, thanks for the clarification (x'00'). What about on real 3270
terminals. Will x'00' cause a program check?
At any rate... here is the slight modification to the REXX code
so it is not erroneous:
XLATE_NONDISP: /* translate non-display characters to a "." */
Arg XLATEPRM
XLATELEN = Length(XLATEPRM) /* length of parm passed to routine */
Do I = 1 to XLATELEN /* check each byte for */
If (Substr(XLATEPRM,I,1) > '00'x & , /* non-display characters */
Substr(XLATEPRM,I,1) < '40'x ) | , /* and replace each */
Substr(XLATEPRM,I,1) = 'FF'x then , /* character that */
XLATEPRM = OVERLAY('.',XLATEPRM,I) /* is non-displayable */
End /* with a period (.) */
Return XLATEPRM
Mark
--
Mark Zelden
Sr. Software and Systems Architect
Zurich North America and Farmers Insurance Group
mailto: [EMAIL PROTECTED]
Systems Programming expert at http://Search390.com/ateExperts/
Mark's MVS Utilities: http://home.flash.net/~mzelden/mvsutil.html
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html