Interrupt 0x10/0x13 mit Windows XP?
-
Hallo
Ist es möglich den Interrupt 13h/10h (in Windows XP) anzusprechen? Ich habe soeben ein altes Buch gefunden und es wäre cool, wenn ich damit spielen könnte. Titel z.B.:
VGA Programming in Mode 13h
danke
eure tarrantel x
-
Jein.
Wenn Windows realisiert, dass da ein Programm auf 'klassischem' Wege, also unter Umgehung des Treibers, mit dem Bios kommuniziert, dann gewährt es diese _teilweise_. Teilweise werden diese Aufrufe nur simuliert und teilweise auch ignoriert. Das erlaubt eventuell, dass alte Programme auch in Fenstern ausgeführt werden. Werden die Wünsche zu ausgefallen, bleibt nur noch die Möglichkeit, dass es im Fullscreen läuft.
Nach meiner Erfahrung klappen die klassischen Vesa und VGA Bios Aufrufe ganz zuverlässig. Auch der entsprechende VRAM Bereich darf beschrieben werden.
Bei dem weiteren Gehacke von den VGA-Registern macht XP allerdings nicht lange mit, denn soviel Kontrolle lässt sich die Gute dann doch nicht wegnehmenFazit: Für den Einstieg (13h) sollte es langen, man sollte jedoch bei späteren Kapiteln mit Ungereimtheiten rechnen.
-
Danke SeppSchrot,
Gibt es noch etwas was man beachten soll? Danke.
-
Nein, du solltest dich halt nur nicht wundern, wenn nicht alles so funktioniert, wie im Buch beschrieben.
Am Besten ne Bootdisk mit (Free)Dos machen zum Testen.
-
okay vielen dank
-
@ Threadersteller: Hol dir dosbox, ist ein netter emulator für dos, darin kannstees schön laufen lassen. oder du schreibst nen eigenen bootloader, was ja garnet so schwer is. dann kannste davon booten
-
Tarrantel-X schrieb:
Hallo
Ist es möglich den Interrupt 13h/10h (in Windows XP) anzusprechen? Ich habe soeben ein altes Buch gefunden und es wäre cool, wenn ich damit spielen könnte. Titel z.B.:
VGA Programming in Mode 13h
danke
eure tarrantel x
Ja geht, wenn du eine Com datei erstellst. Diese wird dann im VM86 Mode ausgeführt, und da gehen die BIOS-Interrupts. Wenn das Programm beendet wird, geht WIndow automatisch wieder in den alten Grafikmodus zurück
mfg