Hi Alan, Thanks for the explanation. I think it's all lining up properly in my brain now.
I did create an ASCII file with codes x'20' through x'FE' as you suggested, printed it with the binary option and it all makes it clearer to me. I see that there are some French characters that do not print out since I guess they don't exist in Code page 437. I checked the ASCII code versus the printed character and CANADIAN TCPXLATE seems to match and work fine so I'm not sure if the 00370437 TCPXLATE file you want to create will be any different. I guess I cannot assume that the CANADIAN TCPXLATE (or 00370437) will work for all the clients' printers. How do I associate a specific default TCPXLBIN for 1 or all printers? I see in the IBM supplied RSCSLPR CONFIG file, TOASCII and TOASCIIC statements. Would I have to use these statements and possibly create different configuration files for different printers ? The "TCP/IP Planning and Customization Guide" makes mention of the preferred translation table being LPR for the LPR client but I see no LPR TCPxxBIN file anywhere. There is a "tcpxlbin" option for the LPDXMANY configuration file but that is for LPD , not what I want to do, correct ? I'm also assuming that if a default translation table can been set for a printer that it will work for any CMS command (PRINT, PPS or LPR) or spool file coming from say, VSE/ESA, correct ? Mike -----Original Message----- From: VM/ESA and z/VM Discussions [mailto:[EMAIL PROTECTED] On Behalf Of Alan Altmark Sent: December 15, 2005 5:27 PM To: [email protected] Subject: Re: LPR & French Canadian characters On Thursday, 12/15/2005 at 02:33 EST, "Horlick, Michael" <[EMAIL PROTECTED]> wrote: > I did a CHCP on my PC and I get > Active code page: 850 The code page of *your* PC doesn't matter. What matters is the code page of the print server. > Anyways, back to my printer. Uppercase A circumflex  (EBCDIC x'62') prints as > ? which I think is x'b6', according to the character map, is "Box drawings > Vertical double and left single". > > So, from what I understand my printer is using Code Page 437 and the CANADIAN > TCPXLATE has some of the right codes for most of the characters. > Do I take it that the printer should be set for Code Page 1252? But then why > does the ASCII file with all the French characters print OK on the printer? For > example that  is x'C2' on my PC, if the PPS command using 00371252 converts > from EBCDIC x'62' to ASCII x'C2' shouldn't it come out as x'C2'. First, understand that the printer operates with Unicode or some variation of a multi-byte character set and is not restricted to a particular code page. It can print anything you want. The Windows print functions will assume the data is code page 1252 and will print the correct symbol. The editor and printer agree. If you are using Windows native "TCP/IP Print Server" (in Services), the same is true so the xxxx1252 translation table works. If you are running some other LPD application, then it depends on whether the app is a native Windows app (Windows family APIs) or if it is using legacy DOS APIs. I believe Windows assumes DOS apps use code page 437. Let's look at it this way: - In code page 1252,  is x'C2' - In code page 850,  is x'B6' - In code page 437,  does not exist - In code page 437, ? is x'B6' You LPR the file with CANADIAN, so the EBCDIC x'62' is changed to x'B6'. Your print server writes x'B6' to the printer. But Windows thinks it's code page 437, and writes the "Box drawings vertical double and left single" character to the printer. By the way, the above also means I can't generate a translation table for 00370437 that would be capable of printing Â. Sorry. >Is the LPD on the printer doing this conversion to Code Page 437? No, I think it is the DOS interface in Windows that assumes it. For the purposes of discussion with your customer's printer support people, you can eliminate the EBCDIC-ASCII translation issue by creating a CMS file that contains the ASCII "French" characters and LPR it in binary. For fun, send everything from 0x20-0xFE to see what you get. Alan Altmark z/VM Development IBM Endicott
