Assembler usw

testen welche CPU vorhanden ist

Hi
Ich möchte feststellen welche CPU vorhanden ist. Ich weiss das, dass mit dem CPUID Befehl geht. Aber den gibt es ers ab dem 80486 Prozessor. Wie kann ich testen welche CPU vorhanden ist vor dem 80486? Also z.B: ob der 80286 oder 80386 vorhanden ist.

Danke!
 
Höhere Auflösungen funktionieren eigentlich sehr gut über den VESA. Jedoch ist die Anwendung wesentlich aufwendiger als für den 320x200x256 Farben-Modus. Dann dieser brauch ja genau nur 64.000 Bytes! Und somit kann der komplette Video-Speicher in einem Segment angesprochen werden.

Bei höheren Auflösungen/Farbtiefen werden jedoch wesentlich mehr Bytes verbraucht. Im VESA ist das über sogenannte "banks" gelöst. Dort hat man je "bank" 64KB zu Verfügung zum Schreiben und Lesen. Für den entsprechenden Bildschirmbereich muss dann die entsprechende "bank" aktiviert sein. Es gibt Interrupt-Aufrufe, die eine "bank" umschalten können... aber viel zu langsam. Es gibt dafür auch eine schnellere Alternative.

Bei VESA kommt dann hinzu, dass bestimmt Funktionen auf der Grafikkarte implementiert sind, die unbedingt zu benutzen sind wenn die Performance nicht arg leiden soll. So gibt es die "Mapping" Funktion zum Verschieben eines Bildschirm-Bereiches (Fensterobjekte) welche aber nur über einen FAR CALL anzusprechen ist. Ausserdem habe ich keine Dokumentation hierzu gefunden.

Falls es jemand interessiert, kann ich Code posten für z.B. 320x200 mit 24 Bit Farbtiefe oder Auflösungenen bis zu über 1600x1200x32 Bit. Alles machbar mit VESA.
 
Hi,

ich bin mir zwar nicht sicher, aber ich glaub das ist im BIOS abgespeichert. Schau dir einfach mal mit debug das BIOS im Speicher an. Liegt von 0 bis 07C00 glaub ich. Ich meine da schon mal Spezifikationen meines Prozessors gefunden zu haben. Für nen normalen PC tut's das allemal.
 
Re: testen welche CPU vorhanden ist

assembler hat gesagt.:
Hi
Ich möchte feststellen welche CPU vorhanden ist. Ich weiss das, dass mit dem CPUID Befehl geht. Aber den gibt es ers ab dem 80486 Prozessor. Wie kann ich testen welche CPU vorhanden ist vor dem 80486? Also z.B: ob der 80286 oder 80386 vorhanden ist.

Danke!
Diese Frage hast du nicht selber geschrieben. Die hast du kopiert. Also zu faul um selbst zu formulieren und zu schreiben. ;)
 
Zurück