Autor Thema: Grafik?  (Gelesen 2953 mal)

maxinator

  • Beiträge: 21
    • Profil anzeigen
    • Maxinators HP - übers Leben und Programmieren :)
Gespeichert
« am: 14. October 2007, 02:22 »
Joa, meine Frage ist eig. relativ einfach und zwar, wäre es schön, wenn ich mit meinem OS mehr als nur dir  normalen 320*240Pixel wie im Modus 13h beim int 10h rausholen könnte.
Gibt es eine Mglichketi z.b. ohne extra einen Grafikkartenspezifischen Treiber eine Auflösung von so 800*600*16Bit zu betreiben?
Vielen Dank schonmal :)

FreakyPenguin

  • Administrator
  • Beiträge: 301
    • Profil anzeigen
    • toni.famkaufmann.info
Gespeichert
« Antwort #1 am: 14. October 2007, 10:12 »
Jo, mit VESA sollte das möglich sein.

Aber ich muss das auch mal wieder sagen:Wenn du wirklich was erreichen möchtest, ist es im allgemeinen nicht die Beste Idee gleich mit Grafik anzufangen, mindestens eine Speicherverwaltung wäre zu überlegen. Je nach dem wäre ein Wechsel in den Protected Mode auch keine üble Idee. ;-)
ch bin mir gerade nicht sicher, wie das ganze mit VESA funktioniert, aber ich würde sagen, viel Speicher bleibt dir im Realmode mit 800x600 nicht übrig, denn 800 * 600 * 2 = ~937Kb ;-) Wenn mich nicht alles Täuscht, kannst du (oder vielleicht mussst du sogar..) mit Farbpalleten arbeiten, damit nur ein Byte pro Pixel benötigt wird, aber damit kommst du noch immer auf ~468kb... Dürfte also mehr oder weniger knapp sein

maxinator

  • Beiträge: 21
    • Profil anzeigen
    • Maxinators HP - übers Leben und Programmieren :)
Gespeichert
« Antwort #2 am: 14. October 2007, 11:11 »
joa, also danke schonmal für den Tipp. Den Protected-Mode einzuschalten ist neben einer Maus momentan mein primäres Ziel wobei ich zwei Tutoriale zum einlesen nutze: 1 2
Also wenn es für den Protected Mode bessere Möglichkeiten geben würde, könnt ihr sie ruhig benennen :)
P.S.: Ich glaube ich hatte mal unter Win mit Assembler ein Programm gefertigt, was bei jedem Pixel einen Eintrag in der Palette auf die gewünschte 16Bit-Farbe geändert hatte und dieses dann ausgegeben hatte, sodass ich volle 16Bit bei eig. 8Bit auf den Screen bringen konnte... Aber ich kann da jetzt auch was verwechseln, das genannte Programm jedenfalls existiert anscheinend nicht mehr auf meiner HD... :|
« Letzte Änderung: 14. October 2007, 11:53 von maxinator »

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #3 am: 14. October 2007, 14:35 »
ch bin mir gerade nicht sicher, wie das ganze mit VESA funktioniert, aber ich würde sagen, viel Speicher bleibt dir im Realmode mit 800x600 nicht übrig, denn 800 * 600 * 2 = ~937Kb ;-)
Es gibt sowas wie 'Bank Switching'. Dabei musst du dem Grafikadapter mitteilen welchen Bereich des VRAM er in den Speicher einblenden soll.
Mal abgesehen davon kannst du den Framebuffer garnicht im Realmode verwenden, da es meist eine Adresse über 1MiB ist.

Mit VBE (VESA BIOS Extension gibt es mehr oder weniger 2 Möglichkeiten den Grafikmodus zu setzten. Da VBE über BIOS Interrupts geht machst du das entweder gleich im Realmode oder du begibst dich in den Virtual-8086-Mode (Ein Untermode des Protected-Mode) und führst den Interrupt dort aus. Das Protected-Mode Interface ist afaik sogut wie unnutzbar.
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

maxinator

  • Beiträge: 21
    • Profil anzeigen
    • Maxinators HP - übers Leben und Programmieren :)
Gespeichert
« Antwort #4 am: 14. October 2007, 23:53 »
Ach verdammt, nach langen suchen nach guten ressourcen, und nu, wo ich sie alle zusammen habe, bin ich zu dem schluss gekommen, dass das geistreichste wäre für meine grafische-maus, die den vesa-standard benötigt, der ohne bank-switching den PM-Mode benötigt, dass ich mir erstmal das pm-tutorial durchlesen und ausprobieren sollte xD verdammt..
Ich habe so viel zu tun und die Ferien sind viel zu kurz xD
EDIT: Trotzdem VIELEN vielen Dank für das erwähnen des VESA-Standards... weiteres tat dann diese Seite: monstersoft.com/mainpage.html
und einige andere.... ich werde die arbeiten an der grafik wieder aufnehmen, wenn ich mit dem pm-mode fertig bin, bis dahin geht es den genannten soecs und tuts auf meiner hd gut xD
« Letzte Änderung: 14. October 2007, 23:55 von maxinator »

 

Einloggen