|
Соколенко П. Т. Программирование SVGA-графики для IBM PCАвтор: Соколенко П. Т. Жанр: программирование Издательство: БХВ-Петербург ISBN: 5-94157-127-5 Язык: Русский Формат: PDF Качество: Отсканированные страницы + слой распознанного текста Количество страниц: 420 Автор: Gunpowder В
книге изложены основы программирования
компьютерной графики для IBM PC на языке
ассемблера. В ней рассмотрены: особенности
основных видеорежимов SVGA, программирование
построения рисунков и палитры цветов,
работа с курсором и мышью, вывод текстовых
сообщений и получение спецэффектов.
Излагаемый материал иллюстрируется
многочисленными примерами. В приложениях
вы найдете описание графического
стандарта BMP, работы с оперативной
памятью компьютера, а также техники
составления подпрограмм для алгоритмических
языков высокого уровня. Книга
предназначена для читателей, интересующихся
программированием компьютерной графики,
и может быть рекомендована как начинающим,
так и опытным программистам. Содержание: Предисловие.........................................................................................................7 Глава 1. Видеосистемы и стандарт VESA...........................................................9 1.1. Видеосистемы и их стандартизация..........................................................................10 1.1.1. Мониторы..........................................................................................................10 1.1.2. Видеокарты и стандарты..................................................................................11 1.1.3. Акселераторы.....................................................................................................16 1.2. Общая характеристика стандарта VESA....................................................................21 1.2.1. Стандартизация видеорежимов........................................................................21 1.2.2. Информационные функции VBE....................................................................27 1.2.3. Основные функции VBE 1.2............................................................................32 1.2.4. Новые возможности VBE 2.0...........................................................................38 Глава 2. Особенности работы в режимах VESA...............................................43 2.1. Проверка поддержки видеорежима...........................................................................44 2.2. Обработка информации о режиме.............................................................................50 2.3. Процедуры для работы с одним окном видеопамяти.............................................52 2.4. Работа с двумя окнами видеопамяти........................................................................57 2.5. Страничная организация видеопамяти.....................................................................60 2.6. Часто используемые в примерах имена....................................................................64 2.7. Раздел для начинающих.............................................................................................69 Глава 3. Видеорежимы packed pixel graphics.....................................................77 3.1. Работа с отдельными точками...................................................................................78 3.1.1. Команды для манипуляции с точками...........................................................78 3.1.2. Окна видеопамяти.............................................................................................82 3.1.3. Точки и их адреса.............................................................................................86 3.2. Построение геометрических фигур...........................................................................90 3.2.1. Прямые линии...................................................................................................90 3.2.2. Прямоугольники................................................................................................98 3.3. Построение рисунков................................................................................................103 3.3.1. Варианты построения строк...........................................................................103 3.3.2. Воспроизведение не сжатых рисунков..........................................................111 3.3.3. Воспроизведение сжатых рисунков...............................................................117 3.3.4. Заключительные замечания...........................................................................125 Глава 4. Цвет на экране..................................................................................129 4.1. Как получается цвет точки.......................................................................................129 4.2. Исходная цветовая палитра......................................................................................132 4.3. Функции BIOS...........................................................................................................137 4.4. Простая установка палитры.....................................................................................142 4.5. Манипуляции с палитрой цветов............................................................................148 Глава 5. Работа с текстом...............................................................................157 5.1. Текстовые режимы....................................................................................................157 5.1.1. Русский текст на экране.................................................................................158 5.1.2. Общая характеристика процесса вывода текста...........................................161 5.1.3. Вывод текста с использованием поддержки DOS и BIOS..........................167 5.1.4. Непосредственная работа с видеобуфером...................................................172 5.2. Графические режимы................................................................................................178 5.2.1. Таблицы символов..........................................................................................178 5.2.2. Программный знакогенератор.......................................................................181 5.2.3. Вывод информационных строк.....................................................................187 5.2.4. Текстовый курсор в графическом режиме...................................................193 5.2.5. Ввод символов с клавиатуры..........................................................................201 Глава 6. Курсор и мышь..................................................................................207 6.1. Построение рисунка курсора...................................................................................207 6.1.1. Курсоры для Windows.....................................................................................208 6.1.2. Предварительная подготовка рисунка...........................................................210 6.1.3. Немаскируемый курсор..................................................................................214 6.1.4. Маскируемый курсор......................................................................................218 6.1.5. Замечания к описанным подпрограммам.....................................................223 6.2. Подготовка к работе с манипулятором "мышь".....................................................226 6.2.1. Общее описание драйвера мыши..................................................................227 6.2.2. Предварительные действия............................................................................231 6.3. Работа в режиме опроса драйвера мыши................................................................237 6.3.1. Управляющий алгоритм для режима опроса................................................237 6.3.2. Формирование кодов событий......................................................................241 6.3.3. Управление перемещением курсора..............................................................246 6.4. Работа в режиме прерываний..................................................................................249 6.4.1. Функции драйвера..........................................................................................250 6.4.2. Примеры прерывающих подпрограмм..........................................................254 Глава 7. Цвет в коде точки.............................................................................261 7.1. Кодирование цвета....................................................................................................261 7.1.1. Среднее количество цветов............................................................................262 7.1.2. Максимальное цветовое разрешение............................................................263 7.1.3. 24-разрядный код точки.................................................................................265 7.2. Координаты и адреса точек......................................................................................269 7.3. Линии, строки и прямоугольные области..............................................................275 7.3.1. Подпрограммы для рисования линий...........................................................275 7.3.2. Подпрограммы для построения строк..........................................................282 7.3.3. Работа с прямоугольными областями...........................................................286 7.4. Рисунки, использующие палитру............................................................................291 7.4.1. Преобразование палитры в форматы Hi-Color............................................292 7.4.2. Преобразование палитры в форматы True Color.........................................296 7.4.3. Построение рисунков с использованием палитры......................................298 7.5. Рисунки, не использующие палитру.......................................................................303 7.5.1. Рисунки, подготовленные в стандарте BMP................................................303 7.5.2. Рисунки, подготовленные в стандарте PCX.................................................308 7.5.3. Способы сжатия полноцветных рисунков....................................................313 7.6. Наложение рисунков и спецэффекты.....................................................................319 Приложение А. Рисунки в файлах BMP.........................................................331 АЛ. Общая характеристика стандарта............................................................................332 АЛЛ. Заголовок файла для Windows.......................................................................332 А. 1.2. Заголовок файла для OS/2.............................................................................333 А. 1.3. Образ рисунка в файле...................................................................................334 А.2. Общая схема обработки заголовка файла..............................................................336 А.2.1. Возможные отклонения от стандарта...........................................................337 А.2.2. Ввод спецификации и открытие файла.......................................................337 А.2.3. Чтение заголовка файла и палитры..............................................................340 А.2.4. Анализ основных полей заголовка...............................................................341 А.2.5. Манипуляции с палитрой..............................................................................345 A. З. Построение рисунков, использующих палитру.....................................................350 А.3.1. Построение рисунка сверху вниз..................................................................350 А.З.2. Построение рисунка снизу вверх..................................................................353 А.3.3. Универсальная процедура построения рисунка..........................................355 Приложение Б. Оперативная память..............................................................361 Б.1. Обычная память (Conventional Memory)................................................................361 Б. 1.1. Сегменты оперативной памяти.....................................................................362 Б. 1.2. Сегментирование текстов программ.............................................................364 Б.1.3. Динамическое управление памятью.............................................................368 Б. 1.4. Использование функций DOS......................................................................372 Б. 2. Расширенная память (Expanded Memory)................................................................376 Б.2.1. Спецификация расширенной памяти..........................................................376 Б.2.2. Использование функций драйвера...............................................................380 Б.2.3. Работа с расширенной памятью....................................................................383 Б.З. Расширенная память (Extended Memory)...............................................................388 Приложение В. Оформление подпрограмм......................................................393 B. 1. Классификация подпрограмм.................................................................................393 8.2. Оформление программных модулей.......................................................................397 8.3. Параметры в стеке....................................................................................................403 8.4. Работа процедур со стеком......................................................................................409 8.5. Учет особенностей компилятора.............................................................................414 Список литературы..........................................................................................423 Предметный указатель.....................................................................................425 |
Loading
|