include "macro.inc"
use32
org 0x5000 ;Kernel_base
protected_mode:
mov ax,0x8
mov ds,ax
mov es,ax
mov ss,ax
mov esp,0x7C00
fdd_off:
mov dx,3F2h
mov al,0
out dx,al
mov esi,szHw
call printf
call draw
cpuid_ident:
mov edi,szBuff
mov eax,80000002h
cpuid
mov [edi],eax
mov [edi+4],ebx
mov [edi+8],ecx
mov [edi+12],edx
add edi,16
mov eax,80000003h
cpuid
mov [edi],eax
mov [edi+4],ebx
mov [edi+8],ecx
mov [edi+12],edx
add edi,16
mov eax,80000004h
cpuid
mov [edi],eax
mov [edi+4],ebx
mov [edi+8],ecx
mov [edi+12],edx
mov [pointer],0xB8000+320+24
mov esi,szBuff
call printf
jmp $
szHw db 23 dup(" "),"Hello world from Protected Mode!!!",23 dup(" "),0
szBuff db 257 dup(0)
pointer dd 0B8000h
include "string.inc"
Add a code snippet to your website: www.paste.org