back2root:ibm-pc-ms-dos:interrupts:int_10:int_10_11
INT 0x10 - 0x11 - Character Generator Routine (EGA/VGA)
Request/Call:
| reg | value |
| AH | 0x11 |
| AL | see below |
user character load
| reg | descr |
| AL | 00 |
| BH | number of bytes per character |
| BL | table in character generator RAM |
| CX | count of characters in table |
| DX | ASCII code of first character defined |
| ES:BP | pointer to user table |
ROM BIOS 8x14 monochrome set
| reg | descr |
| AL | 01 |
| BL | table in character generator RAM |
ROM BIOS 8x8 double dot
| reg | descr |
| AL | 02 |
| BL | table in character generator RAM |
set displayed definition table
| reg | descr |
| AL | 03 |
| BL | value for character Map Select register (EGA,VGA) |
| | character generator RAM table numbers (MCGA) |
AL = 04 ROM BIOS 8x16 character set
| reg | descr |
| AL | 04 |
| BL | table in character generator RAM |
AL = 10 user specified character definition table
| reg | descr |
| AL | 10 |
| BH | bytes per character (points) |
| BL | table in character generator RAM |
| CX | number of characters defined in table |
| DX | ASCII code of first character defined |
| ES:BP | pointer to user table |
ROM BIOS 8x14 monochrome character set
| reg | descr |
| AL | 11 |
| BL | table in character generator RAM |
ROM 8x8 double dot character definitions
| reg | descr |
| AL | 12 |
| BL | table in character generator RAM |
AL = 14 ROM 8x16 double dot character definitions
| reg | descr |
| AL | 14 |
| BL | table in character generator RAM |
pointer to graphics character table for ~INT 1F~ (8x8)
| reg | descr |
| AL | 20 |
| ES:BP | pointer to user table |
user graphics character pointer at INT 43
| reg | descr |
| AL | 21 |
| BL | row specifier
* 0 - user specified (DL = rows)
* 1 is 14 rows
* 2 is 25 rows
* 3 is 43 rows |
| CX | bytes per character (points) |
| DL | rows (when BL = 0) |
| ES:BP | pointer to user table |
ROM 8x14 character set
| reg | descr |
| AL | 22 |
| BL | row specifier (see AL=21) |
| DL | rows (when BL = 0) |
ROM 8x8 double dot character set
| reg | descr |
| AL | 23 |
| BL | row specifier (see AL=21) |
| DL | rows (when BL = 0) |
ROM 8x16 character set
| reg | descr |
| AL | 24 |
| BL | row specifier (see AL=21) |
| DL | rows (when BL = 0) |
| reg | descr |
| AL | 30 |
| BH | information desired (see bellow) |
| BH | descr |
| 0 | INT 1Fh pointer |
| 1 | INT 44h pointer |
| 2 | ROM 8×14 pointer |
| 3 | ROM 8×8 double dot pointer (base) |
| 4 | ROM 8×8 double dot pointer (top) |
| 5 | ROM 9×14 alpha alternate pointer |
| 6 | ROM 8×16 character table pointer |
| 7 | ROM 9×16 alternate character table pointer |
Return:
| reg | descr |
| CX | Bytes per character (points) |
| DL | rows (less 1) |
| ES:BP | pointer to table |
Back
back2root/ibm-pc-ms-dos/interrupts/int_10/int_10_11.txt · Dernière modification : de frater