www.pudn.com > fxvmm210.zip > _FXPROT.ASM
;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± ; ; Protected/Real mode detection procedures ; TITLE FXPROT .386p .387 ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± FXPROT_TEXT SEGMENT BYTE public USE16 'CODE' FXPROT_TEXT ENDS FXPROT_DATA SEGMENT WORD public USE16 'FAR_DATA' FXPROT_DATA ENDS ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± extrn __fxvmm_detwin:NEAR ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± public __fxvmm_detprotmode FXPROT_TEXT SEGMENT assume cs: FXPROT_TEXT ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± include ..\source.asm\_fxvmm.inc ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°± __fxvmm_detprotmode: enter 00004h,000h push ds mov ax,seg FXPROT_DATA mov ds,ax smsw cx ror cx,1 mov word ptr [bp-002h],0000h mov [bp-004h],cx mov ax,[bp-004h] and ax,8000h or ax,0000h jnz @@L1 xor ax,ax jmp short @@L2 @@L1: call far ptr __fxvmm_detwin cwd mov [bp-002h],dx mov [bp-004h],ax cmp word ptr [bp-002h],+000h jnz @@L3 cmp word ptr [bp-004h],+003h jz @@L4 @@L3: cmp word ptr [bp-002h],+000h jnz @@L5 cmp word ptr [bp-004h],+004h jnz @@L5 @@L4: mov ax ,0002h jmp short @@L2 @@L5: mov ax ,0001h @@L2: pop ds leave retf FXPROT_TEXT ENDS END ;±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°±°