мужики, я уже не знаю, куда идти, чё просить, 10 часов непрерывного гугления и расспросов на сосаче ничего не дали, в общем смотрите. вот два файла:
boot.asm
[BITS 16]
[ORG 0]
jmp 7c0h:start
start:
mov dh,0
mov ch,0
mov cl,2
mov al,1
mov ax,0x9000
mov es,ax
xor bx,bx
mov ah,2
int 13h
jmp 0x9000:0
ret
TIMES 510 - ($-$$) db 0
dw 0xaa55
incbin 'setup.o'
------------------------------------------------------
setup.asm
[BITS 16]
[ORG 0]
jmp 0x9000:start
start:
mov al,1
mov ah,0Eh
mov bh,0
int 10h
ret
выполняю:
nasm -o setup.o setup.asm
nasm -o my.img boot.asm
скармливаю всю хуйню bochs, а оно выдает
42081326444i[BIOS ] int13_diskette: read/write/verify: parameter out of range
42081353434i[CPU0 ] WARNING: HLT instruction with IF=0!
при этом, если я копирую изначальный загрузочный сектор(т.е 512 байт начиная с 7c0h:0) в 9000h:0, а потом делаю jmp 9000h:start bochs не жалуется, соответственно 9000h:0 свободен для записи, что не так? помогите блядь, 10 часов, 10 часов, я уже не человек