Opened 7 years ago
Closed 6 years ago
#17592 closed defect (fixed)
Entering curly brackets does not work in Turbo Pascal -> fixed in 5.2.10
Reported by: | Turbo Pascal | Owned by: | |
---|---|---|---|
Component: | other | Version: | VirtualBox 5.2.8 |
Keywords: | Cc: | ||
Guest type: | other | Host type: | all |
Description
I have installed the following in a virtual machine:
MS-DOS 6.22 Turbo Pascal 7.0
Keyboard layout is Finnish.
When using the Turbo Pascal IDE, it is impossible to enter curly brackets by pressing the AltGr + 7 keys. This key combination works correctly in MS-DOS Edit, but not in Turbo Pascal IDE.
Change History (13)
comment:1 by , 7 years ago
follow-up: 3 comment:2 by , 7 years ago
We'll need three things: 1) A reason to believe this is a bug in VirtualBox (and not a bug in Turbo Pascal or some kind of misconfiguration), 2) a VBox.log, and 3) a VM which demonstrates the problem, preferably in OVA format.
comment:3 by , 7 years ago
Replying to michaln:
We'll need three things: 1) A reason to believe this is a bug in VirtualBox (and not a bug in Turbo Pascal or some kind of misconfiguration), 2) a VBox.log, and 3) a VM which demonstrates the problem, preferably in OVA format.
I will add the required files to this ticket.
comment:4 by , 7 years ago
If the OVA is too big to attach here (I don't know, maybe it's not!), please use some public service like Dropbox or OneDrive or similar.
comment:5 by , 7 years ago
I zipped the VirtualBox hard drive with Turbo Pascal installed. To test Turbo Pascal, you can start the virtual machine and type "turbo".
https://www.dropbox.com/s/cepnqpc4bjbk1fy/MS-DOS%20with%20Turbo%20Pascal%20installed.zip?dl=0
Finnish keyboard layout is currently in use and it works in MS-DOS editor without problems. Also on other virtual machines, like VMWare I have not problem with AltGr with the exact same installation.
comment:6 by , 7 years ago
Host type: | other → all |
---|---|
priority: | major → minor |
Thanks, now I can see what's happening.
The problem is obvious, it's Borland's fishy keyboard interrupt handler which makes the extremely questionable assumption that the incoming keyboard scan code can be read twice before a new scan code arrives. That's why everything works fine except in programs using the Borland Pascal run-time (including the IDE itself).
What happens is that Borland's funny interrupt handler steals the extended key prefix (E0h), and the normal keyboard handler only sees Left Alt key presses. Software would similarly be unable to distinguish between left and right Ctrl key and other extended keys.
We may be able to work around this by introducing a small delay for data arriving from the keyboard.
comment:7 by , 7 years ago
Problem should be fixed in the latest 5.2 test build, please try it out and report the results. By default the keyboard input is now slightly slowed down so that Turbo Pascal and similar software can work.
comment:8 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Summary: | Entering curly brackets does not work in Turbo Pascal → Entering curly brackets does not work in Turbo Pascal -> fixed in 5.2.10 |
comment:9 by , 6 years ago
I believe that you just created a very bad colateral effect VirtualBox 5.2.10 I created a new ticket regarding https://www.virtualbox.org/ticket/17709 I would appreciate that to be checked and the possibility of reverting this bug fix while you search for a better implementation.
Meanwhile I am reverting (and freezing) all the VirtualBox hosts I manage to version 5.2.8
comment:10 by , 6 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
comment:11 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
This ticket is about Turbo Pascal. The other ticket is about something else, which may or may not be related. Unless someone can show that the Turbo Pascal problem is not fixed, this ticket stays closed and the other ticket will be used for tracking the other problem.
comment:12 by , 6 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Hello, i'm using Turbo C++ from borland and i have this issue, any altGR press will not work inside de IDE using MS-DOS Virtual machine.
And i'm using VirtualBox 5.2.12,
S side note, just uninstalled 5.2.12 and installed newer 5.2.18, and still have the issue, can't type curly braces inside VC++ 3.0 running on MS-DOS6.22 inside virtualbox. Since Borlan C++ and Turbo Pascal use the same IDE, solving for one, solves both issues, any insights on what to do?
Ok, new developments, been testing around with VirtualBox settings, and the default key to get back to the host machine is RightAlt, changed that in the keyboard option to be the windowws key and that solved the issue.
I can now use AltGR key as supposed to so it's not a bugg, and you may close this thread.
Thanks
comment:13 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Thanks for the update, closing again.
To be more precise, pressing AltGr and some other key that requires AltGr, does not work in Turbo Pascal IDE, so it is not just related to curly brackets.