Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для начинающих > Записать загрузчик


Автор: BIV 27.4.2013, 16:25
Всем доброе время суток!
Написал для своего начала загрузчик на FASM

Код

USE16
org 0x7C00
start:
xor eax, eax
xor esi, esi
xor edi, edi
mov ds, ax
mov es, ax
mov bp, 0x7c00
mov ax, 0x0003 
int 0x10
mov si, msg_Load
call print_string_16
jmp 0x0000:0x8000
print_string_16: 
pusha
mov ah, 0x0E 
.repeat:
lodsb 
cmp al, 0
je .done 
int 0x10 
jmp short .repeat
.done:
popa
ret

msg_Load db "Hello World!", 0


mov ah,0
int 16h

times 510-$+$$ db 0

sign dw 0xAA55

times 512-$+$$ db 0


Скомпилировалось нормально, ошибок нет. Теперь возник вопрос как я могу его запустить?
Пробовал делать все так как написано на одном из сайтов:
"в WinImage создаю дискету на 1.44, далее выбираю опцию boot sector properties и там открываю свой .bin файл. сохраняю как ima образ и открываю его в CDBurnerXP. Далее - диск - загрузочные опции - сделать диск загрузочным - указываю путь к ima и тип эмуляции ставлю 1.44. сохраняю как ISO образ"
Запускаю ISO на виртуалке VMware player, вижу черный экран с курсором наверху.
Сейчас пытаюсь как-то записать файл в загрузочный сектор флешки, но пока не могу найти подходящие программы

Как мне все же запустить загрузчик и увидеть на экране "Hello World!"?

Автор: DarthTon 16.5.2013, 10:47
Скачайте эмулятор http://bochs.sourceforge.net/. Там можно подключить полученный .bin файл как образ дискеты, и загрузиться с неё.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)