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


; 
PUBLIC	V73 
EXTRN	PMHHHC:NEAR,XS09SC:NEAR 
EXTRN	RPJS:BYTE,DLZC:BYTE,FHM:BYTE,ESZC1:WORD 
EXTRN	DPCZF:BYTE,XPCZF:BYTE,XSAXZC:WORD 
EXTRN	JGBTZF1:BYTE,JGBTZF2:BYTE,JGBTZF3:BYTE 
EXTRN	BOOTQ1:BYTE,BOOTQ2:BYTE,FQSQ:BYTE,BOOTSQ:BYTE 
EXTRN	BPB144M:BYTE,BPB12M:BYTE,BPB360K:BYTE,BPB720K:BYTE 
EXTRN	YPBOOTDX:WORD,YPBOOTCX:WORD 
 
; 
;		V73--Water-(B) 
;        CREATED:   96-6-25  
SEG_B	SEGMENT	PARA PUBLIC 'data' 
V73TZMA	DB 083H,0FFH,004H,075H,0ECH,0BFH,04CH,000H 
	DB 0C7H,005H,0E8H,00BH,08CH,045H,002H,05FH 
	DB 02EH,0C6H,006H,0FCH,00BH,090H 
SEG_B	ENDS 
; 
SEG_C	SEGMENT	BYTE PUBLIC 'code' 
ASSUME CS:SEG_C , DS:SEG_C ; SS:STACK_SEG_A 
;	PROGRAM ENTRY POINT 
V73		PROC	NEAR 
V73START: 
	PUSH	DS 
	POP	ES 
	CLD	 
	MOV	DI,OFFSET V73TZMA 
	MOV	SI,OFFSET BOOTQ1 
	ADD	SI,00B8H 
	MOV	CX,16H 
	REPZ	CMPSB	 
	JZ	V73L01 
	JMP	V73END2	 
V73L01:	MOV	DL,DLZC 
	CMP	DL,02H 
	JNB	V73YP 
	JMP	V73END2	 
;	 
V73YP:	MOV	DX,0080H 
	MOV	CX,0002H 
	MOV	BX,OFFSET BOOTQ2 
	MOV	AX,0201H 
	INT	13H 
	JNB	V73YPA 
	JMP	V73DPC 
V73YPA:	MOV	AX,[BX+01FEH] 
	CMP	AX,0AA55H 
	JZ	V73YPB 
	MOV	[BX],AX 
	MOV	SI,OFFSET FQSQ 
	MOV	DI,OFFSET BOOTQ1 
	MOV	CX,01BEH 
	REPZ	MOVSB	 
	MOV	BX,OFFSET BOOTQ1 
	JMP	V73YPC 
V73YPB:	MOV	BX,OFFSET BOOTQ2 
V73YPC:	MOV	DX,0080H 
	MOV	CX,0001H 
	MOV	AX,0301H 
	INT	13H 
	JB	V73YPD 
	JMP	V73END0 
V73YPD:	JMP	V73XPC	 
; 
V73END2:	MOV	FHM,2 
		MOV	XSAXZC,0 
		JMP	V73ZE 
V73END0:	MOV	FHM,0 
		MOV	XSAXZC,0 
		JMP	V73ZE 
; 
V73DPC:		MOV	DX,OFFSET DPCZF 
		JMP	V73ZE1	 
V73XPC:		MOV	DX,OFFSET XPCZF 
V73ZE1:		MOV	XSAXZC,DX 
		MOV	FHM,1 
V73ZE:		MOV	AX,XSAXZC 
		MOV	DX,DS 
		RET 
V73		ENDP 
; 
SEG_C		ENDS 
		END	V73START