DOSEMU, dosbox, защищенный режим

Модератор: Модераторы разделов

frp
Сообщения: 1445
ОС: Debian Squeeze

DOSEMU, dosbox, защищенный режим

Сообщение frp »

Есть простенькая программка, которая переводит процессор в защищенный режим, выводит текст "Protected Mode", переходит обратно в реальный режим, выводит "Real mode" и завершается. Исходники, объектные файлы и бинарники в прикрепленном файле. Компилировать коммандой nasm -f obj pm_nasm.asm, линковать любым линкером, поддерживающим DOS и формат OMF (я использовал MS LINK.EXE).

Так вот, эта самая программа отлично запускается в dosbox, но убивает dosemu. dosemu при падении выводит на консоль текст:

Код: Выделить всё

ERROR: general protection at 0x2ad0: f


Программа на реальной машине или в настоящей виртуалке пока не тестировалась, так что, возможно, это баг программы. При попытке отладки при помощи Turbo Debugger, отладчик отваливается сразу после переключения в защищенный режим (и в dosbox, и в dosemu).

В чем проблема?

PS. Переход в защищенный режим и в реальный режим осуществляется способом i386, а не i286.

PPS. Огромное спасибо модератором, что сейчас можно загружать архивы 7z, не меняя расширение.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо сказали:
frp
Сообщения: 1445
ОС: Debian Squeeze

Re: DOSEMU, dosbox, защищенный режим

Сообщение frp »

Разобрался - просто dosemu не умеет обрабатывать не-DPMI приложения защищенного режима (из-за использования режима виртуального 8086).
Спасибо сказали: