summaryrefslogtreecommitdiffstats
path: root/contrib/syslinux-4.02/core/plaincon.inc
diff options
context:
space:
mode:
authorSebastian Schmelzer2010-10-25 16:53:54 +0200
committerSebastian Schmelzer2010-10-25 16:53:54 +0200
commit3050a9253437f4a4b5ad4bf3b3efdc3c660a5137 (patch)
tree91ac22153e416aac7ca20916b314b5e2ffa871b1 /contrib/syslinux-4.02/core/plaincon.inc
downloadpreboot-3050a9253437f4a4b5ad4bf3b3efdc3c660a5137.tar.gz
preboot-3050a9253437f4a4b5ad4bf3b3efdc3c660a5137.tar.xz
preboot-3050a9253437f4a4b5ad4bf3b3efdc3c660a5137.zip
initial import of sc2010 scripts ..HEADmaster
Diffstat (limited to 'contrib/syslinux-4.02/core/plaincon.inc')
-rw-r--r--contrib/syslinux-4.02/core/plaincon.inc24
1 files changed, 24 insertions, 0 deletions
diff --git a/contrib/syslinux-4.02/core/plaincon.inc b/contrib/syslinux-4.02/core/plaincon.inc
new file mode 100644
index 0000000..c41629d
--- /dev/null
+++ b/contrib/syslinux-4.02/core/plaincon.inc
@@ -0,0 +1,24 @@
+;
+; writechr: Write a single character in AL to the console without
+; mangling any registers; handle video pages correctly.
+;
+ section .text16
+
+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