home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
database
/
rettig.zip
/
TRSOURCE.EXE
/
_TR_FS.ASM
< prev
next >
Wrap
Assembly Source File
|
1990-10-22
|
2KB
|
95 lines
; _TR_FS.ASM
;
; by Ralph Davis, Leonard Zerman
; modified by Rick Spence
;
; Placed in the public domain by Tom Rettig Associates, 10/22/1990.
;
PUBLIC __TR_FS
;======================================
;
; Structure for information returned by function 4EH
;
DTA STRUC
DOS_RSRVD DB 21 DUP (?)
F_ATTR DB (?)
F_TIME DW (?)
F_DATE DW ?
F_SIZELOW DW ?
F_SIZEHI DW ?
FILENAME DB 13 DUP (?)
DTA ENDS
;=======================================
;***************************************
_DATA SEGMENT WORD PUBLIC 'DATA'
FILE_PARMS DTA <>
_DATA ENDS
;***************************************
;***************************************
_TR_FS_TEXT SEGMENT BYTE PUBLIC 'CODE'
ASSUME CS:_TR_FS_TEXT, DS:_DATA
;---------------------------------------
;
; SYNTAX: _tr_fs(filename);
;
; long _tr_fs();
; char *filename;
;
;--------------------
__TR_FS PROC FAR
PUSH BP
MOV BP,SP
PUSH CX
PUSH SI
PUSH DI
PUSH DS
PUSH ES
MOV AX,_DATA
MOV DS,AX
MOV ES,AX
PUSH DS
MOV DX,OFFSET _DATA:FILE_PARMS
MOV AH,1AH
INT 21H ; Set DTA for function 4EH
MOV AH,4EH
XOR CX,CX
LDS DX,[BP+6]
INT 21H
POP DS
JNC FS2
MOV AX,0FFFFH ; Return -1L for error
MOV DX,AX
JMP SHORT FS3
FS2: MOV SI,OFFSET _DATA:FILE_PARMS.F_SIZELOW
MOV AX,[SI]
MOV DX,[SI+2]
FS3:
POP ES
POP DS
POP DI
POP SI
POP CX
POP BP
RET
__TR_FS ENDP
;----------------------------------
_TR_FS_TEXT ENDS
;**********************************
END