[SeaBIOS] [PATCH 0/5] serial console support

Gerd Hoffmann kraxel at redhat.com
Thu Jul 14 10:52:57 CEST 2016


Next round of serial console patches,  Still not ready to merge.

Headline feature of this version is split mode (i.e. output on both vga
and serial).  Have a initial working implementation now, logic is
simliar to the vgabios timer hook (as suggested by Kevin).

Also changed the output logic, down to a one-cell buffer (char+attr) for
output.  Cursor updates are simply written to BDA now, with the actual
move being done lazily when printing the next character or checking for
keyboard input.  That is especially useful for splitmode as we can
simply skip the cursor position updates and let the vgabios do them

TODO list:
  * compile time (CONFIG_*) option.
  * input handling cleanups.
  * implement missing int10h functions.
  * more testing.


Gerd Hoffmann (5):
  std: add cp437 to unicode map
  kbd: make enqueue_key public, add ascii_to_keycode
  paravirt: read QEMU_CFG_NOGRAPHIC, store in etc/sercon-enable romfile
  add serial console support
  [wip] sercon: initial split-output implementation

 Makefile          |   7 +-
 src/clock.c       |   1 +
 src/fw/paravirt.c |   2 +
 src/kbd.c         |  17 +-
 src/misc.c        |   2 +
 src/optionroms.c  |   9 +-
 src/romlayout.S   |  39 ++++
 src/sercon.c      | 621 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/std/cp437.c   | 275 ++++++++++++++++++++++++
 src/std/cp437.h   |   1 +
 src/util.h        |   5 +
 11 files changed, 974 insertions(+), 5 deletions(-)
 create mode 100644 src/sercon.c
 create mode 100644 src/std/cp437.c
 create mode 100644 src/std/cp437.h


More information about the SeaBIOS mailing list