|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|
Переход с флешки на загрузку с HDD08.05.2016, 15:46. Показов 1766. Ответов 27
Метки нет (Все метки)
Пишу бутсектор флешки, почти всё готово, осталась одна маленькая неприятность.
У юзера должна быть возможность выйти из загрузчика и загрузиться в "нормальном" режиме с дефолтного HDD, но вот номер этого HDD для int 13h неизвестен, ибо 80h биос всегда оставляет за флешкой, а по остальным номерам происходит либо опять загрузка с флешки, либо ошибка. В чём может быть проблема и какой указывать верный номер диска в таком случае? Может где-то в памяти лежит таблица с номерами дисков?
0
|
|
| 08.05.2016, 15:46 | |
|
Ответы с готовыми решениями:
27
Как сделать загрузку с флешки Реализовать загрузку с флешки, а не через HDD При установке Win 7 не видит hdd и флешки тоже, Asrock g41c-vs, hdd wd 3200av js |
|
Эксперт Hardware
|
||
| 08.05.2016, 16:04 | ||
|
Передавай управление сразу в MBR и всё. Он сам разберётся с какого раздела грузиться. Бутсектор твой можно посмотреть?
0
|
||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|
| 08.05.2016, 17:12 [ТС] | |
|
Ну я не настолько идиот, чтобы делать ребут, поэтому и пытаюсь считать новую MBR, предварительно самопереместившись вниз, только вот не могу понять, как заставить её считаться именно с дефолтного HDD, а не вновь с флешки?? BIOS назначает номера дискам только ему ведомым образом.
Смотреть там не на что особо, так, просто картинка выводится, первые шаги так сказать. Когда доделаю обязательно выложу вместе с графическим редактором. Добавлено через 35 минут Вот сейчас например успешно сработала загрузка с диска 81h в режиме LBA, но всегда ли оно так будет на всех компах? Т.е. диск 80h после втыкания флешки и загрузки с неё всегда становится диском 81h ?
0
|
|
|
Эксперт Hardware
|
||
| 08.05.2016, 17:18 | ||
|
Для INT-13h номера 80h-81h и т.д. должны быть закреплены только за HDD. Ищи глюк у себя в коде.. Как вариант, можно организовать поиск или таблицы разделов, или сигнатуры 55AA перебирая все диски. Тогда точно не ошибёшься.
0
|
||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|
| 08.05.2016, 17:20 [ТС] | |
|
Никаких глюков там нет, код заработал. 80h всегда закреплено за загрузочным устройством, все остальные после этого перенумеровываются биосом только ему одному известным алгоритмом. В моём случае мне повезло, и HDD0 стал 81h, весь вопрос - повезёт ли так на других компах?
0
|
|
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|
| 08.05.2016, 17:32 [ТС] | |
|
А что здесь неопределенного? Не надо из меня делать полного нуба, который не понимает, что несёт.
Когда в комп воткнута флешка, и с неё грузятся, то она всегда будет иметь номер 80h, как загрузочное устройство. Если бы её не было, то 80h имел бы HDD, но теперь все остальные диски перенумерованы.
0
|
|
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||||||
| 08.05.2016, 19:01 [ТС] | ||||||
|
Ну вот, как и обещал, если кому интересно.
Сам бутсектор выполняет чисто развлекательную функцию - при загрузке выводит картинку, нарисованную пользователем в графическом редакторе (прилагается). По нажатию пробела - переход на загрузку с HDD. Код бутсектора уже вшит в графический редактор, никакие дополнительные файлы для его работы не нужны (правда, нужны админ. права).
0
|
||||||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
||
| 10.05.2016, 15:10 | ||
|
Добавлено через 3 минуты Кстати, понятие HDD в BIOS'е несколько шире. Если будет торчать еще 1 флешка (помимо загрузочной) с валидный MBR, то BIOS тоже ей выделит какой-то номер 0x81...
0
|
||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|||
| 10.05.2016, 15:12 [ТС] | |||
|
Добавлено через 1 минуту
0
|
|||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
|||
| 10.05.2016, 15:14 | |||
|
Добавлено через 58 секунд
0
|
|||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||
| 10.05.2016, 15:15 [ТС] | ||
|
0
|
||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
|||
| 10.05.2016, 15:18 | |||
|
Поверь, нету никакого правила, чтобы самое часто загружаемое устройство получало какой-то определенный номер. Я вообще крайне сомневаюсь, что биос ведет такую статистику.
Добавлено через 2 минуты
0
|
|||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||
| 10.05.2016, 15:18 [ТС] | ||
|
Вы можете попробовать мою программу, если по нажатию пробела у вас пойдёт загрузка с дефолтного HDD - значит тоже 81h.
0
|
||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
|||
| 10.05.2016, 15:25 | |||
|
Добавлено через 2 минуты
0
|
|||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||
| 10.05.2016, 15:25 [ТС] | ||
|
0
|
||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
||
| 10.05.2016, 15:34 | ||
|
Если ты хочешь чтобы грузилось второе устройство из списка (не обязательно HDD), то вызови int 18h. Добавлено через 1 минуту Вообще читай BIOS Boot Specification глава 6.
0
|
||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||
| 10.05.2016, 15:42 [ТС] | ||
|
Если при нажатии ESC бутсписок сдвигается так, что на 1 место встает флешка, а на второе - то, с чего раньше грузились, то это именно то, что нужно. А что даёт Int 18h? В документации описано как-то очень туманно про какой-то бейсик.
0
|
||
|
1378 / 522 / 72
Регистрация: 21.07.2015
Сообщений: 1,308
|
||||
| 10.05.2016, 15:56 | ||||
|
Добавлено через 2 минуты
0
|
||||
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
||
| 10.05.2016, 16:01 [ТС] | ||
|
0
|
||
| 10.05.2016, 16:01 | |
|
Помогаю со студенческими работами здесь
20
Установить загрузку в БИОС ноутбука ASUS с флешки материнка asus a7v333-x поддерживает ли загрузку винды с флешки? Как начать загрузку с флешки в биосе AMI v02.54 В БИОС зайти не могу что бы сделать загрузку с Флешки Ноутбук Asus F553MA в биос не могу выставить загрузку с флешки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
в-строка - входное арифметическое выражение в инфиксной(обычной). . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|