MBR SLIC Loader 0.63 by DDDC Контрольные суммы файлов: f52b81d490f39cd1643da9be3896b3cc *mbr_slic_v063.exe Это эмулятор SLIC а не полноценный активатор, поэтому после его применения НЕОБХОДИМО установить КЛЮЧ (для вашей редакции Windows) и СЕРТИФИКАТ (соответствующий эмулируемуму SLIC-у) !!! Кратко о преимуществах эмулятора: - На работу эмулятора НЕ влияет "антипиратское" "обновление" KB971033 - Очень компактный код: размер инсталлятора менее 60кб, размер полезного кода - менее 1.5 килобайт, - Не нуждается в наличии или отсутствии дополнительного скрытого дискового раздела, - Не изменяет ни одного байта в логических дисках (т.е. не прописывается в системный реестр, не меняет код виндового загрузчика, не меняет системных файлов, не добавляет новых файлов и т.д.), - Самая безопасная эмуляция, по принципу действия максимально приближенная к эффекту от перепрошивки BIOS-а, т.к. модификация памяти и прописка SLIC-а происходит сразу после передачи управления от BIOS-а к загрузчику жесткого диска, т.е. ДО старта операционной системы и, естественно, без ее участия, - Эмуляция работает на всех вариантах комбинаций ОС (т.е. на компе могут быть установлены одновременно любые ОС от MS, от DOS до W7), - Для нескольких ОС на одном компе инсталляция кода производится однократно (т.е. нет необходимости инсталляции для каждой системы!), эмуляция slic-а становится доступной одновременно для всех имеющихся ОС, - Активация не слетает при выходе из гибернейта, - Эмуляция SLIC-а может временно отключаться (нажатием Backspace в момент перезагрузки, во время следующей загрузки эмуляция снова включается автоматически), - Возможность подгрузки SLIC-ов любых вендоров из внешних файлов (в сам инсталлятор встроен slic 2.1 от Asus) Не забываем, что инсталляция эмулятора должна производиться в режиме командной строки (предварительно запускаем CMD, FAR и т.п.) строго с админовскими правами с вЫключенным UAC (в тех системах, где он есть), после успешной инсталляции можно снова включить UAC, если это надо. Перед инсталляцией рекомендуется сделать резервную копию секторов (опция /backup) для соответствующего диска и сохранить в надежном месте полученный резервные файлы. Краткое описание принципа работы эмулятора: Инсталлятор записывает копию MBR и код эмулятора в сектора жесткого диска с номерами 38,39,40 (предыдущие версии эмулятора использовали 60,61,62). Данные три сектора в настоящее время не используются _ни_одной_микрософтовской_системой_, что на 100% гарантирует отсутствие глюков с активатором, если юзер на данном компе использует только MS системы. Для GRUB-а и прочих ему подобных загрузчиков твердую гарантию дать не могу, но у тех, что я видел, эти три сектора также свободны. Далее, активатором в MBR прописывается код, инициализирующий загрузку в память трех вышеуказанных секторов. Происходит модификация памяти (прописка SLIC-а) с последующей передачей управления коду из сохраненной MBR. Как легко заметить, модификация памяти происходит сразу после передачи управления от BIOS-а к загрузчику жесткого диска, то есть ДО загрузки кода системы (включая интересующие нас W7 и Vista). Для тестовых целей предусмотрена возможность пропуска модификации памяти при перезагрузке системы. Для этого необходимо нажать клавишу Backspace после теста оборудования, подтверждением будет короткий звуковой сигнал. В этом случае в память НЕ будет прописан Slic, и все тестовые программы сообщат об его отсутствии, а W7 сообщит о том, что она не активирована. При следующей перезагрузке (без нажатия Backspace) все восстанавливается как было (т.е. повторная инсталляция активатора не нужна!). (Желающие могут поэкспериментировать, вводя в гибернейт систему, а потом вновь загружаясь с включенным/отключенным slic-ом). Изменения в новой версии: *добавлена проверка на наличие на диске GPT (GUID Partition Table). Проверка актуальна для 64-хбитных систем, которые могут использовать GPT. При наличии GPT инсталляция эмулятора не производится, так как эмулятор не поддерживает GPT. *добавлена опция -vt Внимание! Данную опцию можно использовать только при эмуляции slic-а в виртуальных машинах! Применять опцию в физических машинах категорически не рекомендуется! Целью внедрения опции является попытка избежать возможного зависания "гостевой" системы при загрузке с включенной аппаратной виртуализацией процессора (Vanderpool Technology) в настройках виртуальной машины. Данная опция - тестовая! Работоспособность не гарантируется! Принимаются отзывы по ее работе с целью либо использования в следующих версиях эмулятора, либо полном отказе от нее. Опции командной строки: -hdd0 .. -hdd7 - номер жесткого диска, с которого производится загрузка (так как не у всех загрузка компа происходит с 0-го устройства), уточняется в "Disk Management" -slic="Имя файла содержащего slic" - выбор slic-а из внешнего файла, файл размером 374 байта, содержащий slic от производителя оборудования, инсталлятор уже содержит внутри себя slic v2.1 для Asus -sector="номер сектора от 2 до 61" - номер сектора, где будет размещаться резервная копия MBR, в след. двух секторах - код эмуляции -vmware - оптимизация для запуска в виртуальной машине VMware (для VirtualPC и VirtualBox дополнительные опции указывать не надо!) -intel - размещение эмулируемой таблицы slic в нижних адресах памяти (работает только на платформах Intel) -rsdtoemx и -xsdtoemx - опции для перфекционистов. Оптимизируют размещение slic-а для тех компов, где в таблице ACPI есть ссылки на OEMX. Если все нормально работает, то эти опции можно не рассматривать, если в ACPI нет ссылок на OEMX, то это вообще не нужно рассматривать. -norsdt и -noxsdt - отмена прописки SLIC-а в таблицу RSDT или XSDT, используется для оптимизации нестандартных случаев. -segment=Адрес сегмента памяти, предназначен для расширения опции -intel -register=Номер регистра чипсета, предназначен для расширения опции -intel -oemslp1="сигнатура вендора", например "ASUS_FLASH", "Compaq", "AcerSystem", "Gateway" и т.д., по-умолчанию встроена сигнатура "Hewlett". Данная опция предназначена только для OEM SLP активации операционных систем Windows 2000/XP и Server2003 (для других систем она не нужна !), работает только совместно с опциями -intel и -segment= (см.ниже). Вышеперечисленные вводятся в командной строке через пробел в любой последовательности /backup - сохранение первых 63 секторов выбранного жесткого диска в файл (рекомендуется выполнить перед (!) инсталляцией) /fixmbr - перезапись загрузочного кода MBR, код полностью соответствует загрузочному коду W7 (т.е. аналог bootrec /fixmbr) /install - запись кода в MBR, сохранение оригинального MBR в резервном секторе и запись кода эмуляции в двух следующих секторах /uninstall - восстановление MBR из резервного сектора, заполнение трех секторов нулями Для данных опций используется только одна из четырех В случае явной ошибки эмуляции SLIC-а, при перезагрузке будет выдано сообшение error и дальнейшая загрузка остановится. В этом случае, при следующей перезагрузке нажмите Backspace, загрузите ОС, деинсталлируйте эмулятор и повторите инсталляцию с другими параметрами. После инсталляции и перезагрузки проверяем успешную/неуспешную эмуляцию SLIC-а при помощи проги SLIC_ToolKit (ссылка ниже). Если SLIC нормально эмулировался, то решайте возможные проблемы активации ОС правильным подбором ключа/сертификата. Если комп загрузился, но SLIC не эмулировался, то сделайте прогой RW (ссылка ниже) дампы ACPI c инсталлированным и деинсталлированным MBR_Slic (т.е. ДВА дампа) и пришлите мне в личку. Для этого запускаете RW, далее выбираете вкладку Access->ACPI Tables, затем нажимаете Ctrl+F2 и сохраняете. По поводу опций -segment= и -register= Опции введены для тех крайне редких случаев, когда предыдущие версии не сработали с ключом -intel Для краткости, покажу использование этих опций на нескольких примерах. Наилучшего результата можно добиться, если найти (например, при помощи проги RW) в диапазоне памяти 000F0000 - 000FFFFF свободный участок размером ровно 1 килобайт, выравненный на границу параграфа (ноль в конце адреса с учетом небольшого запаса). Свободный - это значит заполненный 00 или FF. Допустим, свободный килобайт начинается с адреса 000FD210. Отбрасываем последний 0 в адресе. таким образом получаем сегментный адрес FD21. Для диапазона адресов (000F0000 - 000FFFFF) номер регистра практически для всех современных интеловских чипов = 90 (Желающие могут почитать документацию по регистрам чипсетов Intel). Далее в командной строке указываем следующее: mbr_slic_v0621.exe /install -intel -segment=FD21 -register=90 Перезагружаем комп, проверяем наличие SLIC-а. Возможно, что получится не с первого раза. Свободное пространство зависит только от версии BIOS-а. В-общем, всё это хоть и сложно, но реально может пригодиться только в 1% случаев (а может и меньше), когда не работает ни инсталляция по умолчанию, ни инсталляция с ключем -intel без дополнительных segment/register. Зато, в случае успеха, получите еще одно преимущество данного эмулятора. Дело в том, что ни операционка, ни приложения не используют эти адреса для записи данных (гарантия от "неполного слика" и т.п.). Также можно поэкспериментировать со следующими вариантами (на многих компах одна или несколько из этих областей памяти свободны): mbr_slic_v0621.exe /install -intel -segment=EC00 -register=96 mbr_slic_v0621.exe /install -intel -segment=E800 -register=96 mbr_slic_v0621.exe /install -intel -segment=E400 -register=95 mbr_slic_v0621.exe /install -intel -segment=E000 -register=95 mbr_slic_v0621.exe /install -intel -segment=DC00 -register=94 mbr_slic_v0621.exe /install -intel -segment=D800 -register=94 mbr_slic_v0621.exe /install -intel -segment=D400 -register=93 mbr_slic_v0621.exe /install -intel -segment=D000 -register=93 Если произойдет зависание при перезагрузке или сообщение об ошибке, то перезагрузитесь с нажатым Backspace,деинсталлируйте эмулятор и затем повторите инсталляцию с другим набором параметров. Пример, демонстрирующий инсталляцию эмулятора с расширенным набором параметров на ноуте Asus A8le: mbr_slic_v0621.exe /install -hdd0 -intel -segment=FD21 -register=90 -xsdtoemx -norsdt -sector=2 Опция -oemslp1= работает только совместно с опциями -intel и -segment=, причем адрес, указанный в качестве сегмента должен попадать в диапазон адресов, опустимый для конкретной сигнатуры.