Everything you can't fit into other forums
Posts 20 Joined: Fri Apr 15, 2011 6:12 pm
мой привет миру
; сборка :
; gcc -c -ffreestanding -o kernel.o bootsector.S
; ld -o kernel.bin --oformat binary -Ttext 0x0000 kernel.o
; cat kernel.bin > /dev/fd0
.code 16
.text
jmp kernel_entry
kernel_entry:
cli
movw $0x7c0, %ax
movw %ax, %ds
movw $0x1000,%sp
sti
movw $hello_msg, %si
print_string:
movb (%si),%al
cmpb $0x00, %al
je kernel_exit
movb $0x0e, %ah
xorw %bx, %bx
int $0x10
incw %si
jmp print_string
kernel_exit:
hlt
jmp kernel_exit
hello_msg:
.asciz "Hello World!!!"
boot_signature:
.word 0xaa55
Posts 3952 Joined: Wed Mar 08, 2006 6:25 pm
1. А зачем jmp kernel_entry ?
2. ds загрузили а про ss забыли ?
Posts 20 Joined: Fri Apr 15, 2011 6:12 pm
пардон я немного намудрил с регистрами
но всё работает
насчёт пункта 1 - это загоняет комп в бесконечный цикл. Это необязательно???
это приветствие работает как отдельная ОСь
так что приму к сведению все поправки.
Posts 3952 Joined: Wed Mar 08, 2006 6:25 pm
В бесконечный цикл загоняет
а вот в чём сакральный смысл ?
Posts 20 Joined: Fri Apr 15, 2011 6:12 pm
а если
kernel_exit:
hlt
тупо выключить проц
а?
Posts 988 Joined: Fri Jun 27, 2008 3:22 pm
Sat Apr 16, 2011 12:28 pm
Globalizer
Какое отношение данный
Hello World имеет к Колибри?
Globalizer wrote: это приветствие работает как отдельная ОСь
Этому примеру до ОСи очень далеко, скорее это самый первый шаг в изучении ОСдева.
Globalizer wrote: а если
kernel_exit:
hlt
тупо выключить проц
а?
А если немного почитать?
Posts 20 Joined: Fri Apr 15, 2011 6:12 pm
к колибри это не имеет никакого отношения.
Выделил сообщения в отдельную тему, хотя стоило бы грохнуть. Форум имеет отношение к Колибри и всем что вертится вокруг нее. Для начинающих кулхацкеров осеписателей есть другие ресурсы, где им будут безмерно рады.
Users browsing this forum: No registered users and 14 guests