1
0
Files
irix-657m-src/eoe/cmd/file/magic
T
2022-09-29 17:59:04 +03:00

547 lines
19 KiB
Plaintext

#ident "$Revision: 1.80 $"
# file cmd's magic file
#
#
# Basically, the fields of this file are as follows:
# byte offset, value type, optional operator (= by default), value
# to match (numeric or string), message identifier for the string
# to be printed and a default string if the specified string cannot
# be retrieved from the message databases. Numeric
# values may be decimal, octal, or hex or addr. addr is simply the
# address of the match in memory, useful primarily with printf formats.
# A matching value "x" matches anything for non-string value types.
# Also note that the last string may have 1 printf format spec.
# The message identifier field
# can be omitted, in which case the default string will be used as is.
# Also note that the last string may have 1 printf format spec.
# The '>' in occassional column 1's is magic: it forces file to
# continue scanning and matching additional lines. The first line
# afterwards not so marked terminates the search.
# Fields must be tab separated.
#
# Note that by combining the "addr" value type with a matching value
# of "x" (match anything for non-string value types), and a printf
# format of "%s", one can print arbitrary strings. The string will
# be printed up to the first \0 or \n, whichever comes first.
# See the #! entries for an example.
#
# unix mail files
0 string From Mail
>5 addr x from %s
#
0 string ELF ELF
>4 byte 1 uxcore:226 32-bit
>5 byte 1 uxcore:227 LSB
>5 byte 2 uxcore:228 MSB
>16 short 0 uxcore:229 unknown type
>16 short 1 uxcore:230 relocatable
>16 short 2 uxcore:231 executable
>16 short 3 uxcore:232 dynamic lib
>16 short 4 uxcore:233 core file
#>18 short 0 uxcore:234 unknown machine
>18 short 0 uxsgicore:10 MIPS (Cypress Proto)
>18 short 1 WE32100
>18 short 2 SPARC
>18 short 3 80386
>18 short 4 M68000
>18 short 5 M88000
>18 short 8 uxsgicore:11 MIPS
>18 short 0x49 uxcore:751 NV1
>20 long 1 uxcore:235 Version 1
>36 long 1 uxcore:236 MAU Required
0 string 070701 uxcore:648 expanded ASCII cpio archive
0 string 070702 uxcore:649 expanded ASCII cpio archive - CRC header
0 short 070707 uxcore:237 cpio archive
0 string 070707 uxcore:650 ASCII cpio archive
0 long 0177555 uxcore:243 obsolete ar archive
0 short 0177545 uxcore:244 pdp11/pre System V ar archive
0 long 0100554 uxcore:245 apl workspace
#
# Note that the rule for DV DIF files needs to come before the rule
# for packed/compressed/gzip'ed data, since the latter matches more
# loosely than the former, and the DV rules will not get a chance to run
# if they are after the packed/compressed/gzipped rules. (0x1f == 037)
#
1 short 0x0700 DIF
>4 byte &0x01 (DVCPRO) movie file
>4 byte ^0x01 (DV) movie file
>3 byte &0x80 (PAL)
>3 byte ^0x80 (NTSC)
0 byte 037
>1 byte 036 uxcore:246 packed data
>1 byte 0235 uxcore:571 compressed data
>1 byte 0213 gzip compressed data
0 string <ar> uxcore:247 System V Release 1 ar archive
0 string !<arch> uxcore:248 current ar archive
0 string !<arch>\n__________E uxsgicore:12 MIPS archive
>20 string U uxsgicore:13 with MIPS Ucode members
>21 string L uxsgicore:14 with MIPSEL members
>21 string B uxsgicore:15 with MIPSEB members
>19 string L uxsgicore:16 and an EL hash table
>19 string B uxsgicore:17 and an EB hash table
>22 string X uxsgicore:18 -- out of date
#
0 short 0407 uxcore:249 pdp11/pre System V vax executable
>8 short >0 uxcore:250 not stripped
>15 byte >0 uxcore:251 - version %ld
0 short 0401 uxcore:252 unix-rt ldp
0 short 0405 uxcore:253 pdp11 overlay
0 short 0410 uxcore:254 pdp11/pre System V vax pure executable
>8 short >0 uxcore:250 not stripped
>15 byte >0 uxcore:251 - version %ld
0 short 0411 uxcore:255 pdp11 separate I&D
>8 short >0 uxcore:250 not stripped
>15 byte >0 uxcore:251 - version %ld
0 short 0x1a01 uxcore:256 Compiled Terminfo Entry
0 short 0433 uxcore:257 Curses screen image
0 short 0434 uxcore:257 Curses screen image
0 short 0437 uxcore:258 pdp11 kernel overlay
0 short 0570 uxcore:259 vax executable
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0575 uxcore:260 vax pure executable
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0502 uxcore:261 basic-16 executable
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0503 uxcore:262 basic-16 executable (TV)
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0510 uxcore:263 x86 executable
>12 long >0 uxcore:250 not stripped
0 short 0511 uxcore:264 x86 executable (TV)
>12 long >0 uxcore:250 not stripped
0 short 0550 uxcore:265 3b20 executable
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0551 uxcore:266 3b20 executable (TV)
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0560 uxcore:267 WE32000 executable
>12 long >0 uxcore:250 not stripped
>18 short ^00010000 uxcore:268 - N/A on 3b2/300 w/paging
>18 short &00020000 uxcore:269 - 32100 required
>18 short &00040000 uxcore:270 and mau hardware required
>20 short 0443 uxcore:271 (target shared library)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>22 short >0 uxcore:251 - version %ld
0 short 0561 uxcore:274 WE32000 executable (TV)
>12 long >0 uxcore:250 not stripped
>18 short &00020000 uxcore:269 - 32100 required
>18 short &00040000 uxcore:270 and mau hardware required
>22 short >0 uxcore:251 - version %ld
0 string MZ uxcore:565 DOS executable (EXE)
0 string LZ uxcore:566 DOS built-in
#Comment out due to conflict with SJIS characters.
#Uncomment the entry if the site sees a lot of DOS executables.
#0 byte 0xe9 uxcore:567 DOS executable (COM)
0 byte 0xeb uxcore:567 DOS executable (COM)
0 short =0512 uxcore:275 iAPX 286 executable small model (COFF)
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short =0522 uxcore:276 iAPX 286 executable large model (COFF)
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 short 0520 uxcore:277 mc68k executable
>12 long >0 uxcore:250 not stripped
0 short 0521 uxcore:278 mc68k executable (shared)
>12 long >0 uxcore:250 not stripped
0 short 0522 uxcore:279 mc68k executable (shared demand paged)
>12 long >0 uxcore:250 not stripped
0 short =0514 uxcore:568 iAPX 386 executable
>12 long >0 uxcore:250 not stripped
>22 short >0 uxcore:251 - version %ld
0 string core uxcore:569 core file (Xenix)
0 byte 0x80 uxcore:280 8086 relocatable (Microsoft)
0 byte 0xf0 uxcore:281 MS-DOS library
0 short 0xff65 x.out
>2 string __.SYMDEF uxcore:282 randomized
>0 byte x uxcore:283 archive
0 short 0x206 uxcore:284 Microsoft a.out
>0x1e short &0x10 uxcore:285 overlay
>0x1e short &0x2 uxcore:286 separate
>0x1e short &0x4 uxcore:287 pure
>0x1e short &0x800 uxcore:288 segmented
>0x1e short &0x400 uxcore:289 standalone
>0x1e short &0x8 uxcore:290 fixed-stack
>0x1c byte &0x80 uxcore:291 byte-swapped
>0x1c byte &0x40 uxcore:292 word-swapped
>0x10 long >0 uxcore:293 not-stripped
>0x1e short ^0xc000 uxcore:294 pre-SysV
>0x1e short &0x4000 V2.3
>0x1e short &0x8000 V3.0
>0x1c byte &0x4 86
>0x1c byte &0xb 186
>0x1c byte &0x29 286
>0x1c byte &0x9 286
>0x1c byte &0xa 386
>0x1e short &0x1 uxcore:231 executable
>0x1e short ^0x1 uxcore:295 object file
>0x1e short &0x40 uxcore:296 Large Text
>0x1e short &0x20 uxcore:297 Large Data
>0x1e short &0x120 uxcore:298 Huge Objects Enabled
0 short 0x10b uxcore:299 VAX demand load format a.out object file
>0x10 long >0 uxcore:250 not stripped
#conflicts with MIPS-III
#0 short 0x140 uxcore:300 old Microsoft 8086 x.out
#>0x3 byte &0x4 uxcore:286 separate
#>0x3 byte &0x2 uxcore:287 pure
#>0 byte &0x1 uxcore:231 executable
#>0 byte ^0x1 uxcore:230 relocatable
#>0x14 long >0 uxcore:250 not stripped
0 long 0x10b uxcore:299 VAX demand load format a.out object file
>0x10 long >0 uxcore:250 not stripped
0 long 0x140 uxcore:300 old Microsoft 8086 x.out
>0x3 byte &0x4 uxcore:286 separate
>0x3 byte &0x2 uxcore:287 pure
>0 byte &0x1 uxcore:231 executable
>0 byte ^0x1 uxcore:230 relocatable
>0x14 long >0 uxcore:250 not stripped
0 long 0xe807 uxcore:301 object file (z8000 a.out)
0 long 0xe808 uxcore:302 pure object file (z8000 a.out)
0 long 0xe809 uxcore:303 separate object file (z8000 a.out)
0 long 0xe805 uxcore:304 overlay object file (z8000 a.out)
0 long 0x178 uxcore:305 Bell 5.0 executable
# Compressed information
0 short 017635 uxcore:570 compressed data
0 short 0116437 uxcore:571 compressed data
>2 byte 0214 uxcore:572 - with 12 bits
>2 byte 0215 uxcore:573 - with 13 bits
>2 byte 0216 uxcore:574 - with 14 bits
>2 byte 0217 uxcore:575 - with 15 bits
>2 byte 0220 uxcore:576 - with 16 bits
# kbd file definitions
0 string kbd!map uxcore:687 kbd map file
>8 byte >0 uxcore:688 Ver %d:
>10 short >0 uxcore:689 with %d table(s)
##
## The following are unique to Silicon Graphics
##
0 long 0407 uxsgicore:21 old SGI 68020 executable
0 long 0410 uxsgicore:22 old SGI 68020 pure executable
0 short 0x8765 uxsgicore:23 disk quotas file
0 short 0x0506 uxsgicore:24 IRIS Showcase file
>2 byte 0x49 -
>3 byte x uxcore:251 - version %ld
0 short 0x0226 uxsgicore:25 IRIS Showcase template
>2 byte 0x63 -
>3 byte x uxcore:251 - version %ld
0 long 0x5343464d uxsgicore:24 IRIS Showcase file
>4 byte x uxcore:251 - version %ld
0 long 0x5443464d uxsgicore:25 IRIS Showcase template
>4 byte x uxcore:251 - version %ld
0 long 0xdeadbabe uxsgicore:26 IRIX Parallel Arena
>8 long >0 uxcore:251 - version %ld
#
0 short 0x0160 uxsgicore:27 MIPSEB COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x0162 uxsgicore:30 MIPSEL COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>23 byte x uxcore:251 - version %d
>22 byte x uxsgicore:29 .%ld
#
0 short 0x6001 uxsgicore:35 MIPSEB-LE COFF executable
>20 short 03401 uxcore:272 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %d
>23 byte x uxsgicore:29 .%ld
#
0 short 0x6201 uxsgicore:36 MIPSEL-LE COFF executable
>20 short 03401 uxcore:272 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>23 byte x uxcore:251 - version %ld
>22 byte x uxsgicore:29 .%ld
#
# PCF must come before MIPS 2 additions (to preempt MIPSEL MIPS-II COFF)
#
0 long 0x01666370 X11 Portable Compiled Font
#
# MIPS 2 additions
#
0 short 0x0163 uxsgicore:37 MIPSEB MIPS-II COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x0166 uxsgicore:38 MIPSEL MIPS-II COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>23 byte x uxcore:251 - version %ld
>22 byte x uxsgicore:29 .%ld
#
0 short 0x6301 uxsgicore:39 MIPSEB-LE MIPS-II COFF executable
>20 short 03401 uxsgicore:28 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x6601 uxsgicore:40 MIPSEL-LE MIPS-II COFF executable
>20 short 03401 uxsgicore:28 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>23 byte x uxcore:251 - version %ld
>22 byte x uxsgicore:29 .%ld
#
# MIPS 3 additions
#
0 short 0x0140 uxsgicore:150 MIPSEB MIPS-III COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x0142 uxsgicore:151 MIPSEL MIPS-III COFF executable
>20 short 0407 uxsgicore:28 (impure)
>20 short 0410 uxcore:272 (swapped)
>20 short 0413 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x4001 uxsgicore:152 MIPSEB-LE MIPS-III COFF executable
>20 short 03401 uxsgicore:28 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>22 byte x uxcore:251 - version %ld
>23 byte x uxsgicore:29 .%ld
#
0 short 0x4201 uxsgicore:153 MIPSEL-LE MIPS-III COFF executable
>20 short 03401 uxsgicore:28 (impure)
>20 short 04001 uxcore:272 (swapped)
>20 short 05401 uxcore:273 (paged)
>8 long >0 uxcore:250 not stripped
>23 byte x uxcore:251 - version %ld
>22 byte x uxsgicore:29 .%ld
#
0 short 0x180 uxsgicore:41 MIPSEB Ucode
0 short 0x182 uxsgicore:42 MIPSEL Ucode
# 32bit core file
0 long 0xdeadadb0 uxsgicore:43 IRIX core dump
>4 long 1 uxsgicore:44 of
>16 addr x uxsgicore:45 '%s'
# 64bit core file
0 long 0xdeadad40 uxsgicore:727 IRIX 64-bit core dump
>4 long 1 uxsgicore:44 of
>16 addr x uxsgicore:45 '%s'
# N32bit core file
0 long 0xbabec0bb uxsgicore:943 IRIX N32 core dump
>4 long 1 uxsgicore:44 of
>16 addr x uxsgicore:45 '%s'
# NV1 core file
0 long 0xdeadc0de uxcore:750 NV1 core dump
>4 long 1 uxsgicore:44 of
>16 addr x uxsgicore:45 '%s'
# New style crash dump file
0 long 0x43727368
>4 long 0x44756d70 IRIX vmcore dump of
>36 addr x '%s'
#
# Trusted IRIX info
0 string SGIAUDIT uxsgicore:154 SGI Audit file
>8 byte x uxcore:251 - version %d
>9 byte x uxsgicore:29 .%ld
#
0 short 000732 uxsgicore:19 SGI imagelib image
>6 short x uxsgicore:46 (%d x
>8 short x uxsgicore:47 %d)
0 short 0155001 uxsgicore:20 SGI imagelib image byte-swapped
0 short 017436 uxsgicore:48 packed data
0 short 017037 uxsgicore:49 packed data (byte swapped)
0 string GIF uxsgicore:50 GIF image
>3 string 87a uxsgicore:51 (version 87a)
>3 string 89a uxsgicore:52 (version 89a)
>7 byte x uxsgicore:53 (0x%x
>6 byte x uxsgicore:54 %02x
>9 byte x uxsgicore:55 x 0x%x
>8 byte x uxsgicore:56 %02x)
0 long 0x59a66a95 uxsgicore:57 raster image
8 long 0x41494646 uxsgicore:58 AIFF sound data file
8 long 0x41494643 AIFF-C sound data file
0 string RIFF MS RIFF WAVE sound data file
0 string WAVE MS RIFF WAVE sound data file
0 long 0x2e736e64 NeXT/Sun sound data file
0 string _SGI_SoundTrack IRIS SoundTrack project file
0 long 0x4e54524b uxsgicore:59 MultiTrack sound data file
>4 long x uxcore:251 - version %ld
#
# These are from the PBMPLUS package's auxiliary magic numbers file
# Most of these entries use the "string" format so that they will work on
# both big-endian and little-endian machines.
0 string begin uxsgicore:61 uuencoded file
0 string xbtoa uxsgicore:62 btoa'd file
0 string P1 uxsgicore:63 PBM file
0 string P2 uxsgicore:64 PGM file
0 string P3 uxsgicore:65 PPM file
0 string P4 uxsgicore:66 PBM "rawbits" file
0 string P5 uxsgicore:67 PGM "rawbits" file
0 string P6 uxsgicore:68 PPM "rawbits" file
0 string yz uxsgicore:69 MGR bitmap
0 long 0xf10040bb uxsgicore:70 CMU window manager bitmap
0 long 0x4d4d002a uxsgicore:71 TIFF file, big-endian
0 long 0x49492a00 uxsgicore:72 TIFF file, little-endian
8 string ILBM uxsgicore:73 IFF ILBM file
0 string "This is a BitMap file" uxsgicore:74 Lisp Machine bit-array-file
0 string !! uxsgicore:75 Bennet Yee's "face" format
#
0 string WNGZWZSC uxsgicore:76 Wingz compiled script
0 string WNGZWZSS uxsgicore:77 Wingz spreadsheet
0 string WNGZWZHP uxsgicore:78 Wingz help file
#
0 string #Inventor V1 IRIS Inventor 1.0 file
0 string #Inventor V2 Open Inventor 2.0 file
# Frame Maker types
0 string <MakerFile Frame Maker file
0 string <MIFFile Frame Maker MIF file
0 string <Bookfile Frame Maker book file
0 string <BOOKFILE Frame Maker 4.0 book file
0 string "<Book " Frame Maker MIF book file
# movie files
0 string MOVI Silicon Graphics movie file
4 string moov Apple QuickTime movie file (moov)
4 string mdat Apple QuickTime movie file (mdat)
8 string AVI AVI movie file
0 long 0x000001BA MPEG movie file
0 long 0x000001B3 MPEG movie file
#
0 string %! PostScript program text
#
0 byte 004 PostScript program text
>1 string %!
#
0 string glfHeadMagic(); GLF_TEXT
4 long 0x7d000000 GLF_BINARY_LSB_FIRST
4 long 0x0000007d GLF_BINARY_MSB_FIRST
#
0 string glsBeginGLS( GLS_TEXT
4 long 0x10000000 GLS_BINARY_LSB_FIRST
4 long 0x00000010 GLS_BINARY_MSB_FIRST
#
0 string IT01 FIT image file
>4 long x (%d x
>8 long x %d x
>12 long x %d)
#
0 string IT02 FIT image file
>4 long x (%d x
>8 long x %d x
>12 long x %d)
#
2048 string PCD_IPI Kodak Photo CD image pack file
0 string PCD_OPA Kodak Photo CD overview pack file
#
0 long 0xffd8ffe0 JPEG/JFIF compressed image file
#
# Performance Co-Pilot file types
0 string PmNs PCP compiled namespace (V.0)
0 string PmN PCP compiled namespace
>3 addr x (V.%1.1s)
3 long 0x84500526 PCP archive
>7 byte x (V.%d)
>20 long -2 temporal index
>20 long -1 metadata
>20 long 0 log volume #0
>20 long >0 log volume #%ld
>24 addr x host: %s
0 string PCPFolio PCP
>9 string Version: Archive Folio
>18 addr x (V.%s)
0 string #pmchart PCP pmchart view
>9 string Version
>17 addr x (V%-3.3s)
0 string pmview PCP pmview config
>7 string Version
>15 addr x (V%-3.3s)
0 string #pmlogger PCP pmlogger config
>10 string Version
>18 addr x (V%1.1s)
0 string PcPh PCP Help
>4 string 1 Index
>4 string 2 Text
>5 addr x (V.%1.1s)
0 string #pmieconf-rules PCP pmieconf rules
>16 addr x (V.%1.1s)
3 string pmieconf-pmie PCP pmie config
>17 addr x (V.%1.1s)
# ZIP archives (not gzip compressed data)
#0 string PK\003\004 Zip archive data
0 long 0x504b0304 Zip archive data
>4 byte 0x09 , at least v0.9 to extract
>4 byte 0x0a , at least v1.0 to extract
>4 byte 0x0b , at least v1.1 to extract
>4 byte 0x14 , at least v2.0 to extract
# Java class files
0 long 0xcafebabe Java Class File
# Compiled X Keymap
# XKM (compiled X keymap) files (including version and byte ordering)
1 string mkx Compiled XKB Keymap: lsb,
>0 byte >0 version %d
>0 byte =0 obsolete
0 string xkm Compiled XKB Keymap: msb,
>3 byte >0 version %d
>0 byte =0 obsolete
# SpeedShop data files
0 long 0x13130303 SpeedShop data file
# xfsdump archive
0 string xFSdump0 xfsdump archive
>8 long x (version %d)
# mdbm files
0 long 0x01023962 mdbm file, version 0 (obsolete)
0 string mdbm mdbm file,
>5 byte x version %d,
>6 byte x 2^%d pages,
>7 byte x pagesize 2^%d,
>17 byte x hash %d,
>11 byte x dataformat %d
# SGI RICE image file
0 short 0x5249 RICE image
>2 short x v%d
>4 short x (%d x
>6 short x %d)
>8 short 0 8 bit
>8 short 1 10 bit
>8 short 2 12 bit
>8 short 3 13 bit
>10 short 0 4:2:2
>10 short 1 4:2:2:4
>10 short 2 4:4:4
>10 short 3 4:4:4:4
>12 short 1 RGB
>12 short 2 CCIR601
>12 short 3 RP175
>12 short 4 YUV
# PalmOS file types
60 string appl PalmOS application
>0 addr >\0 "%s"
60 string HACK PalmOS Hackmaster hack
>0 addr >\0 "%s"
60 string ptch PalmOS system patch
>0 addr >\0 "%s"
60 string libr PalmOS shared library
>0 addr >\0 "%s"