.386p page 60,132 ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ cseg segment use16 assume cs:cseg,ds:cseg org 7c00h ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ start: cli ;§ ¯à¥â ¯à¥à뢠­¨©. in al,70h ;§ ¯à¥â¨âì or al,80h ;­¥¬ áª¨àã¥¬ë¥ out 70h,al ;¯à¥à뢠­¨ï (NMI). ;............................ in al,92h ;®âªà®¥¬ or al,2 ; ¤à¥á­ãî out 92h,al ;«¨­¨î A20. ;............................ lgdt 6 ptr cs:[gdt0] ;ª®¬ ­¤  "LGDT". mov eax,cr0 ;¯¥à¥©â¨ or al,01 ;¢ § é¨éñ­­ë© mov cr0,eax ;०¨¬. ;............................ push 08h ;ãáâ ­®¢¨¬ pop ds ;ᥫ¥ªâ®à DS. push ds ;ãáâ ­®¢¨¬ pop es ;ᥫ¥ªâ®à ES. ; push ds ;ãáâ ­®¢¨¬ ; pop fs ;ᥫ¥ªâ®à FS. ; push ds ;ãáâ ­®¢¨¬ ; pop gs ;ᥫ¥ªâ®à GS. ;............................ and al,not 01 ;¯¥à¥ª«îç¨âáï mov cr0,eax ;¢ ॠ«ì­ë© ०¨¬. ;............................ in al,70h ;à §à¥è¨âì and al,7fh ;­¥¬ áª¨àã¥¬ë¥ out 70h,al ;¯à¥à뢠­¨ï (NMI). sti ;à §à¥è¨¬ ¯à¥à뢠­¨ï. ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ push cs ;ãáâ ­®¢¨âì pop ss ;ॣ¨áâà SS, mov sp,offset start ;ॣ¨áâà SP push cs ;ãáâ ­®¢¨¬ pop ds ;ᥣ¬¥­â DS. ; push cs ;ãáâ ­®¢¨¬ ; pop es ;ᥣ¬¥­â ES. ;............................ mov bx,sp ;BX = "start" push 13cdh ;INT 13H. push ds ;64-¡¨â­®¥ push ds ;ᬥ饭¨¥ push ds ;­ ç «  push ds ;à §¤¥« . push ds ;DS:BX ¡ãä¥à push bx ;ç⥭¨ï/§ ¯¨á¨. push 01h ;1- ᥪâ®à. push 10h ;............................ mov si,sp ;¡«®ª ¯ à ¬¥â஢. push 4 ptr ds:[start+1beh+8] ;§ £à㧨âì pop 4 ptr ds:[si+8] ;ᬥ饭¨¥. mov ax,4200h ;¯à®ç¨â âì ¨ jmp start-02 ;¨á¯®«­¨âì BPR. ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ gdt0 dw 15,offset gdt0-2,0 ;à §¬¥à ¨  ¤à¥á GDT. db 0ffh,0ffh,000h,00h ;16-¡¨â­ë© db 000h,092h,0cfh,00h ;4 ƒ¡ ᥣ¬¥­â. ;ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ cseg ends end start