Add support for QMAGIC.

This commit is contained in:
mycroft 1993-04-16 12:09:18 +00:00
parent 9b18e2903e
commit 2d8799343e

View File

@ -45,18 +45,21 @@
#define __LDPGSZ 1024
#endif
#define N_ALIGN(ex,x) \
((ex).a_magic == ZMAGIC || (ex).a_magic == QMAGIC ? \
((x) + __LDPGSZ - 1) & ~(__LDPGSZ - 1) : (x))
/* Valid magic number check. */
#define N_BADMAG(ex) \
((ex).a_magic != NMAGIC && (ex).a_magic != OMAGIC && \
(ex).a_magic != ZMAGIC)
(ex).a_magic != ZMAGIC && (ex).a_magic != QMAGIC)
/* Address of the bottom of the text segment. */
#define N_TXTADDR(X) 0
#define N_TXTADDR(ex) ((ex).a_magic == QMAGIC ? __LDPGSZ : 0)
/* Address of the bottom of the data segment. */
#define N_DATADDR(ex) \
(N_TXTADDR(ex) + ((ex).a_magic == OMAGIC ? (ex).a_text \
: __LDPGSZ + ((ex).a_text - 1 & ~(__LDPGSZ - 1))))
N_ALIGN(ex, N_TXTADDR(x) + (ex).a_text)
/* Text segment offset. */
#define N_TXTOFF(ex) \
@ -64,13 +67,11 @@
/* Data segment offset. */
#define N_DATOFF(ex) \
(N_TXTOFF(ex) + ((ex).a_magic != ZMAGIC ? (ex).a_text \
: __LDPGSZ + ((ex).a_text - 1 & ~(__LDPGSZ - 1))))
N_ALIGN(ex, N_TXTOFF(x) + (ex).a_text)
/* Symbol table offset. */
#define N_SYMOFF(ex) \
(N_TXTOFF(ex) + (ex).a_text + (ex).a_data + (ex).a_trsize + \
(ex).a_drsize)
(N_DATOFF(ex) + (ex).a_data + (ex).a_trsize + (ex).a_drsize)
/* String table offset. */
#define N_STROFF(ex) (N_SYMOFF(ex) + (ex).a_syms)