Домой | EN-US Английский | RU Русский | Другие проекты (EN-US Английский)


Проект VBEMP x86
Универсальный VESA/VBE Видеодрайвер
(для архитектуры Windows 9x x86)

Проект начат в Мае 2004 г.

Обзор


Ключевые возможности :

Планируемые возможности :


Загрузить драйверы


Этот драйвер рекомендуется использовать в том случае, когда у Вас имеются новые или неизвестные видеокарты и у Вас нет для них соответствующих драйверов. Лучше всего связаться с производителем Вашей видеокарты или найти драйверы в ИНТЕРНЕТЕ. ТОЛЬКО ЕСЛИ Вам ваще не удалось найти драйверы, Я рекомендую использовать мой (vbemp.drv). Мой драйвер прост и не обеспечивает аппаратного 3D ускорения (DirectX & OpenGL).

Мой драйвер НЕ поддерживает подключение нескольких видеокарт одновременно и эта опция НЕ планируется.

Перед установкой VBEMP.DRV я настоятельно рекомендую удалить все драйверы видеокарт, установленные в системе и переключиться в стандартный VGA-режим 640x480x16цветов.

Системные требования :

ОС

Версия

Описание

Ссылка

Windows 9x клоны - ВСЕ из них

Debug version pre-beta
10.21.2008

Универсальная VBE20 вeрсия. *

Загрузить

Windows 9x клоны - ВСЕ из них

Debug version pre-beta
03.23.2008

Универсальная/Ручная VBE20 вeрсия. *

Загрузить

Windows 9x клоны - ВСЕ из них

Оригинальный исходный код

FRAMEBUF пример из Windows 98 DDK. Собирать с MASM 6.x

framebuf.zip

* Если универсальная версия не работает с Вашей картой, Вы можете попробовать Ручную версию. Чтобы получить её Вам нужно связаться со мной по e-mail и прислать мне отчет, сгенерированный INFOVBE.EXE, потом Я вышлю Вам перcональную версию драйвера для Вашей видеокарты по e-mail.

Примечание 1: Если Вы испытываете проблемы с установкой моего драйвера прочтите статью приведенную ниже. Подробности здесь: MSKB: How to install or change a video driver (Q131806)

Примечание 2: Если Ваша карта работает медленно с установленным VBEMP, особенно при перемещении больших окон, прокрутке текста и заметно мерцание экрана Вы можете улучшить ситуацию: зайдите в Панель управления -> Экран -> Настройки -> кнопка Дополнительно -> Решение проблем и передвиньте движок Ускорение в крайнюю левую позицию (Нет). Подробности здесь: MSKB: How to Change the Graphics Hardware Acceleration Setting in Windows (Q263391)

Примечание 3: Начиная с версии датированной 03.16.2008, vbemp9x.zip содержит эти варианты драйвера VBEMP:

"УНИВЕРСАЛЬНЫЕ": "РУЧНЫЕ" (устаревшие): Специальные сборки: Если одна версия не работает с Вашей картой, пробуйте другую и/или наоборот...

Примечание 3: По умолчанию любые Plug'N'Play видеокарты определяются КОРРЕКТНО 9x версией моего драйвера. Но если Вы хотите, Вы МОЖЕТЕ добавить PCI VENDOR/DEVICE ID Вашей видеокарты в vbemp.inf для того, чтобы Ваша карта определялась под своим именем или можете выбрать драйвер вручную когда Windows впервые находит неизвестное устройство. Это необязательное действие!
Пример:


; INF file for VBEMP display driver
; Copyright 1988-2008, Anapa Corp.

[version]
Class=DISPLAY
signature="$CHICAGO$"
Provider=%Mfg%
 . . . . . .

 . . . . . .
[Mfg]
%AnaPa.DeviceDesc% = Driver.Install, NOPNP
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc1% = Driver.Install, PCI\CC_0300
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc2% = Driver.Install, PCI\CC_0301
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc3% = Driver.Install, PCI\CC_0380
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc4% = Driver.Install, *PNP0900
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc5% = Driver.Install, *PNP0917
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc6% = Driver.Install, NOPNP
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc7% = Driver.Install, PCI\VEN_1002&DEV_5046
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc8% = Driver.Install, PCI\VEN_1002&DEV_4966&SUBSYS_4F721002
%AnaPa.DeviceDesc%%AnaPa.DeviceDesc9% = Driver.Install, PCI\VEN_1002&DEV_4963&SUBSYS_4F731002
%AnaPa.DeviceDesc%%AnaPa.DeviceDescA% = Driver.Install, PCI\VEN_8086&DEV_2562&SUBSYS_52478086
%AnaPa.DeviceDesc%%AnaPa.DeviceDescB% = Driver.Install, PCI\VEN_xxxx&DEV_yyyy&SUBSYS_zzzzzzzz ; шаблон карты, смотри ниже
 . . . . . .

 . . . . . .
[Strings]
Mfg="Anapa Corp."
AnaPa.DeviceDesc = "VBE Минипорт"
AnaPa.DeviceDesc1 = " - Standard PCI Graphics Adapter (VGA)"
AnaPa.DeviceDesc2 = " - Standard PCI Graphics Adapter (XGA)"
AnaPa.DeviceDesc3 = " - Standard PCI Graphics Adapter"
AnaPa.DeviceDesc4 = " - Standard Graphics Adapter (VGA)"
AnaPa.DeviceDesc5 = " - VGA"
AnaPa.DeviceDesc6 = " - SVGA"
AnaPa.DeviceDesc7 = " (ATI Rage 128PRO 4x pri)"
AnaPa.DeviceDesc8 = " (ATI RV250 pri)"
AnaPa.DeviceDesc9 = " (ATI RV250 sec)"
AnaPa.DeviceDescA = " (Intel D845G)"
AnaPa.DeviceDescB = " Имя Вашей карты"
 . . . . . .

Чтобы вписать эту строку Вы можете использовать программу PCI.EXE упомянутую ниже, вот пример отчета:

 . . . . . .
 Bus 1 (AGP), Device Number 0, Device Function 0
 Vendor 1002h ATI Technologies Inc
 Device 4966h Radeon 9000 Series (RV250)
 Command 0187h (I/O Access, Memory Access, BusMaster, Wait Cycles, System Errors)
 Status 02B0h (Has Capabilities List, Supports 66MHz, Supports Back-To-Back Trans., Medium Timing)
 Revision 01h, Header Type 80h, Bus Latency Timer FFh
 Minimum Bus Grant 08h, Maximum Bus Latency 00h
 Self test 00h (Self test not supported)
 Cache line size 32 Bytes (8 DWords)
 PCI Class Display, type VGA
 Subsystem ID 4F721002h Radeon 9000 Series (RV250)
 Subsystem Vendor 1002h ATI Technologies Inc
 . . . . . .

Скриншоты. Проект VBEMP x86 в работе :)


Windows 95 4.00.1111 (4.00.950 C) W95-1
Windows 98 SE 4.10.2222 W98-1

Инструкция: Полное удаление драйвера VBEMP из системы Win9x


  1. В файле \%WINDOWS_DIR%\SYSTEM.INI изменить или добавить эту строчку в секцию [boot]:
    *DisplayFallBack=1
    
  2. Удалить файлы:
    \%КАТАЛОГ_WINDOWS%\INF\DRVDATA.BIN
    \%КАТАЛОГ_WINDOWS%\INF\DRVIDX.BIN
    \%КАТАЛОГ_WINDOWS%\SYSTEM\VBEMP.SYS 
    \%КАТАЛОГ_WINDOWS%\SYSTEM\VBEMP.VXD 
    \%КАТАЛОГ_WINDOWS%\INF\vbemp.inf
    \%КАТАЛОГ_WINDOWS%\INF\vbemp.pnf
    
  3. Удалить Вашу карту из Менеджера устройств или вычистить ветки реестра:
    \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class\Display
    - прибить всё
    \\HKEY_LOCAL_MACHINE\ENUM\PCI 
    - прибить все записи VEN_xxxx&DEV_yyyy&SUBSYS_zzzzzzzz ( относящиеся к Вашей карте )
    

Дополнительная информация


Официальная информация по стандарту VESA BIOS Extensions 3.0 - http://www.vesa.org/public/vbe/vbe3.pdf.

SciTech Software Inc выпустила коммерческую версию аналогичного драйвера (SciTech SNAP Graphics changelog) для Windows, OS/2, QNX & Linux. Эти версии пробные на 21 день.

  1. Скачать Windows 2000/XP Version 3.1.4 DPVL beta2 [dpvlbeta2.zip].
  2. Скачать Windows NT 4.0 Версия 3.1.1 [snap-winnt-3.1.1.exe]. Поддерживаемое оборудование.
  3. Скачать Windows NT 4.0 Версия 3.1.3 beta 1284 [snap-winnt-3.1.3-1284.exe].
  4. Скачать DOS Версия 3.1.1 [snap-dos-3.1.1.exe]. Поддерживаемое оборудование.
  5. Скачать IBM OS/2 (eCS) Версия 3.1.8 [snap-os2-3.1.8.exe]. Поддерживаемое оборудование.

Более новую Персональную версию (пробную на 6 месяцев) можно скачать БЕСПЛАТНО зарегистрировавшись на http://my.scitechsoft.com/navigate.php.

Здесь Вы можете найти некоторые тесты и бенчмарки, которые я использовал для тестирования производительности моего драйвера - benches.rar


Протестированные видеокарты/чипсеты


  1. VBE 3.00 INTERNAL Intel Q963 (GMA 3000) Graphics
  2. VBE 3.00 INTERNAL Intel 82845G Graphics
  3. VBE 2.00 AGP 8Mb ATI Rage 3D Pro AGP 2x (BGA Package)
  4. VBE 2.00 AGP 8Mb ATI Rage P/M Mobility AGP 2x
  5. VBE 2.00 AGP 32Mb ATI Rage128 PF/Pro AGP 4x (TMDS)
  6. VBE 2.00 AGP 64Mb ATI Radeon 9000 Series (RV250)
  7. VBE 2.00 INTERNAL ATI Radeon Xpress 200M Series
  8. VBE 3.00 16Mb? ATI Radeon X1650 Series (RV530 LE)
  9. VBE 3.00 16Mb? ATI Radeon X1950 GT [RV570]
  10. VBE 3.00 AGP 16Mb 3Dfx Interactive Voodoo3 2000
  11. VBE 3.00 PCI 4Mb nVidia RIVA 128 2D/3D Gui Accelerator
  12. VBE 3.00 AGP 4Mb nVidia RIVA 128 2D/3D Gui Accelerator
  13. VBE 3.00 AGP 16Mb nVidia RIVA TNT GUI+3D Accelerator [NV4]
  14. VBE 3.00 AGP 16Mb nVidia RIVA TNT2 Model 64 [NVM64]
  15. VBE 3.00 AGP 32Mb nVidia GeForce2 MX/MX400 [NV11]
  16. VBE 3.00 AGP 64Mb nVidia GeForce2 GTS/PRO [NV15]
  17. VBE 3.00 AGP 64Mb nVidia Geforce3 Ti 200 [NV20]
  18. VBE 3.00 AGP 128Mb nVidia GeForce FX 5200 [NV34.3]
  19. VBE 3.00 INTERNAL nVidia GeForce 6100 nForce 430
  20. VBE 3.00 nVidia GeForce 7600GS
  21. VBE 2.00 PCI 4Mb Matrox MGA-2164W Millenium II PCI
  22. VBE 2.00 AGP 4Mb Matrox MGA-G100 AGP
  23. VBE 2.00 PCI 4Mb TSENG LABS Inc ET6000
  24. VBE 2.00 PCI 2Mb S3 Inc 86C375 ViRGE/DX
  25. VBE 2.00 AGP 4Mb S3 Inc 86C368 Trio3D/2X
  26. VBE 2.00 INTERNAL Trident CyberBlade i7
  27. VBE 2.00 PCI 8Mb? VirtualBox VBE Adapter (Innotek VirtualBox)
  28. VBE 2.00 PCI 16Mb VMware SVGA II (VMware)
  29. VBE 2.00 PCI 4Mb Cirrus Logic CL-GD5446 PCI (QEMU)
  30. VBE 2.00 PCI 4Mb Plex86 VBE Adapter (QEMU/Bochs)
  31. VBE 1.02 INTERNAL 1Mb Cirrus Logic CL-GD5428
  32. VBE 1.02 VLB 1Mb Cirrus Logic CL-GD5428
  33. VBE 1.02 INTERNAL 512Kb Cirrus Logic CL-GD5424

Решение проблем с драйвером


Когда у Вас возникают проблемы с VBEMP, обычно существуют два базовых сценария:

  1. Компьютер стартует, но драйвер работает неправильно.
  2. Компьютер не стартует, т.е. "падает", показывает BSOD или "зависает".

Перед отладкой попробуйте эти операции, указанные ниже:

  1. Физически удалите чипы памяти или используйте опцию /MAXMEM в boot.ini для этого по образцу (например если у Вас 1024 Mb RAM): 512 -> 256 -> 128 -> 64 -> 32 -> 16 -> 8.
  2. Обновите BIOS материнской платы до последней версии.
  3. Очистите настройки CMOS до безопасных или по умолчанию.
  4. Уменьшите AGP Aperture в BIOS т.к. она не используется VBEMP.
  5. Временно удалите внешние контроллеры как то: usb, sound, hdd, lan и пр.
  6. Попробуйте использовать видеокарту с другой шиной: AGP, PCIe, PCI, набортную.

Для начала процесса отладки Вы ДОЛЖНЫ запросить у меня DEBUG-версию драйвера по e-mail. Вот возможные шаги, кратко:

  1. Используя Microsoft Windows 9x x86 32-bit Debugging Tools, получите отладочный лог от драйвера через последовательный порт:
    ИЛИ Установите только отладочные компоненты отсюда: http://www.navozhdeniye.narod.ru/deb9xkit.rar (только Win9x/ME).

    Соеднините два PC нуль-модемным кабелем для последовательного порта. На отлаживающем PC (host PC) - скопируйте rterm.exe (или rterm98.exe) из отлаживаемого PC (target PC). После это создайте ярлык на рабочем столе для его запуска.
    Сначала, соедините два PC нуль-модемным кабелем.
    Затем, запустите отлаживающий PC (host PC) и выполните rterm.exe.
    После запустите отлаживаемый PC (target PC). Он запустится в режиме отладки. Если отлаживаемый PC "повиснет", выйдите из rterm.exe на отлаживающем PC (host PC) и пришлите vbe.log мне.

После того как Вы получили логи от драйвера Вы можете предоставить мне дополнительную информацию по системе и видеокарте. Это необязательный шаг!!! Без логов от драйвера эта информация бессмысленна для меня!!!

  1. Собрать информацию о VESA BIOS и о системе :

  2. Для владельцев ISA/VLB карт: Выпущены новые утилиты - lfb_det.exe/lfb.exe, которые умеют автоматически определять адрес буфера кадра в системном адресном пространстве. Они распространяются только по запросу по e-mail. Прочтите пп. 1 ("Собрать информацию о системе"), сделайте логи и я пришлю Вам эти утилиты.


VBE ЧАВО: Список отклонений от стандарта VESA Видео BIOS Расширений

Карты (чипы) affected

Описание

Intel 845G, 855G, 865G, 915G и далее

PRB: Не удается установить "родные" разрешения вроде 1024x600, 800x480, 1280x800, в основном на ноутбуках с встроенной графикой Intel.
DETAILS: В таблицах режимов Video BIOS эти режимы отсутствуют или фильтруются. Когда Вы пытаетесь через BIOS установить эти разрешения, BIOS немедленно возвращает ошибку.
FIX: Обновите Ваш BIOS последней версией или самостоятельно сделайте патч. В DOS/Windows9x возможно использование программного Intel TSR VBIOS VESA-драйвера.

Intel 845G, 855G, 865G, 915G и далее

PRB: Не удается установить разрешение выше 800x600x8бит и 640x480x16бит.
DETAILS: В Video BIOS размер буфера кадра жестко ограничен 832 Кбайт, а этого недостаточно даже для 1024x768x16бит = 1024*768*2 = 1572864, 1572864 > 832K.
FIX: Обновите Ваш BIOS последней версией или самостоятельно сделайте патч. В DOS/Windows9x возможно использование программного Intel TSR VBIOS VESA-драйвера.

Intel 810E, 815E series

PRB: Не удается использовать линейный буфер кадра, хотя карта идентифицирует себя как VBE 3.0 совместимая.
DETAILS: В VideoBIOS поддержка линейного буфера кадра отсутствует, а сама карта поддерживает линейный буфер кадра.
FIX: Не известно.

ATI Radeon Xkkkk series (начиная с X700)

PRB: Не удается использовать пользовательские частоты обновления экрана, хотя карта идентифицирует себя как VBE 3.0 совместимая.
DETAILS: В VideoBIOS код переключения пользовательских частот обновления экрана отсутствует. Когда Вы пытаетесь через BIOS установить эти разрешения, BIOS немедленно возвращает ошибку VBE 0x34F.
FIX: Не известно.

nVidia GeForce 5xxx/6xxx/7xxx (и более новые)

PRB: Не удается использовать пользовательские частоты обновления экрана, хотя карта идентифицирует себя как VBE 3.0 совместимая.
DETAILS: В VideoBIOS код переключения пользовательских частот обновления экрана изменен. Когда Вы пытаетесь через BIOS установить эти разрешения, BIOS всегда использует разоешение по умолчанию (60 Hz).
FIX: Не известно.

nVidia GeForce 5xxx/6xxx/7xxx (и более новые)

PRB: Не удается установить разрешение выше 800x600.
DETAILS: В таблицах режимов VideoBIOS режимы 1024x768 и выше отсутствуют или фильтруются. Когда Вы пытаетесь через BIOS установить эти разрешения, BIOS немедленно возвращает ошибку.
FIX: Обновите Ваш BIOS последней версией или самостоятельно сделайте патч.

Карты VESA 1.x

PRB: Когда переключаемся в полноэкранный текстовой режим, компьютер "зависает".
DETAILS: В коде Video BIOS подпрограммы установки режимов "коряво" написаны и некорректно отрабатываются в 32 бит защищённом режиме.
FIX: Не известно. В DOS/Windows9x возможно использование программного VESA-драйвера.

Разнообразные VESA карты

PRB: Прт вызове VBE функций, старшее слово EAX и возможно других регистров (т.е. 0x????0000) може содержать "мусор".
DETAILS: В коде Video BIOS VESA подпрограммы "коряво" написаны и некорректно отрабатывают использование 32 бит регистров.
FIX: Фильтровать старшее слово в EAX.




История проекта



Лог разработчика


[!] Важно
[+] Новое
[-] Исправлена ошибка
[*] Изменения
[?] Комментарии

Лог разработчика представлен только в английском варианте. Сорри. :)

Лицензия


Проект VBEMP x86 драйвер *
Лицензия на использование и распространение

* далее по тексту - VBEMP.

  1. Все авторские права на VBEMP принадлежат только авторам - Bearwindows и Корпорации АнаПа.
  2. Любой пользователь имеет право использовать VBEMP в некоммерческих целях бесплатно.
  3. VBEMP распространяется свободно, при условии того, что настоящий дистрибутив не изменен. Ни одно частное лицо или организация не может брать плату за распространение VBEMP без письменного разрешения автора.
  4. VBEMP ПОСТАВЛЯЕТСЯ ПО ПРИНЦИПУ "AS IS". НИКАКИХ ГАРАНТИЙ НЕ ПРИЛАГАЕТСЯ И НЕ ПРЕДУСМАТРИВАЕТСЯ. ВЫ ИСПОЛЬЗУЕТЕ ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ НА СВОЙ РИСК. АВТОР НЕ БУДЕТ ОТВЕЧАТЬ НИ ЗА КАКИЕ ПОТЕРИ ИЛИ ИСКАЖЕНИЯ ДАННЫХ, ЛЮБУЮ УПУЩЕННУЮ ВЫГОДУ В ПРОЦЕССЕ ИСПОЛЬЗОВАНИЯ ИЛИ НЕПРАВИЛЬНОГО ИСПОЛЬЗОВАНИЯ ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.
  5. Вы не можете использовать, копировать, эмулировать, создавать новые версии, сдавать в наем или аренду, продавать, изменять, декомпилировать, дизассемблировать, изучать код программы другими способами, передавать зарегистрированную программу или любые из ее составляющих, иначе, чем определено настоящим лицензионным соглашением. Любое такое нелегальное использование означает автоматическое и немедленное прекращение действия настоящего соглашения и может преследоваться по закону.
  6. Все права, не предоставленные здесь явно, сохраняются за Bearwindows и Корпорацией АнаПа.
  7. Установка и использование VBEMP означает, что вы понимаете положения настоящего лицензионного соглашения и согласны с ними.
  8. Если почему-либо вы не согласны с этим лицензионным соглашением, вам необходимо удалить файлы дистрибутива VBEMP с ваших устройств хранения информации и прекратить использование VBEMP.

Благодарим за использование VBEMP.

Bearwindows и Корпорация АнаПа


Direct3D, DirectDraw, DirectShow, DirectSound, DirectX, Microsoft, MS-DOS, Visual C++, Win32, Win32s, Windows, Windows XP, Windows 2003 Server и Windows NT это либо зарегистрированные торговые марки или торговые марки Корпорации Майкрософт в США и/или других странах/регионах.

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

© Корпорация АнаПа 1988 – 2008. Все права защищены.

E-Mail: bearwindows_at_operamail_dot_com | Последнее обновление: 16 Ноября 2008