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


PUBLIC	V54 
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 
; 
;		V54--1993 
;        CREATED:   95-10-22   
SEG_B	SEGMENT	PARA PUBLIC 'data' 
V54TZMA	DB	0 
SEG_B	ENDS 
; 
SEG_C	SEGMENT	PARA PUBLIC 'code' 
      ASSUME CS:SEG_C , DS:SEG_B 
V54		PROC	NEAR 
V54START: 
	PUSH	DS 
	POP	ES 
	CALL	BCSX 
	JNB	V54KS1 
	MOV	FHM,1 
	JMP	V54ZE4 
V54KS1:	CALL	GBSX 
	JNB	V54KS2 
	MOV	FHM,1 
	JMP	V54ZE4 
V54KS2:	CALL	WJXOPEN 
	JNB	V54KS3 
	JMP	V54OPENC 
V54KS3:	CALL	BCSJRQ 
	JNB	V54KS4 
	JMP	V54ZE2 
V54KS4:	CALL	WJZZM 
	JNB	V54KS5 
	JMP	V54CZC 
	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
V54KS5:	CALL	WJZZS 
; 
	MOV	DX,OFFSET WJTQ 
	MOV	CX,20H 
	MOV	AH,3FH 
	MOV	BX,WJH 
	INT	21H 
	JNB	V54TZ1 
	JMP	V54DWJC 
V54TZ1:	MOV	DX,0 
	MOV	SI,OFFSET WJTQ 
	MOV	AL,[SI] 
	CMP	AL,0E9H 
	JNZ	V54TZ2 
	MOV	AX,[SI+1] 
	ADD	AX,3 
	JMP	V54TZ4 
V54TZ2:	CMP	AL,4DH 
	JNZ	V54TZ3 
	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 
	JMP	V54TZ4 
V54TZ3:	JMP	V54END2 
V54TZ4:	MOV	WJCD1,DX 
	MOV	WJCD2,AX 
	MOV	BX,WJH 
	MOV	CX,DX 
	MOV	DX,AX 
	MOV	AX,4200H 
	INT	21H 
	JNB	V54TZ5 
	JMP	V54CZC 
V54TZ5:	LEA	DX,BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,20H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V54TZ6 
	JMP	V54DWJC 
V54TZ6:	MOV	SI,OFFSET BDTZHCQ 
	MOV	AX,[SI+7] 
	CMP	AX,0504H 
	JNZ	V54TZ3 
	MOV	AX,[SI+0BH] 
	CMP	AX,0724H 
	JNZ	V54TZ3 
	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,05FDH 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V54TZ7 
	JMP	V54CZC 
V54TZ7:	LEA	DX,BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,2 
	MOV	AH,3FH 
	INT	21H 
	JNB	V54TZ8 
	JMP	V54DWJC 
V54TZ8:	MOV	SI,OFFSET BDTZHCQ 
	MOV	AX,[SI] 
	CMP	AX,1993H 
	JNZ	V54TZ3 
; 
	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,0528H 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V54WJ1 
	JMP	V54CZC 
V54WJ1:	LEA	DX,V54TZMA 
	MOV	BX,WJH 
	MOV	CX,1 
	MOV	AH,3FH 
	INT	21H 
	JNB	V54WJ2 
	JMP	V54DWJC 
; 
V54WJ2:	CMP	WJTYPE,'C' 
	JZ	V54WC1 
	JMP	V54WE1 
V54WC1:	MOV	CX,0 
	MOV	DX,WJCD2 
	ADD	DX,05FAH 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V54WC2 
	JMP	V54CZC 
V54WC2:	MOV	DX,OFFSET WJTQ 
	MOV	BX,WJH 
	MOV	CX,3 
	MOV	AH,3FH 
	INT	21H 
	JNB	V54WC3 
	JMP	V54DWJC 
V54WC3:	MOV	DI,OFFSET WJTQ 
	JMP	V54WJ5 
; 
V54WE1:	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	ADD	DX,38EH 
	ADC	CX,0 
	MOV	BX,WJH 
	MOV	AX,4200H 
	INT	21H 
	JNB	V54WE2 
	JMP	V54CZC 
V54WE2:	LEA	DX,BDTZHCQ 
	MOV	BX,WJH 
	MOV	CX,20H 
	MOV	AH,3FH 
	INT	21H 
	JNB	V54WE3 
	JMP	V54DWJC 
V54WE3:	MOV	DL,V54TZMA 
	MOV	DH,DL 
	MOV	SI,OFFSET BDTZHCQ 
	MOV	DI,OFFSET WJTQ 
	MOV	AX,[SI] 
	XOR	AX,DX 
	MOV	[DI+0EH],AX 
	MOV	AX,[SI+0DH] 
	XOR	AX,DX 
	MOV	[DI+14H],AX 
	MOV	AX,[SI+0FH] 
	XOR	AX,DX 
	MOV	[DI+16H],AX 
	MOV	AX,WJCD2 
	MOV	DX,WJCD1 
	MOV	CX,0200H 
	DIV	CX 
	OR	DX,DX 
	JZ	V54WE4 
	INC	AX 
V54WE4:	MOV	[DI+02],DX 
	MOV	[DI+04],AX 
V54WJ5:	MOV	AL,V54TZMA 
	INC	AL 
	XOR	[DI+0EH],AL 
	INC	AL 
	XOR	[DI+14H],AL 
	INC	AL 
	XOR	[DI+16H],AL 
; 
	CALL	WJZZS 
	MOV	BX,WJH 
	MOV	AH,40H 
	MOV	CX,0018H 
	MOV	DX,OFFSET WJTQ 
	INT	21H 
	JNB	V54WJ6 
	JMP	V54XWJC 
V54WJ6: 
	MOV	AX,4200H 
	MOV	CX,WJCD1 
	MOV	DX,WJCD2 
	MOV	BX,WJH 
	INT	21H 
	JNB	V54WJ7 
	JMP	V54CZC 
V54WJ7:	MOV	AH,40H 
	MOV	BX,WJH 
	MOV	DX,0 
	MOV	CX,0 
	INT	21H 
	JNB	V54WJ8 
	JMP	V54XWJC 
V54WJ8:	JMP	V54END0 
; 
V54END2:	MOV	FHM,2 
		MOV	XSAXZC,0 
		JMP	V54ZE1 
V54END0:	MOV	FHM,0 
		MOV	XSAXZC,0 
		JMP	V54ZE1 
; 
V54OPENC:	MOV	FHM,1 
		MOV	DX,OFFSET OPENCZF 
		MOV	XSAXZC,DX 
		JMP	V54ZE3 
; 
V54CZC:		MOV	DX,OFFSET CZCZF 
		JMP	V54XSL 
V54DWJC:	MOV	DX,OFFSET DWJCZF 
		JMP	V54XSL 
V54XWJC:	MOV	DX,OFFSET XWJCZF 
V54XSL:		MOV	XSAXZC,DX 
V54END1:	MOV	FHM,1 
V54ZE1:		CALL	HFSJRQ 
V54ZE2:		CALL	CLOFIL 
V54ZE3:		CALL	HFSX 
V54ZE4:		MOV	AX,XSAXZC 
		MOV	DX,DS 
		RET 
V54		ENDP 
; 
SEG_C	ENDS 
	END	V54START