168 lines
3.6 KiB
HTML
168 lines
3.6 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
||
|
||
<html>
|
||
|
||
<head>
|
||
<meta http-equiv="Content-Type"
|
||
content="text-html; charset=Windows-1252">
|
||
<title>INT 10,10 - Set/Get Palette Registers (EGA/VGA)</title>
|
||
<meta name="FORMATTER" content="Microsoft FrontPage 2.0">
|
||
</head>
|
||
|
||
<body>
|
||
|
||
<h1><a name="kap_interrupt_0240"></a>INT 10,10 - Set/Get Palette
|
||
Registers (EGA/VGA)</h1>
|
||
|
||
<p> AH = 10h</p>
|
||
|
||
<p> % AL = 00 set individual palette register</p>
|
||
|
||
<p> BH = color value</p>
|
||
|
||
<p> BL = palette register</p>
|
||
|
||
<p> % AL = 01 set border color (overscan register)</p>
|
||
|
||
<p> BH = color value</p>
|
||
|
||
<p> % AL = 02 set all palette registers and border</p>
|
||
|
||
<p> ES:DX = pointer to 17 byte table representing 16 palette</p>
|
||
|
||
<p> registers and border color register</p>
|
||
|
||
<p> % AL = 03 toggle intensity/blinking (EGA)</p>
|
||
|
||
<p> BL = 0 enable intensity</p>
|
||
|
||
<p> 1 enable blinking</p>
|
||
|
||
<p> % AL = 07 read palette register (PS/2)</p>
|
||
|
||
<p> BL = palette register to read (0-15)</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> BH = value of palette register</p>
|
||
|
||
<p> % AL = 08 read border color (overscan register, PS/2)</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> BH = value of border color (overscan register)</p>
|
||
|
||
<p> % AL = 09 read palette registers and border (PS/2)</p>
|
||
|
||
<p> ES:DX = pointer to 17 byte table representing 16 palette</p>
|
||
|
||
<p> registers and border color register</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> ES:DX = pointer to table provided as input</p>
|
||
|
||
<p> % AL = 10 set DAC color register</p>
|
||
|
||
<p> BX = color register to set</p>
|
||
|
||
<p> CH = green value</p>
|
||
|
||
<p> CL = blue value</p>
|
||
|
||
<p> DH = red value</p>
|
||
|
||
<p> % AL = 12 set block of DAC color registers</p>
|
||
|
||
<p> BX = first color register to set</p>
|
||
|
||
<p> CX = number of color registers to set</p>
|
||
|
||
<p> ES:DX = pointer to table of color values to set</p>
|
||
|
||
<p> % AL = 13 set attribute controller color select state</p>
|
||
|
||
<p> BL = 0 set Mode Control register bit 7</p>
|
||
|
||
<p> BH = value for bit 7</p>
|
||
|
||
<p> BL = 1 set color select register</p>
|
||
|
||
<p> BH = value for color select register</p>
|
||
|
||
<p> % AL = 15 read DAC color register (PS/2)</p>
|
||
|
||
<p> BX = color register to read</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> CH = green value</p>
|
||
|
||
<p> CL = blue value</p>
|
||
|
||
<p> DH = red value</p>
|
||
|
||
<p> % AL = 17 read block of DAC color registers</p>
|
||
|
||
<p> BX = first color register to read</p>
|
||
|
||
<p> CX = number of color registers to read</p>
|
||
|
||
<p> ES:DX = pointer to buffer for color registers</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> ES:DX = pointer to color table provided as input</p>
|
||
|
||
<p> % AL = 18 update video DAC mask register</p>
|
||
|
||
<p> BL = new mask</p>
|
||
|
||
<p> % AL = 19 read video DAC mask register</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> BL = value read from video DAC mask register</p>
|
||
|
||
<p> % AL = 1A read color page state</p>
|
||
|
||
<p> BL = bit 7 of Mode Control Register</p>
|
||
|
||
<p> BH = bits 2 thru 3 of Color select register if BL = 0</p>
|
||
|
||
<p> = bits 0 thru 3 of Color select register if BL = 1</p>
|
||
|
||
<p> on return:</p>
|
||
|
||
<p> BL = current paging mode</p>
|
||
|
||
<p> CX = current page</p>
|
||
|
||
<p> % AL = 1B sum color values to shades of gray</p>
|
||
|
||
<p> BX = first color register to sum</p>
|
||
|
||
<p> CX = number of color registers to sum</p>
|
||
|
||
<p> - controls the pixel color mapping bit values</p>
|
||
|
||
<p> - BIOS extension to EGA/VGA systems</p>
|
||
|
||
<hr>
|
||
|
||
<table border="0" width="100%" cols="3">
|
||
<tr>
|
||
<td width="33%">Zur<EFBFBD>ck zum <a href="inte1at0.htm">Interrupt
|
||
Info</a>. </td>
|
||
<td align="center" width="33%"><a
|
||
href="mailto:Roger.Morgan@htl-steyr.ac.at">Roger Morgan</a>
|
||
/ 1998 </td>
|
||
<td align="right" width="33%"><font size="1">L.<2E>nderung <!--webbot
|
||
bot="Timestamp" s-type="EDITED" s-format="%d.%m.%y"
|
||
startspan -->29.03.99<!--webbot bot="Timestamp" endspan
|
||
i-checksum="13964" --> </font></td>
|
||
</tr>
|
||
</table>
|
||
</body>
|
||
</html>
|