www.pudn.com > Pckv.zip > V62ASM.ASM


PUBLIC	V62 
EXTRN	WJDOPEN:NEAR,WJXOPEN:NEAR,WJZZS:NEAR,WJZZM:NEAR,CLOFIL:NEAR 
EXTRN	BCSX:NEAR,GBSX:NEAR,HFSX:NEAR,BCSJRQ:NEAR,HFSJRQ:NEAR 
EXTRN	PMHHHC:NEAR,XS09SC:NEAR 
EXTRN	GZW01:WORD,GZW02:WORD,GZW03:WORD 
EXTRN	JSW01:WORD,JSW02:WORD,JSW03:WORD 
EXTRN	WJSEGGZA:WORD,WJSEGGZB:WORD,ESGZA:WORD,ESGZB:WORD 
EXTRN	ENDJS:WORD,WJH:WORD,WJCD1:WORD,WJCD2:WORD,FHM:BYTE 
EXTRN	WJSXZC1:WORD,WJSXZC2:WORD,WJSXZC3:WORD,ESZC1:WORD 
EXTRN	GZB01:BYTE,GZB02:BYTE,GZB03:BYTE 
EXTRN	JSB01:BYTE,JSB02:BYTE,JSB03:BYTE 
EXTRN	OPENCZF:BYTE,DWJCZF:BYTE,XWJCZF:BYTE,CZCZF:BYTE,WJTYPE:BYTE 
EXTRN	BDTZHCQ:BYTE,WJGZQ:BYTE,WJTQ:BYTE,XSAXZC:WORD 
; 
;		V62--TAI_PAN 
;        CREATED:   96-5-28   
SEG_B	SEGMENT	PARA PUBLIC 'data' 
V62TZMA	DB 0C7H,006H,0C4H,001H,000H,000H 
	DB 0C7H,006H,0C6H,001H,0FFH,0FFH 
	DB 0C7H,006H,0CCH,001H,000H,000H 
SEG_B	ENDS 
; 
SEG_C	SEGMENT	PARA PUBLIC 'code' 
      ASSUME CS:SEG_C , DS:SEG_B 
V62		PROC	NEAR 
V62START: 
	PUSH	DS 
	POP	ES 
	CALL	BCSX 
	JNB	V62KS1 
	MOV	FHM,1 
	JMP	V62ZE4 
V62KS1:	CALL	GBSX 
	JNB	V62KS2 
	MOV	FHM,1 
	JMP	V62ZE4 
V62KS2:	CALL	WJXOPEN 
	JNB	V62KS3 
	JMP	V62OPENC 
V62KS3:	CALL	BCSJRQ 
	JNB	V62KS4 
	JMP	V62ZE2 
V62KS4:	CALL	WJZZM 
	JNB	V62KS5 
	JMP	V62CZC 
	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
V62KS5:	CALL	WJZZS 
; 
	MOV	DX,OFFSET WJTQ 
	MOV	CX,20H 
	MOV	AH,3FH 
	MOV	BX,WJH 
	INT	21H 
	JNB	V62WJ1 
	JMP	V62DWJC 
V62WJ1:	 
	CMP	WJTYPE,'E' 
	JZ	V62TC1 
	JMP	V62END2 
 
V62TC1:	CMP	WJCD1,0 
	JZ	V62TC4 
	JMP	V62END2 
V62TC4:	MOV	ENDJS,0 
	MOV	AX,4202H 
	MOV	BX,WJH 
	MOV	CX,0FFFFH 
	MOV	DX,-006DH 
	INT	21H 
	JNB	V62TC2 
	JMP	V62CZC 
V62TC2:	MOV	DX,OFFSET BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,32H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V62TC3 
	JMP	V62DWJC 
V62TC3:	MOV	DI,OFFSET BDTZHCQ 
	ADD	DI,20H 
	SUB	DI,ENDJS 
	MOV	SI,OFFSET V62TZMA 
	MOV	CX,12H 
	REPE	CMPSB 
	CMP	CX,0 
	JZ	V62E1 
	ADD	ENDJS,1 
	CMP	ENDJS,20 
	JB	V62TC3 
	JMP	V62END2 
V62E1:	MOV	AX,4202H 
	MOV	BX,WJH 
	MOV	CX,0FFFFH 
	MOV	DX,-0AH 
	SUB	DX,ENDJS 
	INT	21H 
	JNB	V62E2 
	JMP	V62CZC 
V62E2:	MOV	DX,OFFSET WJTQ 
	ADD	DX,0EH 
	MOV	CX,0AH 
	MOV	BX,WJH 
	MOV	AH,3FH 
	INT	21H 
	JNB	V62E3 
	JMP	V62DWJC 
V62E3:	MOV	DX,WJCD1 
	MOV	AX,WJCD2 
	SUB	AX,01B6H 
	SUB	AX,ENDJS 
	MOV	CX,0200H 
	DIV	CX 
	OR	DX,DX 
	JZ	V62E4 
	INC	AX 
V62E4:	MOV	SI,OFFSET WJTQ 
	MOV	[SI+02],DX 
	MOV	[SI+04],AX 
; 
	CALL	WJZZS 
	MOV	AX,WJH	 
	MOV	BX,AX 
	MOV	AH,40H 
	MOV	CX,0018H 
	MOV	DX,OFFSET WJTQ 
	INT	21H 
	JNB	V62E5 
	JMP	V62XWJC 
V62E5: 
	MOV	AX,4202H 
	MOV	CX,0FFFFH 
	MOV	DX,-01B6H 
	SUB	DX,ENDJS 
	MOV	BX,WJH 
	INT	21H 
	JNB	V62E6 
	JMP	V62CZC 
V62E6:	MOV	AH,40H 
	MOV	BX,WJH 
	MOV	DX,0 
	MOV	CX,0 
	INT	21H 
	JNB	V62E7 
	JMP	V62XWJC 
V62E7:	JMP	V62END0 
; 
V62END2:	MOV	FHM,2 
		MOV	XSAXZC,0 
		JMP	V62ZE1 
V62END0:	MOV	FHM,0 
		JMP	V62ZE1 
; 
V62OPENC:	MOV	FHM,1 
		MOV	DX,OFFSET OPENCZF 
		MOV	XSAXZC,DX 
		JMP	V62ZE3 
; 
V62CZC:		MOV	DX,OFFSET CZCZF 
		JMP	V62XSL 
V62DWJC:	MOV	DX,OFFSET DWJCZF 
		JMP	V62XSL 
V62XWJC:	MOV	DX,OFFSET XWJCZF 
V62XSL:		MOV	XSAXZC,DX 
V62END1:	MOV	FHM,1 
V62ZE1:		CALL	HFSJRQ 
V62ZE2:		CALL	CLOFIL 
V62ZE3:		CALL	HFSX 
V62ZE4:		MOV	AX,XSAXZC 
		MOV	DX,DS 
		RET 
V62		ENDP 
; 
SEG_C	ENDS 
	END	V62START