Ci-dessous, les différences entre deux révisions de la page.
back2root:ibm-pc-ms-dos:interrupts:int_10:int_10_10 [2024/01/19 22:38] – créée frater | back2root:ibm-pc-ms-dos:interrupts:int_10:int_10_10 [2024/01/19 23:06] (Version actuelle) – [AL : 1B sum color values to shades of gray] frater | ||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
{{tablelayout? | {{tablelayout? | ||
- | ^ reg ^ value ^ descr ^ | + | ^ reg ^ value ^ descr ^ |
- | | AH | + | | AH |
+ | | AL | ||
==== Sub Function ==== | ==== Sub Function ==== | ||
- | | AL | + | {{tablelayout? |
- | | 00 |set individual palette register | + | ^ |
- | | 01 |set border color (overscan register) | + | | 00 | set individual palette register |
- | | 02 |set all palette registers and border | + | | 01 | set border color (overscan register) |
- | | 03 |toggle intensity/ | + | | 02 | set all palette registers and border |
- | | 07 |read palette register (PS/ | + | | 03 | toggle intensity/ |
- | | 08 |read border color (overscan register, PS/2) | | + | | 07 | read palette register (PS/ |
- | | 09 |read palette registers and border (PS/ | + | | 08 | read border color (overscan register, PS/2) | |
- | | 10 |set DAC color register | + | | 09 | read palette registers and border (PS/ |
- | | 12 |set block of DAC color registers | + | | 10 | set DAC color register |
- | | 13 |set attribute controller color select state | | + | | 12 | set block of DAC color registers |
- | | 15 |read DAC color register (PS/ | + | | 13 | set attribute controller color select state | |
- | | 17 |read block of DAC color registers | + | | 15 | read DAC color register (PS/ |
- | | 18 |update video DAC mask register | + | | 17 | read block of DAC color registers |
- | | 19 |read video DAC mask register | + | | 18 | update video DAC mask register |
- | | 1A |read color page state | | + | | 19 | read video DAC mask register |
- | | 1B |sum color values to shades of gray | + | | 1A | read color page state | |
+ | | 1B | sum color values to shades of gray | | ||
+ | |||
+ | |||
+ | === AL : 00 set individual palette register === | ||
+ | {{tablelayout? | ||
+ | | BH | color value | | ||
+ | | BL | palette register | ||
+ | |||
+ | === AL : 01 set border color (overscan register) === | ||
+ | {{tablelayout? | ||
+ | | BH | color value | | ||
+ | |||
+ | === AL : 02 set all palette registers and border === | ||
+ | {{tablelayout? | ||
+ | | ES:DX | pointer to 17 byte table representing 16 palette registers and border color register | ||
+ | | BL | 0 enable intensity\\ 1 enable blinking | ||
+ | |||
+ | === AL : 07 read palette register (PS/2) === | ||
+ | | BL | palette register to read (0-15)| | ||
+ | |||
+ | on return: | ||
+ | |||
+ | | BH | value of palette register| | ||
+ | |||
+ | === AL : 08 read border color (overscan register, PS/2) === | ||
+ | on return: | ||
+ | | BH |value of border color (overscan register) | ||
+ | |||
+ | === AL : 09 read palette registers and border (PS/2) === | ||
+ | | ES:DX |pointer to 17 byte table representing 16 palette registers and border color register| | ||
+ | |||
+ | on return: | ||
+ | | ES:DX | pointer to table provided as input| | ||
+ | |||
+ | === AL : 10 set DAC color register === | ||
+ | {{tablelayout? | ||
+ | | BX | color register to set | | ||
+ | | CH | green value | | ||
+ | | CL | blue value | | ||
+ | | DH | red value | | ||
+ | |||
+ | === AL : 12 set block of DAC color registers === | ||
+ | | BX |first color register to set | | ||
+ | | CX |number of color registers to set | | ||
+ | | ES:DX |pointer to table of color values to set | | ||
+ | |||
+ | === AL : 13 set attribute controller color select state === | ||
+ | {{tablelayout? | ||
+ | | BL | 0 set Mode Control register bit 7\\ BH = value for bit 7 | | ||
+ | | BL | 1 set color select register\\ BH = value for color select register | ||
+ | |||
+ | === AL : 15 read DAC color register (PS/2) === | ||
+ | |||
+ | | BX |color register to read | | ||
+ | |||
+ | on return: | ||
+ | | CH |green value | | ||
+ | | CL |blue value | | ||
+ | | DH |red value | | ||
+ | |||
+ | === AL : 17 read block of DAC color registers === | ||
+ | | BX |first color register to read | | ||
+ | | CX |number of color registers to read | | ||
+ | | ES:DX |pointer to buffer for color registers | | ||
+ | |||
+ | on return: | ||
+ | | ES:DX |pointer to color table provided as input | | ||
+ | |||
+ | |||
+ | === AL : 18 update video DAC mask register === | ||
+ | |||
+ | | BL |new mask | | ||
+ | |||
+ | === AL : 19 read video DAC mask register === | ||
+ | on return: | ||
+ | |||
+ | | BL |value read from video DAC mask register | | ||
+ | |||
+ | === AL : 1A read color page state === | ||
+ | | BL |bit 7 of Mode Control Register | | ||
+ | | BH |bits 2 thru 3 of Color select register if BL = 0\\ bits 0 thru 3 of Color select register if BL = 1 | ||
+ | on return: | ||
+ | | BL |current paging mode | | ||
+ | | CX |current page | | ||
- | | | + | === AL : 1B sum color values |
- | | BH | + | |
- | | BL | + | |
- | | CX | + | |
+ | | BX |first color register to sum | | ||
+ | | CX |number of color registers to sum | | ||
===== Return | ===== Return |