allegro-c "classico" und Windows NT, 2000, XP ff
Thomas Berger
ThB at gymel.com
So Feb 23 12:30:07 CET 2003
Liebe Liste,
Windows NT 4.0 und seine Nachfolgebetriebssysteme sind seit 1996
auf dem Markt, inzwischen sind sie in einem gewissen Sinn die
einzigen aktuellen Microsoft-Betriebssysteme, weil der
"Chicago"-Betriebssystemzweig mit Windows'95, '98, [ME] und
'98 SE nicht mehr weiterentwickelt wird.
Dennoch gibt es haeufiger Anfragen, besonders von "Altanwendern",
ob allegro-Classico unter diesen Betriebssystemen funktioniert.
Ohne Anspruch auf Vollstaendigkeit hier einiges Wissenswertes:
1. "CONFIG.SYS" und "AUTOEXEC.BAT"
a) Diese von DOS bekannte Konfigurationsdateien im Wurzel-
verzeichnis des Bootlaufwerks gibt es unter Windows NTff
in dieser Systemweiten Form nicht mehr. Dafuer gibt es
jedoch in %WINDIR%\system32 Dateien "CONFIG.NT" und
"AUTOEXEC.NT", die deren Funktion uebernehmen, soweit
Dos-Boxen (also Fenster mit Kommandointerpreter oder
MS-DOS-Anwendungen) betroffen sind.
b) Es empfiehlt sich, in CONFIG.NT zumindest eine Zeile
files=50
zu ergaenzen (weil sonst in gewissen Konstellationen QRIX.EXE
evtl. nicht arbeiten mag).
c) Die in CONFIG.NT auskommentierten Setzungen "NTCMDPROMPT"
und "DOSONLY" sollten nicht aktiviert werden, ausser man
weiss wirklich, was man tut.
d) Im Prinzip ist es moeglich, einzelnen Anwendungen, die
von NT als 16-bit-Anwendungen identifiziert werden, separate
CONFIG.xxx und AUTOEXEC.xxx-Dateien zuzuordnen. Der
Standard-Kommandointerpreter CMD.EXE ist jedoch keine
16-bit-Anwendung.
2. "ANSI-Treiber"
a) Dieser ist zumindest seit DOS 6, evtl. sogar schon vorher,
nicht mehr in der Standardkonfiguration eines Rechners mit
Microsoft-Betriebssystem aktiviert. Es gibt nun prinzipiell
zwei Moeglichkeiten: Aktivieren des mit dem Betriebssystem
gelieferten ANSI.SYS in der Konfigurationsdatei CONFIG.SYS
bzw. CONFIG.NT und Aequivalente bzw. Einsatz eines 3rd-party
ANSI-Treibers als TSR (d.h. es wird bei Bedarf geladen,
"Umkonfiguration" nicht notwendig), wie er etwa auch von
allegro-C in den Installationspaketen inst-all.exe ab Version
21 mitgeliefert und von cp.bat auch benutzt wird.
b) Sowohl die ANSI-Treiber von Windows NT ff als auch die
bekannten 3rd-Party-Treiber unterscheiden sich im
Funktionsumfang von dem der Treiber von MS-DOS bzw. Win'9x.
Dies betrifft vor allem den Anzeigemodus "unsichtbar"
(wurde von der Disketteninstallation von allegro-C benutzt)
und die Moeglichkeit, mittels ANSI-Sequenzen die Tastatur
"umzudefinieren". Demzufolge enthaelt die Steuerdatei
"OSTWEST.BAT" von allegro-C seit einiger Zeit nicht mehr
die Sequenzen zur Tastaturumdefinition. Die im Anhang E
des Systemhandbuchs (auch v22?) in der Tabelle erwaehnten
Tastenkombinationen Alt-B, Alt-F2 etc. als Shortcuts fuer
einzelne Zeichen sind daher obsolet (die "Codes", also
etwa Alt-221, sind hingegen sehr wohl noch relevant und
als solche eingebbar, uebrigens auch in den Windows-
Programmen a99 und alcarta).
3. "Vollbildmodus"
DOS-Applikationen unter Windows-Betriebssystemen lassen
sich mit Alt-Enter in den Vollbildmodus und wieder zurueck
in den Fenstermodus schalten. Hierzu sollte man wissen:
a) Beendet man ein Fenster mittels Eingabe von "exit" oder
aehnlichen Methoden "regulaer" (also *nicht* durch Klick
auf das Kreuzchen im oberen Rahmen des Fensters) so merkt
es sich den Modus fuer den naechsten Aufruf desselben
Programms
b) Aeltere Windows-Versionen starten DOS-Fenster tendenziell (d.h.
sofern nicht anders eingestellt, vgl. a) im Vollbildmodus,
neuere durchweg im Fenstermodus
c) Seit Windows 2000 ist die Standardeinstellung fuer DOS-Fenster
nicht mehr 80 Zeichen x 25 Zeilen, sondern mehr Zeilen.
Dies fuehrt im allgemeinen zu keiner brauchbaren Anzeige
im Vollbildmodus. Ueber die Eigenschaften des Fensters
muss vor dem Umschalten in den Vollbildmodus sichergestellt
werden, dass die Fensterdimension (sowohl die sichtbare
Fenstergroesse als auch die "Fensterpuffergroesse") auf 80x25
eingestellt ist (auch diese Eigenschaft wird gemerkt)
4. "OSTWEST"-Font
a) Der mittels dem Hilfprogramm FONTLOAD.COM ladbare
"Zeichensatz" OSTWEST.FON funktioniert durch Manipulation
eines Graphikspeichers, der in allen Windows-Systemen
nur im Vollbildmodus (Strg-Enter) benutzt wirdt.
b) Unter Windows NT ff gilt zusaetzlich, dass der Aufruf von
FONTLOAD.COM nur funktioniert, wenn das Fenster *im Moment
der Ausfuehrung* im Vollbildmodus ist. Dies ist i.A. jedoch
nur eine Schwierigkeit, falls die Classico-Module per
Flex aus a99/alcarta heraus aufgerufen werden sollen
(auch dafuer gibt es Loesungen mittels PIF-Dateien, vgl.
jedoch d)
c) Das zusaetzliche Hilfsprogramm AW.EXE (Nach Aufruf kann
mittels der Tastenkombination Alt-W ein Fenster mit dem
aktuellen Zeichensatz eingeblendet werden) funktioniert unter
Windows NT ff nicht (immer) von der Kommandozeile aus,
man sollte sich davon aber nicht beirren lassen, innerhalb
von x.exe, dem Cockpit oder den Allegro-Modulen funktioniert
es tadellos (falls es geladen wurde)
d) Seit Version 21.x (November 2001) wird mit dem Komplettpaket
inst-all.exe von allegro-C eine Windows-Font-Datei A-DOS.FON
ausgeliefert, diese ist trotz der gleichlautenden Extension
keine Datei, die mit FONTLOAD.COM benutzbar ist, sondern eine,
die sich unter Windows mittels des Windows-Mechanismus
(Administrator-Rechte erforderlich!) als Font installieren
laesst. Nach Installation von A-DOS.FON hat man in DOS-Boxen
drei zusaetzliche Zeichengressen (8x13, 10x19, 12x23), wovon
die ersten beiden den OSTWEST-Zeichensatz realisieren.
Fazit: Eine hinreichend neue Installation von allegro-C
vorausgesetzt, ist folgendes der einfachste Weg, um mit
den "Classico"-Programmen unter Windows NT ff zu arbeiten:
Installation / Vorbereitung an jedem Arbeitsplatz:
1. (Als Adminstrator): Installation von a-dos.fon
2. (Als Administrator, evtl. nur bei Indexierungsproblemen):
Ergaenzen von files=50 in config.nt
Betrieb:
3. (Als Anwender): Moeglichst stets im Fenstermodus arbeiten,
Zeichengroesse 8x13 oder 10x19. Bei Arbeit im Vollbildmodus
darauf auchten, dass das Fenster bereits im Vollbildmodus
gestartet wurde, dies ist am einfachsten dadurch zu
bewerkstelligen, dass man es in der vorigen Sitzung im
Vollbildmodus beendet hatte.
"Hinreichend neue Installation" bedeutet dabei folgendes:
- A-DOS.FON und ANSI.COM aus aktuellen Distributionen von
allegro-C werden benoetigt.
- Die (evtl. eigenen) Aufrufe der allegro-Programme sind in
Anlehnung an die aktuelle Version des Cockpit-Aufrufs CP.BAT
so gestaltet, dass sie ANSI.COM und AW.EXE aufrufen und auch
fontload < ostwest.fon
Alles ggfls. mit geeigneten Pfaden, also etwa
...
Umgebungsvariable -P auf allegro Programmvezreichnis gesetzt
...
%-P%\ansi.com
%-P%\fontload < %-P%\ostwest.fon
%-P%\aw
viele Gruesse
Thomas Berger
Mehr Informationen über die Mailingliste Allegro