Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;------------------------------------------------------------------------------------------
- ; ASSIGNMENT NO : 1A
- ; TITLE : WRITE ALP TO SIMULATE TYPE COMMAND USING PSP.
- ;------------------------------------------------------------------------------------------
- PRINT MACRO MSG
- LEA DX,MSG
- MOV AH,09H
- INT 21H
- ENDM
- DATA SEGMENT
- FNAME DB 20 DUP('$')
- BUFFER DB 1024 DUP('$')
- FPTR DW ?
- CNT DW ?
- MSGOPEN DB 10,13," FILE OPEN SUCCESFULLY...! $ "
- MSGREAD DB 10,13," FILE READ SUCCESFULLY...! $ "
- MSGERROR DB 10,13," ERROR WHILE OPENING THE FILE...! $ "
- MSGCLOSE DB 10,13," FILE CLOSE SUCCESFULLY...! $ "
- MSGASCII DB 10,13," ------------------------------------------------- $ "
- MSGNEWL DB 10,13," $ "
- DATA ENDS
- ASSUME CS:CODE, DS:DATA
- CODE SEGMENT
- START:
- MOV AX,DATA
- MOV DS,AX
- MOV AH,62H
- INT 21H
- MOV ES,BX
- MOV SI,80H
- MOV CH,ES:[SI]
- DEC CH
- LEA DI,FNAME
- MOV SI,82H
- L1: MOV DL,ES:[SI]
- MOV [DI],DL
- INC SI
- INC DI
- DEC CH
- JNZ L1
- LEA DX,FNAME
- MOV AH,09H
- INT 21H
- LEA DX,FNAME
- MOV AH,3DH
- MOV AL,00H
- INT 21H
- MOV FPTR,AX
- JC ERROR
- JNC OPEN
- ERROR :
- PRINT MSGERROR
- JMP EXIT
- OPEN :
- PRINT MSGOPEN
- MOV BX,FPTR
- MOV AH,3FH
- LEA DX,BUFFER
- INT 21H
- MOV CNT,AX
- JNC READ
- JC ERROR
- READ :
- PRINT MSGREAD
- PRINT MSGNEWL
- PRINT MSGASCII
- PRINT MSGNEWL
- LEA SI,BUFFER
- MOV CX,CNT
- L2 : MOV AH,02H
- MOV DL,[SI]
- INT 21H
- INC SI
- DEC CX
- JNZ L2
- PRINT MSGASCII
- PRINT MSGNEWL
- PRINT MSGCLOSE
- EXIT :
- MOV AH,4CH
- INT 21H
- CODE ENDS
- END START
- ;------------------------------------------------------------------------------------------
- ; END OF THE PROGRAM
- ;------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement