I finally got my hands on a machine that shows the symptom of BDA 40:96 getting changed, and I was able to identify the problem.
When the PC starts, BDA 40:96 is initially zero. As soon as the users enters some specific keys (like the arrow keys), the value at 40:96 changes to 0x10. So the BIOS seems to do some keyboard auto detection. I modified EDIT accordingly so that the value at 40:96 is checked before every INT16 call. That fixed the problem that EDIT sometimes swallowed some characters like {} on a german keyboard layout. This was the case when on EDIT launch 40:96 was still zero (40:96 was queried only on startup). EDIT treats every ALT+something combination as a menu command, and therefore directs these keystrokes to the menu handler. However, on 40:96=0, EDIT uses INT16.02 to query the keyboard state instead of INT16.12. INT16.02 however maps AltGr to ALT. So AltGr+something was mis-detected as a menu command. Bernd _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel