لیلا_الف
پنج شنبه 13 بهمن 1384, 19:58 عصر
سلام. چندی پیش این سوال رو پرسیدم یکی از دوستان کمک کردن
حالا قسمت خواندن درست شده اما قسمت نوشتن مجدد روی فلاپی دیگه درست نیست در واقع تشخیص داده نمیشه که دیسک در درایو هست
برنامه رو می فرستم تا کمک کنید
مرسی
بای
;-------Print Function------
print macro msg
mov ah,9
lea dx,msg
int 21h
endm
;-------Quit function-------
quit macro
mov ah,4ch
int 21h
endm
;-----------------------------
.model small
.data
msg1 db 'insert the first floopy',13,10,'$'
msg2 db 'sucsses in reading',13,10,'$'
msg3 db 'error',13,10,'$'
;msg11 db 'insert the second floopy',13,10,'$'
msg4 db 'sucsses in writing',13,10,'$'
msg14 db "Insert another floppy, then Insert character 'c' for copying :",13,10,'$'
n db 13,10,'$'
buf db 1474560 dup(?)
buf2 db 147456 dup(?)
.code
m proc
mov ax,@data
mov ds,ax
mov es,ax
mov ax,0003h
int 10h
print msg1
mov ah,2
mov al,18 ;number of sector
mov dh,0 ;head
mov cl,8 ;track
mov ch,1 ;sector
mov dl,0 ;drive
lea bx,buf
int 13h
cmp ah,0
jne e1
print msg2
jmp e2
e1: print msg3
jmp e4
e2: print msg14
mov ah,1
int 21h
cmp al,'c'
jne e4
print n
mov ah,0dh
int 21h
mov ah,3
mov al,18 ;number of sector
mov dh,0 ;head
mov cl,8 ;track
mov ch,1 ;sector
mov dl,0 ;drive
lea bx,buf
int 13h
mov dl,ah
add dl,48
mov ah,2
int 21h
cmp ah,0
jne e3
print msg4
jmp e4
e3: print msg3
e4:
quit
m endp
end m
حالا قسمت خواندن درست شده اما قسمت نوشتن مجدد روی فلاپی دیگه درست نیست در واقع تشخیص داده نمیشه که دیسک در درایو هست
برنامه رو می فرستم تا کمک کنید
مرسی
بای
;-------Print Function------
print macro msg
mov ah,9
lea dx,msg
int 21h
endm
;-------Quit function-------
quit macro
mov ah,4ch
int 21h
endm
;-----------------------------
.model small
.data
msg1 db 'insert the first floopy',13,10,'$'
msg2 db 'sucsses in reading',13,10,'$'
msg3 db 'error',13,10,'$'
;msg11 db 'insert the second floopy',13,10,'$'
msg4 db 'sucsses in writing',13,10,'$'
msg14 db "Insert another floppy, then Insert character 'c' for copying :",13,10,'$'
n db 13,10,'$'
buf db 1474560 dup(?)
buf2 db 147456 dup(?)
.code
m proc
mov ax,@data
mov ds,ax
mov es,ax
mov ax,0003h
int 10h
print msg1
mov ah,2
mov al,18 ;number of sector
mov dh,0 ;head
mov cl,8 ;track
mov ch,1 ;sector
mov dl,0 ;drive
lea bx,buf
int 13h
cmp ah,0
jne e1
print msg2
jmp e2
e1: print msg3
jmp e4
e2: print msg14
mov ah,1
int 21h
cmp al,'c'
jne e4
print n
mov ah,0dh
int 21h
mov ah,3
mov al,18 ;number of sector
mov dh,0 ;head
mov cl,8 ;track
mov ch,1 ;sector
mov dl,0 ;drive
lea bx,buf
int 13h
mov dl,ah
add dl,48
mov ah,2
int 21h
cmp ah,0
jne e3
print msg4
jmp e4
e3: print msg3
e4:
quit
m endp
end m