http://bugs.winehq.org/show_bug.cgi?id=16127
--- Comment #3 from Richard Russell richard@rtrussell.co.uk 2010-06-22 04:31:10 --- I have confirmed that this problem is caused by a bug in BBC BASIC for Windows; it assumes that the GetAsyncKeyState API returns an INT rather than a SHORT. This appears to be true for all versions of Windows, but obviously BB4W should not assume it. I will ensure the next release includes a fix.
It would improve compatibility between Wine and Windows if the value returned from GetAsyncKeyState was cast to an INT, but it can't really be called a bug in Wine.