1. Re: Exclamation Point in DirectInput Key List
- Posted by Igor Kachan <kinz at peterlink.ru> Feb 23, 2002
- 444 views
Hi Martin, ---------- > ïÔ: Martin Stachon <martin.stachon at worldonline.cz> > ëÏÍÕ: EUforum <EUforum at topica.com> > ôÅÍÁ: Re: Exclamation Point in DirectInput Key List > äÁÔÁ: Saturday, February 23, 2002 12:30 > Igor Kachan wrote: > > but '!' is *absolutelly* stable ... > > I can not reproduce this your problem here. > > I'm sorry. > > Yes the actual ASCII code is the same, but the key needed to press > on keyboard differs. My keyboard has both Czech and English labels printed > (the Czech are red), and all keys except the alphabet and Ctrl, delete etc are different. > (plus [Z] and [Y] keys are swapped - QWERTZ layout) > > Martin These things are dependent on the national standards on the typewriter's keyboards. To make puter's keyboard similar to typewriter's one, exist keyboard drivers. My '2' key has standard '@' on shift and red '"' for the Russian register, '3' key has standard '#' on shift and red '/' for Russian register and so on ... The Russian keyboard driver takes the code of the pressed key and recodes this code or doesn't recode it to get the ASCII or ANSI code of the letter, which shape is on the pressed key, to put this letter onto the screen. Drivers for Dos window and Windows window are *different*. There is a good program in euphoria/bin directory, named key.ex. Run this programm and see the codes *after your native keyboard driver*. Works fine in Dos window. But this simple program doesn't understand Russian at all under the Windows control. If I rename it as key.exw, then my Dos keyboard driver is blocked, Windows keyboard driver doesn't work and I can input just ASCII. But puts(1, "Pure Russian Text") works fine, i.e. programmatically I can output normal Russian. So, to have foreign languages on the input from your keyboard under Windows you must use API. These things are the great features of Bill's products. All too simple things become too complicated just for understanding. Pentium-IV crashed under Windows' '!' sign, one bang and job done. Regards, Igor Kachan kinz at peterlink.ru