dialmak
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Death_INN Цитата: При загрузке grub4dos с 0x80 с любого раздела, первый сектор MBR диска копируется в память по адресу (md)0x40+1 | Ну вот. А ты говорил идентичны. Если я в памяти что-то поменял, то результат chainloader (0x80)+1 и сhainloader (md)0x40+1 будет разный. По доп. разделу. Задача считать разделы и грузить все (меняя активность например в 1BEh, 1CEh, 1DEh и 1EEh или через makeactive) не привязываясь к загрузчику. Но исключить доп. раздел и несуществующие. А если быть точным хочу сделать стандартное меню для загрузки любого раздела любого диска. Что то типа продвинутого MBR от LEXa (или микро BootIt - без раздела бута). Логика такая. 1. определить сколько дисков 2. выдать меню для изм. приоритетного диска 3. после выбора приоритетного диска выдать меню на основные разделы (на те что есть в наличии, кроме доп. раздела) 4. изменить активность и грузануть mbr выбранного диска (или на крайняк PBR раздела) Понимаю, что активность вроде ни к чему в данном случае, можно обойтись и PBR, но хочется, "как книжка пишет", не стОит воевать с глупыми утилитами, для которых это важно. Добавлено: Стоп. Кажется дошло. То есть пока я не грузился с данного HDD, то MBR в памяти не будет? А только с уже загруженного? Плохо. Добавлено: Проверил Kaspersky Rescue Disk ещё на 3 компах уже на NTFS. Как и ожидал - работает. Добавил в меню поиск маркерного файла liveusb. Если его нет - будет писать MARKER FILE liveusb NOT FOUND. Проверял на флешке (MBR - UltraISO и NT6x, PBR bootmgr c изм. имени на grldr), на HDD-USB возможно не сработает (не пробовал) Код: title Kaspersky Rescue Disk find --set-root /liveusb || pause MARKER FILE liveusb NOT FOUND map /rescue/rescue.iso (0xff) map --hook root (0xff) chainloader (0xff) | | Всего записей: 14007 | Зарегистр. 27-04-2013 | Отправлено: 11:46 26-06-2011 | Исправлено: dialmak, 13:35 26-06-2011 |
|