INT 10,11 - Character Generator Routine (EGA/VGA)


	AH = 11h

	AL = 00  user character load
	   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


	AL = 01  ROM BIOS 8x14 monochrome set
	   BL = table in character generator RAM


	AL = 02  ROM BIOS 8x8 double dot
	   BL = table in character generator RAM


	AL = 03  set displayed definition table
	   BL = value for character Map Select register (EGA,VGA)
	      = character generator RAM table numbers (MCGA)


	AL = 04  ROM BIOS 8x16 character set
	   BL = table in character generator RAM


	AL = 10  user specified character definition table
	   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


	AL = 11  ROM BIOS 8x14 monochrome character set
	   BL = table in character generator RAM


	AL = 12  ROM 8x8 double dot character definitions
	   BL = table in character generator RAM


	AL = 14  ROM 8x16 double dot character definitions
	   BL = table in character generator RAM


	AL = 20  pointer to graphics character table for ~INT 1F~ (8x8)
	   ES:BP = pointer to user table


	AL = 21  user graphics character pointer at INT 43
	   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


	AL = 22  ROM 8x14 character set
	   BL = number of rows (see AL=21)
	   DL = rows (when BL = 0)


	AL = 23  ROM 8x8 double dot character set
	   BL = row specifier (see AL=21)
	   DL = rows (when BL = 0)


	AL = 24  ROM 8x16 character set
	   BL = row specifier (see AL=21)
	   DL = rows (when BL = 0)


	AL = 30  get current character generator information
	   BH = information desired:
	      = 0  INT 1F pointer
	      = 1  INT 44h pointer
	      = 2  ROM 8x14 pointer
	      = 3  ROM 8x8 double dot pointer (base)
	      = 4  ROM 8x8 double dot pointer (top)
	      = 5  ROM 9x14 alpha alternate pointer
	      = 6  ROM 8x16 character table pointer
	      = 7  ROM 9x16 alternate character table pointer

	on return:
	CX = bytes per character (points)
	DL = rows (less 1)
	ES:BP = pointer to table