Загрузик операционной системы(с заглушкой вместо ОС)
.model tiny
.code
.286
org 7c00h
SECTOR_COUNT = 8
write_char macro char
push ax
mov ah, 0eh
mov al, char
int 10h
pop ax
endm
getch macro
write_char '?'
push ax
xor ah, ah
int 16h
pop ax
endm
start: write_char '1'
getch
mov si, 0
put_sec:inc si
xor ah, ah ;reset contorolers
int 16h
mov ah, 02h
mov al, 1
mov ch, 0
mov cl, 02h
mov dl, 80h
push cs
pop es
mov bx, 7c00h+200h
int 13h
jnc pred_print
write_char 'E'
cmp si, 4
jne put_sec
write_char 'H'
getch
pred_print:
write_char 0dh
write_char 0ah
write_char '-'
write_char '>'
push 0
pop es
mov bx, 7e00h
print: write_char es:[bx]
inc bx
cmp bx, 7e00h+33d
jb print
write_char '<'
write_char '-'
write_char 0dh
write_char 0ah
write_char 'j'
write_char 'm'
write_char 'p'
getch
push 0
push 7c00h+200h
retf
org 7c00h+200h-2h
dw 0AA55h
org 7c00h+200h
jmp short kernel
db "ABCDEFabcdef"
kernel: write_char 3
getch
hlt
jmp $
org 7c00h+200h*2-2h
dw 0FFFFh
org 7c00h+200h*2
db '<-'
end start
Внимание!!! В коде есть неиспользующиеся элементы , заготовленные на будующее.
Комментарии:
Нету комментариев для вывода...