Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ulowell!cbmvax!eric From: eric@cbmvax.UUCP (Eric Cotton) Newsgroups: comp.sys.amiga Subject: Re: KeyMap problems Message-ID: <5888@cbmvax.UUCP> Date: 3 Feb 89 15:09:37 GMT References: <7867@louie.udel.EDU> Reply-To: eric@cbmvax.UUCP (Eric Cotton) Organization: Commodore Technology, West Chester, PA Lines: 41 In article <7867@louie.udel.EDU> AXTBF%ALASKA.BITNET@cunyvm.cuny.edu (Tim Friest - programmer at large) writes: >I have been writing a Key Map Editor program and have had a problem with >guru visits saying corrupted memory list or memory trap. I suspected that >the problem was with the actual keymap files so I added a check to display >the values for the undefined or reserved keycodes. > >Though the memory addresses are meaningless on their own, I printed them out >because they should be close to eachother since a keymap is a single hunk >which is loadseged into memory. Anyway, here is the output I got for >USA1 from the AmigaDOS 1.3 enhancer release > >>KeyCode 78 should be undefined but is an illegal type >>KeyCode 79 should be undefined but is an illegal type >>KeyCode 7a should be undefined but is an illegal type >>KeyCode 7b should be undefined but is an illegal type >>KeyCode 7c should be undefined but is KCF_DEAD at address 670047 >>KeyCode 7d should be undefined but is an illegal type >>KeyCode 7e should be undefined but is KCF_DEAD at address 70007 >>KeyCode 7f should be undefined but is KCF_DEAD at address 870087 > >The types are from > KeyMap->KeyMapType[KeyCode] & (KCF_STRING|KCF_DEAD|KCF_NOP) ^^^^^^^^^^ I assume you mean km_LoKeyMapTypes and km_HiKeyMapTypes (two separate pointers for the the low map, and high map, respectively. >My question: Aren't the undefined keycodes supposed to be KCF_NOP?? They are >everywhere except 78-7F.... If these values really aren't undefined, then >why are they KCF_DEAD (cdn had a KCF_STRING on keycode 7b) which point to >bogus memory locations? Using a normal keymapping, 7c would map to roughly >alone (G), shift (NULL), alt (g), and shift+alt (NULL) which doesn't make >any sense either... The keycodes are only defined for $00 to $77, inclusive. There are no codes $78 to $7F. The values you found for $78 to $7F were probably either the start of the LoKeyMap or maybe the start of the dead-key data. -- Eric Cotton Commodore-Amiga (215) 431-9100 1200 Wilson Drive {uunet|pyramid|rutgers}!cbmvax!eric West Chester, PA 19380 "I don't find this stuff amusing anymore."