Доступ к несуществующему сегменту в эмуляции Bochs
Я писал загрузчик, и когда я запускаю его с помощью Bochs, я получаю сообщение об ошибке "Доступ к несуществующему сегменту". Я не могу найти проблему. Мой код выглядит следующим образом:
[bits 16]
[org 0x7c00]
%include 'include\disp.asm'
start:
xor ax, ax
mov ds, ax
mov es, ax
mov bx, 0x8000
mov ss, bx
mov sp, ax
pushf
stc
;reset floppy to point to chs - 0/0/1 or LBA 1
reset_floppy:
mov ah, 00
int 13h
floppy_read_sector:
xor ax, ax
mov es, ax ;load the second sector to the address pointed
mov bx, 0x1000 ;by [es:bx] - 0x0000:0x1000
mov ah, 02 ;load the sub-function 2 of INT 13 to read sectors
mov al, 01 ;number of sectors to read
mov ch, 00
mov cl, 02 ;sector to start read from
mov dh, 00 ;head number
int 13h
jc .floppy_read_sector_error
popf
;jmp 0x0:0x1000 ;jump to address 0x1000 where we have loaded the second sector
;mov si, testd
;call ind_printf
cli
hlt
.floppy_read_sector_error:
;mov si, sector_read_error
;call ind_printf
cli
hlt
data:
sector_read_error db 'cannot read sector 0/0/2 from disk!',0x0A,0x0D,0
testd db 'test',0
times 510-($-$$) db 0
dw 0xAA55
Пожалуйста, помогите мне выйти из этого.