OSDev
http://osdev.su/

Загрузка с CD :-(
http://osdev.su/viewtopic.php?f=6&t=137
Страница 1 из 2

Автор:  nop [ 27 сен 2007, 17:03 ]
Заголовок сообщения:  Загрузка с CD :-(

Парни, объясните, как загрузить свой код с CD, ведь сидюк это не флопик... Я в ступоре

Автор:  dinamyte [ 27 сен 2007, 17:16 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Поиск по форуму/вики никто не отменял.
Создание загрузочного компакт-диска

Автор:  nop [ 27 сен 2007, 17:23 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Я не об этом. При загрузке, загрузчик должен считать с диска своё тело и тело ядра оси в память.
С дискеты всё это копируется через ф-ции БИОСа, но сидюком-то так не порулишь...

Автор:  Himik [ 27 сен 2007, 18:04 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

NOP, все БИОСы умеют загружаться с СД как с дискеты. Просто запиши в загрузочный раздел СД свой образ дискеты.

Автор:  nop [ 28 сен 2007, 08:09 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Цитата:
NOP, все БИОСы умеют загружаться с СД как с дискеты. Просто запиши в загрузочный раздел СД свой образ дискеты.

Про это я знаю, я пока не оЛАМЕРел :) Но (если я не ошибаюсь) загружается только первый сектор, а дальше как хош так и грузи остальной код... Щас сорцы позырю, авось вникну...

Автор:  phantom-84 [ 28 сен 2007, 10:05 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Правильно, загружаются первые 512 байт образа, а остальные загружает твой загрузчик, находящийся в этих 512 байтах, используя традиционный сервис BIOS для дисков/дискет (в зависимости от того, что эмулируется). Считывать данные, обращаясь непосредственно к CD можно, но я не знаю как - посмотри исходники буткода для CD.

Автор:  Himik [ 28 сен 2007, 11:45 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

NOP, с дискеты тоже загружается только первый сектор, а остальные надо грузить с помощью стандартных функций BIOS.
Phantom-84, без эмуляции дискеты, СД читаеся как винчестер, только размер сектора там 2КБ. Я использую функцию Int 13h AH 42h.

Автор:  phantom-84 [ 28 сен 2007, 14:30 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Chizh, а возможность доступа к винту в этом случае остается, т.е., к примеру, будет ли 80h винтом, а 81h - CD? Ты не пробовал, можно ли работать с CD через int 13h/02h?

Автор:  Himik [ 28 сен 2007, 14:56 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

СД работает как один из винчестеров, но не вместо их. Хотя и существует такой специальный режим эмуляции ЖД, но он обычно не используется. Обычно у СД номер гораздо больше 80h, и он не является порядковым после последнего номера винчестера, а идёт с некоторым отрывом. Через int 13h/02h СД работает только в режиме эмуляции дискеты, но в обычном режиме - нет.

Автор:  whitequark [ 28 сен 2007, 15:20 ]
Заголовок сообщения:  Re: Загрузка с CD :-(

Phantom-84, у меня хард остается, хотя, конечно, это зависит от биоса.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/