1
OS-Design / Re: VESA VBE Framebuffer-Fehler
« am: 18. April 2010, 18:00 »
Ja, hab ich. Ich denke, dass es auch funktioniert.
EDIT: Ich hab mal alles hochgeladen:
http://dl.dropbox.com/u/1802708/Bild.zip
Code: [Auswählen]
enable_A20:
pusha
cli ; Disable all irqs
cld
mov al,255 ; Mask all irqs
out 0xa1,al
out 0x21,al
l.5: in al,0x64 ; Enable A20
test al,2 ; Test the buffer full flag
jnz l.5 ; Loop until buffer is empty
mov al,0xD1 ; Keyboard: write to output port
out 0x64,al ; Output command to keyboard
l.6: in al,0x64
test al,2
jnz l.6 ; Wait 'till buffer is empty again
mov al,0xDF ; keyboard: set A20
out 0x60,al ; Send it to the keyboard controller
mov cx,14h
l.7: ; this is approx. a 25uS delay to wait
out 0edh,ax ; for the kb controler to execute our
loop l.7 ; command.
sti
popa
ret
EDIT: Ich hab mal alles hochgeladen:
http://dl.dropbox.com/u/1802708/Bild.zip