|
From: thricenightly (<del...@gm...> - 2017-06-19 18:57:29
|
>>in_key_pressed function is also checking the state of the CAPS and SYM SHIFT keys so that it can distinguish between 'Q' and 'q', eg. With multiple keys pressed, CAPS and/or SYM SHIFT could be erroneously detected. >There's no problem with this -- this issue has been thought of before. in_key_pressed does not check if caps and sym shift are not pressed for keys like 'q'. Their state is only check when they have to be pressed as in 'Q' or '$'. We've got to the bottom of this (PC keyboard limitation) but I'm puzzled by the above statements you made regarding the shift keys. I can see in the ASM for in_key_pressed() that SHIFT and SYM are specifically checked for, but I'm not sure why. input_zx.h doesn't list scancodes for upper case characters, so I thought shifted key press detection would require 2 scans, one of the shift key and one for the letter key. I'm thinking I've missed something important here. :) |