49600 (609175), страница 2
Текст из файла (страница 2)
Msg5 db 'ошибка закр. файла $'
Msg6 db 'Шрифт установлен $'
escposl db 0
Fname db 255,?,255 dup(0)
Handle dw 0
Stroka db 30 DUP(?)
.code
ProgramStart PROC NEAR
mov ax,@data
mov ds,ax
call clear
Call Vibor
call clear
Call Init
mov dx,offset Msg4
Call outputer
mov dx,offset fname
Call inputer
mov bl,byte ptr [fname+1]
xor bh,bh
mov di,offset fname+2
mov [bx+di],byte ptr 0
call clear
Call fopen
call clear
Call esca
Call fclose
Quit:
mov dx,offset Msg6
Call outputer
mov ah,07h
int 21h
mov ah,4ch
int 21h
ProgramStart endp
outputer proc
mov ah,09h
int 21h
ret
outputer endp
inputer proc
mov ah,0ah
int 21h
ret
inputer endp
Vibor PROC NEAR
lea dx,Msg1
Call outputer
mov ah,01h
int 21h
ret
Vibor endp
Init PROC NEAR
mov ah,01h
mov dx,1h
int 17h
ret
Init endp
fopen PROC NEAR
mov ah,3dh
mov al,0h
mov dx,offset fname+2
int 21h
jnc itd
mov ah,09h
lea dx,Msg3
int 21h
jmp Quit
itd: mov [handle],ax
ret
fopen endp
escape PROC NEAR
fclose proc
mov ah,3eh
mov bx,[handle]
int 21h
jnc its_ok2
mov dx,offset Msg5
call outputer
its_ok2:
ret
fclose endp
esca proc
met1: mov ah,3fh
mov bx,[handle]
mov cx,1
mov dx,offset escposl
int 21h
call eof
cmp al,0
jz met2
mov ah,00
mov al,[escposl]
mov dx,1
int 17h
mov cx,5h
loop met1
met2: ret
esca endp
eof proc
mov ah,44h
mov al,06h
mov bx,[handle]
int 21h
ret
eof endp
CLEAR PROC
MOV AX,0600h
MOV BH,07h
MOV CX,0000
MOV DX,184Fh
INT 10h
mov ah,02
mov bh,0
mov dh,1
mov dl,1
int 10h
RET
CLEAR ENDP
end















