Page 1 of 1

ALT - for ASCII Characters

Posted: 4. Jun 2021, 19:54
by BMANN06
Afternoon All,

I'm fairly new to VirtualBox, I have a DOS VM that runs a Configurator Program for an old HMI system. I'm having an issue accessing the ASCII Symbol list, ie: ALT-249 for the square box. Is the ALT key specially reserved or is there another method i can use to get to the access the ALT and keypad function.

I do appear to get this written to the log when attempting and ALT keypad function:
00:17:54.013290 VMMDev: Guest Log: BIOS: KBD: int09h_handler(): scancode & asciicode are zero?

Thanks very much for your time in reviewing

Re: ALT - for ASCII Characters

Posted: 4. Jun 2021, 21:18
by scottgus1
I could get the degree symbol to appear in Notepad by typing Alt-0176, but the same procedure did not show anything in my DOS VM.

Can you show a setup procedure so I can test what you're expecting over here? I'm not all that DOS-experienced.

Re: ALT - for ASCII Characters

Posted: 4. Jun 2021, 21:33
by BMANN06
scottgus1 wrote:I could get the degree symbol to appear in Notepad by typing Alt-0176, but the same procedure did not show anything in my DOS VM.

Can you show a setup procedure so I can test what you're expecting over here? I'm not all that DOS-experienced.
What you described is exactly the symptom i'm experiencing, i have a different symbol table but it works the same way as the ° (ALT 0176), I've recently converted this system from a DOS Steelbox (physical machine) to a VM, it works on the steel box but the keyboard emulation doesn't appear to be passing the ALT to the guest, I believe it is passing it to the host.

This making any sense?

Brian

Re: ALT - for ASCII Characters

Posted: 5. Jun 2021, 09:12
by mpack
scottgus1 wrote:I could get the degree symbol to appear in Notepad by typing Alt-0176, but the same procedure did not show anything in my DOS VM.
I'm pretty sure 0176 is a Windows code, so I'm not surprised it does nothing in DOS. The IBM PC ANSI character set was 8 bits, so three digits max.

Maybe try ALT-248, though character set may not be the only problem. E.g. I assume this translation is done at the keyboard driver level (there's no way the keyboard hardware does it), and I don't know for a fact that the IBM PC keyboard driver had this function.

In answer to the original query: what's the host OS? If Windows, yes handling ALT for the VM is tricky, since the host wants to reserve it for host functions. I guess VirtualBox has to wait a moment to see what combination is pressed and then decide whether to pass the event to the VM or let the host process it. I have not looked at the details of how this is done, but if Scott says it works for Windows then IMO that eliminates the virtual hardware as a suspect, since that doesn't care what VM is running.

Re: ALT - for ASCII Characters

Posted: 5. Jun 2021, 13:52
by ghr
Just a few basics (perhaps you have this in place): you need ALT + keypad (and have numlock!); and you need 3 digits, as stated above. Now I can use that in a VM using PCem (just on the commandline); but not yet in a VBox one. Although it is clear that the guest sees the ALT key (for now I use a Linux host). EDIT/ADD: played a bit more with VBox VMs, for now I can only confirm your issue, that is in using ALT+ to generate the symbols. I can make the symbols visible though so the "display driver" is not the issue. EDIT2: this is plain DOS functionality, you don't need e.g. ANSI.SYS for this to work.

Re: ALT - for ASCII Characters

Posted: 5. Jun 2021, 15:13
by Martin
Maybe it is a BIOS function which is not implemented in the virtual Vbox BIOS.