Servus liebe Leute, ich bin neu hier und bin grade dabei ein bisschen mit eigenen Bootloadern zu experimentieren.
Naja bis jetzt hab einen Bootloader geschrieben mit dem ich über die Bios interrupts in den Grafik Modus wechsel und dann anschließend Pixel für Pixel den Kompletten Bildschirmbereich abfahre und sobald eine seite fertig ist kommt die nächste in einer neuen Farbe.
Gut, das hat alles geklappt nur jetzt wollte ich mal die Bios data area "auslesen" an dem Offset 0x97 dazu hab ich folgenden Quelltext in vielen verschiedenen Varianten ausprobiert:
[BITS 16]
start:
CALL Print
JMP start
Print:
MOV AH, 0x00
INT 0x16
MOV BX, [0x0497]
MOV AL, BH
AND AL, 0x04
SHR AL, 0x03
ADD AL, 0x30
MOV AH, 0x0E
MOV BH, 0x00
MOV BL, 0x0F
INT 0x10
RET
TIMES 510 - ($ - $$) db 0
dw 0xAA55
Ziel war es nicht zu überprüfen ob das Capslock aktiviert ist oder nicht. Das könnte ich schließlich auch mit einem BIOS interrupt überprüfen. Ich wollte eigenlich nur gucken ob es mir gelingt zugriff auf diese Speicherstelle zu bekommen. Leider blicke ich da nicht richtig durch.
Wäre schön wenn mir jemand erklären könnte was hier schief gelaufen ist.
P.S. : Ein großes Lob an alle die an dieser Seite Mitwirken, hier gibt es echt viele nützliche informationen. Besonders gefällt mir das Magazin.
Ich verwende den NASM und lasse den Bootloader auf einem etwas älteren Laptop laufen.
Danke auch für die Literaturempfehlungen, habe mir jetzt das Buch von Reiner Backer bestellt.