![]() |
exakten Zeitpunkt eines Screen-Aufbaues ermitteln
Hi,
gibt es eigentlich irgendeinen Weg zu ermitteln, wann eine Graphikkarte jeweils gerade mit dem Aufbau einer Screen-Seite beginnt? Ich habe nämlich ein Programm, da wird immer was wo auf dem Screen ausgegeben (was ich nicht verhindern kann), und welches ich dann aber gleich wieder quasi übermale. Da der ganze Vorgang 'Ausgabe und wieder übermalen' aber um einiges schneller geht als ein Seitenaufbau auf dem Screen Zeit dauert, sieht man auch die erste Ausgabe in den meisten Fällen nicht, sondern immer gleich nur wie gewünscht die Übermalung. Dieser Gesamtvorgang kann aber zeitlich insgesamt gelegentlich so ungünstig mit der aktuellen Screenausgabe zusammenfallen, dass man diesen erst-Output dann jedoch trotzdem kurz mal aufflackern sieht. Deswegen würde ich also gerne den Gesamtvorgang mit diesem Screen-Output zeitlich in Einklang bringen... Thanks im Voraus |
Re: exakten Zeitpunkt eines Screen-Aufbaues ermitteln
Die Grafikkarten besitzen die Möglicghkeit einen Interrupt (IRQ 9 meistens) auszulösen wenn das Vertical Raytracing beginnt. D.h. der Kathodenstrahl der das Bild von Links Oben nach Rechts unten aufgebaut hat wird nun von Rechts Unten nach Links Oben "zurückgeführt". Der Begin dieser Aktion wird per Interupt dem prozessor mitgeteilt und kann im BIOS aktiviert werden. Allerdings es gibt ohne Treiber keine einfache Möglichkeit das auszunutzen. Soviel wie ich aber weis kann DirectX dieses aber ausnutzen. Eventuell findest du also in den DX Dokus eine Hinweis wie du den IRQ ausnutzen kannst.
Dieser IRQ ist wichtig wenn man absolut flimmerfreie Ausgaben für zB. Spiele durch die Grafikkarte erledigen will. Gruß Hagen |
Re: exakten Zeitpunkt eines Screen-Aufbaues ermitteln
Aha, danke. Dann werde ich wohl gleich mal nach solchen Dokus Ausschau halten...
MfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz