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


PUBLIC	V53 
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 
EXTRN	XSAXZC:WORD 
; 
;		V53--1741 
;        CREATED:   95-10-22   
SEG_B	SEGMENT	PARA PUBLIC 'data' 
V53TZMA	DB 032H,0C8H,032H,0D1H,0B3H,041H,0EAH,013H 
	DB 0B3H,03EH,0EAH,00FH,0B3H,03FH,0E7H,00AH 
	DB 0FFH,071H,000H,0C2H 
V53JMTZ	DW	0 
SEG_B	ENDS 
; 
SEG_C	SEGMENT	PARA PUBLIC 'code' 
      ASSUME CS:SEG_C , DS:SEG_B 
V53		PROC	NEAR 
V53START: 
	PUSH	DS 
	POP	ES 
	CLD 
	CMP	V53JMTZ,0FH 
	JZ	V53JMB 
	MOV	SI,OFFSET V53TZMA 
	MOV	CX,0014H 
V53JMA:	LODSB 
	INC	AL 
	MOV	[SI-1],AL 
	LOOP	V53JMA 
	MOV	V53JMTZ,0FH 
V53JMB:	CALL	BCSX 
	JNB	V53KS1 
	MOV	FHM,1 
	JMP	V53ZE4 
V53KS1:	CALL	GBSX 
	JNB	V53KS2 
	MOV	FHM,1 
	JMP	V53ZE4 
V53KS2:	CALL	WJXOPEN 
	JNB	V53KS3 
	JMP	V53OPENC 
V53KS3:	CALL	BCSJRQ 
	JNB	V53KS4 
	JMP	V53ZE2 
V53KS4:	CALL	WJZZM 
	JNB	V53KS5 
	JMP	V53CZC 
	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
V53KS5:	CALL	WJZZS 
; 
	MOV	DX,OFFSET WJTQ 
	MOV	CX,20H 
	MOV	AH,3FH 
	MOV	BX,WJH 
	INT	21H 
	JNB	V53WJ1 
	JMP	V53DWJC 
V53WJ1:	MOV	DX,0 
	MOV	SI,OFFSET WJTQ 
	MOV	AL,[SI] 
	CMP	AL,0E9H 
	JNZ	V53TZ2 
	MOV	AX,[SI+1] 
	ADD	AX,3 
	SUB	AX,0019H 
	JMP	V53TZ4 
V53TZ2:	CMP	AL,4DH 
	JNZ	V53TZ3 
	MOV	AX,[SI+16H] 
	MOV	CL,4 
	ROL	AX,CL 
	MOV	DX,AX 
	AND	DX,000FH 
	AND	AX,0FFF0H 
	MOV	BX,[SI+14H] 
	ADD	AX,BX 
	ADC	DX,0 
	MOV	BX,[SI+8] 
	SHL	BX,CL 
	ADD	AX,BX 
	ADC	DX,0 
	SUB	AX,0019H 
	SBB	DX,0 
	JMP	V53TZ4 
V53TZ3:	JMP	V53END2 
V53TZ4:	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
	ADD	AX,028EH 
	ADC	DX,0 
	MOV	BX,WJH 
	MOV	CX,DX 
	MOV	DX,AX 
	MOV	AX,4200H 
	INT	21H 
	JNB	V53TZ5 
	JMP	V53CZC 
V53TZ5:	LEA	DX,BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,14H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V53TZ6 
	JMP	V53DWJC 
V53TZ6:	MOV	DI,OFFSET BDTZHCQ 
	MOV	SI,OFFSET V53TZMA 
	MOV	CX,14H 
	REPE	CMPSB 
	JZ	V53WJ2 
	JMP	V53END2 
; 
V53WJ2:	CMP	WJTYPE,'C' 
	JZ	V53WC1 
	JMP	V53WE1 
V53WC1:	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V53WC2 
	JMP	V53CZC 
V53WC2:	MOV	DX,OFFSET BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,18H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V53WC3 
	JMP	V53DWJC 
V53WC3:	CALL	WJZZS 
	MOV	DX,OFFSET BDTZHCQ 
	MOV	CX,0003H 
	MOV	AH,40H 
	INT	21H 
	JNB	V53WC4 
	JMP	V53XWJC 
V53WC4:	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,06C9H 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V53WC5 
	JMP	V53CZC 
V53WC5:	MOV	DX,OFFSET BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,4 
	MOV	AH,3FH 
	INT	21H 
	JNB	V53WC6 
	JMP	V53DWJC 
V53WC6:	MOV	SI,OFFSET BDTZHCQ 
	MOV	AX,[SI] 
	MOV	DX,[SI+2] 
	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
	JMP	V53WJ6 
; 
V53WE1:	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,0199H 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V53WE2 
	JMP	V53CZC 
V53WE2:	MOV	DX,OFFSET BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,18H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V53WE3 
	JMP	V53DWJC 
V53WE3:	MOV	SI,OFFSET BDTZHCQ 
	MOV	DI,OFFSET WJTQ 
	MOV	AX,[SI+4] 
	MOV	[DI+16H],AX 
	MOV	AX,[SI] 
	MOV	[DI+14H],AX 
; 
	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,06C9H 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V53WE4 
	JMP	V53CZC 
V53WE4:	MOV	DX,OFFSET BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,4 
	MOV	AH,3FH 
	INT	21H 
	JNB	V53WE5 
	JMP	V53DWJC 
V53WE5:	MOV	SI,OFFSET BDTZHCQ 
	MOV	AX,[SI] 
	MOV	DX,[SI+2] 
	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
	MOV	CX,0200H 
	DIV	CX 
	OR	DX,DX 
	JZ	V53WE6 
	INC	AX 
V53WE6:	MOV	[DI+02],DX 
	MOV	[DI+04],AX 
	CALL	WJZZS 
	MOV	BX,WJH 
	MOV	AH,40H 
	MOV	CX,0018H 
	MOV	DX,OFFSET WJTQ 
	INT	21H 
	JNB	V53WJ6 
	JMP	V53XWJC 
V53WJ6: 
	MOV	AX,4200H 
	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	MOV	BX,WJH 
	INT	21H 
	JNB	V53WJ7 
	JMP	V53CZC 
V53WJ7:	MOV	AH,40H 
	MOV	BX,WJH 
	MOV	DX,0 
	MOV	CX,0 
	INT	21H 
	JNB	V53WJ8 
	JMP	V53XWJC 
V53WJ8:	JMP	V53END0 
; 
V53END2:	MOV	FHM,2 
		MOV	XSAXZC,0 
		JMP	V53ZE1 
V53END0:	MOV	FHM,0 
		MOV	XSAXZC,0 
		JMP	V53ZE1 
; 
V53OPENC:	MOV	FHM,1 
		MOV	DX,OFFSET OPENCZF 
		MOV	XSAXZC,DX 
		JMP	V53ZE3 
; 
V53CZC:		MOV	DX,OFFSET CZCZF 
		JMP	V53XSL 
V53DWJC:	MOV	DX,OFFSET DWJCZF 
		JMP	V53XSL 
V53XWJC:	MOV	DX,OFFSET XWJCZF 
V53XSL:		MOV	XSAXZC,DX 
V53END1:	MOV	FHM,1 
V53ZE1:		CALL	HFSJRQ 
V53ZE2:		CALL	CLOFIL 
V53ZE3:		CALL	HFSX 
V53ZE4:		MOV	AX,XSAXZC 
		MOV	DX,DS 
		RET 
V53		ENDP 
; 
SEG_C	ENDS 
	END	V53START