[comp.sys.ibm.pc] character codes

berdia@dg-rtp.dg.com (Sanjay Berdia) (02/03/90)

I have a few questions regarding the IBM defined ASCII and extended 
character set ( and code pages ).

    1.  Could someone shed some light on the (IBM defined) ASCII
	character 124.  Is it a broken bar or a vertical bar ? I have
	found some documentation that says it's a broken bar and some that
	says it's a vertical bar.  PCs that I have used display a
	broken bar.  Is the manufacture of the display adapter the issue ?
	What about code pages ?  If you have the time, could you try to 
	print ASCII char 124 and email me the results, what version of
	DOS you are running, the code page if applicable, and the
	manufacturer of your display adapter.

    2.  Do international versions of DOS prior to 3.3 down load a different
	standard and/or extended character set other than the default
	IBM character set ? If so, do they match one of the standard code
	pages defined today.

    3.  Could someone please tell me what the following character codes
	represent.

	Code Page       Key 	Comments   
	---------       ----	--------------------------------	
	437		0x9E	
	 "		0xA9
	 "		0xAA
	 "		0xEE	is this a small letter epsilon as it appears
				in the definition of code 437 or is it a 
				symbol representing "member of a set"
	 "		0xF9
	850		0xEE
	 "		0xF0	is this a hypen (0x20) ? If so, why is it
				there ?
	 "		0xF2

    4.  Why do I get two make/break codes when I press the Print Screen key ?
	Note, when I type Shift-Print Screen or Ctrl-Print Screen, I only
	get one make/break code for the Print Screen key.  I am using a
	101 keyboard.

    5.  When I press Num-lock or Scroll-lock on a 101 keyboard, two 0xFA 
	codes are send by the keyboard controller before the make/break
	key combinations.  Why does this happen ? Is the ACK command being
	sent ? I have tried to check to see if it is a command with no
	luck.  Any pointers would be greatly appreciated.

If anyone can help, please send me email.  If there is enough interest, I
will post a summary.

Sanjay Berdia
berdia@dg-rtp.dg.com

dean.milner@canremote.uucp (DEAN MILNER) (02/11/90)

Since I'm not using a 101 keyboard I can only answer to the query on
character 124 in the IBM character set. this is indeed a broken vertical
bar '|' and prints as such on every machine /printer combo I have seen
using DOS 3.0 - 4.01.
 
/*Dean*/

 * QNet 1.04a1:  MUI Sydney, NS (902) 564-5022     *NorthAmeriNet*

bcw@rti.UUCP (Bruce Wright) (02/13/90)

In article <90021102075353@masnet.uucp>, dean.milner@canremote.uucp (DEAN MILNER) writes:
> Since I'm not using a 101 keyboard I can only answer to the query on
> character 124 in the IBM character set. this is indeed a broken vertical
> bar '|' and prints as such on every machine /printer combo I have seen
> using DOS 3.0 - 4.01.

The graphic for character code 124 has been variously represented as a
broken or a solid vertical bar.  The IBM-PC character set uses a broken
vertical bar for it, but this is, strictly speaking, nonstandard.

The ISO Latin-1 character set uses a solid vertical bar in character 
position 124, and a _broken_ vertical bar in character position 166 (IBM 
didn't follow the ISO standard _above_ character position 128, either).  
In IBM's defense is that the ISO standard had not been finalized when the
PC was introduced, though to their discredit it was in progress, and
they ignored it.

If you are interested in seeing the whole ISO character set you might
look at the character set used by Microsoft Windows, which follows the
ISO standard rather than the IBM-PC character set (at least for their
"default" character set, though the IBM-PC character set is available).

Other ISO character sets also exist for, for example, Greek and Russian;
and are in progress for various Eastern languages.

The keyboard you are using is, of course, irrelevant - it just generates
the character, not the graphic (that's the function of the display
adapter or the printer).

This whole subject reminds me of an old IBM joke, remembering the EBCDIC
character set that they used on their mainframes:

	ASCII, n.  An obsolete standard.

:-)

						Bruce C. Wright