В этом куске IMHO определяется интерфейс флешки: ... и все...
Забавно. Мы же с нее уже стартовали
Добавлено спустя 17 часов 9 минут 24 секунды:
Итак, продолжаем на свежую голову:
F000:FC08 mov eax, 0D0001h
;устанавливаем базовый адрес для memory-mapped ригистров,
;равный D000 и разрешаем картирование в память
F000:FC0E out dx, eax
F000:FC10 mov si, 0
F000:FC13 mov ax, 0D000h
F000:FC16 mov ds, ax
; Теперь Root Complex memory Block доступен по D000h
F000:FC18 or byte ptr ds:[si+3410h], 100b
; в GSC-регистре устанавливаем бит 2 для разрешения вывода
; POST-кодов в порты 80h...8Еh на PCI
F000:FC1D mov al, ds:[si+3411h]
F000:FC21 and al, 1100b
; работаем только с битами 10 и 11 регистра GSC
; Это Boot BIOS Straps (т.е. где находится BIOS):
; 00 - reserved
; 01 - SPI
; 10 - PCI
; 11 - LPC
F000:FC23 cmp al, 1000b
F000:FC25 jnz SKIP
; Если Boot BIOS Straps не установлен на PCI,
; то настраиваем регион для LPC. Иначе - SKIP
F000:FC27 mov eax, 8000F8D8h
F000:FC2D mov dx, 0CF8h
F000:FC30 out dx, eax
F000:FC32 add dx, 4
F000:FC35 in al, dx
F000:FC36 and al, 111111b
; Запрещаем Legacy-регион, оставляем только хабовый
F000:FC38 out dx, al
F000:FC39 SKIP:
; Restore F0 ...
Вывод: POST-коды должны выводится. Но нужен эксперимент, который, возможно, сегодня и состоится.
Забавно. Мы же с нее уже стартовали
Добавлено спустя 17 часов 9 минут 24 секунды:
Итак, продолжаем на свежую голову:
F000:FC08 mov eax, 0D0001h
;устанавливаем базовый адрес для memory-mapped ригистров,
;равный D000 и разрешаем картирование в память
F000:FC0E out dx, eax
F000:FC10 mov si, 0
F000:FC13 mov ax, 0D000h
F000:FC16 mov ds, ax
; Теперь Root Complex memory Block доступен по D000h
F000:FC18 or byte ptr ds:[si+3410h], 100b
; в GSC-регистре устанавливаем бит 2 для разрешения вывода
; POST-кодов в порты 80h...8Еh на PCI
F000:FC1D mov al, ds:[si+3411h]
F000:FC21 and al, 1100b
; работаем только с битами 10 и 11 регистра GSC
; Это Boot BIOS Straps (т.е. где находится BIOS):
; 00 - reserved
; 01 - SPI
; 10 - PCI
; 11 - LPC
F000:FC23 cmp al, 1000b
F000:FC25 jnz SKIP
; Если Boot BIOS Straps не установлен на PCI,
; то настраиваем регион для LPC. Иначе - SKIP
F000:FC27 mov eax, 8000F8D8h
F000:FC2D mov dx, 0CF8h
F000:FC30 out dx, eax
F000:FC32 add dx, 4
F000:FC35 in al, dx
F000:FC36 and al, 111111b
; Запрещаем Legacy-регион, оставляем только хабовый
F000:FC38 out dx, al
F000:FC39 SKIP:
; Restore F0 ...
Вывод: POST-коды должны выводится. Но нужен эксперимент, который, возможно, сегодня и состоится.
Добавлено спустя 5 часов 11 минут 18 секунд:
Проверено на следующих платформах: GA-945PL-S3 (rev. 1.0) и GA-945GZM-S2 (rev. 3.0). Выполнено трассирование в пошаговом режиме от кода CFh до кода 2Bh.