+/**
+ * \brief Representation of a page in a binary file
+ *
+ * Tells the binary loader where the page data resides on disk and where
+ * to load it to (relative to the binary base). Once the data is read,
+ * the \a Physical field contains the physical address of the page.
+ */
+typedef struct sBinaryPage
+{
+ /**
+ * \brief Physical address, or file offset
+ *
+ * Physical address of this page or, when the file is not yet
+ * loaded, this is a file offset (or -1 for uninitialised data)
+ */
+ tPAddr Physical;
+ tVAddr Virtual; //!< Virtual load address
+ Uint16 Size; //!< Number of bytes to load from the file
+ Uint16 Flags; //!< Load Flags
+} __attribute__ ((packed)) tBinaryPage;
+
+/**
+ * \brief Flags for ::tBinaryPage.Flags
+ * \name Binary Page Flags
+ * \{
+ */
+//! \brief Read-only
+#define BIN_PAGEFLAG_RO 0x0001
+//! \brief Executable
+#define BIN_PAGEFLAG_EXEC 0x0002
+/**
+ * \}
+ */
+