Lantcoder
05-08-2016, 17:38
Здравствуйте, уважаемые читатели форума OSZONE.NET!
На новый комп надо установить Windows XP (для сервисных целей). Системная плата GA-H110M-S2HP, проц Intel Core i5, память DDR4. Сидюка нет. Только жёсткий диск, который, впрочем, можно снимать и подсоединять к другому работающему компу. На диске стоит работающая FreeDOS с разными утилитами и Volcov Commander. На диске имеется дистрибутив WindowsXP, находится в подкаталоге диска C:, как говорится набирай winnt.exe и вперёд. То есть у нас есть ТОЛЬКО жёсткий диск и больше ничего.
Но не тут то было! BIOS системной платы не даёт возможности отключить режим AHCI, видимо теперь все такие биосы пошли. В дистрибутиве WindowsXP драйвера AHCI нету, поэтому ясно-понятно, после первичного копирования файлов с каталога-дистрибутива и первой же перезагрузки система глухо виснет с ошибкой 0x000000007B, о чём тут много раз писалось. Да, в таком случае, если нет возможности подсоединить флоппи, сидюк или выставить режим совместимости в BIOS - единственный выход это интегрировать драйвера AHCI непосредственно в сам дистрибутив.
Сначала попробовал интегрировать драйвера программой nLite, но после того как увидел, что она без спроса патчит файлы SYSSETUP.DLL, SYSBCLK.DLL из оригинального дистриба WindowsXP, убрал nLite нафиг, вернулся к оригинальному дистрибу и решил сделать интеграцию вручную. Так что не надо тут предлагать пользоваться nLite!
Иду пошагово, очень осторожно, согласно мануалу http://www.oszone.net/2782. Драйвера AHCI нашёл на прилагаемом к мамке компакт-диску, впрочем, они должны быть уже знакомы многим, в подкаталоге f6flpy-x86 (в скобках размер файла в байтах, для сравнения):
iaAHCIC.cat (9569)
iaAHCIC.inf (17810)
iaStorA.sys (1982400)
iaStorAC.cat (8585)
iaStorAC.inf (12054)
iaStorF.sys (27560)
Шаг 1 - шаг 4 (см. мануал), всё ок, драйвера успешно сжаты и скопированы в дистриб WindowsXP.
Переходим к правке файлов DOSNET.INF и TXTSETUP.SIF. В файл DOSNET.INF добавляю строчки
[FloppyFiles.3]:
d1,iaAHCIC.cat
d1,iaAHCIC.inf
d1,iaStorA.sys
d1,iaStorAC.cat
d1,iaStorAC.inf
d1,iaStorF.sys
[Files]
d1,iaAHCIC.cat
d1,iaAHCIC.inf
d1,iaStorA.sys
d1,iaStorAC.cat
d1,iaStorAC.inf
d1,iaStorF.sys
В файл TXTSETUP.SIF добавляем
[SourceDisksFiles]
iaahcic.cat = 1,,,,,,3_,4,1
iaahcic.inf = 1,,,,,,3_,4,1
iastora.sys = 1,,,,,,3_,4,1
iastorac.cat = 1,,,,,,3_,4,1
iastorac.inf = 1,,,,,,3_,4,1
iastorf.sys = 1,,,,,,3_,4,1
[HardwareIdsDatabase]
PCI\VEN_8086&DEV_2822&CC_0104="iaRAID"
PCI\VEN_8086&DEV_282A&CC_0104="iaRAID"
PCI\VEN_8086&DEV_8C02&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C82&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C83&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C02&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C82&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C83&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9D03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_A102&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_A103&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8D02&CC_0106="iaAHCI"
[SCSI.Load]
iaAHCI=iaStorA.sys,4
iaRAID=iaStorF.sys,4
В результате мне пишет при установке:
Установка Windows XP прекращена. Системе не удаётся найти требуемый файл: iaStorA.sys. Нажмите F3 для перезагрузки.
Проверяю конфигурацию системы в FreeDOS. Запускаю ASTRA (как хорошо что она под досом работает). Нахожу параметры PCI/PNP, контроллер SATA имеет VEN_8086&DEV_A102. Драйвер правильный. При установке WindowsXP значит проводится анализ шины PCI/PNP, находится строчка PCI\VEN_8086&DEV_A102&CC_0106="iaAHCI", которая поидее должна нас отправить в [SCSI.Load] на загрузку драйвера iaStorA.sys. Но не идёт. Ложу в дистрибутив запакованные файлы IASTORA.SY_, распакованные iastora.sys, один фиг, при попытке запуска программы установки - установщик WindowsXP не хочет подцеплять этот драйвер, жёсткий диск не виден.
Вот тут какая закавыка виднеется.
1. Для работы SATA надо указать два файла (iastora.sys и iastorf.sys), а у меня в строчке [SCSI.Load] указан один. Как их туда оба указать-то?
2. Не мытьём так катаньем. Внаглую подставляю старый файл iastor.sys из дистриба WindowsXP (но там нету VEN_8086&DEV_A102 !). Система затыкается на файле iaStorF.sys, пишет что файл повреждён. Но ведь на него нет ссылок, строчка iaRAID не срабатывает (кажется).
В-общем, запурхался я тут с этой интеграцией. У кого есть дельные советы, поделитесь плиз
На новый комп надо установить Windows XP (для сервисных целей). Системная плата GA-H110M-S2HP, проц Intel Core i5, память DDR4. Сидюка нет. Только жёсткий диск, который, впрочем, можно снимать и подсоединять к другому работающему компу. На диске стоит работающая FreeDOS с разными утилитами и Volcov Commander. На диске имеется дистрибутив WindowsXP, находится в подкаталоге диска C:, как говорится набирай winnt.exe и вперёд. То есть у нас есть ТОЛЬКО жёсткий диск и больше ничего.
Но не тут то было! BIOS системной платы не даёт возможности отключить режим AHCI, видимо теперь все такие биосы пошли. В дистрибутиве WindowsXP драйвера AHCI нету, поэтому ясно-понятно, после первичного копирования файлов с каталога-дистрибутива и первой же перезагрузки система глухо виснет с ошибкой 0x000000007B, о чём тут много раз писалось. Да, в таком случае, если нет возможности подсоединить флоппи, сидюк или выставить режим совместимости в BIOS - единственный выход это интегрировать драйвера AHCI непосредственно в сам дистрибутив.
Сначала попробовал интегрировать драйвера программой nLite, но после того как увидел, что она без спроса патчит файлы SYSSETUP.DLL, SYSBCLK.DLL из оригинального дистриба WindowsXP, убрал nLite нафиг, вернулся к оригинальному дистрибу и решил сделать интеграцию вручную. Так что не надо тут предлагать пользоваться nLite!
Иду пошагово, очень осторожно, согласно мануалу http://www.oszone.net/2782. Драйвера AHCI нашёл на прилагаемом к мамке компакт-диску, впрочем, они должны быть уже знакомы многим, в подкаталоге f6flpy-x86 (в скобках размер файла в байтах, для сравнения):
iaAHCIC.cat (9569)
iaAHCIC.inf (17810)
iaStorA.sys (1982400)
iaStorAC.cat (8585)
iaStorAC.inf (12054)
iaStorF.sys (27560)
Шаг 1 - шаг 4 (см. мануал), всё ок, драйвера успешно сжаты и скопированы в дистриб WindowsXP.
Переходим к правке файлов DOSNET.INF и TXTSETUP.SIF. В файл DOSNET.INF добавляю строчки
[FloppyFiles.3]:
d1,iaAHCIC.cat
d1,iaAHCIC.inf
d1,iaStorA.sys
d1,iaStorAC.cat
d1,iaStorAC.inf
d1,iaStorF.sys
[Files]
d1,iaAHCIC.cat
d1,iaAHCIC.inf
d1,iaStorA.sys
d1,iaStorAC.cat
d1,iaStorAC.inf
d1,iaStorF.sys
В файл TXTSETUP.SIF добавляем
[SourceDisksFiles]
iaahcic.cat = 1,,,,,,3_,4,1
iaahcic.inf = 1,,,,,,3_,4,1
iastora.sys = 1,,,,,,3_,4,1
iastorac.cat = 1,,,,,,3_,4,1
iastorac.inf = 1,,,,,,3_,4,1
iastorf.sys = 1,,,,,,3_,4,1
[HardwareIdsDatabase]
PCI\VEN_8086&DEV_2822&CC_0104="iaRAID"
PCI\VEN_8086&DEV_282A&CC_0104="iaRAID"
PCI\VEN_8086&DEV_8C02&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C82&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8C83&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C02&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C82&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9C83&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_9D03&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_A102&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_A103&CC_0106="iaAHCI"
PCI\VEN_8086&DEV_8D02&CC_0106="iaAHCI"
[SCSI.Load]
iaAHCI=iaStorA.sys,4
iaRAID=iaStorF.sys,4
В результате мне пишет при установке:
Установка Windows XP прекращена. Системе не удаётся найти требуемый файл: iaStorA.sys. Нажмите F3 для перезагрузки.
Проверяю конфигурацию системы в FreeDOS. Запускаю ASTRA (как хорошо что она под досом работает). Нахожу параметры PCI/PNP, контроллер SATA имеет VEN_8086&DEV_A102. Драйвер правильный. При установке WindowsXP значит проводится анализ шины PCI/PNP, находится строчка PCI\VEN_8086&DEV_A102&CC_0106="iaAHCI", которая поидее должна нас отправить в [SCSI.Load] на загрузку драйвера iaStorA.sys. Но не идёт. Ложу в дистрибутив запакованные файлы IASTORA.SY_, распакованные iastora.sys, один фиг, при попытке запуска программы установки - установщик WindowsXP не хочет подцеплять этот драйвер, жёсткий диск не виден.
Вот тут какая закавыка виднеется.
1. Для работы SATA надо указать два файла (iastora.sys и iastorf.sys), а у меня в строчке [SCSI.Load] указан один. Как их туда оба указать-то?
2. Не мытьём так катаньем. Внаглую подставляю старый файл iastor.sys из дистриба WindowsXP (но там нету VEN_8086&DEV_A102 !). Система затыкается на файле iaStorF.sys, пишет что файл повреждён. Но ведь на него нет ссылок, строчка iaRAID не срабатывает (кажется).
В-общем, запурхался я тут с этой интеграцией. У кого есть дельные советы, поделитесь плиз