Update README to include info on VARLOW variables.
Signed-off-by: Kevin O'Connor <email@example.com>
diff --git a/README b/README
index a87a0ad..daa38a9 100644
@@ -98,19 +98,22 @@
Most BIOS variables are stored in global variables, the "BDA", or
"EBDA" memory areas. Because this is common, three sets of helper
macros (GET/SET_GLOBAL, GET/SET_BDA, and GET/SET_EBDA) are available
-to simplify these accesses.
+to simplify these accesses. Also, an area in the 0xc0000-0xf0000
+memory range is made available for internal BIOS run-time variables
+that are marked iwth the VARLOW attribute. These variables can then
+be accessed with the GET/SET_LOW macros.
Global variables defined in the C code can be read in 16bit mode if
-the variable declaration is marked with VAR16, VAR16VISIBLE,
-VAR16EXPORT, or VAR16FIXED. The GET_GLOBAL macro will then allow read
-access to the variable. Global variables are stored in the 0xf000
-segment. Because the f-segment is marked read-only during run-time,
-the 16bit code is not permitted to change the value of 16bit variables
-(use of the SET_GLOBAL macro from 16bit mode will cause a link error).
-Code running in 32bit mode can not access variables with VAR16, but
-can access variables marked with VAR16VISIBLE, VAR16EXPORT,
-VAR16FIXED, or with no marking at all. The 32bit code can use the
-GET/SET_GLOBAL macros, but they are not required.
+the variable declaration is marked with VAR16, VARFSEG, or VAR16FIXED.
+The GET_GLOBAL macro will then allow read access to the variable.
+Global variables are stored in the 0xf000 segment. Because the
+f-segment is marked read-only during run-time, the 16bit code is not
+permitted to change the value of 16bit variables (use of the
+SET_GLOBAL macro from 16bit mode will cause a link error). Code
+running in 32bit mode can not access variables with VAR16, but can
+access variables marked with VARFSEG, VARLOW, VAR16FIXED, or with no
+marking at all. The 32bit code can use the GET/SET_GLOBAL macros, but
+they are not required.
GCC 16 bit stack limitations: