LOADALL - 80286

80286

Opcode 0F05. The instruction reads data from addresses 00800-00866, whatever the content of the segment registers.

Address number of bytes register register register register
00800 6 not used
00806 2 MSW (machine status word)
00808 14 not used
00816 2 TR (task register)
00818 2 flags
0081A 2 IP (instruction pointer)
0081C 2 LDTR (local descriptor table register)
0081E 4x2 DS (data segment) SS (stack segment) CS (code segment) ES (extra segment)
00826 4x2 DI (destination index) SI (source index) BP (base pointer) SP (stack pointer)
0082E 4x2 BX DX CX AX
00836 4x6 ES segment descriptor CS segment descriptor SS segment descriptor DS segment descriptor
0084E 4x6 GDT, global descriptor table LDT, local descriptor table IDT, interrupt descriptor table TSS, task state segment

Note that the 80286 LOADALL instruction can not be used to switch from protected back to real mode (it can't clear the PE bit in the MSW). However, use of the LOADALL instruction can avoid the need to switch to protected mode altogether.

Read more about this topic:  LOADALL