Пара вопросов по VGA

Тема в разделе "WASM.ELECTRONICS", создана пользователем 10110111, 4 июн 2007.

  1. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    1)Читаю, например, MOR 3cch - read & 3c2h - write:
    bits 7-6 Sync Polarity,
    0 1 400 lines 414 lines
    1 0 350 - 362 -
    1 1 480 - 496 -
    Для чего этот регистр, если при этом существует CRTC с регистрами 00 и т.д.?
    Где можно вообще почитать про правила образования значений регистров при установке произвольных видеорежимов так, чтобы учитывать всё, и Sync Polarity в том числе?
    2)Почему функция 0 int10h не поддерживает 640x480x256, хотя поддерживает 320x200x256 и 640x480x16?
    Возможно ли установить такой режим на чистом VGA?
     
  2. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    2) 640x480x8 - VESA режим и устанавливается функцией VBE, и не штатной BIOS.
    1) Никогда не задумывался :) Современные мониторы нормально понимают обе полярности, видимо об этом есть какие-то соглашения, будет время посмотрю в доках
     
  3. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    10110111
    VGA много всего. Описан здесь на руском http://www.codenet.ru/progr/video/egavga/
    На сайте Intel есть 010179001.pdf там на английском для одного старого чипсета описано.
    Правда там скорее всего нет того, что тебе нужно.

    Для чего регистр MSR ? Смотри его описание. Он главнее, чем CRTC отвечает за самые основные настройки при установки режима видюшки.

    2) Потому, что 640x480x256- потому, что больше 128КБайт (A0000-BFFFF), на чистом нет.
    640*480*16 режим 12h
     
  4. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    Но ведь 640x480x16 тоже больше 128K, а именно - 150K.
    P.S. Неужели банки видеопамяти уже поддерживаются в VGA?
     
  5. Y_Mur

    Y_Mur Active Member

    Публикаций:
    0
    Регистрация:
    6 сен 2006
    Сообщения:
    2.494
    10110111
    Нет там хитрая организация - цвет пишется в порт, а пикселы выводятся а-ля ч/б по 8 штук в байте :))
     
  6. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    Насколько я понял по некоторым исходникам, устанавливающим Modes X, максимальное количество памяти в VGA = 256K. При этом близким к отношению 4:3 будет 591x443. Как для установки такого (или близкого к такому) режима надо настраивать Start/End Of horizontal/vertical Blanking и подобные регистры, - откуда брать эти значения?