home *** CD-ROM | disk | FTP | other *** search
- CSEG segment public para 'CODE'
- assume CS:CSEG,DS:CSEG,ES:CSEG
-
- CR equ 0DH
- LF equ 0AH
- DEBUG equ 1 ;for output to STDERR
-
- EXTRN ArcV:far
-
- org 100H
-
- TestQb proc near
-
- jmp Start
-
- db CR,LF,LF,' Usage: call arcv (workname$,filename.[ARC][PAK][ZIP],'
- db 'result%',CR,LF
-
- IF DEBUG
- workname db 13 dup(0) ;no output, use STDERR
- WORKLEN equ 0
-
- ELSE
-
- workname db 'QBTEMP.TMP',0
- WORKLEN equ $ - workname
- ENDIF
-
- ;filename db 'TEST.ZIP',0
- ;FILELEN equ $ - filename
- filename db 13 dup(0)
-
- workparm dw WORKLEN,workname
- ;fileparm dw FILELEN,filename
- fileparm dw 0,filename
-
- result dw 0
-
- Start:
- mov ax,CS
- mov ES,ax
-
- mov si,80H
- lodsb
- xor ah,ah
- mov cx,ax
- mov CS:fileparm,ax ;save target archive name length
-
- inc si ;bump past space
- dec cx ;adjust for the space bump
- mov di,offset filename
- rep movsb ;copy PSP archive name into buffer
-
- mov ax,CS
- mov DS,ax
-
- mov ax,offset workparm
- push ax
- mov ax,offset fileparm
- push ax
- mov ax,offset result
- push ax
-
- call Arcv
-
- mov ax,result
- mov ah,4CH ;terminate
- int 21H
-
- TestQb endp
-
- CSEG ENDS
- end TestQb