Много букв, лень вникать в код. Отбрось все лишнее, а когда заработает, сделаешь универсальным, т.е. как положено. Порядок примерно такой: 1)...
Видимо, потому что 01011000b неравно 80h :)
Если _IDTregister содержит нулевой (минимальный) лимит, то это может быть сделано для явной генерации трипл фолт при возникновении NMI в PM.
Это может быть просто чистый бинарный файл размером 16x63xNx512 байт, где N - нужное количество цилиндров. Его разметку можно выполнить...
1. А вообще смотри описание по каждой конкретной команде. 2. ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14 ... ata0-master: type=disk,...
Так это нормально. Ты покажи, что Setup изначально или в процессе многократных переключений (выполняя начальную загрузку файлов) работает в PM с...
Нажал кнопку питания, когда на экране отображалось меню GRUB'а (лог бокса): 00551070000p[WGUI ] >>PANIC<< POWER button turned off....
В том-то и дело, что было бы более надежным реализовать первичный пользовательский интерфейс в реальном режиме, а в PM переключаться только для...
Ты не понял. В PM (до определенной поры) вообще нужно работать только с запрещенными прерываниями. А ты в PM их запрещаешь, т.е. видимо до этого...
Я PIC инициализирую так: mov al,00010001b out 20h,al out 0A0h,al mov al,IRQBASE out 21h,al mov...
Может и лишнее, но теоретически старое состояние данных BIOS и новое состояние аппаратуры могут привести к описанным эффектам. Если ты ничего...
См. описание соответствующих полей BDA. Если ты в PM отслеживал удерживание клавиш Alt, Shift, Ctrl, отрази это в статусе. Если ты изменял...
Надеюсь, при входе в PM ты не делал переинициализацию клавиатурного контроллера (что в принципе делать нужно, но видимо не в данном случае)....
Тебе перевести что ли? Читаешь из регистра данных при DRQ=0.
Не понятно, восстанавливаешь ли при возврате в RM базовый вектор (8), обработчик BIOS. Также непонятно, зачем в клавиатурном обработчике слать EOI...
Сохраняй/настраивай/восстанавливай используемые сегментные регистры.
Видимо, используешь некорректный селектор.
"32-разрядные инструкции" можешь, но компилируй под use16.
Да, забыл сказать, что сложность первой разметки вызвана тем, что я перемещаемый код обычно размещаю под верхней границей доступной области MBR.
Я думал, мы не обсуждаем код... Твои 7B00h, 7D00h меня пугают. Действительно на ровном месте столько неоднозначных вещей понаделал... Если чЁ, то...
Имена участников (разделяйте запятой).