@Kp18
Занимаюсь программированием, как хобби

В чем может быть проблема неработоспособности программы(fasm)?

Имеется код:
boot.asm:
use16
org 7c00h
start:
        cli
        cld
        mov ax, 0
        mov ds, ax
        mov ss, ax
        mov es, ax

        mov sp, start

        mov [disk_load], dl
        sti

        mov si,message
        call writemess
func_load:
        mov dl, [disk_load]
        mov bx,8000h
        mov dh,0
        mov ch, 0
        mov cl,2
        mov al,1
        int 13h

        jmp 0000:8000h
writemess:
        mov ah,0eh
puts_loop:
        lodsb
        test al,al
        jz puts_loop_exit
        int 10h
        jmp puts_loop
puts_loop_exit:
        ret

        disk_load db 0
        message db 'Boot loaded.'

core.asm:
use16
org 8000h
start:
        mov al,00h
        mov ah,05h
        int 10h

        mov ah,00h
        mov al,03h
        int 10h

        mov si,ready
        call writemess
main:
        jmp $
writemess:
        mov ah,0eh
puts_loop:
        lodsb
        test al,al
        jz puts_loop_exit
        int 10h
        jmp puts_loop
puts_loop_exit:
        ret

        ready db 'Core ready'

По сути код и несложный, но возможно в силу моей неопытности мог допустить незаметную для меня ошибку. Оба файла были скомпилированы и засунуты в нужные сектора загрузочного носителя программой dmde. После запуска высвечивается надпись выводимая первичным загрузчиком, однако далее к очистке экрана дело не идет.
  • Вопрос задан
  • 92 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы