Hi,
Presuming keysToInclude does not contain '1', the call to strchr() in initKeyboardData() will be NULL. Subtracting from this result can result in undefined/unspecified behavior, according to the ISO C standard. In the event this occurs, what would You suggest is a suitable default value for numStart? 0, perhaps?