Ja, ich nenne das PM-Fenster, in dem die VIO Anwendung (also cmd.exe) läuft, umgangssprachlich so.Hier scheint es wohl eher ein PM-Fenster zu sein.
Der Editor kann mit dem VIO-PM-Fenster kommunizieren (auf visible schalten, Titelzeilenbuttons manipulieren) und damit der (PM-)Editor mit cmd.exe kommunizieren kann, brauche ich die Helper exe. Der PM Editor startet die Helper exe in einer neuen Session und die Helper exe startet dann in derselben Session cmd.exe bzw. 4os2.exe. Da die Helper exe in derselben Session läuft wie cmd.exe, kann sie exceptions schicken, den VIO-Inhalt ansehen usw., was sonst der PM Editor nicht könnte.
Die keyboard Abfragen sind unter KBD calls gelistet. Dieser Input läuft unabhängig von stdin direkt ans VIO Subsystem. Es gibt somit Programme, die VIO bzw. KBD calls nutzen, aber keinen VIO Output generieren, weil sie nur VIO/KBD input verwenden. Mit diesen Aufrufen kann ein Programm einzelne keystrokes (Tastendrücke) abfragen. Wenn es nur stdin beherrscht, dann wird grundsätzlich ein Keyboard-Input mit einem Abschließen durch ein RETURN erwartet. Somit sind alle Programme, die einzelne Tastendrücke verwerten, also beispielsweiseKeine Ahnung woher diese Fehlbetrachtung kommt. Wie soll eine Tasteneingabe über Video-I/O (Vio) funktionieren?
---waiting------press any key--------
(wohlgemerkt "any key", nicht "press ENTER")
oder
press (Y) for Yes or (N) for No
ohne dass man noch ein ENTER dahinter schreiben muss, die für mich kritischen Kandidaten, solange nicht auch VIO Output verwendet wird.
Genau diese Programme machen mir Probleme, wenn vorher kein VIO Output stattgefunden hat und somit das VIO-PM-Fenster noch nicht automatisch sichtbar gemacht wurde.
Natürlich ist das kein Beinbruch, der Nutzer kann mit dem Button "VIO sichtbar" immer selbst eingreifen. Momentan habe ich nur das Original MORE von OS/2 gefunden, das dieses Problem erzeugt. Wenn es nicht '"press any key", sondern "press ENTER" wäre, dann wäre es auch kein Problem. Ich befürchte aber, dass es noch mehr Programme gibt.
Letztlich müssen wir abwarten, bis ich meine erste Betaversion Euch zur Verfügung stelle, dann bitte ich um entsprechende Berichte von Programmen, wo es noch hakt, und dann überlege ich, wie man am besten damit umgeht. Aber dafür brauche ich eben erst einige Beispiele, die ich jetzt noch nicht kenne. In ein bis zwei Wochen bin ich soweit. Es gibt dann schon eine weitghend vollständige Version, aber noch ohne Completion Funktionalität. Die wird dann technisch eher einfach umzusetzen sein, weil sie komplett im Editor stattfindet.