2017-02-22 1 views
0

J'essaie de construire mon propre système d'exploitation, vous le savez, pour le plaisir ... Je suis sur TRES PREMIER ETAGE ... J'essaie maintenant de faire une sorte de disquette d'installation, qui se copie dans le secteur d'amorçage du disque dur principal.OS bâtiment int 13h ah = 3 (hex) cf allume et ah devient B (hex) ou 12 (dec)

c'est ma procédure d'installation (je me sers nasm):

install: 
MOV ax,0201h 
mov cx,0001h ;; my drive destinated boot sector is written on the second sector of the floppy 
mov dx,0000h 
mov bx, buffWrt 
int 13h ;;jc doesnt turn on here 
jc errorIns 
mov ax,0303h 
xor cx,cx 
mov dx,0080h 
mov bx, buffWrt 
int 13h 
jc errorIns1;; jc turn on and ah become B 
stopped: 
mov si, insMsg 
call print 
ret 

J'ai lu en ligne que lorsque son tour de B cela signifie somthing comme « mauvais cylindre de disque fixe ». Qu'est-ce que ça veut dire? Btw je émule mon os sur une machine virtuelle Oracle avec memmory 64 mb et un disque dur virtuel de 2 gig.

merci d'avance! Commence à partir de C = 0, H = 0, S = 1

Répondre

2

CHS addressing

xor cx, cx définit le secteur sur 0 qui n'est pas un numéro de secteur valide.
Sur les mêmes lignes, mov cx, 1 lit le premier secteur de la disquette.

+0

Merci, je ne le savais pas! –