Cirrus Logic — Änderungen 3936 → 4080

Zeile 1: Zeile 1:
−
Qemu emuliert primär eine Cirrus Logic GD5446. Mit dieser Grafikkarte ist es sehr einfach, mit einem eigenen OS in den Genuss hardwarebeschleunigter¹ 2D-Grafik zu kommen.
+
[[Qemu]] emuliert primär eine Cirrus Logic GD5446. Mit dieser Grafikkarte ist es sehr einfach, mit einem eigenen [[OS]] in den Genuss hardwarebeschleunigter¹ 2D-Grafik zu kommen.
  
 
¹So weit ich es gesehen habe, werden die Grundoperationen hardwarebeschleunigt dargestellt. Alle Angaben ohne Gewähr.
 
¹So weit ich es gesehen habe, werden die Grundoperationen hardwarebeschleunigt dargestellt. Alle Angaben ohne Gewähr.
Zeile 5: Zeile 5:
 
== Resourcen ==
 
== Resourcen ==
  
−
Die Grafikkarte ist eine PCI-Karte, Vendor-ID 0x1013, Chip-ID 0x00B8. Sie wird größtenteils über MMIO angesteuert, dabei werden zwei Speicherbereiche als MMIO-Interface zur Karte benutzt, die über die PCI-Schnittstelle abgefragt werden können: Der erste fängt im Falle Qemus an der Adresse 0xF0000000 an und ist 32 Megabytes groß und dient als Framebufferschnittstelle, der zweite (kleinere) Bereich (für die Steuerung der Karte) fängt bei 0xF2000000 an und ist 4 KBytes lang.
+
Die Grafikkarte ist eine [[PCI]]-Karte, Vendor-ID 0x1013, Chip-ID 0x00B8. Sie wird größtenteils über MMIO angesteuert, dabei werden zwei Speicherbereiche als MMIO-Interface zur Karte benutzt, die über die PCI-Schnittstelle abgefragt werden können: Der erste fängt im Falle [[Qemu]]s an der Adresse 0xF0000000 an und ist 32 Megabytes groß und dient als Framebufferschnittstelle, der zweite (kleinere) Bereich (für die Steuerung der Karte) fängt bei 0xF2000000 an und ist 4 KBytes lang.
  
 
In diesen zweiten Bereich sind sämtliche VGA-Ports gemappt, wobei man von der Adresse 0x3C0 abziehen muss, um den Offset in den MMIO-Bereich zu erhalten. So befindet sich das Register VGA_MISC_OUT_W (0x3C2) an der Speicheradresse 0xF2000002.
 
In diesen zweiten Bereich sind sämtliche VGA-Ports gemappt, wobei man von der Adresse 0x3C0 abziehen muss, um den Offset in den MMIO-Bereich zu erhalten. So befindet sich das Register VGA_MISC_OUT_W (0x3C2) an der Speicheradresse 0xF2000002.
Zeile 31: Zeile 31:
 
</c>
 
</c>
  
−
Ich habe diese Methode jedoch nur in Qemu getestet. Ich bin mir ziemlich sicher, dass das in der echten Welt da draußen nicht so einfach tut, aber wer hat schon eine Cirrus Logic. :)
+
Ich habe diese Methode jedoch nur in [[Qemu]] getestet. Ich bin mir ziemlich sicher, dass das in der echten Welt da draußen nicht so einfach tut, aber wer hat schon eine Cirrus Logic. :)
  
 
== Offscreen Memory ==
 
== Offscreen Memory ==
Zeile 184: Zeile 184:
 
* [http://www.tjd.phlegethon.org/gd5446trm.pdf.gz Datenblatt von Cirrus Logic]
 
* [http://www.tjd.phlegethon.org/gd5446trm.pdf.gz Datenblatt von Cirrus Logic]
  
−
[[Category:Hardware]]
+
[[Kategorie:Hardware]]