ReactOS  0.4.14-dev-323-g6fe6a88
x86common.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define HEX(y)   0x##y
 
#define BIOSCALLBUFFER   HEX(4000) /* Buffer to store temporary data for any Int386() call */
 
#define STACK16ADDR   HEX(6F00) /* The 16-bit stack top will be at 0000:6F00 */
 
#define BSS_START   HEX(6F00)
 
#define STACKLOW   HEX(7000)
 
#define STACKADDR   HEX(F000) /* The 32/64-bit stack top will be at 0000:F000, or 0xF000 */
 
#define FREELDR_BASE   HEX(F800)
 
#define FREELDR_PE_BASE   HEX(10000)
 
#define MEMORY_MARGIN   HEX(88000) /* We need this much memory */
 
#define BIOSCALLBUFSEGMENT   (BIOSCALLBUFFER/16) /* Buffer to store temporary data for any Int386() call */
 
#define BIOSCALLBUFOFFSET   HEX(0000) /* Buffer to store temporary data for any Int386() call */
 
#define BIOSCALLBUFSIZE   PAGE_SIZE /* max is sizeof(VESA_SVGA_INFO) = 512 */
 
#define MAX_FREELDR_PE_SIZE   (MEMORY_MARGIN - FREELDR_PE_BASE - PAGE_SIZE)
 
#define MAX_DISKREADBUFFER_SIZE   HEX(FE00)
 
#define BSS_RealModeEntry   (BSS_START + 0)
 
#define BSS_CallbackReturn   (BSS_START + 4)
 
#define BSS_RegisterSet   (BSS_START + 8) /* size = 40 */
 
#define BSS_IntVector   (BSS_START + 52)
 
#define BSS_PxeEntryPoint   (BSS_START + 56)
 
#define BSS_PxeBufferSegment   (BSS_START + 60)
 
#define BSS_PxeBufferOffset   (BSS_START + 64)
 
#define BSS_PxeFunction   (BSS_START + 68)
 
#define BSS_PxeResult   (BSS_START + 72)
 
#define BSS_PnpBiosEntryPoint   (BSS_START + 76)
 
#define BSS_PnpBiosDataSegment   (BSS_START + 80)
 
#define BSS_PnpBiosBufferSegment   (BSS_START + 84)
 
#define BSS_PnpBiosBufferOffset   (BSS_START + 88)
 
#define BSS_PnpNodeSize   (BSS_START + 92)
 
#define BSS_PnpNodeCount   (BSS_START + 96)
 
#define BSS_PnpNodeNumber   (BSS_START + 100)
 
#define BSS_PnpResult   (BSS_START + 104)
 
#define BSS_BootDrive   (BSS_START + 108)
 
#define BSS_BootPartition   (BSS_START + 109)
 
#define FNID_Int386   0
 
#define FNID_Reboot   1
 
#define FNID_Relocator16Boot   2
 
#define FNID_PxeCallApi   3
 
#define FNID_PnpBiosGetDeviceNodeCount   4
 
#define FNID_PnpBiosGetDeviceNode   5
 
#define CR0_PE_SET   HEX(00000001) /* OR this value with CR0 to enable pmode */
 
#define CR0_PE_CLR   HEX(FFFFFFFE) /* AND this value with CR0 to disable pmode */
 
#define NULL_DESC   HEX(00) /* NULL descriptor */
 
#define PMODE_CS   HEX(08) /* PMode code selector, base 0 limit 4g */
 
#define PMODE_DS   HEX(10) /* PMode data selector, base 0 limit 4g */
 
#define RMODE_CS   HEX(18) /* RMode code selector, base 0 limit 64k */
 
#define RMODE_DS   HEX(20) /* RMode data selector, base 0 limit 64k */
 
#define LMODE_CS   HEX(10)
 
#define LMODE_DS   HEX(18)
 
#define CMODE_CS   HEX(30)
 

Macro Definition Documentation

◆ BIOSCALLBUFFER

#define BIOSCALLBUFFER   HEX(4000) /* Buffer to store temporary data for any Int386() call */

Definition at line 12 of file x86common.h.

◆ BIOSCALLBUFOFFSET

#define BIOSCALLBUFOFFSET   HEX(0000) /* Buffer to store temporary data for any Int386() call */

Definition at line 22 of file x86common.h.

◆ BIOSCALLBUFSEGMENT

#define BIOSCALLBUFSEGMENT   (BIOSCALLBUFFER/16) /* Buffer to store temporary data for any Int386() call */

Definition at line 21 of file x86common.h.

◆ BIOSCALLBUFSIZE

#define BIOSCALLBUFSIZE   PAGE_SIZE /* max is sizeof(VESA_SVGA_INFO) = 512 */

Definition at line 23 of file x86common.h.

◆ BSS_BootDrive

#define BSS_BootDrive   (BSS_START + 108)

Definition at line 50 of file x86common.h.

◆ BSS_BootPartition

#define BSS_BootPartition   (BSS_START + 109)

Definition at line 51 of file x86common.h.

◆ BSS_CallbackReturn

#define BSS_CallbackReturn   (BSS_START + 4)

Definition at line 34 of file x86common.h.

◆ BSS_IntVector

#define BSS_IntVector   (BSS_START + 52)

Definition at line 36 of file x86common.h.

◆ BSS_PnpBiosBufferOffset

#define BSS_PnpBiosBufferOffset   (BSS_START + 88)

Definition at line 45 of file x86common.h.

◆ BSS_PnpBiosBufferSegment

#define BSS_PnpBiosBufferSegment   (BSS_START + 84)

Definition at line 44 of file x86common.h.

◆ BSS_PnpBiosDataSegment

#define BSS_PnpBiosDataSegment   (BSS_START + 80)

Definition at line 43 of file x86common.h.

◆ BSS_PnpBiosEntryPoint

#define BSS_PnpBiosEntryPoint   (BSS_START + 76)

Definition at line 42 of file x86common.h.

◆ BSS_PnpNodeCount

#define BSS_PnpNodeCount   (BSS_START + 96)

Definition at line 47 of file x86common.h.

◆ BSS_PnpNodeNumber

#define BSS_PnpNodeNumber   (BSS_START + 100)

Definition at line 48 of file x86common.h.

◆ BSS_PnpNodeSize

#define BSS_PnpNodeSize   (BSS_START + 92)

Definition at line 46 of file x86common.h.

◆ BSS_PnpResult

#define BSS_PnpResult   (BSS_START + 104)

Definition at line 49 of file x86common.h.

◆ BSS_PxeBufferOffset

#define BSS_PxeBufferOffset   (BSS_START + 64)

Definition at line 39 of file x86common.h.

◆ BSS_PxeBufferSegment

#define BSS_PxeBufferSegment   (BSS_START + 60)

Definition at line 38 of file x86common.h.

◆ BSS_PxeEntryPoint

#define BSS_PxeEntryPoint   (BSS_START + 56)

Definition at line 37 of file x86common.h.

◆ BSS_PxeFunction

#define BSS_PxeFunction   (BSS_START + 68)

Definition at line 40 of file x86common.h.

◆ BSS_PxeResult

#define BSS_PxeResult   (BSS_START + 72)

Definition at line 41 of file x86common.h.

◆ BSS_RealModeEntry

#define BSS_RealModeEntry   (BSS_START + 0)

Definition at line 33 of file x86common.h.

◆ BSS_RegisterSet

#define BSS_RegisterSet   (BSS_START + 8) /* size = 40 */

Definition at line 35 of file x86common.h.

◆ BSS_START

#define BSS_START   HEX(6F00)

Definition at line 14 of file x86common.h.

◆ CMODE_CS

#define CMODE_CS   HEX(30)

Definition at line 77 of file x86common.h.

◆ CR0_PE_CLR

#define CR0_PE_CLR   HEX(FFFFFFFE) /* AND this value with CR0 to disable pmode */

Definition at line 64 of file x86common.h.

◆ CR0_PE_SET

#define CR0_PE_SET   HEX(00000001) /* OR this value with CR0 to enable pmode */

Definition at line 63 of file x86common.h.

◆ FNID_Int386

#define FNID_Int386   0

Definition at line 55 of file x86common.h.

◆ FNID_PnpBiosGetDeviceNode

#define FNID_PnpBiosGetDeviceNode   5

Definition at line 60 of file x86common.h.

◆ FNID_PnpBiosGetDeviceNodeCount

#define FNID_PnpBiosGetDeviceNodeCount   4

Definition at line 59 of file x86common.h.

◆ FNID_PxeCallApi

#define FNID_PxeCallApi   3

Definition at line 58 of file x86common.h.

◆ FNID_Reboot

#define FNID_Reboot   1

Definition at line 56 of file x86common.h.

◆ FNID_Relocator16Boot

#define FNID_Relocator16Boot   2

Definition at line 57 of file x86common.h.

◆ FREELDR_BASE

#define FREELDR_BASE   HEX(F800)

Definition at line 17 of file x86common.h.

◆ FREELDR_PE_BASE

#define FREELDR_PE_BASE   HEX(10000)

Definition at line 18 of file x86common.h.

◆ HEX

#define HEX (   y)    0x##y

Definition at line 3 of file x86common.h.

◆ LMODE_CS

#define LMODE_CS   HEX(10)

Definition at line 75 of file x86common.h.

◆ LMODE_DS

#define LMODE_DS   HEX(18)

Definition at line 76 of file x86common.h.

◆ MAX_DISKREADBUFFER_SIZE

#define MAX_DISKREADBUFFER_SIZE   HEX(FE00)

Definition at line 30 of file x86common.h.

◆ MAX_FREELDR_PE_SIZE

#define MAX_FREELDR_PE_SIZE   (MEMORY_MARGIN - FREELDR_PE_BASE - PAGE_SIZE)

Definition at line 24 of file x86common.h.

◆ MEMORY_MARGIN

#define MEMORY_MARGIN   HEX(88000) /* We need this much memory */

Definition at line 19 of file x86common.h.

◆ NULL_DESC

#define NULL_DESC   HEX(00) /* NULL descriptor */

Definition at line 68 of file x86common.h.

◆ PMODE_CS

#define PMODE_CS   HEX(08) /* PMode code selector, base 0 limit 4g */

Definition at line 69 of file x86common.h.

◆ PMODE_DS

#define PMODE_DS   HEX(10) /* PMode data selector, base 0 limit 4g */

Definition at line 70 of file x86common.h.

◆ RMODE_CS

#define RMODE_CS   HEX(18) /* RMode code selector, base 0 limit 64k */

Definition at line 71 of file x86common.h.

◆ RMODE_DS

#define RMODE_DS   HEX(20) /* RMode data selector, base 0 limit 64k */

Definition at line 72 of file x86common.h.

◆ STACK16ADDR

#define STACK16ADDR   HEX(6F00) /* The 16-bit stack top will be at 0000:6F00 */

Definition at line 13 of file x86common.h.

◆ STACKADDR

#define STACKADDR   HEX(F000) /* The 32/64-bit stack top will be at 0000:F000, or 0xF000 */

Definition at line 16 of file x86common.h.

◆ STACKLOW

#define STACKLOW   HEX(7000)

Definition at line 15 of file x86common.h.