GetKeyList() will always report "left" as VK_LEFT, up as "VK_UP", etc. no matter what you specify as an orientation.
PocketHAL will perform "device to logical" key translations in its WindowProc. Are you saying that this translation doesn't work properly on these 2 devices?