You need aditional condition, and fiddling with bits and stuff. With returning scancodes we do exactly the same thing, no matter what key was pressed.
Uhmm .. how is this different?
>>2. If we ever would want to add support for non-atari keyboards, we >>could run out of options > > If you have a keyboard with more than 256 keys, its going to break the > existing evnt_multi() and evnt_keybd() as well. Well, more thatn 256 keys on a single keyboard is hard to find, I agree. But most modern keyboards these days has some multimedia keys, or just power on/off keys, and that do not fit very well into ascii.
As a ompromise we could return dwo words: a scancode in first, ascci + modifiers in 2nd, how do that sound?