Beispiel 3:
setzen
vgamem [i]=63;
}
vga_getch();
// Zurrück zum Textmode
vga_setmode (TEXT);
}
uns nun der ersten sinnvollen Aufgabe dieses Kurses zu.
Wer Spiele oder Demos programmieren möchte muss Grafiken von der
Festplatte laden und diese anzeigen können. Deshalb werden wir
uns nun mit dem Bildformat BMP befassen und eine Grafik auf unserm
Bildschirm anzeigen. Der Kopf einer BMP-Datei besteht aus
dem Datei-Header und dem Bitmap-Info-Block. Im Header steht
eingentlich nur die Formatkennung (BM) und die Dateilänge.
Die Eigentlichen Daten übers Bild (Höhe, Breite, Farbtiefe,
etc. speichert das Bitmapformat im Info-Block.
Der BMP-Header:
00H 2 Dateikennung 'BM'
02H 4 Dateilänge in Byte
06H 4 reserviert (muß 0 sein)
0AH 4 Offset des Datenbereiches
Interessante Werte im sind unteranderm Breite und Höhe, also die
Ausmaße unseres Bildes. Das Feld Farbebenen stammt wohl noch
aus der Zeit als Grafikkarten Farben über Colorplanes realisierten
und ist heute völlig uninterresannt. Im nächsten Feld
wird die Farbtiefe der Bitmap (16 (4),256(8) Farben oder TrueColor (24)) festgelegt.
Der BMP-Info-Block
0EH 4 Länge des Info-Blockes in Byte (28 00 00 00)
12H 4 Breite des Bildes in Pixeln
16H 4 Höhe des Bildes in Pixeln
1AH 2 Farbebenen (muß 1 sein)
1CH 2 Zahl der Bits pro Pixel
1EH 4 Typ der Komprimierung (normalerweise 0)
22H 4 Größe des Bitmap-Datenbereiches in Byte
26H 4 horizontale Auflösung
2AH 4 vertikale Auflösung
2EH 4 Zahl der benutzten Farben (normalerweise 0)
32H 4 Zahl der wichtigen Farben (normalerweise 0)