Сначала там какие-то извращения с ESI/ECX, но в конце концов ESI указывает на FFF00000h, т.е. на начало флешки, если я правильно понимаю.
Потом копируем всю 8-мимегабитную флешку в память, начиная с 300000h.
Скопировав, ищем строку '*BBSS*', потом с ориентиром на эту строку начинаем вытаскивать какие-то данные и куда-то их запихивать.
Далее начинаем искать сигнатуру '-lh', затем определяем длину модуля и начинаем считать контрольную сумму.
Ежели КС не сошлась, уходим по последней метке - там потом будет выдан C5, а за ним 01 и дальнейшие коды по восстановлению.
Если КС сошлась, то ползем дальше - это я особо не смотрел.
P.S. Мог где-то и ошибиться с интерпретацией.
Поиском по команде пересылки цепочек нашел такой кусок кода (вызывается после выдачи POST C3):
Сначала там какие-то извращения с ESI/ECX, но в конце концов ESI указывает на FFF00000h, т.е. на начало флешки, если я правильно понимаю.
Потом копируем всю 8-мимегабитную флешку в память, начиная с 300000h.
Скопировав, ищем строку '*BBSS*', потом с ориентиром на эту строку начинаем вытаскивать какие-то данные и куда-то их запихивать.
Далее начинаем искать сигнатуру '-lh', затем определяем длину модуля и начинаем считать контрольную сумму.
Ежели КС не сошлась, уходим по последней метке - там потом будет выдан C5, а за ним 01 и дальнейшие коды по восстановлению.
Если КС сошлась, то ползем дальше - это я особо не смотрел.
P.S. Мог где-то и ошибиться с интерпретацией.