Вопрос № 103788: Здравствуйте все, пишу загрузчик, очень хочется вывести строку но не выходит, помогите в чем проблема(tasm)
IDEAL
model tiny
codeseg
start:
xor ax,ax
cli
mov ax,cs
mov ss,ax
mov ds,ax
lea sp,[st...
Вопрос № 103.788
Здравствуйте все, пишу загрузчик, очень хочется вывести строку но не выходит, помогите в чем проблема(tasm)
Отправлен: 29.09.2007, 20:13
Вопрос задал: Evgeni_s (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Evgeni_s!
Ваша программа будет загружатся по адресу 0000:7С00h.
В строке 14 000D BE 001Cr lea si,[msg] регистр SI получает значение 001Ch вместо 7С1Сh, и Ваша программа будет пытатся вывести что-то с этого адреса.
Вам нужно дабовить директиву ORG 7C00h и заполнить еще основные структуры ( 4*16 байт и контрольный маркер 55 ААh, в конце сектора). Биос загрузив первые 512 байт и не найдя этих структур выведет сообщение "отсутствует файловая система" и не передаст управление Вашему коду.
Удачи Вам
--------- И только наступив на грабли мы приобретаем драгоценный опыт!