写了个MBR,却不能用,求指教解决方法

写了个MBR,却不能用,求指教
写了个最基本的MBR,功能是把程序自身拷贝到0600然后跳转到061D执行下一条语句,并且将写入到0/0/3扇的程序读取到
7C00后,跳转到7c00处执行原MBR。
我使用nasm boot.asm -o boot.bin指令汇编的程序
我在XP虚拟机中用winhex将原MBR写到0/0/3扇,后将boot.bin写入到0/0/1扇中,可是程序并不像我想象中的那样,可以继续启动XP,求指正。
下面是源码
Assembly code

CLI
XOR AX,AX
MOV SS,AX
MOV SP,7C00
MOV SI,SP
PUSH AX
POP ES
PUSH AX
POP DS
STI
CLD
MOV DI,0600
MOV CX,0100
REPNZ
MOVSW
JMP 0000:061D
mov ax,0
mov es,ax
mov bx,7c00h
mov ax,0201h
mov cx,1
mov dl,80h
int 13
jmp 0000:7c00
times 510-($-$$) db 0
dw 0xaa55



------解决方案--------------------
要写到第一个扇区里面才可以哦
------解决方案--------------------
将分区表信息也加进自己的这个程序里再试试