# Magic for SMOKE-16
#
#  smoke16/magic - Magic numbers for SMOKE-16 executables and object files.
#  $Revision: 1.7 $
#

# All of the objects and executables here assume the Mirrors system
# call interface. For the moment this is implicit, since Mirrors is
# the only SMOKE-16 system call interface.

# Magic numbers for SMOKE-16 v0 a.out files (18-byte exec header)
# SMOKE-16 "v0" OMAGIC, NMAGIC and JMAGIC executables are loaded at 0x0000 by default

0	belong&017777777777	036000407	SMOKE-16 "v0" object or impure executable (OMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>10	ubeshort	>0	- not stripped
>14	beshort		>0	- impure text
>16	beshort		>0	- impure data

0	belong&017777777777	036000410	SMOKE-16 "v0" pure executable (NMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>10	ubeshort	>0	- not stripped
>14	beshort		>0	- impure text
>16	beshort		>0	- impure data
>12	ubeshort	x	- entry: %#4.4hx

0	belong&017777777777	036000411	SMOKE-16 "v0" split I&D executable (JMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>10	ubeshort	>0	- not stripped
>14	beshort		>0	- impure text
>16	beshort		>0	- impure data
>12	ubeshort	x	- entry: %#4.4hx

0	belong&017777777777	036000440	SMOKE-16 "v0" object archive (LMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>10     ubeshort        0       - no symbol table

# Magic numbers for SMOKE-16 v1 a.out files (22-byte exec header)
# SMOKE-16 v1 OMAGIC, NMAGIC and JMAGIC executables are loaded at 0x0400 by default

0	belong&017777777777	0136000407	SMOKE-16 v1 object or impure executable (OMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>14	ubeshort	>0	- not stripped
>18	beshort		>0	- impure text
>20	beshort		>0	- impure data
>16	ubeshort	x	- entry: %#4.4hx

0	belong&017777777777	0136000410	SMOKE-16 v1 pure executable (NMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>14	ubeshort	>0	- not stripped
>18	beshort		>0	- impure text
>20	beshort		>0	- impure data
>16	ubeshort	x	- entry: %#4.4hx

0	belong&017777777777	0136000411	SMOKE-16 v1 split I&D executable (JMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>14	ubeshort	>0	- not stripped
>18	beshort		>0	- impure text
>20	beshort		>0	- impure data
>16	ubeshort	x	- entry: %#4.4hx

0	belong&017777777777	0136000440	SMOKE-16 v1 object archive (LMAGIC)
>0	byte&0x80	0x80	- dynamically linked
>14     ubeshort        0       - no symbol table
