1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Протестите код

Тема в разделе "WASM.NT.KERNEL", создана пользователем PROFi, 12 окт 2007.

  1. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    _BC_

    Если есть такая возможность - протестируй при запущеной 3D игре или др. приложении во весь экран. Там frame buffer BASE вообще летает по видеопамяти раз 60 за секунду.
     
  2. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    PROFi
    Отработала ок - но без видимого результата. так и должно быть?
    Лог DbgView прикрепил.

    P.S. прогу прогонял несколько раз - значения всегда одинаковые. это на всякий случай ;)
     
  3. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Jupiter

    Нет буду смотреть в чем дело НО ПОД VISTA не работает
     
  4. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    PROFi
    я тоже заметил строку в логе с упоминанием висты, но у меня не виста, у меня WinXP SP2 ENG MCE
     
  5. bugaga

    bugaga New Member

    Публикаций:
    0
    Регистрация:
    1 июл 2007
    Сообщения:
    361
    PROFi - фигасе ты там намудрил. У мене на w2k ток было "Loading..." а потом черный экран и все сглючило. Или у тя эта тема под вислу?

    ps: хм.. хотя архивы какието битые блин. Пришлось чек-сумму поправлять у дровины.
    Се равно в релокейшоны мусор попал. Могло из за этого сглючить?

    А пересобирать влом.)))
     
  6. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    bugaga
    с архивом всё в порядке и чексум у драйвера корректный - неполадки где-то на твоей стороне.
     
  7. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    разобрался с неверным смещением начала -- у нвидии оно в отличие от ати не задается в байтах, а вычисляется в соответствии с pitch и bpp. Невнимательность. ;)

    планируемый "roadmap" пока такой:
    - старая ати-карта TheDeath
    - gf8
    - правильное вычисление размера экрана на новых ати

    Для полноценной реализации кстати надо будет еще как минимим добавлять поддержку мутных цветовых режимов и 2х дисплеев.

    l_inc
    попробуй, также в разных режимах:
     
  8. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    _BC_
    BSOD

    Код (Text):
    1. PAGE_FAULT_IN_NONPAGED_AREA
    2. STOP: 0x00000050 (0xBA657000, 0x00000008, 0xBA656FFE, 0x00000000)
    3.  
    4. r0video.sys - Address BA656FFE base at BA656000, DateStamp 4736ee2
    ATI MOBILITY Radeon X1400
     
  9. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    Jupiter
    всё верно, до новых ати руки еще не дошли. ;)

    TheDeath
    небольшое уточнение -- карта RageXL (DID 4752h), по регистрам схожа с Mach 64.
     
  10. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    _BC_
    "что ж ты, поганец, делаешь?!" (с)
    "предупреждать надо" (с)
    ;)
     
  11. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    Jupiter
    ;)
     
  12. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    но старый код хотя бы не бсодил %)
    вероятно, имеет смысл детектить (хотя бы поверхностно) тип карточки и выгружать дров, если карта не поддерживается.
     
  13. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    _BC_
    Крест на всех разрешениях получился точно посередине.

    Извиняюсь, что так долго. У меня на рабочем столе 90 значков, и, чтобы при смене разрешения не восстанавливать их руками на место, решил написать программку, которая сохранит их положение, а потом восстановит. Так вот пока писал, три раза сбивал их положение и три раза восстанавливал. БОльшая часть времени ушла на восстановление положения значков на рабочем столе.
     
  14. TheDeath

    TheDeath New Member

    Публикаций:
    0
    Регистрация:
    20 июл 2003
    Сообщения:
    66
    Адрес:
    Russia,Новосибирск
    PROFi
    Проверить пока не могу.Почему-то DbgView весит систему намертво.
     
  15. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    _BC_

    Слушай ты хоть отладочную инфу куда-нибудь всунь, что б в dbgview можно было почитать почему "An error occured while drawing"
     
  16. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    bugaga

    С архивами проблема - скачиваются неправильно вот и BOSD
     
  17. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Jupiter

    Понял, послушай пришли ветку реестра \\REGISTRY\\MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E968-E325-11CE-BFC1-08002BE10318}
     
  18. bugaga

    bugaga New Member

    Публикаций:
    0
    Регистрация:
    1 июл 2007
    Сообщения:
    361
    у BC устроено все довольно просто... У меня крест выводиться простейшей прогой
    Код (Text):
    1. program  hello;  uses windows;
    2.  
    3. var h,b : cardinal;
    4. procedure startdriver ();
    5. begin
    6. //...cut
    7. end;
    8. begin
    9. startdriver ();
    10.  
    11. h := CreateFileA ('\\.\R0VIDEO', $80000000, 0, nil, 3, $80, 0);
    12.  
    13.  DeviceIoControl ( h,  $340008,  0, 0, 0, 0, b, nil);
    14. CloseHandle (h);
    15. end.
    А дальше - телодвижения дровины... Как понял считываеться PCI-cfg, ряд какихто еще значений ну и мэппируеться LFB (мож с этим и облом-с какой)... Странно а в DOS на VESA как хоть дела обстоят у 8800-джифорсов?
     
  19. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    530
    Адрес:
    Russia
    PROFi
    Прилагаю ветку реестра.
    Пароль в ПМ.
     
  20. PROFi

    PROFi New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2003
    Сообщения:
    690
    Jupiter

    Спасибо причина найдена - ты 2х кратно переустанавливал драйвера видеокарты (не думал что так может быть) Тебе нужно заменить строчку в драйвере SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0000 stealth.sys
    на SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0001
    и пересчитать контрольную сумму. Доработаю такую возможность в драйвере в ближайшее время.