[syslinux] kbdmap & ASCII > 128

Josef Siemes jsiemes at web.de
Wed Oct 16 12:21:50 PDT 2002


Hi,

I've just played around with kbdmap in pxelinux. I always wondered why there was no 
translation for "AltGr"-Keys (the right 'Alt'-Key) (AltGr-Q generates "@" on a german 
keyboard e.g.), and I found in conio.inc (syslinux 1.76):

getchar:
[..]
.kbd:		xor ax,ax		; Get keyboard input
		int 16h
		and al,al
		jz .func_key
		mov bx,KbdMap		; Convert character sets
		xlatb
.func_key:	ret

So (from my small knowledge about asm ...) the character is read, tested for something (the 
'and'/'jz' - is this a test for >127?), and only if that didn't return zero the keymap translation
is done. Why isn't every character translated? Is there some problem with this? Since the
characters above 127 are also in the kbdmap-table, there should be no problem in translating
them all? Or does the bios treat characters >127 different?



More information about the Syslinux mailing list