Видеопрограмма BIOS имеет несколько функций, которые обслуживают графику на IBM PC. Устанавливая регистр AH равным 11, программа может сделать выбор цвета в графическом режиме. Эта подпрограмма устроена так, что она работает с истинной палитрой, а не с предопределенными палитрами цветной платы. Если графический режим 320*200 имеет истинную палитру, то это означает, что должно существовать отображение в четыре цвета, возможных для каждой точки, из четырех цветов, которые хотела бы иметь программа. В настоящее время это делается для цвета фона в режиме нормального разрешения. Вы можете выбрать любой цвет в качестве цвета 0, цвета фона. Интерфейс этой программы был разработан для того, чтобы позволять определение истинной палитры цветов, если фирма IBM когда-либо модифицирует аппаратуру так, чтобы позволять это.
Чтобы достичь этой цели, значение точки определяется в регистре BH. В регистре BL определяется цвет, который присвоит адаптер этой точке. Например, если содержимое регистра BH равно 0; регистр BL содержит значение цвета фона. BIOS обслуживает значение регистра BH, равное только 0 или 1 , так как можно выбрать только цвет фона и одну из двух предопределенных палитр. Пролог BIOS определяет палитру. С помощью этой функции можно также определить цвет окаймления в текстовых режимах.
Две другие графические подпрограммы позволяют читать либо записывать конкретные точки графического экрана. В простейших случаях эта функция BIOS позволяет вам определить строку и колонку без определения их отображения в буфер дисплея. При построении больших картин, а также при выполнении любой графической работы эти функции требуют очень много времени. Программа должна вызывать BIOS при выдаче каждой точки на экран. В случае режима высокого разрешения программа должна вызвать BIOS 128000 раз, чтобы изобразить каждую точку правильно. Хотя программы, входящие в BIOS выполняется очень быстро, она должна вычислять адрес буфера всякий раз, когда получает информацию о строке и колонке. Для этого действия требуется умножение и несколько сложений, и следовательно, требуется некоторое время. В общем случае программа записывает график с помощью стартового положения точки и смещений относительноэтого положения. Это означает, что программа вычисляет положение первой точки с помощью алгоритма отображения в буфер, а положения остальных точек отсчитывает от текущего адреса буфера.