Files
nethack/doc
nhmall 2a66ce54ad use faster method to write characters to VGA in msdos port
chasonr's comments in github pull request #220:
It was necessary, when updating the MS-DOS port for 3.6, to revise the
screen-clearing and character-drawing functions, because the background
color is no longer zero. But the 3.6.1 method is rather slow, using
write mode 2 and a lot more calls to outportb.

outportb is expensive when running under a virtual machine, the typical
use case for the MS-DOS port these days, because it traps to the
hypervisor rather than actually writing to hardware.

This change restores the speed of the 3.4.3 version. The adapter is left
in write mode 0. Clearing is accomplished by writing zero to planes where
the background color has a zero bit, and 0xFF where the background color
has a one bit. Characters are drawn by writing 0x00, 0xFF, the font data,
or the inverse of the font data, as appropriate, to each plane.

When testing, be sure to use OPTIONS=videomode:vga, because autodetect
will go to VESA mode if it can.

closes #220
2019-09-13 00:38:04 -04:00
..
2018-11-11 10:29:52 -05:00
2019-01-08 13:56:59 -08:00
2018-09-19 21:46:07 -05:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2018-09-21 16:36:38 -04:00
2018-09-21 18:12:42 -07:00
2018-09-21 18:12:42 -07:00
2018-04-25 16:54:50 -04:00
2018-09-21 18:12:42 -07:00
2018-09-21 18:12:42 -07:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2018-09-21 18:12:42 -07:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2002-01-05 21:05:47 +00:00
2003-05-11 13:40:01 +00:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-04-25 16:54:50 -04:00
2018-09-21 18:12:42 -07:00
2019-05-09 17:15:14 -07:00
2018-04-25 16:54:50 -04:00
2002-01-05 21:05:47 +00:00
2018-04-25 16:54:50 -04:00
2010-05-01 23:10:22 +00:00
2018-11-11 10:29:52 -05:00
2018-11-11 10:29:52 -05:00
2018-09-19 21:46:07 -05:00
2018-09-19 21:46:07 -05:00
2018-04-25 16:54:50 -04:00
2018-09-20 18:02:48 -04:00
2018-11-16 20:51:22 -05:00