Category : Utilities for DOS and Windows Machines
Archive   : EPATH.ZIP
Filename : EPATH.ASM

 
Output of file : EPATH.ASM contained in archive : EPATH.ZIP

PAGE 60,132

;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
;ÛÛ ÛÛ
;ÛÛ EPATH ÛÛ
;ÛÛ ÛÛ
;ÛÛ Created: 17-Apr-87 ÛÛ
;ÛÛ Passes: 5 Analysis Flags on: H ÛÛ
;ÛÛ ÛÛ
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ

data_1e equ 2Ch ; (97D0:002C=0)
data_2e equ 80h ; (97D0:0080=0)

seg_a segment
assume cs:seg_a, ds:seg_a


org 100h

epath proc far

start:
mov bx,368h
mov sp,bx
add bx,0Fh
mov cl,4
shr bx,cl ; Shift w/zeros fill
mov ah,4Ah ; 'J'
int 21h ; DOS Services ah=function 4Ah
; change mem allocation, bx=siz
mov al,ds:data_2e ; (97D0:0080=0)
or al,al ; Zero ?
jnz loc_6 ; Jump if not zero
push es
mov es,ds:data_1e ; (97D0:002C=0)
sub di,di
loc_1:
mov si,189h
cld ; Clear direction
cmp byte ptr es:[di],0
je loc_4 ; Jump if equal
mov cx,5
repe cmpsb ; Rept zf=1+cx>0 Cmp [si] to es:[di]
jz loc_2 ; Jump if zero
sub al,al
mov cx,80h
repne scasb ; Rept zf=0+cx>0 Scan es:[di] for al
jmp short loc_1 ; (011E)
loc_2:
mov bx,18Eh
mov cx,5
loc_3:
mov al,es:[di]
inc di
or al,al ; Zero ?
jz loc_4 ; Jump if zero
inc cl
mov [bx],al
inc bx
jmp short loc_3 ; (013E)
loc_4:
mov data_3,cl ; (97D0:0188=5)
mov word ptr [bx],0A0Dh
inc bx
inc bx
mov byte ptr [bx],24h ; '$'
pop es
mov dx,offset data_4 ; (97D0:0189=50h)
mov ah,9
int 21h ; DOS Services ah=function 09h
; display char string at ds:dx
mov dx,187h
mov ah,0Ah
int 21h ; DOS Services ah=function 0Ah
; get keybd line, put at ds:dx
loc_5:
mov si,188h
int 2Eh ; DOS Command (undocumented)
mov ax,4C00h
int 21h ; DOS Services ah=function 4Ch
; terminate with al=return code
loc_6:
mov cl,al
add data_3,al ; (97D0:0188=5)
mov si,81h
mov di,18Eh
rep movsb ; Rep while cx>0 Mov [si] to es:[di]
mov byte ptr es:[di],0Dh
jmp short loc_5 ; (0169)
db 50h
data_3 db 5
data_4 db 'PATH=', 0Dh, '$'

epath endp

seg_a ends



end start


  3 Responses to “Category : Utilities for DOS and Windows Machines
Archive   : EPATH.ZIP
Filename : EPATH.ASM

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/