46 lines
563 B
NASM
46 lines
563 B
NASM
push bp
|
|
mov bp, sp
|
|
|
|
mov ax, [bp+6]
|
|
mov ds, ax
|
|
mov word [program_segment], ax
|
|
|
|
mov si, filename
|
|
mov ah, 4
|
|
int 22h
|
|
|
|
cmp ax, 0
|
|
je error
|
|
|
|
mov si, ax
|
|
mov di, 0
|
|
mov bx, word [program_segment]
|
|
add bx, 1000h
|
|
mov ah, 3
|
|
int 22h
|
|
|
|
push word [program_segment]
|
|
mov ax, word [program_segment]
|
|
add ax, 1000h
|
|
mov ds, ax
|
|
mov si, 0
|
|
mov ah, 1
|
|
int 22h
|
|
|
|
pop ax
|
|
mov ds, ax
|
|
|
|
jmp exit
|
|
|
|
error:
|
|
mov si, err_msg
|
|
mov ah, 1
|
|
int 22h
|
|
|
|
exit:
|
|
pop bp
|
|
retf
|
|
|
|
filename db "HELLO TXT"
|
|
err_msg db "HELLO.TXT Missing!"
|
|
program_segment dw 0 |