ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы.



 

Часть 1


    
Программирование в графических режимах VGA
-----------------------------------------------------------------
    
    Автор: Rueggeberg (Рюггеберг)
    
    Abacus
    A Data Becker Book
    
    
    Впервые напечатано в 1990г.
    Напечатано в США
    
    Авторские права (c) 1990       Abacus
                                   5370 52nd Street SE
                                   Grand Rapids, MI 49512
    
    Авторские права (c) 1990       Data Becker GmbH
                                   Merowingerstrasse 30
                                   4000 Duesseldorf, West Germany
    
    Редактор: George W. Miller
    
    
    Данная книга  защищена авторским правом.  Никакая часть книги
не может быть воспроизведена,  записана в поисковую  систему  или
передана в  любой  форме  или  любыми  средствами,  электронными,
механическими, фотокопированием,  магнитной записью  и  т.д.  без
предварительного письменного  разрешения  Abacus или Data Becker,
GmbH.
    
    IBM, PC-XT,  PC-AT  и   PC-DOS   это   торговые   марки   или
зарегистрированные торговые  марки  фирмы  International Business
Machines   Corporation.   MS-DOS   это   торговая    марка    или
зарегистрированная торговая  марка  фирмы  Microsoft Corporation.
Turbo BASIC, Turbo C и Turbo Pascal это   торговые   марки   или
зарегистрированные торговые  марки  фирмы  Borland International.
QuickBASIC это торговая  марка  или  зарегистрированная  торговая
марка фирмы Microsoft Corporation.
           
Данные Каталога изданий библиотеки Конгресса
    
Rueggeberg, Jan, 1959-
    Programming VGA graphics : programming techniques for
  better, faster and easier VGA graphics / Jan Rueggeberg.
       p.   cm.
    Includes index.
    ISBN  1-55755-099-9
    1. Computer graphics.  2. Expansion boards
(Micricomputers)
I. Title
T385.R85  1990
006.6'7--dc20                             90-47264
                                              CIP

Важная информация
-----------------------------------------------------------------
    
    Пожалуйста, имейте в виду, что плата VGA позволит вам выбрать
любой из 262144 цветов,  если вы подсоедините  ее  к  аналоговому
монитору при  помощи  аналогового кабеля.  Кроме того,  вы должны
правильно установить положения DIP-переключателей на плате VGA  и
на мониторе.
    
Изменения, которые были внесены после издания книги
-----------------------------------------------------------------
    
    Мы часто получаем изменения в программах уже после того,  как
текст программ уже был напечатан,  что исключает внесение в книгу
последних изменений.  Кроме  того,  мы  считаем  нужным   вносить
изменения в  программы  в  ходе  сопровождения  наших программных
продуктов, которые  по  тем  или  иным  причинам  не  могли  быть
отражены в печатном издании.
    
    Поэтому такого    рода   последние   изменения   программного
обеспечения отражаются в  виде  файла  README,  поставляемого  на
программных дискетах   в   комплекте  книги.  Эти  файлы  содержат
информацию, которая должна  входить  в  программное  обеспечение.
Если такой  информации  не  оказалось,  то  файла README на ваших
дискетах не будет.  Перед запуском любой из программ, находящихся
на дискете,  проверьте,  нет  ли в директории файла README.  Если
такой файл там имеется,  прочтите его,  прежде чем  приступить  к
дальнейшей работе.
    
    Файл README можно непосредственно вызвать на экран командой:
    
         TYPE README.TXT
    
    Либо вывод можно сразу направить на принтер командой:
    
         TYPE README.TXT >PRN
    
    
    Рис.1:  Шторм в океане
    
    
Содержание
-----------------------------------------------------------------
    
Важная информация
    
Изменения, которые были внесены после издания книги
    
1.      Введение
    
2.      Плата VGA
2.1     Экранные адаптеры
2.2     Экран
2.3     Клавиатура
2.4     Устройства для создания графических изображений
    
3.      Основные сведения о BIOS
3.1     Прерывание 16
3.1.1   Функции прерывания 16 в VGA BIOS
3.1.2   Обращение к регистрам BIOS
3.2     Введение в DOS
    
4.      Расширения команд DOS
4.1     Пример программ для DOS
4.2     Команды VGA-DOS
4.3     Обзор команд VGA-DOS
4.4     Инсталяция команд VGA-DOS
4.5     Вызов команд VGA-DOS по приглашению DOS
4.6     Вызов команд VGA-DOS из командных файлов
    
5.      VGA и другие режимы
5.1     Видео-режимы и демонстрационные программы
5.2     Специализации видео-режимов IBM
5.3     Специальные свойства графического режима Hercules
5.4.    Уменьшенный шрифт для графических режимов
5.5     EGA- и CGA-вариации режима VGA
    
6.      Расширения Turbo Pascal
6.1     Основы Паскаля
6.1.1   Требования для использования Паскаля
6.1.2   Создание модуля Паскаля
6.1.3   Изменение видео-режима: новая процедура Паскаля
6.1.4   Изменение видео-режимов: текст программы
6.1.5   Переключение на режим 19, шестнадцатиричный номер $13
6.1.6   Использование команд из DOS
6.2     Манипулирование цветами
6.2.1   Цвета рамки в режиме 19
6.2.2   Цвета текста в режиме 19
6.2.3   Цветовая палитра в видео-режиме 19
6.2.4   Упрощенные манипуляции с палитрой
6.2.5   Просмотр палитры
6.2.6   Палитры, настраиваемые пользователем
6.2.7   Цвета палитры в текстовых режимах
6.3     Графические команды Режима 19
6.3.1   Чтение и вывод на экран пикселей
6.3.2   Процедура BLOCK
6.3.3   Процедура CIRCLE
6.3.4   Процедура DISK
6.3.5   Рисование линий в видео-режиме 19 (процедура LINE)
6.3.6   Создание рамок
6.4     Специализированные графические команды
6.4.1   Предварительные требования
6.4.2   Рисование многоцветных линий процедурой FEATHER
6.4.3   Упрощенная процедура заполнения (процедура HORIZONTAL)
6.4.4   Многоцветные диски (процедура BALL)
6.4.5   Многоцветные блоки
6.5     Процедуры со смешанными цветами заполнения
6.5.1   Процедура Horizontal со смешанными цветами заполнения
6.5.2   Расширения процедур BALL и COLUMN
6.5.3   Дополнительные способы работы с цветными поверхностями
        (программа Quadratic)
6.6     Сглаживание цветов: процедура ANTIALIA
6.6.1   Считывание палитры
6.6.2   Считывание номера в палитре (процедура READPALETTE)
6.6.3   Считывание цвета палитры непосредственно с экрана
6.6.4   Создание переменных списков для цветов палитры
6.6.5   Считывание цветовых компонент (процедура PEEKLIST)
6.6.6   Поиск аналогий (процедура SIMILAR)
6.6.7   Сглаживание в блоках (процедура ANTALIA)
6.7     Последовательное сглаживание по пикселям
6.8     Модификации существующей палитры
6.8.1   Абсолютное регулирование яркости цветов палитры
6.8.2   Относительное регулирование яркости цветов палитры
6.8.3   Преобразование цветов палитры в чисто серые тона
6.9     Завершенный модуль Паскаля
6.9.1   Добавление в модуль процедуры ZEROKEY
6.10    Прямой запуск программ из DOS
6.10.1  Пример новой команды DOS (программа EGAPALETT)
6.11    Дополнительные примеры программ
6.11.1  Расширение части экрана (Zoom - "Наезд")
6.11.2  Уменьшение части экрана ("Отъезд")
6.11.3  Перемещение изображения
6.11.4  Восход солнца, программа Aurora
6.12    Несколько заключительных слов по поводу
        расширений Turbo Pascal
6.13    Список новых процедур на Паскале
    
7.      Программирование для платы VGA на Бейсике
7.1     Turbo BASIC и PowerBASIC
7.1.1   Команды Turbo BASIC и PowerBASIC
7.1.2   Примеры программ на Turbo BASIC и PowerBASIC
7.2     Quick BASIC
7.2.1   Команды Quick BASIC
7.7.2   Пример программы на Quick BASIC
    
8.      Программирование для платы VGA на Turbo С
8.1     Важные команды языка Си
8.2     Пример программы на Си
    
9.      Графическая плата Hercules
9.1     Процедуры для монохромных графических режимов
9.1.1   Монохромный графический режим Hercules и его инициализация
9.1.2   Модификация программ VGA для платы Hercules
9.1.3   Палитра Hercules
9.1.4   Присвоение и считывание цветов пикселей при помощи
        процедуры "PEEK(Hercules)"
9.1.5   Процедура BLOCK(Hercules)
9.1.6   Процедура CIRCLE/DISK(Hercules)
9.1.7   Рисование линий и рамок в монохромном графическом режиме
9.2     Специализированные графические команды для Hercules
9.2.1   "Серые тона палитры"
9.3     Моделирование режима VGA 19 в режиме Hercules
    
10.     Графические команды режима 19
10.1    Путешествие по галактике
10.1.1  Описание программы
10.1.2  Правила игры
10.1.3  Листинг TERRAX.PAS на Паскале
10.2    Программа TERRAX для графической платы Hercules
10.3    Демонстрация графики в видео-режиме 19
10.3.1  Заполнение ландшафта деревьями (TREE.PAS)
10.3.2  Лунный пейзаж (CRATER.PAS)
10.3.3  Битва 256 цветов ("Острова в океане")
10.3.4  Размножение цветных пикселей ("Рост кораллов под водой")
10.4    Демонстрация графики для Hercules
10.4.1  Демонстрация моделирования VGA на Hercules
10.4.2  Создание лунного пейзажа в режиме Hercules
10.4.3  Команды DOS для VGA-графики в режиме Hercules
    
11.     Фрактальная графика в режиме IBM 19
11.1    Создание базового файла фрактальной графики
11.2    Программа BMANLED.PAS

        Приложение A: Команды VGA DOS
        Приложение B: Содержимое сопутствующих дискет
        Приложение С: Исходный код
    
        Алфавитный указатель
    


Яндекс цитирования