From: John Tsiombikas Date: Sat, 30 Sep 2023 05:07:28 +0000 (+0300) Subject: detect vm86 and abort X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=commitdiff_plain;h=b1376a2afb38686f04da0eaccdb18ff867f2d639;p=com32 detect vm86 and abort --- diff --git a/src/loader.asm b/src/loader.asm index 4f3d99d..6b4f288 100644 --- a/src/loader.asm +++ b/src/loader.asm @@ -18,7 +18,16 @@ _start: xor ax, ax mov sp, ax + ; check for VM86 and abort + mov eax, cr0 + test ax, 1 + jz .notvm86 + + mov si, str_errvm86 + call printstr + jmp exit +.notvm86: call enable_a20 ; calculate GDT linear address @@ -78,9 +87,10 @@ _start: mov es, ax mov ss, ax - mov ax, 4c00h +exit: mov ax, 4c00h int 21h +str_errvm86 db 'Error: memory manager detected! Stop it and try again (e.g. emm386 off)',10,0 str_enterpm db 'Entering 32bit protected mode ...',10,0 enable_a20: