32 lines
377 B
NASM
32 lines
377 B
NASM
|
[ORG 0x7c00]
|
||
|
[BITS 16]
|
||
|
|
||
|
xor ax, ax
|
||
|
mov ds, ax
|
||
|
mov es, ax
|
||
|
mov ah, 0x42
|
||
|
mov si, addr_packet
|
||
|
int 0x13
|
||
|
jnc 0x8000
|
||
|
push 0xb800
|
||
|
pop es
|
||
|
xor di, di
|
||
|
mov si, string
|
||
|
mov cx, 10
|
||
|
mov ah, 0x7
|
||
|
err_print:
|
||
|
lodsb
|
||
|
stosw
|
||
|
loop err_print
|
||
|
hlt_loop:
|
||
|
hlt
|
||
|
jmp hlt_loop
|
||
|
|
||
|
string: db 'DISK ERROR'
|
||
|
|
||
|
addr_packet:
|
||
|
db 0x10, 0x00 ; size, reserved
|
||
|
dw 0x20 ; blocks
|
||
|
dd 0x8000 ; transfer buffer
|
||
|
dq 1 ; start block
|