Probleme mit VESA auf neuen Rechnern.
Verfasst: Do 11. Sep 2008, 21:56
Ja, guten Tag. Ich habe mal eine Frage, zwecks Programmierung unter VESA.
Also: Ich weiß, wie VESA funktioniert. Benutze das schon (erfolgreich) seit Jahren. Ich nutze (weil 16bit / RealMode DOS) die "banked" Variante von VESA (nicht den Linearen Framebuffer, weil das in 16-Bit keinen Sinn macht).
Und normalerweise habe ich keine Probleme.
Aber ich lasse mein Zug auch bei Kumpeln testen. Und auf seinen beiden Notebooks:
- Sony VGN-SZ3VWX
- und EEE-PC (dieses neue Teil da)
haben die Grafiken so seltsame schwarze Balken zwischendrin, immer an anderen Stellen, wenn das Programm startet. Sieht so aus, als wenn der bestimmte Speicherbereiche irgendwie "ausblendet" (ist so Balken, der halt auf halber Zeile anfängt, paar Zeilen schwarz, dann wieder so irgendwie habe Zeile). Diese Balken sind nicht so groß wie eine 64kB-Bank, sondern schmaler. (Achja: Das ist Shared Memory - also SystemRAM wird von der Grafikkarte mit benutzt.) Habe den Verdacht, daß der Protected Mode diese Speicherbereiche für Beschreiben ausblendet und in der DOS-Emulation vergißt, wieder freizumachen.)
Wenn ich da in der Grafik etwas animiere, bleiben diese schwarzen Balken bestehen und das animierte bewegt sich unter den schwarzen Balken hindurch.
Kumpel hat schon gesagt, es wird stärker, wenn er die CPU-Leistung runtersetzt (also vielleicht irgendein Timing-Problem?)
In beiden Rechnern ist dieser Grafikchip (meldet VESA) :
Produkt: Intel 82945GM Family Graphics Controller
VESA-BIOS: Intel 82945GM Chip Accelerated VGA BIOS
Wenn er das Programm / die Programme verläßt - und in Textmode (also 80x25, 16 Farben) schalte, (mov ax, 0003h ; int 10h), stürzen beide Rechner komplett ab - nicht nur der Task - sondern das ganze System - nur hardwaremäßig zu resetten...
(Anmerkung: Ich dachte immer, XP wäre so "sicher" - wie kann sich ein PROTECTED MODE BETRIEBSSYSTEM von 2003 von nem 16-Bit (Real Mode) DOS-Programm so einfach komplett killen lassen???)
Was für eine Scheiße ist das und wie kann ich sie beheben?
(Sieht mir nach nem Treiberproblem aus. Entweder der Grafikkarten-VESA-Treiber schlampig programmiert - hatte sowas mal bei der ATI Radeon 9600 / 9800 Serie bei Leuten festgestellt - oder der Windows-Grafiktreiber spinnt. Kumpel sagt auch, daß er früher keine Probleme mit meinem Zeug hat, aber seit er den intel-Grafik-Treiber drauf hat, gibts da Probleme. Wahrscheinlich ist die VESA-Emulation nicht einfach "durchgeleitet", sondern von denen (intel) selbst programmiert - und das etwas... mangelhaft.)
Anmerkung: Er hat's auf den Rechnern grad in reinem DOS getestet - und da gibt es (wie zu erwarten war) keines dieser Probleme... Äußerst bizarr...
Anmerkung: Ich halte mich exakt an die VESA-Spezifikationen, fummle da nicht mit Registern rum, sondern benutze nur die dafür vorgesehenen Software-Int 10h Aufrufe.
Kennt jemand dieses Problem und weiß, wie man es umgehen kann? (Wahrscheinlich gar nicht. Außer: Treiber abschießen, anderen Treiber rauf (wenns sowas gibt)...
Also: Ich weiß, wie VESA funktioniert. Benutze das schon (erfolgreich) seit Jahren. Ich nutze (weil 16bit / RealMode DOS) die "banked" Variante von VESA (nicht den Linearen Framebuffer, weil das in 16-Bit keinen Sinn macht).
Und normalerweise habe ich keine Probleme.
Aber ich lasse mein Zug auch bei Kumpeln testen. Und auf seinen beiden Notebooks:
- Sony VGN-SZ3VWX
- und EEE-PC (dieses neue Teil da)
haben die Grafiken so seltsame schwarze Balken zwischendrin, immer an anderen Stellen, wenn das Programm startet. Sieht so aus, als wenn der bestimmte Speicherbereiche irgendwie "ausblendet" (ist so Balken, der halt auf halber Zeile anfängt, paar Zeilen schwarz, dann wieder so irgendwie habe Zeile). Diese Balken sind nicht so groß wie eine 64kB-Bank, sondern schmaler. (Achja: Das ist Shared Memory - also SystemRAM wird von der Grafikkarte mit benutzt.) Habe den Verdacht, daß der Protected Mode diese Speicherbereiche für Beschreiben ausblendet und in der DOS-Emulation vergißt, wieder freizumachen.)
Wenn ich da in der Grafik etwas animiere, bleiben diese schwarzen Balken bestehen und das animierte bewegt sich unter den schwarzen Balken hindurch.
Kumpel hat schon gesagt, es wird stärker, wenn er die CPU-Leistung runtersetzt (also vielleicht irgendein Timing-Problem?)
In beiden Rechnern ist dieser Grafikchip (meldet VESA) :
Produkt: Intel 82945GM Family Graphics Controller
VESA-BIOS: Intel 82945GM Chip Accelerated VGA BIOS
Wenn er das Programm / die Programme verläßt - und in Textmode (also 80x25, 16 Farben) schalte, (mov ax, 0003h ; int 10h), stürzen beide Rechner komplett ab - nicht nur der Task - sondern das ganze System - nur hardwaremäßig zu resetten...
(Anmerkung: Ich dachte immer, XP wäre so "sicher" - wie kann sich ein PROTECTED MODE BETRIEBSSYSTEM von 2003 von nem 16-Bit (Real Mode) DOS-Programm so einfach komplett killen lassen???)
Was für eine Scheiße ist das und wie kann ich sie beheben?
(Sieht mir nach nem Treiberproblem aus. Entweder der Grafikkarten-VESA-Treiber schlampig programmiert - hatte sowas mal bei der ATI Radeon 9600 / 9800 Serie bei Leuten festgestellt - oder der Windows-Grafiktreiber spinnt. Kumpel sagt auch, daß er früher keine Probleme mit meinem Zeug hat, aber seit er den intel-Grafik-Treiber drauf hat, gibts da Probleme. Wahrscheinlich ist die VESA-Emulation nicht einfach "durchgeleitet", sondern von denen (intel) selbst programmiert - und das etwas... mangelhaft.)
Anmerkung: Er hat's auf den Rechnern grad in reinem DOS getestet - und da gibt es (wie zu erwarten war) keines dieser Probleme... Äußerst bizarr...
Anmerkung: Ich halte mich exakt an die VESA-Spezifikationen, fummle da nicht mit Registern rum, sondern benutze nur die dafür vorgesehenen Software-Int 10h Aufrufe.
Kennt jemand dieses Problem und weiß, wie man es umgehen kann? (Wahrscheinlich gar nicht. Außer: Treiber abschießen, anderen Treiber rauf (wenns sowas gibt)...