www.pudn.com > Pckv.zip > V75ASM.ASM
PUBLIC V75
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 WJCXZC:WORD,BDDIZC:WORD,XSAXZC:WORD
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
;
; V75--TRA2062
; CREATED: 96-6-26
SEG_B SEGMENT PARA PUBLIC 'data'
V75TZMA DB 0E7H,0FFH,0FFH,059H,080H,0E9H,00BH,000H
DB 04FH,052H,050H,01DH,005H,055H,056H,0FBH
DB 08AH,0F1H,080H,0C5H,026H,000H,02DH,089H
DB 0A3H,049H,001H
V75JMTZ DW 0
SEG_B ENDS
;
SEG_C SEGMENT PARA PUBLIC 'code'
ASSUME CS:SEG_C , DS:SEG_B
V75 PROC NEAR
V75START:
PUSH DS
POP ES
CLD
CMP V75JMTZ,0FH
JZ V75JMB
MOV SI,OFFSET V75TZMA
MOV CX,1BH
V75JMA: LODSB
INC AL
MOV [SI-1],AL
LOOP V75JMA
MOV V75JMTZ,0FH
V75JMB: CALL BCSX
JNB V75KS1
MOV FHM,1
JMP V75ZE4
V75KS1: CALL GBSX
JNB V75KS2
MOV FHM,1
JMP V75ZE4
V75KS2: CALL WJXOPEN
JNB V75KS3
JMP V75OPENC
V75KS3: CALL BCSJRQ
JNB V75KS4
JMP V75ZE2
V75KS4: MOV DX,OFFSET WJTQ
MOV CX,20H
MOV AH,3FH
MOV BX,WJH
INT 21H
JNB V75KS5
JMP V75DWJC
V75KS5: CALL WJZZM
JNB V75TZ0
JMP V75CZC
;
V75TZ0: MOV CX,WJCXZC
MOV DI,BDDIZC
CMP DX,0
JNZ V75TZ2
CMP CX,4000H
JNB V75TZ2
SUB DI,06C5H
JNB V75TZ1
JMP V75END2
V75TZ1: MOV WJCD1,0
MOV WJCD2,DI
MOV DX,0
MOV AX,DI
JMP V75TZ3
V75TZ2: SUB AX,4000H
SBB DX,0
ADD AX,DI
ADC DX,0
SUB AX,06C5H
SBB DX,0
MOV WJCD1,DX
MOV WJCD2,AX
V75TZ3: CMP WJTYPE,'C'
JZ V75TZ9
CMP WJTYPE,'E'
JZ V75TZ9
JMP V75END2
V75TZ9: MOV BX,WJH
MOV CX,DX
MOV DX,AX
ADD DX,09H
ADC CX,0
MOV AX,4200H
INT 21H
JNB V75TZ4
JMP V75CZC
V75TZ4: LEA DX,BDTZHCQ
MOV BX,WJH
MOV CX,1BH
MOV AH,3FH
INT 21H
JNB V75TZ5
JMP V75DWJC
V75TZ5: MOV DI,OFFSET BDTZHCQ
MOV SI,OFFSET V75TZMA
MOV CX,1BH
REPE CMPSB
JZ V75TZ6
JMP V75END2
V75TZ6: MOV BX,WJH
MOV CX,WJCD1
MOV DX,WJCD2
ADD DX,06F6H
ADC CX,0
MOV AX,4200H
INT 21H
JNB V75TZ7
JMP V75CZC
V75TZ7: LEA DX,BDTZHCQ
MOV BX,WJH
MOV CX,18H
MOV AH,3FH
INT 21H
JNB V75TZ8
JMP V75DWJC
V75TZ8: CMP AX,CX
JZ V75WJ5
JMP V75END2
;
V75WJ5: CALL WJZZS
MOV DX,OFFSET BDTZHCQ
MOV CX,18H
MOV AH,40H
INT 21H
JNB V75WJ1
JMP V75XWJC
V75WJ1: MOV CX,WJCD1
MOV DX,WJCD2
V75WJ2: MOV AX,4200H
MOV BX,WJH
INT 21H
JNB V75WJ3
JMP V75CZC
V75WJ3: MOV AH,40H
MOV BX,WJH
MOV DX,0
MOV CX,0
INT 21H
JNB V75WJ4
JMP V75XWJC
V75WJ4: JMP V75END0
;
V75END2: MOV FHM,2
MOV XSAXZC,0
JMP V75ZE1
V75END0: MOV FHM,0
MOV XSAXZC,0
JMP V75ZE1
;
V75OPENC: MOV FHM,1
MOV DX,OFFSET OPENCZF
MOV XSAXZC,DX
JMP V75ZE3
;
V75CZC: MOV DX,OFFSET CZCZF
JMP V75XSL
V75DWJC: MOV DX,OFFSET DWJCZF
JMP V75XSL
V75XWJC: MOV DX,OFFSET XWJCZF
V75XSL: MOV XSAXZC,DX
V75END1: MOV FHM,1
V75ZE1: CALL HFSJRQ
V75ZE2: CALL CLOFIL
V75ZE3: CALL HFSX
V75ZE4: MOV AX,XSAXZC
MOV DX,DS
RET
V75 ENDP
;
SEG_C ENDS
END V75START