1b6cee71dSXin LI 2b6cee71dSXin LI#------------------------------------------------------------------------------ 3*ae316d1dSXin LI# $File: motorola,v 1.13 2024/02/11 21:25:17 christos Exp $ 4b6cee71dSXin LI# motorola: file(1) magic for Motorola 68K and 88K binaries 5b6cee71dSXin LI# 6b6cee71dSXin LI# 68K 7b6cee71dSXin LI# 8b6cee71dSXin LI0 beshort 0520 mc68k COFF 9b6cee71dSXin LI>18 beshort ^00000020 object 10b6cee71dSXin LI>18 beshort &00000020 executable 11b6cee71dSXin LI>12 belong >0 not stripped 12b6cee71dSXin LI>168 string .lowmem Apple toolbox 13b6cee71dSXin LI>20 beshort 0407 (impure) 14b6cee71dSXin LI>20 beshort 0410 (pure) 15b6cee71dSXin LI>20 beshort 0413 (demand paged) 16b6cee71dSXin LI>20 beshort 0421 (standalone) 17b6cee71dSXin LI0 beshort 0521 mc68k executable (shared) 18b6cee71dSXin LI>12 belong >0 not stripped 19b6cee71dSXin LI0 beshort 0522 mc68k executable (shared demand paged) 20b6cee71dSXin LI>12 belong >0 not stripped 21*ae316d1dSXin LI 22*ae316d1dSXin LI# Motorola 68000 COFF object file 23*ae316d1dSXin LI0 leshort 0x0268 24*ae316d1dSXin LI>16 leshort 0 25*ae316d1dSXin LI>>0 use display-coff 26*ae316d1dSXin LI 27b6cee71dSXin LI# 28b6cee71dSXin LI# Motorola/UniSoft 68K Binary Compatibility Standard (BCS) 29b6cee71dSXin LI# 30b6cee71dSXin LI0 beshort 0554 68K BCS executable 31b6cee71dSXin LI# 32b6cee71dSXin LI# 88K 33b6cee71dSXin LI# 34b6cee71dSXin LI# Motorola/88Open BCS 35b6cee71dSXin LI# 36b6cee71dSXin LI0 beshort 0555 88K BCS executable 37b6cee71dSXin LI# 38b6cee71dSXin LI# Motorola S-Records, from Gerd Truschinski <gt@freebsd.first.gmd.de> 39b6cee71dSXin LI0 string S0 Motorola S-Record; binary data in text format 40b6cee71dSXin LI 41b6cee71dSXin LI# ATARI ST relocatable PRG 42b6cee71dSXin LI# 43b6cee71dSXin LI# from Oskar Schirmer <schirmer@scara.com> Feb 3, 2001 44b6cee71dSXin LI# (according to Roland Waldi, Oct 21, 1987) 45b6cee71dSXin LI# besides the magic 0x601a, the text segment size is checked to be 46b6cee71dSXin LI# not larger than 1 MB (which is a lot on ST). 47b6cee71dSXin LI# The additional 0x601b distinction I took from Doug Lee's magic. 48b6cee71dSXin LI0 belong&0xFFFFFFF0 0x601A0000 Atari ST M68K contiguous executable 49b6cee71dSXin LI>2 belong x (txt=%d, 50b6cee71dSXin LI>6 belong x dat=%d, 51b6cee71dSXin LI>10 belong x bss=%d, 52b6cee71dSXin LI>14 belong x sym=%d) 53b6cee71dSXin LI0 belong&0xFFFFFFF0 0x601B0000 Atari ST M68K non-contig executable 54b6cee71dSXin LI>2 belong x (txt=%d, 55b6cee71dSXin LI>6 belong x dat=%d, 56b6cee71dSXin LI>10 belong x bss=%d, 57b6cee71dSXin LI>14 belong x sym=%d) 58b6cee71dSXin LI 59b6cee71dSXin LI# Atari ST/TT... program format (sent by Wolfram Kleff <kleff@cs.uni-bonn.de>) 60b6cee71dSXin LI0 beshort 0x601A Atari 68xxx executable, 61b6cee71dSXin LI>2 belong x text len %u, 62b6cee71dSXin LI>6 belong x data len %u, 63b6cee71dSXin LI>10 belong x BSS len %u, 64b6cee71dSXin LI>14 belong x symboltab len %u, 65b6cee71dSXin LI>18 belong 0 66b6cee71dSXin LI>22 belong &0x01 fastload flag, 67b6cee71dSXin LI>22 belong &0x02 may be loaded to alternate RAM, 68b6cee71dSXin LI>22 belong &0x04 malloc may be from alternate RAM, 6943a5ec4eSXin LI>22 belong x flags: %#X, 70b6cee71dSXin LI>26 beshort 0 no relocation tab 71b6cee71dSXin LI>26 beshort !0 + relocation tab 72b6cee71dSXin LI>30 string SFX [Self-Extracting LZH SFX archive] 73b6cee71dSXin LI>38 string SFX [Self-Extracting LZH SFX archive] 74b6cee71dSXin LI>44 string ZIP! [Self-Extracting ZIP SFX archive] 75b6cee71dSXin LI 76b6cee71dSXin LI0 beshort 0x0064 Atari 68xxx CPX file 77b6cee71dSXin LI>8 beshort x (version %04x) 78