VGA

Тема в разделе "WASM.ZEN", создана пользователем trurl, 8 май 2005.

  1. trurl

    trurl New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2005
    Сообщения:
    7
    Адрес:
    Ukraine
    Кто-то может поделиться информацией о том, как перейти (прерываниями, по типу

    mov ax, 4f01h

    mov cx, 0112h

    lea di, gbuf

    int 10h) в VGA, и как его использовать. (Смена банка...)

    В принципе, я перехожу в VGA, меняю банки.

    Выводить программа должна куб, она его и выводит. Но когда кубик вылезает, например, за правую грань монитора, он начинает вылазить слева, т.е. получается, что экран как бы смещен... Вообщем, если у кого-то есть доки, чтобы учесть все моменты, поделитесь, пожалуйста :) (Поиском пользовался, не подошло)
     
  2. trurl

    trurl New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2005
    Сообщения:
    7
    Адрес:
    Ukraine
    Уточнение, надо только процедура на смену банка (какие параметры ей нужны)
     
  3. vinnie_pooh

    vinnie_pooh New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2004
    Сообщения:
    98


    Наверное, не VGA, а SVGA



    Если ты устанавливаешь режим 112h и рисуешь в нем куб, то процедура переключения банка у тебя уже есть.

    Насчет того, что куб "вылазит" с противоположной стороны, банки здесь не причем.

    Представим для простоты, что у нас разрешение 6 * 4 * 1 (конечно, тут не будет никакиx банков):
    Код (Text):
    1. ######
    2. ######
    3. ######
    4. ######


    тогда чистая видеопамять будет такой:

    000000000000000000000000



    если нарисовать горизонтальную линию с координатами левой точки x1 == 1; y1 == 0 и длиной в 4 пикселя, то экран будет выглядеть
    Код (Text):
    1. #<font color="#0000FF]####</font><!--color-->#
    2. ######
    3. ######
    4. ######


    а в видеопамяти будет

    011110000000000000000000



    если же попытаться нарисовать такую же линию с координатами x1 == 4; y1 == 0

    то в видеопамяти будет

    000011110000000000000000

    а на экране получится
    Код (Text):
    1. ####<font color="#0000FF]##
    2. ##</font><!--color-->####
    3. ######
    4. ######


    ну, понятно, почему.



    Так что тут надо придумываать какой-нибудь алгоритм отсечения.

    Ну, а насчет инфы - наверное, http://oz.by/books/more102902.html

    вроде, еше есть в продаже.
     
  4. Rai

    Rai New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2005
    Сообщения:
    35
    Адрес:
    красноярск
    люди подскажите пожалуйста как програмировать VGA в 32-х битном коде, а не на 16????
     
  5. Smile

    Smile New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2004
    Сообщения:
    129
    trurl

    "Компьютерная графика. Полигональные модели" ·

    А. В. Боресков, Е. В. Шикин

    http://books.dore.ru/bs/f1bid3378.html



    Я бы посоветовал, силная книжка



    Rai

    Кулаков "Программирование на аппаратном уровне"

    там кажется кое-что есть по функциям карт в pmode, если ты об этом...