blob: 59b2cbb551db792da4d761350daa5238d57acf9b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
;
; writechr: Write a single character in AL to the console without
; mangling any registers; handle video pages correctly.
;
section .text
writechr:
call write_serial ; write to serial port if needed
pushfd
test byte [cs:UsingVGA], 08h
jz .videook
call vgaclearmode
.videook:
test byte [cs:DisplayCon], 01h
jz .nothing
pushad
mov ah,0Eh
mov bl,07h ; attribute
mov bh,[cs:BIOS_page] ; current page
int 10h
popad
.nothing:
popfd
ret
|