polyfile-weave 0.5.5__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of polyfile-weave might be problematic. Click here for more details.
- polyfile/__init__.py +15 -0
- polyfile/__main__.py +394 -0
- polyfile/arithmetic.py +27 -0
- polyfile/ast.py +114 -0
- polyfile/debugger.py +1039 -0
- polyfile/expressions.py +346 -0
- polyfile/fileutils.py +343 -0
- polyfile/html.py +135 -0
- polyfile/http/__init__.py +1 -0
- polyfile/http/defacto.py +37 -0
- polyfile/http/deprecated.py +51 -0
- polyfile/http/experimental.py +67 -0
- polyfile/http/http_11.py +548 -0
- polyfile/http/matcher.py +37 -0
- polyfile/http/structured_headers.py +48 -0
- polyfile/iterators.py +72 -0
- polyfile/jpeg.py +24 -0
- polyfile/kaitai/__init__.py +0 -0
- polyfile/kaitai/compiler.py +156 -0
- polyfile/kaitai/parser.py +312 -0
- polyfile/kaitai/parsers/__init__.py +0 -0
- polyfile/kaitai/parsers/aix_utmp.py +116 -0
- polyfile/kaitai/parsers/allegro_dat.py +367 -0
- polyfile/kaitai/parsers/andes_firmware.py +64 -0
- polyfile/kaitai/parsers/android_bootldr_asus.py +105 -0
- polyfile/kaitai/parsers/android_bootldr_huawei.py +181 -0
- polyfile/kaitai/parsers/android_bootldr_qcom.py +217 -0
- polyfile/kaitai/parsers/android_dto.py +138 -0
- polyfile/kaitai/parsers/android_img.py +319 -0
- polyfile/kaitai/parsers/android_nanoapp_header.py +83 -0
- polyfile/kaitai/parsers/android_opengl_shaders_cache.py +151 -0
- polyfile/kaitai/parsers/android_sparse.py +237 -0
- polyfile/kaitai/parsers/android_super.py +401 -0
- polyfile/kaitai/parsers/apm_partition_table.py +196 -0
- polyfile/kaitai/parsers/apple_single_double.py +180 -0
- polyfile/kaitai/parsers/asn1_der.py +235 -0
- polyfile/kaitai/parsers/au.py +138 -0
- polyfile/kaitai/parsers/avantes_roh60.py +112 -0
- polyfile/kaitai/parsers/avi.py +296 -0
- polyfile/kaitai/parsers/bcd.py +111 -0
- polyfile/kaitai/parsers/bitcoin_transaction.py +210 -0
- polyfile/kaitai/parsers/blender_blend.py +334 -0
- polyfile/kaitai/parsers/bmp.py +780 -0
- polyfile/kaitai/parsers/bson.py +411 -0
- polyfile/kaitai/parsers/btrfs_stream.py +318 -0
- polyfile/kaitai/parsers/bytes_with_io.py +27 -0
- polyfile/kaitai/parsers/chrome_pak.py +194 -0
- polyfile/kaitai/parsers/code_6502.py +456 -0
- polyfile/kaitai/parsers/compressed_resource.py +217 -0
- polyfile/kaitai/parsers/cpio_old_le.py +154 -0
- polyfile/kaitai/parsers/cramfs.py +344 -0
- polyfile/kaitai/parsers/creative_voice_file.py +342 -0
- polyfile/kaitai/parsers/dbf.py +274 -0
- polyfile/kaitai/parsers/dcmp_0.py +664 -0
- polyfile/kaitai/parsers/dcmp_1.py +422 -0
- polyfile/kaitai/parsers/dcmp_2.py +312 -0
- polyfile/kaitai/parsers/dcmp_variable_length_integer.py +66 -0
- polyfile/kaitai/parsers/dex.py +1086 -0
- polyfile/kaitai/parsers/dicom.py +4370 -0
- polyfile/kaitai/parsers/dime_message.py +201 -0
- polyfile/kaitai/parsers/dns_packet.py +569 -0
- polyfile/kaitai/parsers/doom_wad.py +654 -0
- polyfile/kaitai/parsers/dos_datetime.py +191 -0
- polyfile/kaitai/parsers/dos_mz.py +172 -0
- polyfile/kaitai/parsers/ds_store.py +513 -0
- polyfile/kaitai/parsers/dtb.py +310 -0
- polyfile/kaitai/parsers/dune_2_pak.py +126 -0
- polyfile/kaitai/parsers/edid.py +472 -0
- polyfile/kaitai/parsers/efivar_signature_list.py +331 -0
- polyfile/kaitai/parsers/elf.py +2482 -0
- polyfile/kaitai/parsers/ethernet_frame.py +114 -0
- polyfile/kaitai/parsers/exif.py +723 -0
- polyfile/kaitai/parsers/ext2.py +537 -0
- polyfile/kaitai/parsers/fallout2_dat.py +187 -0
- polyfile/kaitai/parsers/fallout_dat.py +156 -0
- polyfile/kaitai/parsers/fasttracker_xm_module.py +558 -0
- polyfile/kaitai/parsers/ftl_dat.py +90 -0
- polyfile/kaitai/parsers/genmidi_op2.py +161 -0
- polyfile/kaitai/parsers/gettext_mo.py +541 -0
- polyfile/kaitai/parsers/gif.py +492 -0
- polyfile/kaitai/parsers/gimp_brush.py +244 -0
- polyfile/kaitai/parsers/glibc_utmp.py +114 -0
- polyfile/kaitai/parsers/gltf_binary.py +132 -0
- polyfile/kaitai/parsers/google_protobuf.py +151 -0
- polyfile/kaitai/parsers/gpt_partition_table.py +175 -0
- polyfile/kaitai/parsers/gran_turismo_vol.py +140 -0
- polyfile/kaitai/parsers/grub2_font.py +337 -0
- polyfile/kaitai/parsers/gzip.py +232 -0
- polyfile/kaitai/parsers/hashcat_restore.py +60 -0
- polyfile/kaitai/parsers/hccap.py +111 -0
- polyfile/kaitai/parsers/hccapx.py +103 -0
- polyfile/kaitai/parsers/heaps_pak.py +177 -0
- polyfile/kaitai/parsers/heroes_of_might_and_magic_agg.py +116 -0
- polyfile/kaitai/parsers/heroes_of_might_and_magic_bmp.py +34 -0
- polyfile/kaitai/parsers/icmp_packet.py +136 -0
- polyfile/kaitai/parsers/ico.py +129 -0
- polyfile/kaitai/parsers/id3v1_1.py +220 -0
- polyfile/kaitai/parsers/id3v2_3.py +324 -0
- polyfile/kaitai/parsers/id3v2_4.py +423 -0
- polyfile/kaitai/parsers/ines.py +282 -0
- polyfile/kaitai/parsers/ipv4_packet.py +158 -0
- polyfile/kaitai/parsers/ipv6_packet.py +55 -0
- polyfile/kaitai/parsers/iso9660.py +544 -0
- polyfile/kaitai/parsers/java_class.py +1113 -0
- polyfile/kaitai/parsers/jpeg.py +361 -0
- polyfile/kaitai/parsers/luks.py +149 -0
- polyfile/kaitai/parsers/lzh.py +165 -0
- polyfile/kaitai/parsers/mac_os_resource_snd.py +493 -0
- polyfile/kaitai/parsers/mach_o.py +3033 -0
- polyfile/kaitai/parsers/mach_o_fat.py +92 -0
- polyfile/kaitai/parsers/magicavoxel_vox.py +391 -0
- polyfile/kaitai/parsers/manifest.json +1 -0
- polyfile/kaitai/parsers/mbr_partition_table.py +119 -0
- polyfile/kaitai/parsers/mcap.py +1015 -0
- polyfile/kaitai/parsers/microsoft_cfb.py +293 -0
- polyfile/kaitai/parsers/microsoft_network_monitor_v2.py +309 -0
- polyfile/kaitai/parsers/microsoft_pe.py +765 -0
- polyfile/kaitai/parsers/mifare_classic.py +706 -0
- polyfile/kaitai/parsers/minecraft_nbt.py +449 -0
- polyfile/kaitai/parsers/monomakh_sapr_chg.py +69 -0
- polyfile/kaitai/parsers/mozilla_mar.py +239 -0
- polyfile/kaitai/parsers/mp4.py +333 -0
- polyfile/kaitai/parsers/msgpack.py +467 -0
- polyfile/kaitai/parsers/nitf.py +1189 -0
- polyfile/kaitai/parsers/nt_mdt_pal.py +155 -0
- polyfile/kaitai/parsers/ogg.py +118 -0
- polyfile/kaitai/parsers/openpgp_message.py +993 -0
- polyfile/kaitai/parsers/packet_ppi.py +515 -0
- polyfile/kaitai/parsers/pcap.py +344 -0
- polyfile/kaitai/parsers/pcf_font.py +506 -0
- polyfile/kaitai/parsers/pcx.py +195 -0
- polyfile/kaitai/parsers/pcx_dcx.py +79 -0
- polyfile/kaitai/parsers/phar_without_stub.py +399 -0
- polyfile/kaitai/parsers/php_serialized_value.py +505 -0
- polyfile/kaitai/parsers/png.py +721 -0
- polyfile/kaitai/parsers/protocol_body.py +260 -0
- polyfile/kaitai/parsers/psx_tim.py +104 -0
- polyfile/kaitai/parsers/python_pickle.py +718 -0
- polyfile/kaitai/parsers/python_pyc_27.py +510 -0
- polyfile/kaitai/parsers/quake_mdl.py +441 -0
- polyfile/kaitai/parsers/quake_pak.py +112 -0
- polyfile/kaitai/parsers/quicktime_mov.py +634 -0
- polyfile/kaitai/parsers/rar.py +265 -0
- polyfile/kaitai/parsers/regf.py +569 -0
- polyfile/kaitai/parsers/renderware_binary_stream.py +877 -0
- polyfile/kaitai/parsers/resource_fork.py +611 -0
- polyfile/kaitai/parsers/respack.py +57 -0
- polyfile/kaitai/parsers/riff.py +409 -0
- polyfile/kaitai/parsers/rpm.py +964 -0
- polyfile/kaitai/parsers/rtcp_payload.py +579 -0
- polyfile/kaitai/parsers/rtp_packet.py +150 -0
- polyfile/kaitai/parsers/rtpdump.py +115 -0
- polyfile/kaitai/parsers/ruby_marshal.py +423 -0
- polyfile/kaitai/parsers/s3m.py +493 -0
- polyfile/kaitai/parsers/saints_row_2_vpp_pc.py +254 -0
- polyfile/kaitai/parsers/shapefile_index.py +174 -0
- polyfile/kaitai/parsers/shapefile_main.py +893 -0
- polyfile/kaitai/parsers/some_ip.py +209 -0
- polyfile/kaitai/parsers/some_ip_container.py +37 -0
- polyfile/kaitai/parsers/some_ip_sd.py +86 -0
- polyfile/kaitai/parsers/some_ip_sd_entries.py +160 -0
- polyfile/kaitai/parsers/some_ip_sd_options.py +374 -0
- polyfile/kaitai/parsers/specpr.py +404 -0
- polyfile/kaitai/parsers/sqlite3.py +472 -0
- polyfile/kaitai/parsers/ssh_public_key.py +252 -0
- polyfile/kaitai/parsers/standard_midi_file.py +390 -0
- polyfile/kaitai/parsers/stl.py +111 -0
- polyfile/kaitai/parsers/sudoers_ts.py +201 -0
- polyfile/kaitai/parsers/swf.py +406 -0
- polyfile/kaitai/parsers/systemd_journal.py +361 -0
- polyfile/kaitai/parsers/tcp_segment.py +57 -0
- polyfile/kaitai/parsers/tga.py +213 -0
- polyfile/kaitai/parsers/tls_client_hello.py +293 -0
- polyfile/kaitai/parsers/tr_dos_image.py +322 -0
- polyfile/kaitai/parsers/tsm.py +198 -0
- polyfile/kaitai/parsers/ttf.py +1847 -0
- polyfile/kaitai/parsers/udp_datagram.py +42 -0
- polyfile/kaitai/parsers/uefi_te.py +236 -0
- polyfile/kaitai/parsers/uimage.py +198 -0
- polyfile/kaitai/parsers/utf8_string.py +137 -0
- polyfile/kaitai/parsers/vfat.py +410 -0
- polyfile/kaitai/parsers/vlq_base128_be.py +104 -0
- polyfile/kaitai/parsers/vlq_base128_le.py +129 -0
- polyfile/kaitai/parsers/vmware_vmdk.py +167 -0
- polyfile/kaitai/parsers/vp8_ivf.py +112 -0
- polyfile/kaitai/parsers/warcraft_2_pud.py +423 -0
- polyfile/kaitai/parsers/wav.py +1014 -0
- polyfile/kaitai/parsers/websocket.py +167 -0
- polyfile/kaitai/parsers/windows_evt_log.py +304 -0
- polyfile/kaitai/parsers/windows_lnk_file.py +467 -0
- polyfile/kaitai/parsers/windows_minidump.py +575 -0
- polyfile/kaitai/parsers/windows_resource_file.py +243 -0
- polyfile/kaitai/parsers/windows_shell_items.py +190 -0
- polyfile/kaitai/parsers/windows_systemtime.py +52 -0
- polyfile/kaitai/parsers/wmf.py +502 -0
- polyfile/kaitai/parsers/xar.py +181 -0
- polyfile/kaitai/parsers/xwd.py +189 -0
- polyfile/kaitai/parsers/zip.py +685 -0
- polyfile/kaitai/parsers/zisofs.py +158 -0
- polyfile/kaitai/parsers/zx_spectrum_tap.py +184 -0
- polyfile/kaitaimatcher.py +113 -0
- polyfile/languagematcher.py +217 -0
- polyfile/logger.py +135 -0
- polyfile/magic.py +2983 -0
- polyfile/magic_defs/COPYING +29 -0
- polyfile/magic_defs/__init__.py +0 -0
- polyfile/magic_defs/acorn +102 -0
- polyfile/magic_defs/adi +13 -0
- polyfile/magic_defs/adventure +122 -0
- polyfile/magic_defs/aes +29 -0
- polyfile/magic_defs/algol68 +35 -0
- polyfile/magic_defs/allegro +9 -0
- polyfile/magic_defs/alliant +18 -0
- polyfile/magic_defs/alpha +32 -0
- polyfile/magic_defs/amanda +12 -0
- polyfile/magic_defs/amigaos +218 -0
- polyfile/magic_defs/android +259 -0
- polyfile/magic_defs/animation +1197 -0
- polyfile/magic_defs/aout +46 -0
- polyfile/magic_defs/apache +28 -0
- polyfile/magic_defs/apl +7 -0
- polyfile/magic_defs/apple +773 -0
- polyfile/magic_defs/application +7 -0
- polyfile/magic_defs/applix +13 -0
- polyfile/magic_defs/apt +52 -0
- polyfile/magic_defs/archive +2586 -0
- polyfile/magic_defs/aria +38 -0
- polyfile/magic_defs/arm +50 -0
- polyfile/magic_defs/asf +132 -0
- polyfile/magic_defs/assembler +18 -0
- polyfile/magic_defs/asterix +18 -0
- polyfile/magic_defs/att3b +41 -0
- polyfile/magic_defs/audio +1291 -0
- polyfile/magic_defs/avm +33 -0
- polyfile/magic_defs/basis +18 -0
- polyfile/magic_defs/beetle +7 -0
- polyfile/magic_defs/ber +65 -0
- polyfile/magic_defs/bflt +14 -0
- polyfile/magic_defs/bhl +10 -0
- polyfile/magic_defs/bioinformatics +178 -0
- polyfile/magic_defs/biosig +154 -0
- polyfile/magic_defs/blackberry +8 -0
- polyfile/magic_defs/blcr +25 -0
- polyfile/magic_defs/blender +50 -0
- polyfile/magic_defs/blit +24 -0
- polyfile/magic_defs/bm +10 -0
- polyfile/magic_defs/bout +11 -0
- polyfile/magic_defs/bsdi +33 -0
- polyfile/magic_defs/bsi +10 -0
- polyfile/magic_defs/btsnoop +13 -0
- polyfile/magic_defs/burp +7 -0
- polyfile/magic_defs/bytecode +41 -0
- polyfile/magic_defs/c-lang +110 -0
- polyfile/magic_defs/c64 +531 -0
- polyfile/magic_defs/cad +437 -0
- polyfile/magic_defs/cafebabe +107 -0
- polyfile/magic_defs/cbor +21 -0
- polyfile/magic_defs/ccf +14 -0
- polyfile/magic_defs/cddb +12 -0
- polyfile/magic_defs/chord +15 -0
- polyfile/magic_defs/cisco +12 -0
- polyfile/magic_defs/citrus +12 -0
- polyfile/magic_defs/clarion +27 -0
- polyfile/magic_defs/claris +48 -0
- polyfile/magic_defs/clipper +65 -0
- polyfile/magic_defs/clojure +30 -0
- polyfile/magic_defs/coff +98 -0
- polyfile/magic_defs/commands +201 -0
- polyfile/magic_defs/communications +22 -0
- polyfile/magic_defs/compress +461 -0
- polyfile/magic_defs/console +1213 -0
- polyfile/magic_defs/convex +69 -0
- polyfile/magic_defs/coverage +91 -0
- polyfile/magic_defs/cracklib +14 -0
- polyfile/magic_defs/crypto +31 -0
- polyfile/magic_defs/csv +8 -0
- polyfile/magic_defs/ctags +6 -0
- polyfile/magic_defs/ctf +23 -0
- polyfile/magic_defs/cubemap +8 -0
- polyfile/magic_defs/cups +56 -0
- polyfile/magic_defs/dact +11 -0
- polyfile/magic_defs/database +886 -0
- polyfile/magic_defs/dataone +47 -0
- polyfile/magic_defs/dbpf +15 -0
- polyfile/magic_defs/der +146 -0
- polyfile/magic_defs/diamond +12 -0
- polyfile/magic_defs/dif +33 -0
- polyfile/magic_defs/diff +41 -0
- polyfile/magic_defs/digital +59 -0
- polyfile/magic_defs/dolby +69 -0
- polyfile/magic_defs/dsf +25 -0
- polyfile/magic_defs/dump +96 -0
- polyfile/magic_defs/dwarfs +45 -0
- polyfile/magic_defs/dyadic +61 -0
- polyfile/magic_defs/ebml +8 -0
- polyfile/magic_defs/edid +11 -0
- polyfile/magic_defs/editors +43 -0
- polyfile/magic_defs/efi +15 -0
- polyfile/magic_defs/elf +379 -0
- polyfile/magic_defs/encore +22 -0
- polyfile/magic_defs/epoc +62 -0
- polyfile/magic_defs/erlang +21 -0
- polyfile/magic_defs/espressif +57 -0
- polyfile/magic_defs/esri +28 -0
- polyfile/magic_defs/etf +33 -0
- polyfile/magic_defs/fcs +9 -0
- polyfile/magic_defs/filesystems +2694 -0
- polyfile/magic_defs/finger +16 -0
- polyfile/magic_defs/firmware +133 -0
- polyfile/magic_defs/flash +62 -0
- polyfile/magic_defs/flif +36 -0
- polyfile/magic_defs/fonts +449 -0
- polyfile/magic_defs/forth +82 -0
- polyfile/magic_defs/fortran +9 -0
- polyfile/magic_defs/frame +62 -0
- polyfile/magic_defs/freebsd +164 -0
- polyfile/magic_defs/fsav +128 -0
- polyfile/magic_defs/fusecompress +12 -0
- polyfile/magic_defs/games +696 -0
- polyfile/magic_defs/gcc +17 -0
- polyfile/magic_defs/gconv +10 -0
- polyfile/magic_defs/gentoo +85 -0
- polyfile/magic_defs/geo +166 -0
- polyfile/magic_defs/geos +20 -0
- polyfile/magic_defs/gimp +77 -0
- polyfile/magic_defs/git +13 -0
- polyfile/magic_defs/glibc +21 -0
- polyfile/magic_defs/gnome +59 -0
- polyfile/magic_defs/gnu +173 -0
- polyfile/magic_defs/gnumeric +8 -0
- polyfile/magic_defs/gpt +240 -0
- polyfile/magic_defs/gpu +28 -0
- polyfile/magic_defs/grace +21 -0
- polyfile/magic_defs/graphviz +12 -0
- polyfile/magic_defs/gringotts +48 -0
- polyfile/magic_defs/guile +13 -0
- polyfile/magic_defs/hardware +12 -0
- polyfile/magic_defs/hitachi-sh +30 -0
- polyfile/magic_defs/hp +433 -0
- polyfile/magic_defs/human68k +26 -0
- polyfile/magic_defs/ibm370 +52 -0
- polyfile/magic_defs/ibm6000 +35 -0
- polyfile/magic_defs/icc +214 -0
- polyfile/magic_defs/iff +80 -0
- polyfile/magic_defs/images +4210 -0
- polyfile/magic_defs/inform +9 -0
- polyfile/magic_defs/intel +310 -0
- polyfile/magic_defs/interleaf +9 -0
- polyfile/magic_defs/island +10 -0
- polyfile/magic_defs/ispell +63 -0
- polyfile/magic_defs/isz +15 -0
- polyfile/magic_defs/java +52 -0
- polyfile/magic_defs/javascript +171 -0
- polyfile/magic_defs/jpeg +252 -0
- polyfile/magic_defs/json +8 -0
- polyfile/magic_defs/karma +9 -0
- polyfile/magic_defs/kde +11 -0
- polyfile/magic_defs/keepass +20 -0
- polyfile/magic_defs/kerberos +45 -0
- polyfile/magic_defs/kicad +85 -0
- polyfile/magic_defs/kml +34 -0
- polyfile/magic_defs/lammps +64 -0
- polyfile/magic_defs/lecter +6 -0
- polyfile/magic_defs/lex +12 -0
- polyfile/magic_defs/lif +50 -0
- polyfile/magic_defs/linux +557 -0
- polyfile/magic_defs/lisp +78 -0
- polyfile/magic_defs/llvm +22 -0
- polyfile/magic_defs/locoscript +12 -0
- polyfile/magic_defs/lua +31 -0
- polyfile/magic_defs/luks +126 -0
- polyfile/magic_defs/m4 +11 -0
- polyfile/magic_defs/mach +303 -0
- polyfile/magic_defs/macintosh +505 -0
- polyfile/magic_defs/macos +7 -0
- polyfile/magic_defs/magic +10 -0
- polyfile/magic_defs/magic.mgc +0 -0
- polyfile/magic_defs/mail.news +132 -0
- polyfile/magic_defs/make +21 -0
- polyfile/magic_defs/map +413 -0
- polyfile/magic_defs/maple +109 -0
- polyfile/magic_defs/marc21 +30 -0
- polyfile/magic_defs/mathcad +8 -0
- polyfile/magic_defs/mathematica +188 -0
- polyfile/magic_defs/matroska +17 -0
- polyfile/magic_defs/mcrypt +52 -0
- polyfile/magic_defs/measure +44 -0
- polyfile/magic_defs/mercurial +13 -0
- polyfile/magic_defs/metastore +8 -0
- polyfile/magic_defs/meteorological +53 -0
- polyfile/magic_defs/microfocus +21 -0
- polyfile/magic_defs/mime +9 -0
- polyfile/magic_defs/mips +120 -0
- polyfile/magic_defs/mirage +8 -0
- polyfile/magic_defs/misctools +140 -0
- polyfile/magic_defs/mkid +11 -0
- polyfile/magic_defs/mlssa +8 -0
- polyfile/magic_defs/mmdf +6 -0
- polyfile/magic_defs/modem +92 -0
- polyfile/magic_defs/modulefile +9 -0
- polyfile/magic_defs/motorola +71 -0
- polyfile/magic_defs/mozilla +37 -0
- polyfile/magic_defs/msdos +2304 -0
- polyfile/magic_defs/msooxml +68 -0
- polyfile/magic_defs/msvc +222 -0
- polyfile/magic_defs/msx +309 -0
- polyfile/magic_defs/mup +24 -0
- polyfile/magic_defs/music +17 -0
- polyfile/magic_defs/nasa +7 -0
- polyfile/magic_defs/natinst +24 -0
- polyfile/magic_defs/ncr +49 -0
- polyfile/magic_defs/neko +12 -0
- polyfile/magic_defs/netbsd +251 -0
- polyfile/magic_defs/netscape +26 -0
- polyfile/magic_defs/netware +11 -0
- polyfile/magic_defs/news +13 -0
- polyfile/magic_defs/nifty +202 -0
- polyfile/magic_defs/nim-lang +29 -0
- polyfile/magic_defs/nitpicker +14 -0
- polyfile/magic_defs/numpy +9 -0
- polyfile/magic_defs/oasis +12 -0
- polyfile/magic_defs/ocaml +14 -0
- polyfile/magic_defs/octave +6 -0
- polyfile/magic_defs/ole2compounddocs +760 -0
- polyfile/magic_defs/olf +98 -0
- polyfile/magic_defs/openfst +17 -0
- polyfile/magic_defs/opentimestamps +16 -0
- polyfile/magic_defs/oric +16 -0
- polyfile/magic_defs/os2 +186 -0
- polyfile/magic_defs/os400 +39 -0
- polyfile/magic_defs/os9 +80 -0
- polyfile/magic_defs/osf1 +10 -0
- polyfile/magic_defs/palm +156 -0
- polyfile/magic_defs/parix +13 -0
- polyfile/magic_defs/parrot +22 -0
- polyfile/magic_defs/pascal +39 -0
- polyfile/magic_defs/pbf +11 -0
- polyfile/magic_defs/pbm +8 -0
- polyfile/magic_defs/pc88 +24 -0
- polyfile/magic_defs/pc98 +77 -0
- polyfile/magic_defs/pci_ids +116 -0
- polyfile/magic_defs/pcjr +8 -0
- polyfile/magic_defs/pdf +51 -0
- polyfile/magic_defs/pdp +42 -0
- polyfile/magic_defs/perl +100 -0
- polyfile/magic_defs/pgf +52 -0
- polyfile/magic_defs/pgp +581 -0
- polyfile/magic_defs/pgp-binary-keys +388 -0
- polyfile/magic_defs/pkgadd +7 -0
- polyfile/magic_defs/plan9 +25 -0
- polyfile/magic_defs/playdate +57 -0
- polyfile/magic_defs/plus5 +18 -0
- polyfile/magic_defs/pmem +46 -0
- polyfile/magic_defs/polyfile_zip +5 -0
- polyfile/magic_defs/polyml +23 -0
- polyfile/magic_defs/printer +269 -0
- polyfile/magic_defs/project +10 -0
- polyfile/magic_defs/psdbms +14 -0
- polyfile/magic_defs/psl +14 -0
- polyfile/magic_defs/pulsar +13 -0
- polyfile/magic_defs/puzzle +17 -0
- polyfile/magic_defs/pwsafe +14 -0
- polyfile/magic_defs/pyramid +12 -0
- polyfile/magic_defs/python +305 -0
- polyfile/magic_defs/qt +30 -0
- polyfile/magic_defs/revision +66 -0
- polyfile/magic_defs/riff +840 -0
- polyfile/magic_defs/rinex +44 -0
- polyfile/magic_defs/ringdove +45 -0
- polyfile/magic_defs/rpi +52 -0
- polyfile/magic_defs/rpm +45 -0
- polyfile/magic_defs/rpmsg +7 -0
- polyfile/magic_defs/rst +11 -0
- polyfile/magic_defs/rtf +94 -0
- polyfile/magic_defs/ruby +55 -0
- polyfile/magic_defs/rust +21 -0
- polyfile/magic_defs/sc +7 -0
- polyfile/magic_defs/sccs +24 -0
- polyfile/magic_defs/scientific +144 -0
- polyfile/magic_defs/securitycerts +6 -0
- polyfile/magic_defs/selinux +24 -0
- polyfile/magic_defs/sendmail +37 -0
- polyfile/magic_defs/sequent +42 -0
- polyfile/magic_defs/sereal +35 -0
- polyfile/magic_defs/sgi +144 -0
- polyfile/magic_defs/sgml +161 -0
- polyfile/magic_defs/sharc +23 -0
- polyfile/magic_defs/sinclair +40 -0
- polyfile/magic_defs/sisu +18 -0
- polyfile/magic_defs/sketch +6 -0
- polyfile/magic_defs/smalltalk +25 -0
- polyfile/magic_defs/smile +34 -0
- polyfile/magic_defs/sniffer +482 -0
- polyfile/magic_defs/softquad +40 -0
- polyfile/magic_defs/sosi +40 -0
- polyfile/magic_defs/spec +21 -0
- polyfile/magic_defs/spectrum +184 -0
- polyfile/magic_defs/sql +288 -0
- polyfile/magic_defs/ssh +39 -0
- polyfile/magic_defs/ssl +20 -0
- polyfile/magic_defs/statistics +45 -0
- polyfile/magic_defs/subtitle +38 -0
- polyfile/magic_defs/sun +141 -0
- polyfile/magic_defs/svf +5 -0
- polyfile/magic_defs/sylk +36 -0
- polyfile/magic_defs/symbos +42 -0
- polyfile/magic_defs/sysex +429 -0
- polyfile/magic_defs/tcl +29 -0
- polyfile/magic_defs/teapot +6 -0
- polyfile/magic_defs/terminfo +63 -0
- polyfile/magic_defs/tex +141 -0
- polyfile/magic_defs/tgif +7 -0
- polyfile/magic_defs/ti-8x +239 -0
- polyfile/magic_defs/timezone +42 -0
- polyfile/magic_defs/tplink +95 -0
- polyfile/magic_defs/troff +38 -0
- polyfile/magic_defs/tuxedo +8 -0
- polyfile/magic_defs/typeset +8 -0
- polyfile/magic_defs/uf2 +72 -0
- polyfile/magic_defs/unicode +15 -0
- polyfile/magic_defs/unisig +12 -0
- polyfile/magic_defs/unknown +34 -0
- polyfile/magic_defs/usd +21 -0
- polyfile/magic_defs/uterus +16 -0
- polyfile/magic_defs/uuencode +28 -0
- polyfile/magic_defs/vacuum-cleaner +54 -0
- polyfile/magic_defs/varied.out +46 -0
- polyfile/magic_defs/varied.script +21 -0
- polyfile/magic_defs/vax +32 -0
- polyfile/magic_defs/vicar +17 -0
- polyfile/magic_defs/virtual +307 -0
- polyfile/magic_defs/virtutech +12 -0
- polyfile/magic_defs/visx +32 -0
- polyfile/magic_defs/vms +30 -0
- polyfile/magic_defs/vmware +6 -0
- polyfile/magic_defs/vorbis +155 -0
- polyfile/magic_defs/vxl +14 -0
- polyfile/magic_defs/warc +16 -0
- polyfile/magic_defs/weak +16 -0
- polyfile/magic_defs/web +18 -0
- polyfile/magic_defs/webassembly +17 -0
- polyfile/magic_defs/windows +1811 -0
- polyfile/magic_defs/wireless +7 -0
- polyfile/magic_defs/wordprocessors +630 -0
- polyfile/magic_defs/wsdl +23 -0
- polyfile/magic_defs/x68000 +25 -0
- polyfile/magic_defs/xdelta +13 -0
- polyfile/magic_defs/xenix +106 -0
- polyfile/magic_defs/xilinx +58 -0
- polyfile/magic_defs/xo65 +37 -0
- polyfile/magic_defs/xwindows +43 -0
- polyfile/magic_defs/yara +17 -0
- polyfile/magic_defs/zfs +96 -0
- polyfile/magic_defs/zilog +12 -0
- polyfile/magic_defs/zip +126 -0
- polyfile/magic_defs/zyxel +17 -0
- polyfile/nes.py +144 -0
- polyfile/nitf.py +15 -0
- polyfile/pdf.py +1264 -0
- polyfile/pickles.py +45 -0
- polyfile/polyfile.py +409 -0
- polyfile/profiling.py +115 -0
- polyfile/repl.py +624 -0
- polyfile/search.py +310 -0
- polyfile/serialization.py +323 -0
- polyfile/structmatcher.py +46 -0
- polyfile/structs.py +281 -0
- polyfile/templates/download.js +162 -0
- polyfile/templates/hexdump.css +268 -0
- polyfile/templates/hexdump.js +756 -0
- polyfile/templates/jquery-3.4.1.min.js +2 -0
- polyfile/templates/template.html +119 -0
- polyfile/wildcards.py +62 -0
- polyfile/zipmatcher.py +183 -0
- polyfile_weave-0.5.5.dist-info/METADATA +173 -0
- polyfile_weave-0.5.5.dist-info/RECORD +585 -0
- polyfile_weave-0.5.5.dist-info/WHEEL +5 -0
- polyfile_weave-0.5.5.dist-info/entry_points.txt +2 -0
- polyfile_weave-0.5.5.dist-info/licenses/LICENSE +202 -0
- polyfile_weave-0.5.5.dist-info/top_level.txt +2 -0
- polymerge/__init__.py +1 -0
- polymerge/__main__.py +296 -0
- polymerge/cfg.py +127 -0
- polymerge/polymerge.py +227 -0
- polymerge/polytracker.py +190 -0
|
@@ -0,0 +1,4210 @@
|
|
|
1
|
+
|
|
2
|
+
#------------------------------------------------------------------------------
|
|
3
|
+
# $File: images,v 1.242 2023/05/23 13:37:32 christos Exp $
|
|
4
|
+
# images: file(1) magic for image formats (see also "iff", and "c-lang" for
|
|
5
|
+
# XPM bitmaps)
|
|
6
|
+
#
|
|
7
|
+
# originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
|
|
8
|
+
# additions by janl@ifi.uio.no as well as others. Jan also suggested
|
|
9
|
+
# merging several one- and two-line files into here.
|
|
10
|
+
#
|
|
11
|
+
# little magic: PCX (first byte is 0x0a)
|
|
12
|
+
|
|
13
|
+
# Targa - matches `povray', `ppmtotga' and `xv' outputs
|
|
14
|
+
# by Philippe De Muyter <phdm@macqel.be>
|
|
15
|
+
# URL: http://justsolve.archiveteam.org/wiki/TGA
|
|
16
|
+
# Reference: http://www.dca.fee.unicamp.br/~martino/disciplinas/ea978/tgaffs.pdf
|
|
17
|
+
# Update: Joerg Jenderek
|
|
18
|
+
# at 2, byte ImgType must be 1, 2, 3, 9, 10 or 11
|
|
19
|
+
# ,32 or 33 (both not observed)
|
|
20
|
+
# at 1, byte CoMapType must be 1 if ImgType is 1 or 9, 0 otherwise
|
|
21
|
+
# or theoretically 2-128 reserved for use by Truevision or 128-255 may be used for developer applications
|
|
22
|
+
# at 3, leshort Index is 0 for povray, ppmtotga and xv outputs
|
|
23
|
+
# `xv' recognizes only a subset of the following (RGB with pixelsize = 24)
|
|
24
|
+
# `tgatoppm' recognizes a superset (Index may be anything)
|
|
25
|
+
#
|
|
26
|
+
# test of Color Map Type 0~no 1~color map
|
|
27
|
+
# and Image Type 1 2 3 9 10 11 32 33
|
|
28
|
+
# and Color Map Entry Size 0 15 16 24 32
|
|
29
|
+
0 ubequad&0x00FeC400000000C0 0
|
|
30
|
+
# Conflict with MPEG sequences.
|
|
31
|
+
!:strength -40
|
|
32
|
+
# Prevent conflicts with CRI ADX.
|
|
33
|
+
#>(2.S-2) belong !0x28632943
|
|
34
|
+
# above line does not work for rgb32_top_left_rle.tga
|
|
35
|
+
# skip some MPEG sequence *.vob and some CRI ADX audio with improbable interleave bits
|
|
36
|
+
>17 ubyte&0xC0 !0xC0
|
|
37
|
+
# skip more garbage like *.iso by looking for positive image type
|
|
38
|
+
>>2 ubyte >0
|
|
39
|
+
# skip some compiled terminfo like xterm+tmux by looking for image type less equal 33
|
|
40
|
+
>>>2 ubyte <34
|
|
41
|
+
# skip some MPEG sequence *.vob HV001T01.EVO winnicki.mpg with unacceptable alpha channel depth 11
|
|
42
|
+
>>>>17 ubyte&0x0F !11
|
|
43
|
+
# skip arches.3200 , Finder.Root , Slp.1 by looking for low pixel depth 1 8 15 16 24 32
|
|
44
|
+
>>>>>16 ubyte 1
|
|
45
|
+
>>>>>>0 use tga-image
|
|
46
|
+
>>>>>16 ubyte 8
|
|
47
|
+
>>>>>>0 use tga-image
|
|
48
|
+
>>>>>16 ubyte 15
|
|
49
|
+
>>>>>>0 use tga-image
|
|
50
|
+
>>>>>16 ubyte 16
|
|
51
|
+
>>>>>>0 use tga-image
|
|
52
|
+
>>>>>16 ubyte 24
|
|
53
|
+
>>>>>>0 use tga-image
|
|
54
|
+
>>>>>16 ubyte 32
|
|
55
|
+
>>>>>>0 use tga-image
|
|
56
|
+
# display tga bitmap image information
|
|
57
|
+
0 name tga-image
|
|
58
|
+
>2 ubyte <34 Targa image data
|
|
59
|
+
!:mime image/x-tga
|
|
60
|
+
!:apple ????TPIC
|
|
61
|
+
# normal extension .tga but some Truevision products used others:
|
|
62
|
+
# tpic (Apple),icb (Image Capture Board),vda (Video Display Adapter),vst (NuVista),win (UNSURE about that)
|
|
63
|
+
!:ext tga/tpic/icb/vda/vst
|
|
64
|
+
# image type 1 2 3 9 10 11 32 33
|
|
65
|
+
>2 ubyte&0xF7 1 - Map
|
|
66
|
+
>2 ubyte&0xF7 2 - RGB
|
|
67
|
+
# alpha channel
|
|
68
|
+
>>17 ubyte&0x0F >0 \bA
|
|
69
|
+
>2 ubyte&0xF7 3 - Mono
|
|
70
|
+
# type not found, but by http://www.fileformat.info/format/tga/corion.htm
|
|
71
|
+
# Compressed color-mapped data, using Huffman, Delta, and runlength encoding
|
|
72
|
+
>2 ubyte 32 - Color
|
|
73
|
+
# Compressed color-mapped data, using Huffman, Delta, and RLE. 4-pass quadtree- type process
|
|
74
|
+
>2 ubyte 33 - Color
|
|
75
|
+
# Color Map Type 0~no 1~color map
|
|
76
|
+
>1 ubyte 1 (
|
|
77
|
+
# first color map entry, 0 normal
|
|
78
|
+
>>3 uleshort >0 \b%d-
|
|
79
|
+
# color map length 0 2 1dh 3bh d9h 100h
|
|
80
|
+
>>5 uleshort x \b%d)
|
|
81
|
+
# 8~run length encoding bit
|
|
82
|
+
>2 ubyte&0x08 8 - RLE
|
|
83
|
+
# gimp can create big pictures!
|
|
84
|
+
>12 uleshort >0 %d x
|
|
85
|
+
>12 uleshort =0 65536 x
|
|
86
|
+
# image height. 0 interpreted as 65536
|
|
87
|
+
>14 uleshort >0 %d
|
|
88
|
+
>14 uleshort =0 65536
|
|
89
|
+
# Image Pixel depth 1 8 15 16 24 32
|
|
90
|
+
>16 ubyte x x %d
|
|
91
|
+
# X origin of image. 0 normal
|
|
92
|
+
>8 uleshort >0 +%d
|
|
93
|
+
# Y origin of image. 0 normal; positive for top
|
|
94
|
+
>10 uleshort >0 +%d
|
|
95
|
+
# Image descriptor: bits 3-0 give the alpha channel depth, bits 5-4 give direction
|
|
96
|
+
# alpha depth like: 1 8
|
|
97
|
+
>17 ubyte&0x0F >0 - %d-bit alpha
|
|
98
|
+
# bits 5-4 give direction. normal bottom left
|
|
99
|
+
>17 ubyte &0x20 - top
|
|
100
|
+
#>17 ubyte ^0x20 - bottom
|
|
101
|
+
>17 ubyte &0x10 - right
|
|
102
|
+
#>17 ubyte ^0x10 - left
|
|
103
|
+
# some info say other bits 6-7 should be zero
|
|
104
|
+
# but data storage interleave by http://www.fileformat.info/format/tga/corion.htm
|
|
105
|
+
# 00 - no interleave;01 - even/odd interleave; 10 - four way interleave; 11 - reserved
|
|
106
|
+
#>17 ubyte&0xC0 0x00 - no interleave
|
|
107
|
+
>17 ubyte&0xC0 0x40 - interleave
|
|
108
|
+
>17 ubyte&0xC0 0x80 - four way interleave
|
|
109
|
+
>17 ubyte&0xC0 0xC0 - reserved
|
|
110
|
+
# positive length implies identification field
|
|
111
|
+
>0 ubyte >0
|
|
112
|
+
>>18 string x "%s"
|
|
113
|
+
# last 18 bytes of newer tga file footer signature
|
|
114
|
+
>18 search/4261301/s TRUEVISION-XFILE.\0
|
|
115
|
+
# extension area offset if not 0
|
|
116
|
+
>>&-8 ulelong >0
|
|
117
|
+
# length of the extension area. normal 495 for version 2.0
|
|
118
|
+
>>>(&-4.l) uleshort 0x01EF
|
|
119
|
+
# AuthorName[41]
|
|
120
|
+
>>>>&0 string >\0 - author "%-.40s"
|
|
121
|
+
# Comment[324]=4 * 80 null terminated
|
|
122
|
+
>>>>&41 string >\0 - comment "%-.80s"
|
|
123
|
+
# date
|
|
124
|
+
>>>>&365 ubequad&0xffffFFFFffff0000 !0
|
|
125
|
+
# Day
|
|
126
|
+
>>>>>&-6 uleshort x %d
|
|
127
|
+
# Month
|
|
128
|
+
>>>>>&-8 uleshort x \b-%d
|
|
129
|
+
# Year
|
|
130
|
+
>>>>>&-4 uleshort x \b-%d
|
|
131
|
+
# time
|
|
132
|
+
>>>>&371 ubequad&0xffffFFFFffff0000 !0
|
|
133
|
+
# hour
|
|
134
|
+
>>>>>&-8 uleshort x %d
|
|
135
|
+
# minutes
|
|
136
|
+
>>>>>&-6 uleshort x \b:%.2d
|
|
137
|
+
# second
|
|
138
|
+
>>>>>&-4 uleshort x \b:%.2d
|
|
139
|
+
# JobName[41]
|
|
140
|
+
>>>>&377 string >\0 - job "%-.40s"
|
|
141
|
+
# JobHour Jobminute Jobsecond
|
|
142
|
+
>>>>&418 ubequad&0xffffFFFFffff0000 !0
|
|
143
|
+
>>>>>&-8 uleshort x %d
|
|
144
|
+
>>>>>&-6 uleshort x \b:%.2d
|
|
145
|
+
>>>>>&-4 uleshort x \b:%.2d
|
|
146
|
+
# SoftwareId[41]
|
|
147
|
+
>>>>&424 string >\0 - %-.40s
|
|
148
|
+
# SoftwareVersionNumber
|
|
149
|
+
>>>>&424 ubyte >0
|
|
150
|
+
>>>>>&40 uleshort/100 x %d
|
|
151
|
+
>>>>>&40 uleshort%100 x \b.%d
|
|
152
|
+
# VersionLetter
|
|
153
|
+
>>>>>&42 ubyte >0x20 \b%c
|
|
154
|
+
# KeyColor
|
|
155
|
+
>>>>&468 ulelong >0 - keycolor %#8.8x
|
|
156
|
+
# Denominator of Pixel ratio. 0~no pixel aspect
|
|
157
|
+
>>>>&474 uleshort >0
|
|
158
|
+
# Numerator
|
|
159
|
+
>>>>>&-4 uleshort >0 - aspect %d
|
|
160
|
+
>>>>>&-2 uleshort x \b/%d
|
|
161
|
+
# Denominator of Gamma ratio. 0~no Gamma value
|
|
162
|
+
>>>>&478 uleshort >0
|
|
163
|
+
# Numerator
|
|
164
|
+
>>>>>&-4 uleshort >0 - gamma %d
|
|
165
|
+
>>>>>&-2 uleshort x \b/%d
|
|
166
|
+
# ColorOffset
|
|
167
|
+
#>>>>&480 ulelong x - col offset %#8.8x
|
|
168
|
+
# StampOffset
|
|
169
|
+
#>>>>&484 ulelong x - stamp offset %#8.8x
|
|
170
|
+
# ScanOffset
|
|
171
|
+
#>>>>&488 ulelong x - scan offset %#8.8x
|
|
172
|
+
# AttributesType
|
|
173
|
+
#>>>>&492 ubyte x - Attributes %#x
|
|
174
|
+
## EndOfTGA
|
|
175
|
+
|
|
176
|
+
# PBMPLUS images
|
|
177
|
+
# URL: https://en.wikipedia.org/wiki/Netpbm
|
|
178
|
+
# The next byte following the magic is always whitespace.
|
|
179
|
+
# adding 65 to strength so that Netpbm images comes before "x86 boot sector" or
|
|
180
|
+
# "DOS/MBR boot sector" identified by ./filesystems
|
|
181
|
+
0 name netpbm
|
|
182
|
+
>3 regex/s =\^[0-9]{1,50}[\040\t\f\r\n]+[0-9]{1,50} Netpbm image data
|
|
183
|
+
>>&0 regex =[0-9]{1,50} \b, size = %s x
|
|
184
|
+
>>>&0 regex =[0-9]{1,50} \b %s
|
|
185
|
+
|
|
186
|
+
0 search/1 P1
|
|
187
|
+
# test for whitespace after 2 byte magic
|
|
188
|
+
>2 regex/2 [\040\t\f\r\n]
|
|
189
|
+
# skip DROID x-fmt-164-signature-id-583.pbm with ten 0 digits
|
|
190
|
+
>>3 string !000000000
|
|
191
|
+
>>>0 use netpbm
|
|
192
|
+
>>>0 string x \b, bitmap
|
|
193
|
+
!:strength + 65
|
|
194
|
+
!:mime image/x-portable-bitmap
|
|
195
|
+
!:ext pbm
|
|
196
|
+
# check for character # starting a comment line
|
|
197
|
+
>>>3 ubyte =0x23
|
|
198
|
+
>>>>4 string x %s
|
|
199
|
+
|
|
200
|
+
0 search/1 P2
|
|
201
|
+
>0 regex/4 P2[\040\t\f\r\n]
|
|
202
|
+
>>0 use netpbm
|
|
203
|
+
>>0 string x \b, greymap
|
|
204
|
+
!:strength + 65
|
|
205
|
+
# american spelling gray
|
|
206
|
+
!:mime image/x-portable-graymap
|
|
207
|
+
!:ext pgm
|
|
208
|
+
|
|
209
|
+
0 search/1 P3
|
|
210
|
+
>0 regex/4 P3[\040\t\f\r\n]
|
|
211
|
+
>>0 use netpbm
|
|
212
|
+
>>0 string x \b, pixmap
|
|
213
|
+
!:strength + 65
|
|
214
|
+
!:mime image/x-portable-pixmap
|
|
215
|
+
!:ext ppm
|
|
216
|
+
|
|
217
|
+
0 string P4
|
|
218
|
+
>0 regex/4 P4[\040\t\f\r\n]
|
|
219
|
+
>>0 use netpbm
|
|
220
|
+
>>0 string x \b, rawbits, bitmap
|
|
221
|
+
!:strength + 65
|
|
222
|
+
!:mime image/x-portable-bitmap
|
|
223
|
+
!:ext pbm
|
|
224
|
+
|
|
225
|
+
0 string P5
|
|
226
|
+
>0 regex/4 P5[\040\t\f\r\n]
|
|
227
|
+
>>0 use netpbm
|
|
228
|
+
>>0 string x \b, rawbits, greymap
|
|
229
|
+
!:strength + 65
|
|
230
|
+
!:mime image/x-portable-greymap
|
|
231
|
+
!:ext pgm
|
|
232
|
+
|
|
233
|
+
0 string P6
|
|
234
|
+
>0 regex/4 P6[\040\t\f\r\n]
|
|
235
|
+
>>0 use netpbm
|
|
236
|
+
>>0 string x \b, rawbits, pixmap
|
|
237
|
+
!:strength + 65
|
|
238
|
+
!:mime image/x-portable-pixmap
|
|
239
|
+
!:ext ppm/pnm
|
|
240
|
+
|
|
241
|
+
# URL: https://en.wikipedia.org/wiki/Netpbm#PAM_graphics_format
|
|
242
|
+
# Reference: http://fileformats.archiveteam.org/wiki/Portable_Arbitrary_Map
|
|
243
|
+
# Update: Joerg Jenderek
|
|
244
|
+
0 string P7
|
|
245
|
+
# skip DROID fmt-405-signature-id-589.pam by looking for character like New Line
|
|
246
|
+
>2 ubyte !0xAB
|
|
247
|
+
#>2 ubyte =0x0A
|
|
248
|
+
>>3 search/256/b WIDTH Netpbm PAM image file, size =
|
|
249
|
+
!:mime image/x-portable-arbitrarymap
|
|
250
|
+
!:ext pam
|
|
251
|
+
!:strength + 65
|
|
252
|
+
>>>&1 string x %s
|
|
253
|
+
>>>3 search/256/b HEIGHT x
|
|
254
|
+
>>>>&1 string x %s
|
|
255
|
+
# at offset 2 a New Line character (0xA) should appear
|
|
256
|
+
>>>2 ubyte !0x0A \b, %#x at offset 2 instead new line
|
|
257
|
+
|
|
258
|
+
# From: bryanh@giraffe-data.com (Bryan Henderson)
|
|
259
|
+
0 string \117\072 Solitaire Image Recorder format
|
|
260
|
+
>4 string \013 MGI Type 11
|
|
261
|
+
>4 string \021 MGI Type 17
|
|
262
|
+
0 string .MDA MicroDesign data
|
|
263
|
+
>21 ubyte 48 version 2
|
|
264
|
+
>21 ubyte 51 version 3
|
|
265
|
+
0 string .MDP MicroDesign page data
|
|
266
|
+
>21 ubyte 48 version 2
|
|
267
|
+
>21 ubyte 51 version 3
|
|
268
|
+
|
|
269
|
+
# NIFF (Navy Interchange File Format, a modification of TIFF) images
|
|
270
|
+
# [GRR: this *must* go before TIFF]
|
|
271
|
+
0 string IIN1 NIFF image data
|
|
272
|
+
!:mime image/x-niff
|
|
273
|
+
|
|
274
|
+
# Canon RAW version 1 (CRW) files are a type of Canon Image File Format
|
|
275
|
+
# (CIFF) file. These are apparently all little-endian.
|
|
276
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
277
|
+
# URL: https://www.sno.phy.queensu.ca/~phil/exiftool/canon_raw.html
|
|
278
|
+
0 string II\x1a\0\0\0HEAPCCDR Canon CIFF raw image data
|
|
279
|
+
!:mime image/x-canon-crw
|
|
280
|
+
>16 uleshort x \b, version %d.
|
|
281
|
+
>14 uleshort x \b%d
|
|
282
|
+
|
|
283
|
+
# Canon RAW version 2 (CR2) files are a kind of TIFF with an extra magic
|
|
284
|
+
# number. Put this above the TIFF test to make sure we detect them.
|
|
285
|
+
# These are apparently all little-endian.
|
|
286
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
287
|
+
# URL: https://libopenraw.freedesktop.org/wiki/Canon_CR2
|
|
288
|
+
0 string II\x2a\0\x10\0\0\0CR Canon CR2 raw image data
|
|
289
|
+
!:mime image/x-canon-cr2
|
|
290
|
+
!:strength +80
|
|
291
|
+
>10 ubyte x \b, version %d.
|
|
292
|
+
>11 ubyte x \b%d
|
|
293
|
+
|
|
294
|
+
# Fujifilm RAF RAW image files with embedded JPEG data and compressed
|
|
295
|
+
# or uncompressed CFA RAW data. Byte order: Big Endian.
|
|
296
|
+
# URL: https://libopenraw.freedesktop.org/formats/raf/
|
|
297
|
+
# Useful info from http://fileformats.archiveteam.org/wiki/Fujifilm_RAF.
|
|
298
|
+
# File extension: RAF
|
|
299
|
+
# Works for both the FinePix S2 Pro and the X-T3. Anybody have some more Fuji
|
|
300
|
+
# raw samples available?
|
|
301
|
+
# -- David Dyer-Bennet <dd-b@dd-b.net> 9-Sep-2021
|
|
302
|
+
0 string FUJIFILMCCD-RAW Fujifilm RAF raw image data
|
|
303
|
+
!:mime image/x-fuji-raf
|
|
304
|
+
!:ext raf
|
|
305
|
+
>0x10 string x \b, format version %4.4s
|
|
306
|
+
>0x1C string x \b, camera %s
|
|
307
|
+
|
|
308
|
+
# Tag Image File Format, from Daniel Quinlan (quinlan@yggdrasil.com)
|
|
309
|
+
# The second word of TIFF files is the TIFF version number, 42, which has
|
|
310
|
+
# never changed. The TIFF specification recommends testing for it.
|
|
311
|
+
0 string MM\x00\x2a TIFF image data, big-endian
|
|
312
|
+
!:strength +70
|
|
313
|
+
!:mime image/tiff
|
|
314
|
+
!:ext tif/tiff
|
|
315
|
+
>(4.L) use \^tiff_ifd
|
|
316
|
+
0 string II\x2a\x00 TIFF image data, little-endian
|
|
317
|
+
!:mime image/tiff
|
|
318
|
+
!:strength +70
|
|
319
|
+
!:ext tif/tiff
|
|
320
|
+
>(4.l) use tiff_ifd
|
|
321
|
+
|
|
322
|
+
0 name tiff_ifd
|
|
323
|
+
>0 uleshort x \b, direntries=%d
|
|
324
|
+
>2 use tiff_entry
|
|
325
|
+
|
|
326
|
+
0 name tiff_entry
|
|
327
|
+
# NewSubFileType
|
|
328
|
+
>0 uleshort 0xfe
|
|
329
|
+
>>12 use tiff_entry
|
|
330
|
+
>0 uleshort 0x100
|
|
331
|
+
>>4 ulelong 1
|
|
332
|
+
>>>12 use tiff_entry
|
|
333
|
+
>>>8 uleshort x \b, width=%d
|
|
334
|
+
>0 uleshort 0x101
|
|
335
|
+
>>4 ulelong 1
|
|
336
|
+
>>>8 uleshort x \b, height=%d
|
|
337
|
+
>>>12 use tiff_entry
|
|
338
|
+
>0 uleshort 0x102
|
|
339
|
+
>>8 uleshort x \b, bps=%d
|
|
340
|
+
>>12 use tiff_entry
|
|
341
|
+
>0 uleshort 0x103
|
|
342
|
+
>>4 ulelong 1 \b, compression=
|
|
343
|
+
>>>8 uleshort 1 \bnone
|
|
344
|
+
>>>8 uleshort 2 \bhuffman
|
|
345
|
+
>>>8 uleshort 3 \bbi-level group 3
|
|
346
|
+
>>>8 uleshort 4 \bbi-level group 4
|
|
347
|
+
>>>8 uleshort 5 \bLZW
|
|
348
|
+
>>>8 uleshort 6 \bJPEG (old)
|
|
349
|
+
>>>8 uleshort 7 \bJPEG
|
|
350
|
+
>>>8 uleshort 8 \bdeflate
|
|
351
|
+
>>>8 uleshort 9 \bJBIG, ITU-T T.85
|
|
352
|
+
>>>8 uleshort 0xa \bJBIG, ITU-T T.43
|
|
353
|
+
>>>8 uleshort 0x7ffe \bNeXT RLE 2-bit
|
|
354
|
+
>>>8 uleshort 0x8005 \bPackBits (Macintosh RLE)
|
|
355
|
+
>>>8 uleshort 0x8029 \bThunderscan RLE
|
|
356
|
+
>>>8 uleshort 0x807f \bRasterPadding (CT or MP)
|
|
357
|
+
>>>8 uleshort 0x8080 \bRLE (Line Work)
|
|
358
|
+
>>>8 uleshort 0x8081 \bRLE (High-Res Cont-Tone)
|
|
359
|
+
>>>8 uleshort 0x8082 \bRLE (Binary Line Work)
|
|
360
|
+
>>>8 uleshort 0x80b2 \bDeflate (PKZIP)
|
|
361
|
+
>>>8 uleshort 0x80b3 \bKodak DCS
|
|
362
|
+
>>>8 uleshort 0x8765 \bJBIG
|
|
363
|
+
>>>8 uleshort 0x8798 \bJPEG2000
|
|
364
|
+
>>>8 uleshort 0x8799 \bNikon NEF Compressed
|
|
365
|
+
>>>8 default x
|
|
366
|
+
>>>>8 uleshort x \b(unknown %#x)
|
|
367
|
+
>>>12 use tiff_entry
|
|
368
|
+
>0 uleshort 0x106 \b, PhotometricInterpretation=
|
|
369
|
+
>>8 clear x
|
|
370
|
+
>>8 uleshort 0 \bWhiteIsZero
|
|
371
|
+
>>8 uleshort 1 \bBlackIsZero
|
|
372
|
+
>>8 uleshort 2 \bRGB
|
|
373
|
+
>>8 uleshort 3 \bRGB Palette
|
|
374
|
+
>>8 uleshort 4 \bTransparency Mask
|
|
375
|
+
>>8 uleshort 5 \bCMYK
|
|
376
|
+
>>8 uleshort 6 \bYCbCr
|
|
377
|
+
>>8 uleshort 8 \bCIELab
|
|
378
|
+
>>8 default x
|
|
379
|
+
>>>8 uleshort x \b(unknown=%#x)
|
|
380
|
+
>>12 use tiff_entry
|
|
381
|
+
# FillOrder
|
|
382
|
+
>0 uleshort 0x10a
|
|
383
|
+
>>4 ulelong 1
|
|
384
|
+
>>>12 use tiff_entry
|
|
385
|
+
# DocumentName
|
|
386
|
+
>0 uleshort 0x10d
|
|
387
|
+
>>(8.l) string x \b, name=%s
|
|
388
|
+
>>>12 use tiff_entry
|
|
389
|
+
# ImageDescription
|
|
390
|
+
>0 uleshort 0x10e
|
|
391
|
+
>>(8.l) string x \b, description=%s
|
|
392
|
+
>>>12 use tiff_entry
|
|
393
|
+
# Make
|
|
394
|
+
>0 uleshort 0x10f
|
|
395
|
+
>>(8.l) string x \b, manufacturer=%s
|
|
396
|
+
>>>12 use tiff_entry
|
|
397
|
+
# Model
|
|
398
|
+
>0 uleshort 0x110
|
|
399
|
+
>>(8.l) string x \b, model=%s
|
|
400
|
+
>>>12 use tiff_entry
|
|
401
|
+
# StripOffsets
|
|
402
|
+
>0 uleshort 0x111
|
|
403
|
+
>>12 use tiff_entry
|
|
404
|
+
# Orientation
|
|
405
|
+
>0 uleshort 0x112 \b, orientation=
|
|
406
|
+
>>8 uleshort 1 \bupper-left
|
|
407
|
+
>>8 uleshort 3 \blower-right
|
|
408
|
+
>>8 uleshort 6 \bupper-right
|
|
409
|
+
>>8 uleshort 8 \blower-left
|
|
410
|
+
>>8 uleshort 9 \bundefined
|
|
411
|
+
>>8 default x
|
|
412
|
+
>>>8 uleshort x \b[*%d*]
|
|
413
|
+
>>12 use tiff_entry
|
|
414
|
+
# XResolution
|
|
415
|
+
>0 uleshort 0x11a
|
|
416
|
+
>>8 ulelong x \b, xresolution=%d
|
|
417
|
+
>>12 use tiff_entry
|
|
418
|
+
# YResolution
|
|
419
|
+
>0 uleshort 0x11b
|
|
420
|
+
>>8 ulelong x \b, yresolution=%d
|
|
421
|
+
>>12 use tiff_entry
|
|
422
|
+
# ResolutionUnit
|
|
423
|
+
>0 uleshort 0x128
|
|
424
|
+
>>8 uleshort x \b, resolutionunit=%d
|
|
425
|
+
>>12 use tiff_entry
|
|
426
|
+
# Software
|
|
427
|
+
>0 uleshort 0x131
|
|
428
|
+
>>(8.l) string x \b, software=%s
|
|
429
|
+
>>12 use tiff_entry
|
|
430
|
+
# Datetime
|
|
431
|
+
>0 uleshort 0x132
|
|
432
|
+
>>(8.l) string x \b, datetime=%s
|
|
433
|
+
>>12 use tiff_entry
|
|
434
|
+
# HostComputer
|
|
435
|
+
>0 uleshort 0x13c
|
|
436
|
+
>>(8.l) string x \b, hostcomputer=%s
|
|
437
|
+
>>12 use tiff_entry
|
|
438
|
+
# WhitePoint
|
|
439
|
+
>0 uleshort 0x13e
|
|
440
|
+
>>12 use tiff_entry
|
|
441
|
+
# PrimaryChromaticities
|
|
442
|
+
>0 uleshort 0x13f
|
|
443
|
+
>>12 use tiff_entry
|
|
444
|
+
# YCbCrCoefficients
|
|
445
|
+
>0 uleshort 0x211
|
|
446
|
+
>>12 use tiff_entry
|
|
447
|
+
# YCbCrPositioning
|
|
448
|
+
>0 uleshort 0x213
|
|
449
|
+
>>12 use tiff_entry
|
|
450
|
+
# ReferenceBlackWhite
|
|
451
|
+
>0 uleshort 0x214
|
|
452
|
+
>>12 use tiff_entry
|
|
453
|
+
# Copyright
|
|
454
|
+
>0 uleshort 0x8298
|
|
455
|
+
>>(8.l) string x \b, copyright=%s
|
|
456
|
+
>>12 use tiff_entry
|
|
457
|
+
# ExifOffset
|
|
458
|
+
>0 uleshort 0x8769
|
|
459
|
+
>>12 use tiff_entry
|
|
460
|
+
# GPS IFD
|
|
461
|
+
>0 uleshort 0x8825 \b, GPS-Data
|
|
462
|
+
>>12 use tiff_entry
|
|
463
|
+
|
|
464
|
+
#>0 uleshort x \b, unknown=%#x
|
|
465
|
+
#>>12 use tiff_entry
|
|
466
|
+
|
|
467
|
+
0 string MM\x00\x2b Big TIFF image data, big-endian
|
|
468
|
+
!:mime image/tiff
|
|
469
|
+
0 string II\x2b\x00 Big TIFF image data, little-endian
|
|
470
|
+
!:mime image/tiff
|
|
471
|
+
|
|
472
|
+
# PNG [Portable Network Graphics, or "PNG's Not GIF"] images
|
|
473
|
+
# (Greg Roelofs, newt@uchicago.edu)
|
|
474
|
+
# (Albert Cahalan, acahalan@cs.uml.edu)
|
|
475
|
+
#
|
|
476
|
+
# 137 P N G \r \n ^Z \n [4-byte length] I H D R [HEAD data] [HEAD crc] ...
|
|
477
|
+
#
|
|
478
|
+
|
|
479
|
+
# IHDR parser
|
|
480
|
+
0 name png-ihdr
|
|
481
|
+
>0 ubelong x \b, %d x
|
|
482
|
+
>4 ubelong x %d,
|
|
483
|
+
>8 ubyte x %d-bit
|
|
484
|
+
>9 ubyte 0 grayscale,
|
|
485
|
+
>9 ubyte 2 \b/color RGB,
|
|
486
|
+
>9 ubyte 3 colormap,
|
|
487
|
+
>9 ubyte 4 gray+alpha,
|
|
488
|
+
>9 ubyte 6 \b/color RGBA,
|
|
489
|
+
#>10 ubyte 0 deflate/32K,
|
|
490
|
+
>12 ubyte 0 non-interlaced
|
|
491
|
+
>12 ubyte 1 interlaced
|
|
492
|
+
|
|
493
|
+
# Standard PNG image.
|
|
494
|
+
0 string \x89PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0DIHDR PNG image data
|
|
495
|
+
!:mime image/png
|
|
496
|
+
!:ext png
|
|
497
|
+
!:strength +10
|
|
498
|
+
>16 use png-ihdr
|
|
499
|
+
|
|
500
|
+
# Apple CgBI PNG image.
|
|
501
|
+
0 string \x89PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x04CgBI
|
|
502
|
+
>24 string \x00\x00\x00\x0DIHDR PNG image data (CgBI)
|
|
503
|
+
!:mime image/png
|
|
504
|
+
!:ext png
|
|
505
|
+
!:strength +10
|
|
506
|
+
>>32 use png-ihdr
|
|
507
|
+
|
|
508
|
+
# possible GIF replacements; none yet released!
|
|
509
|
+
# (Greg Roelofs, newt@uchicago.edu)
|
|
510
|
+
#
|
|
511
|
+
# GRR 950115: this was mine ("Zip GIF"):
|
|
512
|
+
0 string GIF94z ZIF image (GIF+deflate alpha)
|
|
513
|
+
!:mime image/x-unknown
|
|
514
|
+
#
|
|
515
|
+
# GRR 950115: this is Jeremy Wohl's Free Graphics Format (better):
|
|
516
|
+
#
|
|
517
|
+
0 string FGF95a FGF image (GIF+deflate beta)
|
|
518
|
+
!:mime image/x-unknown
|
|
519
|
+
#
|
|
520
|
+
# GRR 950115: this is Thomas Boutell's Portable Bitmap Format proposal
|
|
521
|
+
# (best; not yet implemented):
|
|
522
|
+
#
|
|
523
|
+
0 string PBF PBF image (deflate compression)
|
|
524
|
+
!:mime image/x-unknown
|
|
525
|
+
|
|
526
|
+
# GIF
|
|
527
|
+
# Strength set up to beat 0x55AA DOS/MBR signature word lookups (+65)
|
|
528
|
+
0 string GIF8 GIF image data
|
|
529
|
+
!:strength +80
|
|
530
|
+
!:mime image/gif
|
|
531
|
+
!:apple 8BIMGIFf
|
|
532
|
+
!:ext gif
|
|
533
|
+
>4 string 7a \b, version 8%s,
|
|
534
|
+
>4 string 9a \b, version 8%s,
|
|
535
|
+
>6 uleshort >0 %d x
|
|
536
|
+
>8 uleshort >0 %d
|
|
537
|
+
#>10 ubyte &0x80 color mapped,
|
|
538
|
+
#>10 ubyte&0x07 =0x00 2 colors
|
|
539
|
+
#>10 ubyte&0x07 =0x01 4 colors
|
|
540
|
+
#>10 ubyte&0x07 =0x02 8 colors
|
|
541
|
+
#>10 ubyte&0x07 =0x03 16 colors
|
|
542
|
+
#>10 ubyte&0x07 =0x04 32 colors
|
|
543
|
+
#>10 ubyte&0x07 =0x05 64 colors
|
|
544
|
+
#>10 ubyte&0x07 =0x06 128 colors
|
|
545
|
+
#>10 ubyte&0x07 =0x07 256 colors
|
|
546
|
+
|
|
547
|
+
# ITC (CMU WM) raster files. It is essentially a byte-reversed Sun raster,
|
|
548
|
+
# 1 plane, no encoding.
|
|
549
|
+
0 string \361\0\100\273 CMU window manager raster image data
|
|
550
|
+
>4 ulelong >0 %d x
|
|
551
|
+
>8 ulelong >0 %d,
|
|
552
|
+
>12 ulelong >0 %d-bit
|
|
553
|
+
|
|
554
|
+
# Magick Image File Format
|
|
555
|
+
# URL: https://imagemagick.org/script/miff.php
|
|
556
|
+
# Reference: http://fileformats.archiveteam.org/wiki/MIFF
|
|
557
|
+
# Update: Joerg Jenderek
|
|
558
|
+
# http://www.nationalarchives.gov.uk/pronom/fmt/930
|
|
559
|
+
0 search/256/bc id=imagemagick
|
|
560
|
+
# skip bad ASCII text by following new line~0x0A or space~0x20 character
|
|
561
|
+
#>&0 ubyte x \b, next character %#x
|
|
562
|
+
# called by TriD ImageMagick Machine independent File Format bitmap
|
|
563
|
+
>&0 ubyte&0xD5 0 MIFF image data
|
|
564
|
+
# https://reposcope.com/mimetype/image/miff
|
|
565
|
+
#!:mime image/miff
|
|
566
|
+
!:mime image/x-miff
|
|
567
|
+
!:ext miff/mif
|
|
568
|
+
# examples with standard file(1) magic
|
|
569
|
+
#>>0 string =id=ImageMagick with standard magic
|
|
570
|
+
# examples with unusual file(1) magic like
|
|
571
|
+
>>0 string !id=ImageMagick starting with
|
|
572
|
+
# start with comment (brace) like http://samples.fileformat.info/.../AQUARIUM.MIF
|
|
573
|
+
>>>0 ubyte =0x7b comment
|
|
574
|
+
# skip second character which is often a newline and show comment
|
|
575
|
+
>>>>2 string x "%s"
|
|
576
|
+
# does not start with comment, probably letters with other case like Id=ImageMagick
|
|
577
|
+
# ImageMagick-7.0.9-2/Magick++/demo/smile_anim.miff
|
|
578
|
+
>>>0 ubyte !0x7b
|
|
579
|
+
>>>>0 string >\0 '%-.14s'
|
|
580
|
+
# URL: https://imagemagick.org/
|
|
581
|
+
# Reference: https://imagemagick.org/script/magick-vector-graphics.php
|
|
582
|
+
# From: Joerg Jenderek
|
|
583
|
+
# Note: all white-spaces between commands are ignored
|
|
584
|
+
0 string push
|
|
585
|
+
# skip some white spaces
|
|
586
|
+
>5 search/3 graphic-context ImageMagick Vector Graphic
|
|
587
|
+
# TODO: look for dangerous commands like CVE-2016-3715
|
|
588
|
+
#!:mime text/plain
|
|
589
|
+
!:mime image/x-mvg
|
|
590
|
+
!:ext mvg
|
|
591
|
+
|
|
592
|
+
# Artisan
|
|
593
|
+
0 long 1123028772 Artisan image data
|
|
594
|
+
>4 long 1 \b, rectangular 24-bit
|
|
595
|
+
>4 long 2 \b, rectangular 8-bit with colormap
|
|
596
|
+
>4 long 3 \b, rectangular 32-bit (24-bit with matte)
|
|
597
|
+
|
|
598
|
+
# FIG (Facility for Interactive Generation of figures), an object-based format
|
|
599
|
+
# URL: http://fileformats.archiveteam.org/wiki/Fig
|
|
600
|
+
# https://en.wikipedia.org/wiki/Xfig
|
|
601
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/f/fig.trid.xml
|
|
602
|
+
# https://web.archive.org/web/20070920204655/http://epb.lbl.gov/xfig/fig-format.html
|
|
603
|
+
# Update: Joerg Jenderek
|
|
604
|
+
# Note: called "FIG vector drawing" by TrID,
|
|
605
|
+
# 4 byte magic is assumed to be always at offset 0 and
|
|
606
|
+
# verified by `fig2mpdf -v bootloader.fig && file bootloader.pdf`
|
|
607
|
+
#0 search/1/tb #FIG FIG image text
|
|
608
|
+
# GRR: with --keep-going option the line above gives duplicate messages
|
|
609
|
+
0 search/1/ts #FIG
|
|
610
|
+
>&0 use image-xfig
|
|
611
|
+
# binary data variant with non ASCII text characters like Control-A or �C in thermostat.fig
|
|
612
|
+
0 search/1/bs #FIG
|
|
613
|
+
>&0 use image-xfig
|
|
614
|
+
# display XFIG image describing text, mime type, file name extension and version
|
|
615
|
+
0 name image-xfig
|
|
616
|
+
>8 ubyte x FIG image text
|
|
617
|
+
#!:mime text/plain
|
|
618
|
+
# https://reposcope.com/mimetype/image/x-xfig
|
|
619
|
+
!:mime image/x-xfig
|
|
620
|
+
!:ext fig
|
|
621
|
+
# version string like: 1.4 2.1 3.1 3.2
|
|
622
|
+
>5 string x \b, version %.3s
|
|
623
|
+
# some times after version text like: "Produced by xfig version 3.2.5-alpha5"
|
|
624
|
+
>8 ubyte >0x0D
|
|
625
|
+
>>8 string x "%s"
|
|
626
|
+
# should be point character (2Eh) of version string according to TrID
|
|
627
|
+
#>6 ubyte !0x2E \b, at 6 %#x
|
|
628
|
+
# caret character (23h) at the beginning in most or probably all examples
|
|
629
|
+
#>0 ubyte !0x23 \b, starting with character %#x
|
|
630
|
+
# URL: http://fileformats.archiveteam.org/wiki/DeskMate_Draw
|
|
631
|
+
# http://en.wikipedia.org/wiki/Deskmate
|
|
632
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/d/dm-fig.trid.xml
|
|
633
|
+
# From: Joerg Jenderek
|
|
634
|
+
# Note: called "DeskMate Draw drawing" by TrID
|
|
635
|
+
0 string \x14FIG DeskMate Drawing
|
|
636
|
+
#!:mime application/octet-stream
|
|
637
|
+
!:mime image/x-deskmate-fig
|
|
638
|
+
!:ext fig
|
|
639
|
+
# TODO:
|
|
640
|
+
# "Cabri 3D Figure" by TrID fig-cabri.trid.xml
|
|
641
|
+
# "Playmation Figure" by TrID fig-playmation.trid.xml
|
|
642
|
+
|
|
643
|
+
# PHIGS
|
|
644
|
+
0 string ARF_BEGARF PHIGS clear text archive
|
|
645
|
+
0 string @(#)SunPHIGS SunPHIGS
|
|
646
|
+
# version number follows, in the form m.n
|
|
647
|
+
>40 string SunBin binary
|
|
648
|
+
>32 string archive archive
|
|
649
|
+
|
|
650
|
+
# GKS (Graphics Kernel System)
|
|
651
|
+
0 string GKSM GKS Metafile
|
|
652
|
+
>24 string SunGKS \b, SunGKS
|
|
653
|
+
|
|
654
|
+
# CGM image files
|
|
655
|
+
# Update: Joerg Jenderek
|
|
656
|
+
# URL: http://fileformats.archiveteam.org/wiki/CGM
|
|
657
|
+
# https://en.wikipedia.org/wiki/Computer_Graphics_Metafile
|
|
658
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/c/cgm-ct.trid.xml
|
|
659
|
+
# http://standards.iso.org/ittf/PubliclyAvailableStandards/c032381_ISO_IEC_8632-4_1999(E).zip
|
|
660
|
+
# Note: called "Computer Graphics Metafile (Clear Text)" by TrID and
|
|
661
|
+
# "Computer Graphics Metafile ASCII" by DROID or CGM by XnView
|
|
662
|
+
# verified by LibreOffice and partly by XnView `nconvert -info *.CGM`
|
|
663
|
+
# According to TrID only letter B and M are always upcased and by DROID often only B is upcased for command BEGIN METAFILE
|
|
664
|
+
0 string/c begmf
|
|
665
|
+
# skip SOME DROID fmt-301-signature-id-359.cgm fmt-301-signature-id-361.cgm fmt-302-signature-id-364.cgm
|
|
666
|
+
# fmt-302-signature-id-365.cgm x-fmt-142-signature-id-350.cgm x-fmt-142-signature-id-351.cgm
|
|
667
|
+
>5 short !0
|
|
668
|
+
# skip other versions of DROID fmt-301-signature-id-359.cgm fmt-301-signature-id-361.cgm fmt-302-signature-id-364.cgm
|
|
669
|
+
# fmt-302-signature-id-365.cgm x-fmt-142-signature-id-350.cgm x-fmt-142-signature-id-351.cgm
|
|
670
|
+
>>5 short !0xABab clear text Computer Graphics Metafile
|
|
671
|
+
# https://reposcope.com/mimetype/image/cgm
|
|
672
|
+
!:mime image/cgm
|
|
673
|
+
!:ext cgm
|
|
674
|
+
# SF:NAME like: 'metafile example';
|
|
675
|
+
>>>5 string x %s
|
|
676
|
+
# look for command METAFILE VERSION (MFVERSION <SOFTSEP> <I:VERSION>)
|
|
677
|
+
>>>2 search/128/c mfversion
|
|
678
|
+
#>>>>&0 ubyte x SOFTSEP=%#x
|
|
679
|
+
# version like: 1 3 4
|
|
680
|
+
>>>>&1 ubyte >0x31 \b, version %c
|
|
681
|
+
# Summary: Computer Graphics Metafile (binary)
|
|
682
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/c/cgm-bin.trid.xml
|
|
683
|
+
# https://standards.iso.org/ittf/PubliclyAvailableStandards/c032380_ISO_IEC_8632-3_1999(E).zip
|
|
684
|
+
# Note: called "Computer Graphics Metafile (binary)" by TrID and DROID or CGM by XnView
|
|
685
|
+
# verified by LibreOffice and partly by XnView `nconvert -info *.CGM`
|
|
686
|
+
# look for BEGIN METAFILE (element Class 0 and ID 1 and "random" Parameter) that is binary C C C C 0 0 0 0 0 0 1 P P P P P
|
|
687
|
+
0 ubeshort&0xFFe0 0x0020
|
|
688
|
+
# skip SOME DROID fmt-303-signature-id-368.cgm fmt-304-signature-id-369.cgm fmt-305-signature-id-370.cgm fmt-306-signature-id-371.cgm
|
|
689
|
+
# with containing only 28 bytes
|
|
690
|
+
>28 ubyte x
|
|
691
|
+
# look for METAFILE VERSION (element class 1 and id 1 and parameter P1 with length 2) that is binary 0 0 0 1 i i i i i i 1 P P P 1 P
|
|
692
|
+
# with "low" version; 2nd worst case argentin.cgm with parameter length 56
|
|
693
|
+
# worst MS.CGM
|
|
694
|
+
#>>2 search/73/b \x10\x22\0 binary Computer Graphics Metafile
|
|
695
|
+
>>2 search/128/b \x10\x22\0 binary Computer Graphics Metafile
|
|
696
|
+
!:mime image/cgm
|
|
697
|
+
!:ext cgm
|
|
698
|
+
# metafile 2 byte version number like: 1 (most) 2 3 4
|
|
699
|
+
>>>&-1 ubeshort >1 \b, version %u
|
|
700
|
+
# length number of 1st parameter octets in range 0 to 30 implies short command
|
|
701
|
+
>>>0 ubeshort&0x001F <31 \b, parameter length %u
|
|
702
|
+
# length of string like: 8 9 10 11 12 29
|
|
703
|
+
#>>>>2 ubyte x \b, %u BYTES (SHORT)
|
|
704
|
+
# string like: 'HiJaak 2' 'Example 1' 'sahara.cgm' 'MASTERCLIPS--Art Of Business '
|
|
705
|
+
>>>>2 pstring >\0 '%s'
|
|
706
|
+
# after 1st short command with even parameter length comes 2nd command like: 1022h 0010h (EAF00010.CGM 'HiJaak 2' FLOPPY2.CGM TIGER.CGM 'B:\TIGER.CGM')
|
|
707
|
+
>>>>0 ubeshort&0x0001 =0
|
|
708
|
+
>>>>>(2.b+3) ubeshort !0x1022 \b, 2nd command %#4.4x (short even)
|
|
709
|
+
# after 1st short command with odd parameter length comes nil padding byte followed 2nd command like: 1022h
|
|
710
|
+
>>>>0 ubeshort&0x0001 =1
|
|
711
|
+
#>>>>>(2.b+3) ubyte !0 \b, PADDING %#x
|
|
712
|
+
>>>>>(2.b+4) ubeshort !0x1022 \b, 2nd command %#4.4x (short odd)
|
|
713
|
+
# 11111 binary (decimal 31) in the parameter field indicates that the command is in long-form
|
|
714
|
+
>>>0 ubeshort&0x001F =0x1F
|
|
715
|
+
# bit 15 is partition flag with 1 for 'not-last' partition and 0 for 'last' partition
|
|
716
|
+
>>>>2 ubeshort&0x8000 !0 \b, partition flag %#4.4x
|
|
717
|
+
# bits 0 to 14 is parameter list length; the number of following parameter octets; range 0 to 32767
|
|
718
|
+
# length of 1st long command parameter like: 53
|
|
719
|
+
>>>>2 ubeshort&0x7Fff x \b, parameter length %u (long)
|
|
720
|
+
# The two header words are then followed by lenghth of 1st string like: 52
|
|
721
|
+
#>>>>4 ubyte x \b, %u BYTES
|
|
722
|
+
# string like: 'K:\PROJECTS\GRAPHICS\DWKS3.5\CLIPART\FLAGS\Italy.cgm'
|
|
723
|
+
>>>>4 pstring/B x '%s'
|
|
724
|
+
# odd long parameter length implies single null padding octet to start command on word boundary
|
|
725
|
+
>>>>2 ubeshort&0x0001 =1
|
|
726
|
+
# after 1st long command with odd parameter length comes nil padding byte followed by 2nd command like: 1022h
|
|
727
|
+
#>>>>>(4.b+5) ubyte !0 \b, PADDING %#x
|
|
728
|
+
>>>>>(4.b+6) ubeshort !0x1022 \b, 2nd command %#4.4x (long odd)
|
|
729
|
+
# even long parameter length implies next command directly is following
|
|
730
|
+
>>>>2 ubeshort&0x0001 =0
|
|
731
|
+
# after 1st long command with even parameter length comes 2nd command like: 1022h 0x1054 (MS.CGM)
|
|
732
|
+
>>>>>(4.b+5) ubeshort !0x1022 \b, 2nd command %#4.4x (long even)
|
|
733
|
+
# look for END METAFILE (element class 0 and id 2 and 0 parameter) that is binary 0 0 0 0 i i i i i 1 i P P P P P
|
|
734
|
+
>>>-2 ubeshort !0x0040 \b, NOT_FOUND_END_METAFILE
|
|
735
|
+
|
|
736
|
+
# MGR bitmaps (Michael Haardt, u31b3hs@pool.informatik.rwth-aachen.de)
|
|
737
|
+
0 string yz MGR bitmap, modern format, 8-bit aligned
|
|
738
|
+
0 string zz MGR bitmap, old format, 1-bit deep, 16-bit aligned
|
|
739
|
+
0 string xz MGR bitmap, old format, 1-bit deep, 32-bit aligned
|
|
740
|
+
0 string yx MGR bitmap, modern format, squeezed
|
|
741
|
+
|
|
742
|
+
# Fuzzy Bitmap (FBM) images
|
|
743
|
+
0 string %bitmap\0 FBM image data
|
|
744
|
+
>30 long 0x31 \b, mono
|
|
745
|
+
>30 long 0x33 \b, color
|
|
746
|
+
|
|
747
|
+
# facsimile data
|
|
748
|
+
1 string PC\ Research,\ Inc group 3 fax data
|
|
749
|
+
>29 ubyte 0 \b, normal resolution (204x98 DPI)
|
|
750
|
+
>29 ubyte 1 \b, fine resolution (204x196 DPI)
|
|
751
|
+
# From: Herbert Rosmanith <herp@wildsau.idv.uni.linz.at>
|
|
752
|
+
0 string Sfff structured fax file
|
|
753
|
+
|
|
754
|
+
# From: Joerg Jenderek <joerg.jen.der.ek@gmx.net>
|
|
755
|
+
# URL: http://fileformats.archiveteam.org/wiki/Award_BIOS_logo
|
|
756
|
+
# Note: verified by XnView command `nconvert -fullinfo *.EPA`
|
|
757
|
+
0 string \x11\x06 Award BIOS Logo, 136 x 84
|
|
758
|
+
!:mime image/x-award-bioslogo
|
|
759
|
+
!:ext epa
|
|
760
|
+
0 string \x11\x09 Award BIOS Logo, 136 x 126
|
|
761
|
+
!:mime image/x-award-bioslogo
|
|
762
|
+
!:ext epa
|
|
763
|
+
# https://telparia.com/fileFormatSamples/image/epa/IO.EPA
|
|
764
|
+
# Note: by bitmap-awbm-v1x1009.trid.xml called "Award BIOS logo bitmap (128x126) (v1)"
|
|
765
|
+
# verified by RECOIL `recoil2png -o tmp.png IO.EPA; file tmp.png`
|
|
766
|
+
0 string \x10\x09 Award BIOS Logo, 128 x 126
|
|
767
|
+
!:mime image/x-award-bioslogo
|
|
768
|
+
!:ext epa
|
|
769
|
+
#0 string \x07\x1f BIOS Logo corrupted?
|
|
770
|
+
# http://www.blackfiveservices.co.uk/awbmtools.shtml
|
|
771
|
+
# http://biosgfx.narod.ru/v3/
|
|
772
|
+
# http://biosgfx.narod.ru/abr-2/
|
|
773
|
+
0 string AWBM
|
|
774
|
+
# Note: by bitmap-awbm.trid.xml called "Award BIOS logo bitmap (v2)"
|
|
775
|
+
>4 uleshort <1981 Award BIOS Logo, version 2
|
|
776
|
+
#>4 uleshort <1981 Award BIOS bitmap
|
|
777
|
+
!:mime image/x-award-bioslogo2
|
|
778
|
+
#!:mime image/x-award-bmp
|
|
779
|
+
!:ext epa/bmp
|
|
780
|
+
# image width is a multiple of 4
|
|
781
|
+
>>4 uleshort&0x0003 0
|
|
782
|
+
>>>4 uleshort x \b, %d
|
|
783
|
+
>>>6 uleshort x x %d
|
|
784
|
+
>>4 uleshort&0x0003 >0 \b,
|
|
785
|
+
>>>4 uleshort&0x0003 =1
|
|
786
|
+
>>>>4 uleshort x %d+3
|
|
787
|
+
>>>4 uleshort&0x0003 =2
|
|
788
|
+
>>>>4 uleshort x %d+2
|
|
789
|
+
>>>4 uleshort&0x0003 =3
|
|
790
|
+
>>>>4 uleshort x %d+1
|
|
791
|
+
>>>6 uleshort x x %d
|
|
792
|
+
# at offset 8 starts imagedata followed by "RGB " marker
|
|
793
|
+
|
|
794
|
+
# PC bitmaps (OS/2, Windows BMP files) (Greg Roelofs, newt@uchicago.edu)
|
|
795
|
+
# https://en.wikipedia.org/wiki/BMP_file_format#DIB_header_.\
|
|
796
|
+
# 28bitmap_information_header.29
|
|
797
|
+
# Note: variant starting direct with DIB header see
|
|
798
|
+
# http://fileformats.archiveteam.org/wiki/BMP
|
|
799
|
+
# verified by ImageMagick version 6.8.9-8 command `identify *.dib`
|
|
800
|
+
0 uleshort 40
|
|
801
|
+
# skip bad samples like GAME by looking for valid number of color planes
|
|
802
|
+
>12 uleshort 1 Device independent bitmap graphic
|
|
803
|
+
!:mime image/x-ms-bmp
|
|
804
|
+
!:apple ????BMPp
|
|
805
|
+
!:ext dib
|
|
806
|
+
>>4 ulelong x \b, %d x
|
|
807
|
+
>>8 ulelong x %d x
|
|
808
|
+
>>14 uleshort x %d
|
|
809
|
+
# number of color planes (must be 1)
|
|
810
|
+
#>>12 uleshort >1 \b, %u color planes
|
|
811
|
+
# compression method: 0~no 1~RLE 8-bit/pixel 3~Huffman 1D
|
|
812
|
+
#>>16 ulelong 3 \b, Huffman 1D compression
|
|
813
|
+
>>16 ulelong >0 \b, %u compression
|
|
814
|
+
# image size is the size of raw bitmap; a dummy 0 can be given for BI_RGB bitmaps
|
|
815
|
+
>>20 ulelong x \b, image size %u
|
|
816
|
+
# horizontal and vertical resolution of the image (pixel per metre, signed integer)
|
|
817
|
+
>>24 ulelong >0 \b, resolution %d x
|
|
818
|
+
>>>28 ulelong x %d px/m
|
|
819
|
+
# number of colors in palette, or 0 to default to 2**n
|
|
820
|
+
#>>32 ulelong >0 \b, %u colors
|
|
821
|
+
# number of important colors used, or 0 when every color is important
|
|
822
|
+
>>36 ulelong >0 \b, %u important colors
|
|
823
|
+
# From: Joerg Jenderek
|
|
824
|
+
# URL: http://fileformats.archiveteam.org/wiki/VBM_(VDC_BitMap)
|
|
825
|
+
# Reference: http://csbruce.com/cbm/postings/csc19950906-1.txt
|
|
826
|
+
# http://mark0.net/download/triddefs_xml.7z
|
|
827
|
+
# defs/b/bitmap-vbm.trid.xml
|
|
828
|
+
# defs/b/bitmap-vbm-v3.trid.xml
|
|
829
|
+
# Note: called "VDC BitMap" by TrID
|
|
830
|
+
# verified by RECOIL `recoil2png -o tmp.png coke_can.vbm; file tmp.png`
|
|
831
|
+
# begin with a signature of 'B' 'M' 0xCB, followed by a version byte 2 or 3
|
|
832
|
+
# Similar to the unrelated Windows BMP format
|
|
833
|
+
# check for VDC bitmap and then display image dimension and version
|
|
834
|
+
0 name bitmap-vbm
|
|
835
|
+
>2 ubyte 0xCB VDC bitmap
|
|
836
|
+
!:mime image/x-commodore-vbm
|
|
837
|
+
# http://recoil.sourceforge.net/formats.html
|
|
838
|
+
!:ext bm/vbm
|
|
839
|
+
# the VBM format version number: 2 or 3
|
|
840
|
+
>>3 ubyte x \b, version %u
|
|
841
|
+
# width of the image in Hi/Lo format
|
|
842
|
+
>>4 ubeshort x \b, %u
|
|
843
|
+
# height of the image
|
|
844
|
+
>>6 ubeshort x x %u
|
|
845
|
+
# version 3 images have the following additional header information
|
|
846
|
+
>>3 ubyte =3
|
|
847
|
+
# data-encoding type: 0~uncompressed 1~RLE-compressed
|
|
848
|
+
>>>8 ubyte 0 \b, uncompressed
|
|
849
|
+
>>>8 ubyte 1 \b, RLE-compressed
|
|
850
|
+
# byte code for general RLE repetitions
|
|
851
|
+
#>>>9 ubyte x \b, RLE repetition code 0x%x
|
|
852
|
+
# reserved := 0
|
|
853
|
+
#>>>14 short >0 \b, reserved 0x%x
|
|
854
|
+
# length of comment text; 0~no comment text
|
|
855
|
+
#>>>16 ubeshort >0 \b, comment length %u
|
|
856
|
+
>>>16 pstring/H >0 \b, comment "%s"
|
|
857
|
+
#
|
|
858
|
+
0 string BM
|
|
859
|
+
# check for magic and version 2 of VDC bitmap or BMP with cbSize=715=CB02
|
|
860
|
+
>2 ubeshort 0xCB02
|
|
861
|
+
>>6 short =0
|
|
862
|
+
>>>0 use bitmap-bmp
|
|
863
|
+
# VDC bitmap height or maybe a few OS/2 BMP with nonzero "hotspot coordinates"
|
|
864
|
+
>>6 short !0
|
|
865
|
+
>>>0 use bitmap-vbm
|
|
866
|
+
# check for magic and version 3 of VDC bitmap or BMP with cbSize=971=CB03
|
|
867
|
+
>2 ubeshort 0xCB03
|
|
868
|
+
# check for reserved value (=0) of VDC bitmap
|
|
869
|
+
>>14 short =0
|
|
870
|
+
>>>0 use bitmap-vbm
|
|
871
|
+
# BMP with cbSize=????03CBh and dib header size != 0
|
|
872
|
+
>>14 short !0
|
|
873
|
+
>>>0 use bitmap-bmp
|
|
874
|
+
# cbSize is size of header or file size of Windows BMP bitmap
|
|
875
|
+
>2 default x
|
|
876
|
+
>>0 use bitmap-bmp
|
|
877
|
+
0 name bitmap-bmp
|
|
878
|
+
>14 ulelong 12 PC bitmap, OS/2 1.x format
|
|
879
|
+
!:mime image/bmp
|
|
880
|
+
!:ext bmp
|
|
881
|
+
>>18 uleshort x \b, %d x
|
|
882
|
+
>>20 uleshort x %d
|
|
883
|
+
# number of color planes (must be 1)
|
|
884
|
+
#>>22 uleshort !1 \b, %u color planes
|
|
885
|
+
# number of bits per pixel (color depth); found 4 8
|
|
886
|
+
>>24 uleshort x x %d
|
|
887
|
+
# x, y coordinates of the hotspot
|
|
888
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
889
|
+
>>>8 uleshort x \b%u
|
|
890
|
+
# cbSize; size of file or header like 1Ah 228C8h
|
|
891
|
+
>>2 ulelong x \b, cbSize %u
|
|
892
|
+
#>>2 ulelong x \b, cbSize 0x%8.8x
|
|
893
|
+
# offBits; offset to bitmap data like:
|
|
894
|
+
>>10 ulelong x \b, bits offset %u
|
|
895
|
+
# http://fileformats.archiveteam.org/wiki/BMP#OS.2F2_BMP_2.0 no examples found
|
|
896
|
+
>14 ulelong 48 PC bitmap, OS/2 2.x format (DIB header size=48)
|
|
897
|
+
>14 ulelong 24 PC bitmap, OS/2 2.x format (DIB header size=24)
|
|
898
|
+
# http://entropymine.com/jason/bmpsuite/bmpsuite/q/pal8os2v2-16.bmp
|
|
899
|
+
# Note: by bitmap-bmp-v2o.trid.xml called "Windows Bitmap (v2o)"
|
|
900
|
+
>14 ulelong 16 PC bitmap, OS/2 2.x format (DIB header size=16)
|
|
901
|
+
!:mime image/bmp
|
|
902
|
+
!:apple ????BMPp
|
|
903
|
+
!:ext bmp
|
|
904
|
+
# image width and height fields are unsigned integers for OS/2
|
|
905
|
+
>>18 ulelong x \b, %u x
|
|
906
|
+
>>22 ulelong x %u
|
|
907
|
+
# number of bits per pixel (color depth); found 8
|
|
908
|
+
>>28 uleshort >1 x %u
|
|
909
|
+
# x, y coordinates of the hotspot
|
|
910
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
911
|
+
>>>8 uleshort x \b%u
|
|
912
|
+
# number of color planes (must be 1)
|
|
913
|
+
#>>26 uleshort >1 \b, %u color planes
|
|
914
|
+
# cbSize; size of file like: 241E
|
|
915
|
+
>>2 ulelong x \b, cbSize %u
|
|
916
|
+
#>>2 ulelong x \b, cbSize 0x%x
|
|
917
|
+
# offBits; offset to bitmap data like: 41E
|
|
918
|
+
>>10 ulelong x \b, bits offset %u
|
|
919
|
+
#>>10 ulelong x \b, bits offset 0x%x
|
|
920
|
+
>14 ulelong 64 PC bitmap, OS/2 2.x format
|
|
921
|
+
!:mime image/bmp
|
|
922
|
+
!:apple ????BMPp
|
|
923
|
+
!:ext bmp
|
|
924
|
+
# image width and height fields are unsigned integers for OS/2
|
|
925
|
+
>>18 ulelong x \b, %u x
|
|
926
|
+
>>22 ulelong x %u
|
|
927
|
+
# number of bits per pixel (color depth); found 1 4 8
|
|
928
|
+
>>28 uleshort >1 x %u
|
|
929
|
+
# x, y coordinates of the hotspot
|
|
930
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
931
|
+
>>>8 uleshort x \b%u
|
|
932
|
+
>>26 uleshort >1 \b, %u color planes
|
|
933
|
+
# cbSize; size of file or headers
|
|
934
|
+
>>2 ulelong x \b, cbSize %u
|
|
935
|
+
# BMP with cbSize 000002CBh=715 or 000003CBh=971 maybe misinterpreted as VDC bitmap
|
|
936
|
+
#>>2 ulelong x \b, cbSize %#x
|
|
937
|
+
# offBits; offset to bitmap data like 56h 5Eh 8Eh 43Eh
|
|
938
|
+
>>10 ulelong x \b, bits offset %u
|
|
939
|
+
#>>10 ulelong x \b, bits offset %#x
|
|
940
|
+
#>>(10.l) ubequad !0 \b, bits %#16.16llx
|
|
941
|
+
# BITMAPV2INFOHEADER adds RGB bit masks
|
|
942
|
+
>14 ulelong 52 PC bitmap, Adobe Photoshop
|
|
943
|
+
!:mime image/bmp
|
|
944
|
+
!:apple ????BMPp
|
|
945
|
+
!:ext bmp
|
|
946
|
+
>>18 ulelong x \b, %d x
|
|
947
|
+
>>22 ulelong x %d x
|
|
948
|
+
# number of bits per pixel (color depth); found 16 32
|
|
949
|
+
>>28 uleshort x %d
|
|
950
|
+
# x, y coordinates of the hotspot; should be zero for Windows variant
|
|
951
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
952
|
+
>>>8 uleshort x \b%u
|
|
953
|
+
# cbSize; size of file like: 14A 7F42
|
|
954
|
+
>>2 ulelong x \b, cbSize %u
|
|
955
|
+
#>>2 ulelong x \b, cbSize 0x%x
|
|
956
|
+
# offBits; offset to bitmap data like: 42h
|
|
957
|
+
>>10 ulelong x \b, bits offset %u
|
|
958
|
+
#>>10 ulelong x \b, bits offset 0x%x
|
|
959
|
+
# BITMAPV3INFOHEADER adds alpha channel bit mask
|
|
960
|
+
>14 ulelong 56 PC bitmap, Adobe Photoshop with alpha channel mask
|
|
961
|
+
!:mime image/bmp
|
|
962
|
+
!:apple ????BMPp
|
|
963
|
+
!:ext bmp
|
|
964
|
+
>>18 ulelong x \b, %d x
|
|
965
|
+
>>22 ulelong x %d x
|
|
966
|
+
# number of bits per pixel (color depth); found 16 32
|
|
967
|
+
>>28 uleshort x %d
|
|
968
|
+
# x, y coordinates of the hotspot; should be zero for Windows variant
|
|
969
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
970
|
+
>>>8 uleshort x \b%u
|
|
971
|
+
# cbSize; size of file like: 4E 7F46 131DE 14046h
|
|
972
|
+
>>2 ulelong x \b, cbSize %u
|
|
973
|
+
#>>2 ulelong x \b, cbSize 0x%x
|
|
974
|
+
# offBits; offset to bitmap data like: 46h
|
|
975
|
+
>>10 ulelong x \b, bits offset %u
|
|
976
|
+
#>>10 ulelong x \b, bits offset 0x%x
|
|
977
|
+
>14 ulelong 40
|
|
978
|
+
# jump 4 bytes before end of file/header to skip fmt-116-signature-id-118.dib
|
|
979
|
+
# broken for large bitmaps
|
|
980
|
+
#>>(2.l-4) ulong x PC bitmap, Windows 3.x format
|
|
981
|
+
>>14 ulelong 40 PC bitmap, Windows 3.x format
|
|
982
|
+
!:mime image/bmp
|
|
983
|
+
!:apple ????BMPp
|
|
984
|
+
>>>18 ulelong x \b, %d x
|
|
985
|
+
>>>22 ulelong x %d
|
|
986
|
+
# 320 x 400 https://en.wikipedia.org/wiki/LOGO.SYS
|
|
987
|
+
>>>18 ulequad =0x0000019000000140 x
|
|
988
|
+
!:ext bmp/sys
|
|
989
|
+
>>>18 ulequad !0x0000019000000140
|
|
990
|
+
# compression method 2~RLE 4-bit/pixel implies also extension rle
|
|
991
|
+
>>>>30 ulelong 2 x
|
|
992
|
+
!:ext bmp/rle
|
|
993
|
+
# not RLE compressed and not 320x400 dimension
|
|
994
|
+
>>>>30 default x
|
|
995
|
+
# "small" dimensions like: 14x15 15x16 16x14 16x16 32x32
|
|
996
|
+
# https://en.wikipedia.org/wiki/Favicon
|
|
997
|
+
>>>>>18 ulequad&0xffFFffC0ffFFffC0 =0 x
|
|
998
|
+
# https://www.politi-kdigital.de/favicon.ico
|
|
999
|
+
# http://forum.rpc1.org/favicon.ico
|
|
1000
|
+
!:ext bmp/ico
|
|
1001
|
+
# "big" dimensions > 63
|
|
1002
|
+
>>>>>18 default x x
|
|
1003
|
+
!:ext bmp
|
|
1004
|
+
# number of bits per pixel (color depth); found 1 2 4 8 16 24 32
|
|
1005
|
+
>>>28 uleshort x %d
|
|
1006
|
+
# x, y coordinates of the hotspot; there is no hotspot in bitmaps, so values 0
|
|
1007
|
+
#>>>6 uleshort >0 \b, hotspot %ux
|
|
1008
|
+
#>>>>8 uleshort x \b%u
|
|
1009
|
+
# number of color planes (must be 1), except badplanes.bmp for testing
|
|
1010
|
+
#>>>26 uleshort >1 \b, %u color planes
|
|
1011
|
+
# compression method: 0~no 1~RLE 8-bit/pixel 2~RLE 4-bit/pixel 3~Huffman 1D 6~RGBA bit field masks
|
|
1012
|
+
#>>>30 ulelong 3 \b, Huffman 1D compression
|
|
1013
|
+
>>>30 ulelong >0 \b, %u compression
|
|
1014
|
+
# image size is the size of raw bitmap; a dummy 0 can be given for BI_RGB bitmaps
|
|
1015
|
+
>>>34 ulelong >0 \b, image size %u
|
|
1016
|
+
# horizontal and vertical resolution of the image (pixel per metre, signed integer)
|
|
1017
|
+
>>>38 ulelong >0 \b, resolution %d x
|
|
1018
|
+
>>>>42 ulelong x %d px/m
|
|
1019
|
+
# number of colors in palette 16 256, or 0 to default to 2**n
|
|
1020
|
+
#>>>46 ulelong >0 \b, %u colors
|
|
1021
|
+
# number of important colors used, or 0 when every color is important
|
|
1022
|
+
>>>50 ulelong >0 \b, %u important colors
|
|
1023
|
+
# cbSize; often size of file
|
|
1024
|
+
>>>2 ulelong x \b, cbSize %u
|
|
1025
|
+
#>>>2 ulelong x \b, cbSize %#x
|
|
1026
|
+
# offBits; offset to bitmap data like 36h 76h BEh 236h 406h 436h 4E6h
|
|
1027
|
+
>>>10 ulelong x \b, bits offset %u
|
|
1028
|
+
#>>>10 ulelong x \b, bits offset %#x
|
|
1029
|
+
#>>>(10.l) ubequad !0 \b, bits %#16.16llxd
|
|
1030
|
+
>14 ulelong 124 PC bitmap, Windows 98/2000 and newer format
|
|
1031
|
+
!:mime image/bmp
|
|
1032
|
+
!:ext bmp
|
|
1033
|
+
>>18 ulelong x \b, %d x
|
|
1034
|
+
>>22 ulelong x %d x
|
|
1035
|
+
# color planes; must be 1
|
|
1036
|
+
#>>>26 uleshort >1 \b, %u color planes
|
|
1037
|
+
# number of bits per pixel (color depth); found 4 8 16 24 32 1 (fmt-119-signature-id-121.bmp) 0 (rgb24jpeg.bmp rgb24png.bmp)
|
|
1038
|
+
>>28 uleshort x %d
|
|
1039
|
+
# x, y coordinates of the hotspot; should be zero for Windows variant
|
|
1040
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
1041
|
+
>>>8 uleshort x \b%u
|
|
1042
|
+
# cbSize; size of file like: 8E AA 48A 999 247A 4F02 7F8A 3F88E B216E 1D4C8A 100008A
|
|
1043
|
+
>>2 ulelong x \b, cbSize %u
|
|
1044
|
+
#>>2 ulelong x \b, cbSize 0x%x
|
|
1045
|
+
# offBits; offset to bitmap data like: 8A 47A ABABABAB (fmt-119-signature-id-121.bmp)
|
|
1046
|
+
>>10 ulelong x \b, bits offset %u
|
|
1047
|
+
#>>10 ulelong x \b, bits offset 0x%x
|
|
1048
|
+
>14 ulelong 108 PC bitmap, Windows 95/NT4 and newer format
|
|
1049
|
+
!:mime image/bmp
|
|
1050
|
+
!:ext bmp
|
|
1051
|
+
>>18 ulelong x \b, %d x
|
|
1052
|
+
>>22 ulelong x %d x
|
|
1053
|
+
# number of bits per pixel (color depth); found 8 24 32
|
|
1054
|
+
>>28 uleshort x %d
|
|
1055
|
+
# x, y coordinates of the hotspot; should be zero for Windows variant
|
|
1056
|
+
>>6 uleshort >0 \b, hotspot %ux
|
|
1057
|
+
>>>8 uleshort x \b%u
|
|
1058
|
+
# cbSize; size of file like: 82 8A 9A 9F86 1E07A 3007A 88B7A C007A
|
|
1059
|
+
>>2 ulelong x \b, cbSize %u
|
|
1060
|
+
#>>2 ulelong x \b, cbSize 0x%x
|
|
1061
|
+
# offBits; offset to bitmap data like: 7A 7E 46A
|
|
1062
|
+
>>10 ulelong x \b, bits offset %u
|
|
1063
|
+
#>>10 ulelong x \b, bits offset 0x%x
|
|
1064
|
+
# Update: Joerg Jenderek
|
|
1065
|
+
# URL: http://fileformats.archiveteam.org/wiki/OS/2_Icon
|
|
1066
|
+
# Reference: http://www.fileformat.info
|
|
1067
|
+
# /format/os2bmp/spec/902d5c253f2a43ada39c2b81034f27fd/view.htm
|
|
1068
|
+
# Note: verified by command like `deark -l -d3 OS2MEMU.ICO`
|
|
1069
|
+
0 string IC
|
|
1070
|
+
# skip Lotus smart icon *.smi by looking for valid hotspot coordinates
|
|
1071
|
+
>6 ulelong&0xFF00FF00 =0 OS/2 icon
|
|
1072
|
+
# jump 4 bytes before end of header/file and test for accessibility
|
|
1073
|
+
#>>(2.l-4) ubelong x End of header is OK!
|
|
1074
|
+
!:mime image/x-os2-ico
|
|
1075
|
+
!:ext ico
|
|
1076
|
+
# cbSize; size of header or file in bytes like 1ah 120h 420h
|
|
1077
|
+
>>2 ulelong x \b, cbSize %u
|
|
1078
|
+
# xHotspot, yHotspot; coordinates of the hotspot for icons like 16 32
|
|
1079
|
+
>>6 uleshort x \b, hotspot %ux
|
|
1080
|
+
>>8 uleshort x \b%u
|
|
1081
|
+
# offBits; offset in bytes to the beginning of the bit-map pel data like 20h
|
|
1082
|
+
>>10 ulelong x \b, bits offset %u
|
|
1083
|
+
#>>(10.l) ubequad x \b, bits %#16.16llx
|
|
1084
|
+
#0 string PI PC pointer image data
|
|
1085
|
+
#0 string CI PC color icon data
|
|
1086
|
+
0 string CI
|
|
1087
|
+
# test also for valid dib header sizes 12 or 64
|
|
1088
|
+
>14 ulelong <65 OS/2
|
|
1089
|
+
# test also for valid hotspot coordinates
|
|
1090
|
+
#>>6 ulelong&0xFE00FE00 =0 OS/2
|
|
1091
|
+
!:mime image/x-os2-ico
|
|
1092
|
+
!:ext ico
|
|
1093
|
+
>>14 ulelong 12 1.x color icon
|
|
1094
|
+
# image width and height fields are unsigned integers for OS/2
|
|
1095
|
+
>>>18 uleshort x %u x
|
|
1096
|
+
# stored height = 2 * real height
|
|
1097
|
+
>>>20 uleshort/2 x %u
|
|
1098
|
+
# number of bits per pixel (color depth). Typical 32 24 16 8 4 but only 1 found
|
|
1099
|
+
>>>24 uleshort >1 x %u
|
|
1100
|
+
# color planes; must be 1
|
|
1101
|
+
#>>>22 uleshort >1 \b, %u color planes
|
|
1102
|
+
>>14 ulelong 64 2.x color icon
|
|
1103
|
+
# image width and height
|
|
1104
|
+
>>>18 ulelong x %u x
|
|
1105
|
+
# stored height = 2 * real height
|
|
1106
|
+
>>>22 ulelong/2 x %u
|
|
1107
|
+
# number of bits per pixel (color depth). only 1 found
|
|
1108
|
+
>>>28 uleshort >1 x %u
|
|
1109
|
+
#>>>26 uleshort >1 \b, %u color planes
|
|
1110
|
+
# compression method: 0~no 3~Huffman 1D
|
|
1111
|
+
>>>30 ulelong 3 \b, Huffman 1D compression
|
|
1112
|
+
#>>>30 ulelong >0 \b, %u compression
|
|
1113
|
+
# xHotspot, yHotspot; coordinates of the hotspot like 0 1 16 20 32 33 63 64
|
|
1114
|
+
>>6 uleshort x \b, hotspot %ux
|
|
1115
|
+
>>8 uleshort x \b%u
|
|
1116
|
+
# cbSize; size of header or maybe file in bytes like 1Ah 4Eh 84Eh
|
|
1117
|
+
>>2 ulelong x \b, cbSize %u
|
|
1118
|
+
#>>2 ulelong x \b, cbSize %x
|
|
1119
|
+
# offBits; offset to bitmap data (pixel array) like E4h 3Ah 66h 6Ah 33Ah 4A4h
|
|
1120
|
+
>>10 ulelong x \b, bits offset %u
|
|
1121
|
+
#>>10 ulelong x \b, bits offset %#x
|
|
1122
|
+
#>>(10.l) ubequad !0 \b, bits %#16.16llx
|
|
1123
|
+
# dib header size: 12~Ch~OS/2 1.x 64~40h~OS/2 2.x
|
|
1124
|
+
#>>14 ulelong x \b, dib header size %u
|
|
1125
|
+
#0 string CP PC color pointer image data
|
|
1126
|
+
# URL: http://fileformats.archiveteam.org/wiki/OS/2_Pointer
|
|
1127
|
+
# Reference: http://www.fileformat.info/format/os2bmp/egff.htm
|
|
1128
|
+
0 string CP
|
|
1129
|
+
# skip many Corel Photo-Paint image "CPT9FILE" by checking for positive bits offset
|
|
1130
|
+
>10 ulelong >0
|
|
1131
|
+
# skip CPU-Z Report by checking for valid dib header sizes 12 or 64
|
|
1132
|
+
>>14 ulelong =12
|
|
1133
|
+
>>>0 use os2-ptr
|
|
1134
|
+
>>14 ulelong =64
|
|
1135
|
+
>>>0 use os2-ptr
|
|
1136
|
+
# display information of OS/2 pointer bitmaps
|
|
1137
|
+
0 name os2-ptr
|
|
1138
|
+
>14 ulelong x OS/2
|
|
1139
|
+
# http://extension.nirsoft.net/PTR
|
|
1140
|
+
!:mime image/x-ibm-pointer
|
|
1141
|
+
!:ext ptr
|
|
1142
|
+
>>14 ulelong 12 1.x color pointer
|
|
1143
|
+
# image width and height fields are unsigned integers for OS/2
|
|
1144
|
+
>>>18 uleshort x %u x
|
|
1145
|
+
# stored height = 2 * real height
|
|
1146
|
+
>>>20 uleshort/2 x %u
|
|
1147
|
+
# number of bits per pixel (color depth). Typical 32 24 16 8 4 but only 1 found
|
|
1148
|
+
>>>24 uleshort >1 x %u
|
|
1149
|
+
# color planes; must be 1
|
|
1150
|
+
#>>>22 uleshort >1 \b, %u color planes
|
|
1151
|
+
>>14 ulelong 64 2.x color pointer
|
|
1152
|
+
# image width and height
|
|
1153
|
+
>>>18 ulelong x %u x
|
|
1154
|
+
# stored height = 2 * real height
|
|
1155
|
+
>>>22 ulelong/2 x %u
|
|
1156
|
+
# number of bits per pixel (color depth). only 1 found
|
|
1157
|
+
>>>28 uleshort >1 x %u
|
|
1158
|
+
#>>>26 uleshort >1 \b, %u color planes
|
|
1159
|
+
# compression method: 0~no 3~Huffman 1D
|
|
1160
|
+
>>>30 ulelong 3 \b, Huffman 1D compression
|
|
1161
|
+
#>>>30 ulelong >0 \b, %u compression
|
|
1162
|
+
# xHotspot, yHotspot; coordinates of the hotspot like 0 3 4 8 15 16 23 27 31
|
|
1163
|
+
>>6 uleshort x \b, hotspot %ux
|
|
1164
|
+
>>8 uleshort x \b%u
|
|
1165
|
+
# cbSize; size of header or maybe file in bytes like 1Ah 4Eh
|
|
1166
|
+
>>2 ulelong x \b, cbSize %u
|
|
1167
|
+
#>>2 ulelong x \b, cbSize %x
|
|
1168
|
+
# offBits; offset to bitmap data (pixel array) like 6Ah A4h E4h 4A4h
|
|
1169
|
+
>>10 ulelong x \b, bits offset %u
|
|
1170
|
+
#>>10 ulelong x \b, bits offset %#x
|
|
1171
|
+
#>>(10.l) ubequad !0 \b, bits %#16.16llx
|
|
1172
|
+
# dib header size: 12~Ch~OS/2 1.x 64~40h~OS/2 2.x
|
|
1173
|
+
#>>14 ulelong x \b, dib header size %u
|
|
1174
|
+
# Conflicts with other entries [BABYL]
|
|
1175
|
+
# URL: http://fileformats.archiveteam.org/wiki/BMP#OS.2F2_Bitmap_Array
|
|
1176
|
+
# Note: container for OS/2 icon "IC", color icon "CI", color pointer "CP" or bitmap "BM"
|
|
1177
|
+
#0 string BA PC bitmap array data
|
|
1178
|
+
0 string BA
|
|
1179
|
+
# skip old Emacs RMAIL BABYL ./mail.news by checking for low header size
|
|
1180
|
+
>2 ulelong <0x004c5942 OS/2 graphic array
|
|
1181
|
+
!:mime image/x-os2-graphics
|
|
1182
|
+
#!:apple ????BMPf
|
|
1183
|
+
# cbSize; size of header like 28h 5Ch
|
|
1184
|
+
>>2 ulelong x \b, cbSize %u
|
|
1185
|
+
#>>2 ulelong x \b, cbSize %#x
|
|
1186
|
+
# offNext; offset to data like 0 48h F2h 4Eh 64h C6h D2h D6h DAh E6h EAh 348h
|
|
1187
|
+
>>6 ulelong >0 \b, data offset %u
|
|
1188
|
+
#>>6 ulelong >0 \b, data offset %#x
|
|
1189
|
+
#>>(6.l) ubequad !0 \b, data %#16.16llx
|
|
1190
|
+
# dimensions of the intended device like 640 x 480 for VGA or 1024 x 768
|
|
1191
|
+
>>10 uleshort >0 \b, display %u
|
|
1192
|
+
>>>12 uleshort >0 x %u
|
|
1193
|
+
# usType of first array element
|
|
1194
|
+
#>>14 string x \b, usType %2.2s
|
|
1195
|
+
# 1 space char after "1st"
|
|
1196
|
+
# no *.bga examples found https://www.openwith.org/file-extensions/bga/1342
|
|
1197
|
+
>>14 string BM \b; 1st
|
|
1198
|
+
!:ext bmp/bga
|
|
1199
|
+
>>14 string CI \b; 1st
|
|
1200
|
+
!:ext ico
|
|
1201
|
+
>>14 string CP \b; 1st
|
|
1202
|
+
!:ext ico
|
|
1203
|
+
>>14 string IC \b; 1st
|
|
1204
|
+
!:ext ico
|
|
1205
|
+
# no white-black pointer found
|
|
1206
|
+
#>>14 string PT \b; 1st
|
|
1207
|
+
#!:ext
|
|
1208
|
+
>>14 indirect x
|
|
1209
|
+
|
|
1210
|
+
# XPM icons (Greg Roelofs, newt@uchicago.edu)
|
|
1211
|
+
# Update: Joerg Jenderek
|
|
1212
|
+
# URL: http://fileformats.archiveteam.org/wiki/XPM
|
|
1213
|
+
# Reference: http://www.x.org/docs/XPM/xpm.pdf
|
|
1214
|
+
# http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-xpm.trid.xml
|
|
1215
|
+
# Note: called "X PixMap bitmap" by TrID and "X-Windows Pixmap Image" by DROID via PUID x-fmt/208
|
|
1216
|
+
# starting with c comment like: logo.xpm
|
|
1217
|
+
0 string /*\040
|
|
1218
|
+
# 9 byte c-comment "/* XPM */" not at the beginning like: mozicon16.xpm mozicon50.xpm (thunderbird)
|
|
1219
|
+
>0 search/0xCE /*\ XPM\ */
|
|
1220
|
+
# skip DROID x-fmt-208-signature-id-620.xpm by looking for char array without explict length
|
|
1221
|
+
# and match mh-logo.xpm (emacs)
|
|
1222
|
+
>>&0 search/1249 []
|
|
1223
|
+
>>>0 use xpm-image
|
|
1224
|
+
# non standard because no 9 byte c-comment "/* XPM */" like: logo.xpm in qemu package
|
|
1225
|
+
>0 default x
|
|
1226
|
+
# words are separated by a white space which can be composed of space and tabulation characters
|
|
1227
|
+
>>0 search/0x52 static\040char\040
|
|
1228
|
+
# skip debug.c testmlc.c by looking for char array without explict length
|
|
1229
|
+
# https://www.clamav.net/downloads/production/clamav-0.104.2.tar.gz
|
|
1230
|
+
# clamav-0.104.2\libclammspack\mspack\debug.c
|
|
1231
|
+
>>>&0 search/64 []
|
|
1232
|
+
>>>>0 use xpm-image
|
|
1233
|
+
# display X pixmap image information
|
|
1234
|
+
0 name xpm-image
|
|
1235
|
+
>0 string x X pixmap image text
|
|
1236
|
+
#!:mime text/plain
|
|
1237
|
+
# https://reposcope.com/mimetype/image/x-xpixmap
|
|
1238
|
+
# alias
|
|
1239
|
+
#!:mime image/x-xpm
|
|
1240
|
+
!:mime image/x-xpixmap
|
|
1241
|
+
!:ext xpm
|
|
1242
|
+
# NO pm example found!
|
|
1243
|
+
#!:ext xpm/pm
|
|
1244
|
+
# look for start of character array at beginning of a line like: psetupl.xpm (OpenOffice 4.1.7)
|
|
1245
|
+
>0 search/0x406 \n"
|
|
1246
|
+
# DEBUG VALUES string
|
|
1247
|
+
#>>&0 string x '%s'
|
|
1248
|
+
# width with optional white space before like: 16 24 32 48 1280
|
|
1249
|
+
>>&0 regex/8 [0-9]{1,5} \b, %s
|
|
1250
|
+
# height with white space like: 15 16 17 24 32 48 1024
|
|
1251
|
+
>>>&0 regex/8 [0-9]{1,5} x %s
|
|
1252
|
+
# number of colors with white space like: 1 2 3 4 5 8 11 14 162 255 but unrelistic 4294967295 by hardcopy tool
|
|
1253
|
+
>>>>&0 regex/12 [0-9]{1,9} x %s
|
|
1254
|
+
# chars_per_pixel with white space like: 1 2
|
|
1255
|
+
>>>>>&0 regex/14 [0-9]{1,2} \b, %s chars/pixel
|
|
1256
|
+
# non standard because not starting with 9 byte c-comment "/* XPM */"
|
|
1257
|
+
>0 string !/*\ XPM\ */
|
|
1258
|
+
>>0 string x \b, 1st line "%s"
|
|
1259
|
+
|
|
1260
|
+
# Utah Raster Toolkit RLE images (janl@ifi.uio.no)
|
|
1261
|
+
0 uleshort 0xcc52 RLE image data,
|
|
1262
|
+
>6 uleshort x %d x
|
|
1263
|
+
>8 uleshort x %d
|
|
1264
|
+
>2 uleshort >0 \b, lower left corner: %d
|
|
1265
|
+
>4 uleshort >0 \b, lower right corner: %d
|
|
1266
|
+
>10 ubyte&0x1 =0x1 \b, clear first
|
|
1267
|
+
>10 ubyte&0x2 =0x2 \b, no background
|
|
1268
|
+
>10 ubyte&0x4 =0x4 \b, alpha channel
|
|
1269
|
+
>10 ubyte&0x8 =0x8 \b, comment
|
|
1270
|
+
>11 ubyte >0 \b, %d color channels
|
|
1271
|
+
>12 ubyte >0 \b, %d bits per pixel
|
|
1272
|
+
>13 ubyte >0 \b, %d color map channels
|
|
1273
|
+
|
|
1274
|
+
# image file format (Robert Potter, potter@cs.rochester.edu)
|
|
1275
|
+
0 string Imagefile\ version- iff image data
|
|
1276
|
+
# this adds the whole header (inc. version number), informative but longish
|
|
1277
|
+
>10 string >\0 %s
|
|
1278
|
+
|
|
1279
|
+
# Sun raster images, from Daniel Quinlan (quinlan@yggdrasil.com)
|
|
1280
|
+
0 ubelong 0x59a66a95 Sun raster image data
|
|
1281
|
+
>4 ubelong >0 \b, %d x
|
|
1282
|
+
>8 ubelong >0 %d,
|
|
1283
|
+
>12 ubelong >0 %d-bit,
|
|
1284
|
+
#>16 ubelong >0 %d bytes long,
|
|
1285
|
+
>20 ubelong 0 old format,
|
|
1286
|
+
#>20 ubelong 1 standard,
|
|
1287
|
+
>20 ubelong 2 compressed,
|
|
1288
|
+
>20 ubelong 3 RGB,
|
|
1289
|
+
>20 ubelong 4 TIFF,
|
|
1290
|
+
>20 ubelong 5 IFF,
|
|
1291
|
+
>20 ubelong 0xffff reserved for testing,
|
|
1292
|
+
>24 ubelong 0 no colormap
|
|
1293
|
+
>24 ubelong 1 RGB colormap
|
|
1294
|
+
>24 ubelong 2 raw colormap
|
|
1295
|
+
#>28 ubelong >0 colormap is %d bytes long
|
|
1296
|
+
|
|
1297
|
+
# SGI image file format, from Daniel Quinlan (quinlan@yggdrasil.com)
|
|
1298
|
+
#
|
|
1299
|
+
# See
|
|
1300
|
+
# http://reality.sgi.com/grafica/sgiimage.html
|
|
1301
|
+
#
|
|
1302
|
+
0 ubeshort 474 SGI image data
|
|
1303
|
+
#>2 ubyte 0 \b, verbatim
|
|
1304
|
+
>2 ubyte 1 \b, RLE
|
|
1305
|
+
#>3 ubyte 1 \b, normal precision
|
|
1306
|
+
>3 ubyte 2 \b, high precision
|
|
1307
|
+
>4 ubeshort x \b, %d-D
|
|
1308
|
+
>6 ubeshort x \b, %d x
|
|
1309
|
+
>8 ubeshort x %d
|
|
1310
|
+
>10 ubeshort x \b, %d channel
|
|
1311
|
+
>10 ubeshort !1 \bs
|
|
1312
|
+
>80 string >0 \b, "%s"
|
|
1313
|
+
|
|
1314
|
+
0 string IT01 FIT image data
|
|
1315
|
+
>4 ubelong x \b, %d x
|
|
1316
|
+
>8 ubelong x %d x
|
|
1317
|
+
>12 ubelong x %d
|
|
1318
|
+
#
|
|
1319
|
+
0 string IT02 FIT image data
|
|
1320
|
+
>4 ubelong x \b, %d x
|
|
1321
|
+
>8 ubelong x %d x
|
|
1322
|
+
>12 ubelong x %d
|
|
1323
|
+
#
|
|
1324
|
+
2048 string PCD_IPI Kodak Photo CD image pack file
|
|
1325
|
+
>0xe02 ubyte&0x03 0x00 , landscape mode
|
|
1326
|
+
>0xe02 ubyte&0x03 0x01 , portrait mode
|
|
1327
|
+
>0xe02 ubyte&0x03 0x02 , landscape mode
|
|
1328
|
+
>0xe02 ubyte&0x03 0x03 , portrait mode
|
|
1329
|
+
0 string PCD_OPA Kodak Photo CD overview pack file
|
|
1330
|
+
|
|
1331
|
+
# FITS format. Jeff Uphoff <juphoff@tarsier.cv.nrao.edu>
|
|
1332
|
+
# FITS is the Flexible Image Transport System, the de facto standard for
|
|
1333
|
+
# data and image transfer, storage, etc., for the astronomical community.
|
|
1334
|
+
# (FITS floating point formats are big-endian.)
|
|
1335
|
+
0 string SIMPLE\ \ = FITS image data
|
|
1336
|
+
!:mime image/fits
|
|
1337
|
+
!:ext fits/fts
|
|
1338
|
+
>109 string 8 \b, 8-bit, character or unsigned binary integer
|
|
1339
|
+
>108 string 16 \b, 16-bit, two's complement binary integer
|
|
1340
|
+
>107 string \ 32 \b, 32-bit, two's complement binary integer
|
|
1341
|
+
>107 string -32 \b, 32-bit, floating point, single precision
|
|
1342
|
+
>107 string -64 \b, 64-bit, floating point, double precision
|
|
1343
|
+
|
|
1344
|
+
# other images
|
|
1345
|
+
0 string This\ is\ a\ BitMap\ file Lisp Machine bit-array-file
|
|
1346
|
+
|
|
1347
|
+
# From SunOS 5.5.1 "/etc/magic" - appeared right before Sun raster image
|
|
1348
|
+
# stuff.
|
|
1349
|
+
#
|
|
1350
|
+
0 ubeshort 0x1010 PEX Binary Archive
|
|
1351
|
+
|
|
1352
|
+
# DICOM medical imaging data
|
|
1353
|
+
# URL: https://en.wikipedia.org/wiki/DICOM#Data_format
|
|
1354
|
+
# Note: "dcm" is the official file name extension
|
|
1355
|
+
# XnView mention also "dc3" and "acr" as file name extension
|
|
1356
|
+
128 string DICM DICOM medical imaging data
|
|
1357
|
+
!:mime application/dicom
|
|
1358
|
+
!:ext dcm/dicom/dic
|
|
1359
|
+
|
|
1360
|
+
# XWD - X Window Dump file.
|
|
1361
|
+
# URL: http://fileformats.archiveteam.org/wiki/XWD
|
|
1362
|
+
# Reference: https://wiki.multimedia.cx/index.php?title=XWD
|
|
1363
|
+
# http://mark0.net/download/triddefs_xml.7z/defs/x/xdm-x11.trid.xml
|
|
1364
|
+
# Note: called "X-Windows Screen Dump (X11)" by TrID and
|
|
1365
|
+
# "X-Windows Screen Dump" version X11 by DROID via PUID fmt/483
|
|
1366
|
+
# verfied by XnView `nconvert -in xwd -info *`
|
|
1367
|
+
# and ImageMagick 6.9.11 `identify -verbose *` as XWD X Windows system window dump
|
|
1368
|
+
# and `xwud -in fig41.wxd -dumpheader`
|
|
1369
|
+
# As described in /usr/X11R6/include/X11/XWDFile.h
|
|
1370
|
+
# used by the xwd program.
|
|
1371
|
+
# Bradford Castalia, idaeim, 1/01
|
|
1372
|
+
# updated by Adam Buchbinder, 2/09 and Joerg Jenderek, May 2022
|
|
1373
|
+
# The following assumes version 7 of the format; the first long is the length
|
|
1374
|
+
# of the header, which is at least 25 4-byte longs, and the one at offset 8
|
|
1375
|
+
# is a constant which is always either 1 or 2. Offset 12 is the pixmap depth,
|
|
1376
|
+
# which is a maximum of 32.
|
|
1377
|
+
# Size of the entire file header (bytes) like: 100 104 105 106 107 109 110 113 114 115 118 172
|
|
1378
|
+
0 ubelong >99
|
|
1379
|
+
# pixmap_format; Pixmap format; 0~1-bit (XYBitmap) format 1~single-plane (XYPixmap) 2~bitmap with two or more planes (ZPixmap)
|
|
1380
|
+
>8 ubelong <3
|
|
1381
|
+
# pixmap_depth; Pixmap depth; value 1 - 32
|
|
1382
|
+
>>12 ubelong <33
|
|
1383
|
+
# file_version; XWD_FILE_VERSION=7
|
|
1384
|
+
>>>4 ubelong 7
|
|
1385
|
+
# skip DROID fmt-401-signature-id-618.xwd by test for existing border field
|
|
1386
|
+
>>>>96 ubelong x X-Window screen dump image data, version X11
|
|
1387
|
+
# ./images (version 1.205) labeled the above entry as "XWD X Window Dump image data"
|
|
1388
|
+
# https://reposcope.com/mimetype/image/x-xwindowdump
|
|
1389
|
+
!:mime image/x-xwindowdump
|
|
1390
|
+
#!:ext xwd
|
|
1391
|
+
!:ext xwd/dmp
|
|
1392
|
+
# https://www.xnview.com/en/image_formats/ NO example with x11 suffix FOUND!
|
|
1393
|
+
#!:ext xwd/dmp/x11
|
|
1394
|
+
# https://www.nationalarchives.gov.uk/PRONOM/fmt/401 NO example with xdm suffix FOUND!
|
|
1395
|
+
#!:ext xwd/dmp/x11/xmd
|
|
1396
|
+
# file comment if header > 100; so not in MARBLES.XWD and hardcopy-x-window-v11.xwd
|
|
1397
|
+
>>>>>0 ubelong >100
|
|
1398
|
+
# comment or windows name
|
|
1399
|
+
>>>>>>100 string >\0 \b, "%s"
|
|
1400
|
+
# pixmap_width; pixmap width like: 576 800 1014 1280 1419 NOT -1414812757=abABabABh
|
|
1401
|
+
>>>>>16 ubelong x \b, %dx
|
|
1402
|
+
# pixmap_height; pixmap height like: 449 454 600 704 720 1001 1024 NOT -1414812757=abABabABh
|
|
1403
|
+
>>>>>20 ubelong x \b%dx
|
|
1404
|
+
# pixmap_depth; pixmap depth
|
|
1405
|
+
>>>>>12 ubelong x \b%d
|
|
1406
|
+
# XOffset; Bitmap X offset; pixel numbers to ignore at the beginning of each scan-line
|
|
1407
|
+
#>>>>>24 ubelong x \b, %u ignore
|
|
1408
|
+
# ByteOrder; byte order of image data: 0~least significant byte first 1~most significant byte first
|
|
1409
|
+
>>>>>28 ubelong >0 \b, order %u
|
|
1410
|
+
# BitmapUnit; bitmap base data size unit in each scan line like: 8 16 32
|
|
1411
|
+
#>>>>>32 ubelong x \b, unit %u
|
|
1412
|
+
# BitmapBitOrder; bit-order of image data; apparently same as ByteOrder
|
|
1413
|
+
#>>>>>36 ubelong x \b, bit order %u
|
|
1414
|
+
# BitmapPad; number of padding bits added to each scan line like: 8 16 32
|
|
1415
|
+
#>>>>>40 ubelong x \b, pad %u
|
|
1416
|
+
# BitsPerPixel; Bits per pixel: 1~StaticGray and GrayScale 2-15~StaticColor and PseudoColor 16,24,32~TrueColor and DirectColor
|
|
1417
|
+
#>>>>>44 ubelong x \b, %u bits/pixel
|
|
1418
|
+
# BytesPerLine; size of each scan line in bytes
|
|
1419
|
+
#>>>>>48 ubelong x \b, %u bytes/line
|
|
1420
|
+
# VisualClass; class of the image: 0~StaticGray 1~GrayScale 2~StaticColor 3~PseudoColor 4~TrueColor 5~DirectColor
|
|
1421
|
+
#>>>>>52 ubelong x \b, %u Class
|
|
1422
|
+
# RedMask; red RGB mask values used by ZPixmaps like: 0 0xff0000
|
|
1423
|
+
#>>>>>56 ubelong !0 \b, %#x red
|
|
1424
|
+
# GreenMask; green mask like: 0
|
|
1425
|
+
#>>>>>60 ubelong !0 \b, %#x green
|
|
1426
|
+
# BlueMask; blue mask like: 0 0xff
|
|
1427
|
+
#>>>>>64 ubelong !0 \b, %#x blue
|
|
1428
|
+
# BitsPerRgb; Size of each color mask in bits like: 0 1 8 24
|
|
1429
|
+
#>>>>>68 ubelong x \b, %u bits/RGB
|
|
1430
|
+
# NumberOfColors; number of colors in image like: 256 4 2 0 (WHAT DOES THIS MEAN?)
|
|
1431
|
+
>>>>>72 ubelong x \b, %u colors
|
|
1432
|
+
# ColorMapEntries; number of entries in color map like: 256 16 2 0~no color map
|
|
1433
|
+
>>>>>76 ubelong x %u entries
|
|
1434
|
+
# WindowWidth; window width
|
|
1435
|
+
#>>>>>80 ubelong x \b, %u width
|
|
1436
|
+
# WindowHeight; window height
|
|
1437
|
+
#>>>>>84 ubelong x \b, %u height
|
|
1438
|
+
# WindowX; Window upper left X coordinate like: 0 24 32 80 237 290 422 466 568 (lenna.dmp)
|
|
1439
|
+
>>>>>88 ubelong !0 \b, x=%d
|
|
1440
|
+
# WindowY; Window upper left Y coordinate like: 0 8 18 26 60 73 107 (fig41.xwd) 128
|
|
1441
|
+
>>>>>92 ubelong !0 \b, y=%d
|
|
1442
|
+
# WindowBorderWidth; Window border width; apparently pixmap_width=WindowWidth+2*WindowBorderWidth
|
|
1443
|
+
# like: 1 (fig41.xwd) 2 (maze.dmp) 3 (lenna.dmp mandrill.dmp)
|
|
1444
|
+
>>>>>96 ubelong >0 \b, %u border
|
|
1445
|
+
# From: Joerg Jenderek
|
|
1446
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/x/xdm-x10.trid.xml
|
|
1447
|
+
# Note: called "X-Windows Screen Dump (X10)" by TrID and
|
|
1448
|
+
# "X-Windows Screen Dump" version X10 by DROID via PUID x-fmt/300
|
|
1449
|
+
# verfied by XnView `nconvert -in xwd -info *`
|
|
1450
|
+
# HeaderSize is the size of the header in bytes; always 40 for X10 variant
|
|
1451
|
+
0 ubelong =0x000000028
|
|
1452
|
+
# FileVersion; always 6 for X10 variant
|
|
1453
|
+
>4 ubelong =6
|
|
1454
|
+
# skip DROID x-fmt-300-signature-id-619.xdm by test existing border field
|
|
1455
|
+
>>36 ubeshort x X-Window screen dump image data, version X10
|
|
1456
|
+
!:mime image/x-xwindowdump
|
|
1457
|
+
!:ext xwd
|
|
1458
|
+
# http://www.nationalarchives.gov.uk/pronom/fmt/401 NO example with xdm suffix FOUND!
|
|
1459
|
+
#!:ext xwd/xdm
|
|
1460
|
+
# PixmapWidth; pixmap width like: 127 1280
|
|
1461
|
+
>>>20 ubelong x \b, %d
|
|
1462
|
+
# PixmapHeight; pixmap height like: 64 1024
|
|
1463
|
+
>>>24 ubelong x \bx%d
|
|
1464
|
+
# DisplayPlanes; number of display planes like: 1 4 8
|
|
1465
|
+
>>>12 ubelong x \bx%u
|
|
1466
|
+
# DisplayType; display type like: 1 3
|
|
1467
|
+
#>>>8 ubelong x \b, type %u
|
|
1468
|
+
# PixmapFormat; pixmap format like: 1~bitmap with two or more planes (ZPixmap) 0~single-plane bitmap (XYBitmap)
|
|
1469
|
+
#>>>16 ubelong x \b, %u format
|
|
1470
|
+
# WindowWidth; window width; probably PixmapWidth=WindowWidth+2*WindowBorderWidth
|
|
1471
|
+
#>>>28 ubeshort x \b, width %u
|
|
1472
|
+
# WindowHeight; window height; probably PixmapWidth=PixmapHeight+2*WindowBorderWidth
|
|
1473
|
+
#>>>30 ubeshort x \b, height %u
|
|
1474
|
+
# WindowX; window upper left X coordinate like: 0
|
|
1475
|
+
>>>32 ubeshort !0 \b, x=%d
|
|
1476
|
+
# WindowY; window upper left Y coordinate like: 0
|
|
1477
|
+
>>>34 ubeshort !0 \b, y=%d
|
|
1478
|
+
# WindowBorderWidth; window border width like: 0
|
|
1479
|
+
>>>36 ubeshort !0 \b, %u border
|
|
1480
|
+
# WindowNumColors; Number of color entries in window like: 2 16 256
|
|
1481
|
+
#>>>38 ubeshort x \b, %u colors
|
|
1482
|
+
# if the image is a PseudoColor image, a color map immediately follows the header. X10COLORMAP[WindowNumColors];
|
|
1483
|
+
# EntryNumber; number of the color-map entry like: 0
|
|
1484
|
+
#>>>40 ubeshort x \b, colors #%u
|
|
1485
|
+
# Red; red-channel value
|
|
1486
|
+
#>>>42 ubeshort !0 \b, red %#x
|
|
1487
|
+
# Green; green-channel value
|
|
1488
|
+
#>>>44 ubeshort !0 \b, green %#x
|
|
1489
|
+
# Blue; blue-channel value
|
|
1490
|
+
#>>>46 ubeshort !0 \b, blue %#x
|
|
1491
|
+
# 2ND Entry like: 2
|
|
1492
|
+
#>>>48 ubeshort x \b, colors #%u
|
|
1493
|
+
|
|
1494
|
+
# PDS - Planetary Data System
|
|
1495
|
+
# These files use Parameter Value Language in the header section.
|
|
1496
|
+
# Unfortunately, there is no certain magic, but the following
|
|
1497
|
+
# strings have been found to be most likely.
|
|
1498
|
+
0 string NJPL1I00 PDS (JPL) image data
|
|
1499
|
+
2 string NJPL1I PDS (JPL) image data
|
|
1500
|
+
0 string CCSD3ZF PDS (CCSD) image data
|
|
1501
|
+
2 string CCSD3Z PDS (CCSD) image data
|
|
1502
|
+
0 string PDS_ PDS image data
|
|
1503
|
+
0 string LBLSIZE= PDS (VICAR) image data
|
|
1504
|
+
|
|
1505
|
+
# pM8x: ATARI STAD compressed bitmap format
|
|
1506
|
+
#
|
|
1507
|
+
# from Oskar Schirmer <schirmer@scara.com> Feb 2, 2001
|
|
1508
|
+
# p M 8 5/6 xx yy zz data...
|
|
1509
|
+
# Atari ST STAD bitmap is always 640x400, bytewise runlength compressed.
|
|
1510
|
+
# bytes either run horizontally (pM85) or vertically (pM86). yy is the
|
|
1511
|
+
# most frequent byte, xx and zz are runlength escape codes, where xx is
|
|
1512
|
+
# used for runs of yy.
|
|
1513
|
+
#
|
|
1514
|
+
0 string pM85 Atari ST STAD bitmap image data (hor)
|
|
1515
|
+
>5 ubyte 0x00 (white background)
|
|
1516
|
+
>5 ubyte 0xFF (black background)
|
|
1517
|
+
0 string pM86 Atari ST STAD bitmap image data (vert)
|
|
1518
|
+
>5 ubyte 0x00 (white background)
|
|
1519
|
+
>5 ubyte 0xFF (black background)
|
|
1520
|
+
|
|
1521
|
+
# From: Alex Myczko <alex@aiei.ch>
|
|
1522
|
+
# https://www.atarimax.com/jindroush.atari.org/afmtatr.html
|
|
1523
|
+
0 uleshort 0x0296 Atari ATR image
|
|
1524
|
+
|
|
1525
|
+
# URL: http://fileformats.archiveteam.org/wiki/DEGAS_image
|
|
1526
|
+
# Reference: https://wiki.multimedia.cx/index.php?title=Degas
|
|
1527
|
+
# From: Joerg Jenderek
|
|
1528
|
+
# http://mark0.net/download/triddefs_xml.7z/defs/b
|
|
1529
|
+
# bitmap-pi2-degas.trid.xml bitmap-pi3-degas.trid.xml
|
|
1530
|
+
# bitmap-pc1-degas.trid.xml bitmap-pc2-degas.trid.xml bitmap-pc3-degas.trid.xml
|
|
1531
|
+
# Note: verified by NetPBM `pi3topbm sigirl1.pi3 | file`
|
|
1532
|
+
# `deark -m degas -l -d2 ataribak.pi1`
|
|
1533
|
+
# XnView `nconvert -fullinfo *.p??`
|
|
1534
|
+
# DEGAS low-res uncompressed bitmap *.pi1
|
|
1535
|
+
0 beshort 0x0000
|
|
1536
|
+
# skip some ISO 9660 CD-ROM filesystems like plpbt.iso by test for 4 non black colors in palette entries
|
|
1537
|
+
>2 quad !0
|
|
1538
|
+
# skip g3test.g3 by test for unused bits of 2nd color entry
|
|
1539
|
+
>>4 ubeshort&0xF000 0
|
|
1540
|
+
#>>>0 beshort x 1ST_VALUE=%x
|
|
1541
|
+
#>>>-0 offset x FILE_SIZE=%lld
|
|
1542
|
+
# standard DEGAS low-res uncompressed bitmap *.pi1 with file size 32034
|
|
1543
|
+
>>>-0 offset =32034
|
|
1544
|
+
#>>>>0 beshort x 1st_VALUE=%x
|
|
1545
|
+
# like: 8ball.pi1 teddy.pi1 sonic01.pi1
|
|
1546
|
+
>>>>0 use degas-bitmap
|
|
1547
|
+
# about 61 DEGAS Elite low-res uncompressed bitmap *.pi1 with file size 32066
|
|
1548
|
+
>>>-0 offset =32066
|
|
1549
|
+
# like: spider.pi1 pinkgirl.pi1 frog3.pi1
|
|
1550
|
+
>>>>0 use degas-bitmap
|
|
1551
|
+
# about 55 DEGAS Elite low-res uncompressed bitmap *.pi1 with file size 32128
|
|
1552
|
+
>>>-0 offset =32128
|
|
1553
|
+
# like: mountain.pi1 bigspid.pi1 alf33.pi1
|
|
1554
|
+
>>>>0 use degas-bitmap
|
|
1555
|
+
# 1 DEGAS Elite low-res uncompressed bitmap *.pi1 with file size 44834
|
|
1556
|
+
>>>-0 offset =44834
|
|
1557
|
+
# like: kenshin.pi1
|
|
1558
|
+
>>>>0 use degas-bitmap
|
|
1559
|
+
# DEGAS mid-res uncompressed bitmap *.pi2 (strength=50) after GEM Images like:
|
|
1560
|
+
# BEETHVEN.IMG CHURCH.IMG GAMEOVR4.IMG TURKEY.IMG clinton.img
|
|
1561
|
+
0 beshort 0x0001
|
|
1562
|
+
#!:strength +0
|
|
1563
|
+
# skip many control files like gnucash-4.8.setup.exe.aria2 by test for non black in 4 palette entries
|
|
1564
|
+
>2 quad !0
|
|
1565
|
+
# skip control file load-v0001.aria2 and many GEM Image data like
|
|
1566
|
+
# GAMEOVR4.IMG BEETHVEN.IMG CHURCH.IMG TURKEY.IMG clinton.img
|
|
1567
|
+
# by test for valid file sizes
|
|
1568
|
+
# standard DEGAS mid-res uncompressed bitmap *.pi2 with file size 32034
|
|
1569
|
+
>>-0 offset =32034
|
|
1570
|
+
# (39/41) like: GEMINI03.PI2 ST_TOOLS.PI2 TBX_DEMO.PI2
|
|
1571
|
+
>>>0 use degas-bitmap
|
|
1572
|
+
# few DEGAS Elite mid-res uncompressed bitmap *.pi2 with file size 32066
|
|
1573
|
+
>>-0 offset =32066
|
|
1574
|
+
# (2/41) like: medres.pi2
|
|
1575
|
+
>>>0 use degas-bitmap
|
|
1576
|
+
# DEGAS high-res uncompressed bitmap *.pi3
|
|
1577
|
+
0 beshort 0x0002
|
|
1578
|
+
# skip Intel ia64 COFF msvcrt.lib by test for unused bits of 1st atari color palette entry
|
|
1579
|
+
>2 ubeshort&0xF000 0
|
|
1580
|
+
# skip few Adobe PhotoShop Brushes like Faux-Spitzen.abr by check
|
|
1581
|
+
# for invalid Adobe PhotoShop Brush UTF16-LE string length
|
|
1582
|
+
>>19 ubyte =0
|
|
1583
|
+
# many like: 4th_ofj2.pi3 GEMINI03.PI3 PEOPLE18.PI3 POWERFIX.PI3 abydos.pi3 highres.pi3 sigirl1.pi3 vanna5.pi3
|
|
1584
|
+
>>>0 use degas-bitmap
|
|
1585
|
+
# Adobe PhotoShop Brush UTF16-LE string length 15 "Gitter - klein " 8 "Kreis 1 "
|
|
1586
|
+
>>19 ubyte !0
|
|
1587
|
+
#>>19 ubyte !0 \b, NOTE LENGTH %u
|
|
1588
|
+
#>>>21 lestring16 x \b, BRUSH NOTE "%s"
|
|
1589
|
+
>>>(19.b*2) ubequad x
|
|
1590
|
+
# maybe last character of Adobe PhotoShop Brush UTF16-LE string and terminating nul char like
|
|
1591
|
+
# 006e0000 for n in "Faux-Spitzen.abr" 00310000 for 1 in "Verschiedene Spitzen.abr"
|
|
1592
|
+
# 00000000 "LEREDACT.PI3" 03730773 "TBX_DEMO.PI3"
|
|
1593
|
+
#>>>>&8 ubelong x \b, LAST CHAR+NIL %8.8x
|
|
1594
|
+
>>>>&8 ubelong&0xff00ffFF !0
|
|
1595
|
+
# skip many Adobe Photoshop Color swatch (ANPA-Farben.aco TOYO-Farbsystem.aco) with invalid 3rd color entry (1319 2201 2206 21f5 2480 24db 25fd)
|
|
1596
|
+
>>>>>6 ubeshort&0xF000 0
|
|
1597
|
+
# skip few Adobe Photoshop Color swatch (FOCOLTONE-Farben.aco "PANTONE process coated.aco") with invalid 4th color entry (ffff)
|
|
1598
|
+
>>>>>>8 ubeshort&0xF000 0
|
|
1599
|
+
# many DEGAS bitmap like: ARABDEMO.PI3 ELMRSESN.PI3 GEMVIEW.PI3 LEREDACT.PI3 PICCOLO.PI3 REPRO_JR.PI3 ST_TOOLS.PI3 TBX_DEMO.PI3 evgem7.pi3
|
|
1600
|
+
>>>>>>>0 use degas-bitmap
|
|
1601
|
+
# test for last character of Adobe PhotoShop Brush UTF16-LE string and terminating nul char
|
|
1602
|
+
>>>>&8 ubelong&0xff00ffFF =0
|
|
1603
|
+
# select last DEGAS bitmaps by invalid last char of brush note like BASICNES.PI3 DB_HELP.PI3 DB_WRITR.PI3 LEREDACT.PI3
|
|
1604
|
+
>>>>>&-4 ubelong&0x00FF0000 <0x00200000
|
|
1605
|
+
>>>>>>0 use degas-bitmap
|
|
1606
|
+
# last character of Adobe PhotoShop Brush UTF16-LE note
|
|
1607
|
+
#>>>>>&-4 ubelong&0x00FF0000 >0x001F0000 \b, THAT IS ABR
|
|
1608
|
+
# DEGAS low-res compressed bitmap *.pc1 like: BATTLSHP.PC1 GNUCHESS.PC1 MEDUSABL.PC1 MOONLORD.PC1 WILDROSE.PC1
|
|
1609
|
+
0 beshort 0x8000
|
|
1610
|
+
# skip lif files handled via ./lif by test for unused bits of 1st palette entry
|
|
1611
|
+
>2 ubeshort&0xF000 0
|
|
1612
|
+
# skip CRI ADX ADPCM audio (R04HT.adx R03T-15552.adx) with 44100 Hz misinterpreted as 5th color entry value AC44h
|
|
1613
|
+
>>10 ubeshort&0xF000 0
|
|
1614
|
+
# skip few (fmt-840-signature-id-1195.adx fmt-840-signature-id-1199.adx) by test for 4 first non black colors in palette entries
|
|
1615
|
+
>>>2 quad !0
|
|
1616
|
+
>>>>0 use degas-bitmap
|
|
1617
|
+
# DEGAS mid-res compressed bitmap *.pc2 like: abydos.pc2 ARTIS3.PC2 SMTHDRAW.PC2 STAR_2K.PC2 TX2_DEMO.PC2
|
|
1618
|
+
0 beshort 0x8001
|
|
1619
|
+
# skip many (1274/1369) PostScript Type 1 font (DarkGardenMK.pfb coupbi.pfb MONOBOLD.PFB) with invalid 1st atari color palette entry 5506 5b06 6906 7906 7e06 fb15
|
|
1620
|
+
>2 ubeshort&0xF000 0
|
|
1621
|
+
# skip some (95/1369) PostScript Type 1 font (fmt-525-signature-id-816.pfb LUXEMBRG.PFB) with invalid 3rd atari color palette entry 2521
|
|
1622
|
+
>>6 ubeshort&0xF000 0
|
|
1623
|
+
>>>0 use degas-bitmap
|
|
1624
|
+
# DEGAS high-res compressed bitmap *.pc3 like: abydos.pc3 COYOTE.PC3 ELEPHANT.PC3 TX2_DEMO.PC3 SMTHDRAW.PC3
|
|
1625
|
+
0 beshort 0x8002
|
|
1626
|
+
# skip some (36/212) Python Pickle (factor_cache.pickle environment.pickle) with invalid 1st atari color entry (2863 6363 7d71)
|
|
1627
|
+
>2 ubeshort&0xF000 0
|
|
1628
|
+
>>0 use degas-bitmap
|
|
1629
|
+
# display information of Atari DEGAS and DEGAS Elite bitmap images
|
|
1630
|
+
0 name degas-bitmap
|
|
1631
|
+
>0 ubyte x Atari DEGAS
|
|
1632
|
+
#!:mime application/octet-stream
|
|
1633
|
+
!:mime image/x-atari-degas
|
|
1634
|
+
# compressed
|
|
1635
|
+
>0 ubyte =0x80 Elite compressed
|
|
1636
|
+
# uncompressed
|
|
1637
|
+
#>0 ubyte =0x00 uncompressed
|
|
1638
|
+
#>0 ubyte =0x00 un.
|
|
1639
|
+
>0 ubyte =0x00
|
|
1640
|
+
# check for existence of footer for DEGAS Elite images
|
|
1641
|
+
>>32042 ubequad x Elite
|
|
1642
|
+
>0 beshort 0x0000 bitmap
|
|
1643
|
+
!:ext pi1
|
|
1644
|
+
>0 beshort 0x0001 bitmap
|
|
1645
|
+
!:ext pi2
|
|
1646
|
+
>0 beshort 0x0002 bitmap
|
|
1647
|
+
# no example with SUH extension found
|
|
1648
|
+
#!:ext pi3/suh
|
|
1649
|
+
!:ext pi3
|
|
1650
|
+
>0 beshort 0x8000 bitmap
|
|
1651
|
+
!:ext pc1
|
|
1652
|
+
>0 beshort 0x8001 bitmap
|
|
1653
|
+
!:ext pc2
|
|
1654
|
+
>0 beshort 0x8002 bitmap
|
|
1655
|
+
!:ext pc3
|
|
1656
|
+
# low resolution; 320x200, 16 colors
|
|
1657
|
+
>1 ubyte =0 320 x 200 x 16
|
|
1658
|
+
# medium resolution; 640x200, 4 colors
|
|
1659
|
+
>1 ubyte =1 640 x 200 x 4
|
|
1660
|
+
# high resolution; 640x400, 2 colors
|
|
1661
|
+
>1 ubyte =2 640 x 400 x 2
|
|
1662
|
+
# http://fileformats.archiveteam.org/wiki/Atari_ST_color_palette
|
|
1663
|
+
# hardware_palette[16]; 9 bit ?????RRR?GGG?BBB; 12 bit ????RRRRGGGGBBBB for Atari STE
|
|
1664
|
+
# for Atari DEGAS apparently no Spectrum 512 Enhanced 15 bit palette RGB?RRRRGGGGBBBB
|
|
1665
|
+
# Red Green Blue unused bit ? often 0 but not bilboule.pi1; color_value (examples or numbers)
|
|
1666
|
+
# 1st color palette entry like: 0777 (61) 0fff (LEREDACT.PI3) 0fcf (devgem7.pi3) 0001 (9)
|
|
1667
|
+
>2 ubeshort x \b, color palette %4.4x
|
|
1668
|
+
# 2nd palette entry like: 0000 (32) 0700 (38) 0f00 (LEREDACT.PI3 devgem7.pi3)
|
|
1669
|
+
>4 ubeshort x %4.4x
|
|
1670
|
+
# 3rd palette entry
|
|
1671
|
+
>6 ubeshort x %4.4x
|
|
1672
|
+
# 4th palette entry like: 0000 (72)
|
|
1673
|
+
>8 ubeshort x %4.4x
|
|
1674
|
+
# 5th palette entry
|
|
1675
|
+
>10 ubeshort x %4.4x
|
|
1676
|
+
>2 ubeshort x ...
|
|
1677
|
+
# 6th palette entry
|
|
1678
|
+
#>12 ubeshort x %4.4x
|
|
1679
|
+
# 7th palette entry like: 0000 (16) 0001 (ELMRSESN.PI3 elmrsesn.pi3) 0070 (51) 00f0 (BASICNES.PI3 LEREDACT.PI3) 00f8 (devgem7.pi3)
|
|
1680
|
+
#>14 ubeshort x %4.4x
|
|
1681
|
+
# 8th palette entry
|
|
1682
|
+
#>16 ubeshort x %4.4x
|
|
1683
|
+
# 9 palette entry
|
|
1684
|
+
#>18 ubeshort x %4.4x
|
|
1685
|
+
# 10 palette entry
|
|
1686
|
+
#>20 ubeshort x %4.4x
|
|
1687
|
+
# 11 palette entry
|
|
1688
|
+
#>22 ubeshort x %4.4x
|
|
1689
|
+
# 12 palette entry
|
|
1690
|
+
#>24 ubeshort x %4.4x
|
|
1691
|
+
# 13 palette entry
|
|
1692
|
+
#>26 ubeshort x %4.4x
|
|
1693
|
+
# 14th palette entry
|
|
1694
|
+
#>28 ubeshort x %4.4x
|
|
1695
|
+
# 15th palette entry
|
|
1696
|
+
#>30 ubeshort x %4.4x
|
|
1697
|
+
# 16th palette entry
|
|
1698
|
+
#>32 ubeshort x %4.4x
|
|
1699
|
+
# data[16000] for uncompressed images; pixel data
|
|
1700
|
+
#>34 ubequad x \b, DATA %#16.16llx...
|
|
1701
|
+
# footer for Elite variant images
|
|
1702
|
+
# https://www.fileformat.info/format/atari/egff.htm
|
|
1703
|
+
# https://pulkomandy.tk/projects/GrafX2/wiki/Develop/FileFormats/Atari
|
|
1704
|
+
# left_color_animation[4]; like: 0000000000000000 0000000100020003 fffafff000000030 (bigspid.pi1)
|
|
1705
|
+
#>32034 ubequad !0 \b, color animations %16.16llx (left)
|
|
1706
|
+
# right_color_animation[4]; like: 0000000000000000 0000000100020003
|
|
1707
|
+
#>>32042 ubequad !0 %16.16llx (right)
|
|
1708
|
+
# channel_direction[4]; 0~left 1~none 2~right like: 0001000100010001 0002000000010001 (cycle2.pi1)
|
|
1709
|
+
# sometimes unexpected like: feaafc0000000000 (bigspid.pi1)
|
|
1710
|
+
#>32050 ubequad !0 \b, channel directions %16.16llx
|
|
1711
|
+
# channel_delay[4]; 128 - channel delay, timebase 1/60 s
|
|
1712
|
+
#>32058 ubequad !0 \b, channel delays %16.16llx
|
|
1713
|
+
|
|
1714
|
+
# From: Joerg Jenderek
|
|
1715
|
+
# URL: http://fileformats.archiveteam.org/wiki/GED
|
|
1716
|
+
# https://recoil.sourceforge.net/formats.html#Atari-8-bit
|
|
1717
|
+
# Reference: https://sourceforge.net/projects/recoil/files/recoil/6.3.4/recoil-6.3.4.tar.gz
|
|
1718
|
+
# recoil-6.3.4/recoil.c
|
|
1719
|
+
# http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-ged.trid.xml
|
|
1720
|
+
# Note: called "Atari GED bitmap" by TrID; file size 11302
|
|
1721
|
+
# and verified by RECOIL graphic tool
|
|
1722
|
+
0 string \xFF\xFF0SO\x7F Atari GED bitmap, 160x200
|
|
1723
|
+
#!:mime application/octet-stream
|
|
1724
|
+
!:mime image/x-atari-ged
|
|
1725
|
+
!:ext ged
|
|
1726
|
+
|
|
1727
|
+
# From: Joerg Jenderek
|
|
1728
|
+
# URL: http://fileformats.archiveteam.org/wiki/ImageLab/PrintTechnic
|
|
1729
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-b_w.trid.xml
|
|
1730
|
+
# Note: called "ImageLab bitmap" by TrID
|
|
1731
|
+
# verfied by XnView `nconvert -fullinfo "MAEDCHEN.B&W"`
|
|
1732
|
+
0 string B&W256 ImageLab bitmap
|
|
1733
|
+
!:mime image/x-ilab
|
|
1734
|
+
# https://www.xnview.com/de/image_formats/
|
|
1735
|
+
# GRR: add char & inside parse_ext in ../../src/apprentice.c to avoid in file version 5.40 error like:
|
|
1736
|
+
# Magdir\images, 1090: Warning: EXTENSION type ` b_w/b&w' has bad char '&'
|
|
1737
|
+
!:ext b_w/b&w
|
|
1738
|
+
# Width
|
|
1739
|
+
>6 ubeshort x \b, %u
|
|
1740
|
+
# Height
|
|
1741
|
+
>8 ubeshort x x %u
|
|
1742
|
+
|
|
1743
|
+
# XXX:
|
|
1744
|
+
# This is bad magic 0x5249 == 'RI' conflicts with RIFF and other
|
|
1745
|
+
# magic.
|
|
1746
|
+
# SGI RICE image file <mpruett@sgi.com>
|
|
1747
|
+
#0 ubeshort 0x5249 RICE image
|
|
1748
|
+
#>2 ubeshort x v%d
|
|
1749
|
+
#>4 ubeshort x (%d x
|
|
1750
|
+
#>6 ubeshort x %d)
|
|
1751
|
+
#>8 ubeshort 0 8 bit
|
|
1752
|
+
#>8 ubeshort 1 10 bit
|
|
1753
|
+
#>8 ubeshort 2 12 bit
|
|
1754
|
+
#>8 ubeshort 3 13 bit
|
|
1755
|
+
#>10 ubeshort 0 4:2:2
|
|
1756
|
+
#>10 ubeshort 1 4:2:2:4
|
|
1757
|
+
#>10 ubeshort 2 4:4:4
|
|
1758
|
+
#>10 ubeshort 3 4:4:4:4
|
|
1759
|
+
#>12 ubeshort 1 RGB
|
|
1760
|
+
#>12 ubeshort 2 CCIR601
|
|
1761
|
+
#>12 ubeshort 3 RP175
|
|
1762
|
+
#>12 ubeshort 4 YUV
|
|
1763
|
+
|
|
1764
|
+
# PCX image files
|
|
1765
|
+
# From: Dan Fandrich <dan@coneharvesters.com>
|
|
1766
|
+
# updated by Joerg Jenderek at Feb 2013 by https://de.wikipedia.org/wiki/PCX
|
|
1767
|
+
# https://web.archive.org/web/20100206055706/http://www.qzx.com/pc-gpe/pcx.txt
|
|
1768
|
+
# GRR: original test was still too general as it catches xbase examples T5.DBT,T6.DBT with 0xa000000
|
|
1769
|
+
# test for bytes 0x0a,version byte (0,2,3,4,5),compression byte flag(0,1), bit depth (>0) of PCX or T5.DBT,T6.DBT
|
|
1770
|
+
0 ubelong&0xffF8fe00 0x0a000000
|
|
1771
|
+
# for PCX bit depth > 0
|
|
1772
|
+
>3 ubyte >0
|
|
1773
|
+
# test for valid versions
|
|
1774
|
+
>>1 ubyte <6
|
|
1775
|
+
>>>1 ubyte !1 PCX
|
|
1776
|
+
!:mime image/x-pcx
|
|
1777
|
+
#!:mime image/pcx
|
|
1778
|
+
>>>>1 ubyte 0 ver. 2.5 image data
|
|
1779
|
+
>>>>1 ubyte 2 ver. 2.8 image data, with palette
|
|
1780
|
+
>>>>1 ubyte 3 ver. 2.8 image data, without palette
|
|
1781
|
+
>>>>1 ubyte 4 for Windows image data
|
|
1782
|
+
>>>>1 ubyte 5 ver. 3.0 image data
|
|
1783
|
+
>>>>4 uleshort x bounding box [%d,
|
|
1784
|
+
>>>>6 uleshort x %d] -
|
|
1785
|
+
>>>>8 uleshort x [%d,
|
|
1786
|
+
>>>>10 uleshort x %d],
|
|
1787
|
+
>>>>65 ubyte >1 %d planes each of
|
|
1788
|
+
>>>>3 ubyte x %d-bit
|
|
1789
|
+
>>>>68 ubyte 1 colour,
|
|
1790
|
+
>>>>68 ubyte 2 grayscale,
|
|
1791
|
+
# this should not happen
|
|
1792
|
+
>>>>68 default x image,
|
|
1793
|
+
>>>>12 uleshort >0 %d x
|
|
1794
|
+
>>>>>14 uleshort x %d dpi,
|
|
1795
|
+
>>>>2 ubyte 0 uncompressed
|
|
1796
|
+
>>>>2 ubyte 1 RLE compressed
|
|
1797
|
+
|
|
1798
|
+
# Adobe Photoshop
|
|
1799
|
+
# From: Asbjoern Sloth Toennesen <asbjorn@lila.io>
|
|
1800
|
+
# URL: http://fileformats.archiveteam.org/wiki/PSD
|
|
1801
|
+
# Reference: https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/
|
|
1802
|
+
# Note: verfied by XnView `nconvert -fullinfo *.psd *.psb *.pdd`
|
|
1803
|
+
# and ImageMagick `identify -verbose *.pdd`
|
|
1804
|
+
0 string 8BPS
|
|
1805
|
+
# skip DROID x-fmt-92-signature-id-277.psd by checking valid width
|
|
1806
|
+
>18 ubelong >0 Adobe Photoshop
|
|
1807
|
+
!:mime image/vnd.adobe.photoshop
|
|
1808
|
+
!:apple ????8BPS
|
|
1809
|
+
# version: always equal to 1, but 2 for PSB
|
|
1810
|
+
>>4 beshort 1
|
|
1811
|
+
# URL: http://fileformats.archiveteam.org/wiki/PhotoDeluxe
|
|
1812
|
+
# EXTRAS/PHOTOS/DEMOPIX/ORIGINAL.PDD
|
|
1813
|
+
>>>34 search/0xC0d7 PHUT Image (PhotoDeluxe)
|
|
1814
|
+
!:ext pdd
|
|
1815
|
+
>>>34 default x Image
|
|
1816
|
+
!:ext psd
|
|
1817
|
+
# URL: http://fileformats.archiveteam.org/wiki/PSB
|
|
1818
|
+
>>4 beshort 2 Image (PSB)
|
|
1819
|
+
!:ext psb
|
|
1820
|
+
# width in pixels: 1-30000 1-300000 for PSB
|
|
1821
|
+
>>18 belong x \b, %d x
|
|
1822
|
+
>>14 belong x %d,
|
|
1823
|
+
# The color mode; 0~Bitmap 1~Grayscale 2~Indexed 3~RGB 4~CMYK 7~Multichannel 9~Duotone 9~Lab
|
|
1824
|
+
>>24 beshort 0 bitmap
|
|
1825
|
+
>>24 beshort 1 grayscale
|
|
1826
|
+
# the number of channels; range is 1 to 56
|
|
1827
|
+
>>>12 beshort 2 with alpha
|
|
1828
|
+
>>24 beshort 2 indexed
|
|
1829
|
+
>>24 beshort 3 RGB
|
|
1830
|
+
>>>12 beshort 4 \bA
|
|
1831
|
+
>>24 beshort 4 CMYK
|
|
1832
|
+
>>>12 beshort 5 \bA
|
|
1833
|
+
>>24 beshort 7 multichannel
|
|
1834
|
+
>>24 beshort 8 duotone
|
|
1835
|
+
>>24 beshort 9 lab
|
|
1836
|
+
>>12 beshort > 1
|
|
1837
|
+
>>>12 beshort x \b, %dx
|
|
1838
|
+
>>12 beshort 1 \b,
|
|
1839
|
+
>>22 beshort x %d-bit channel
|
|
1840
|
+
>>12 beshort > 1 \bs
|
|
1841
|
+
# 6 reserved bytes; must be zero, but spaces inside ImageMagick input.psd
|
|
1842
|
+
# https://download.imagemagick.org/ImageMagick/download/ImageMagick-7.0.11-11.zip
|
|
1843
|
+
# ImageMagick-7.0.11-11\PerlMagick\t\input.psd
|
|
1844
|
+
>>6 bequad&0xFFffFFffFFff0000 !0 \b, at offset 6
|
|
1845
|
+
>>>6 belong x 0x%8.8x
|
|
1846
|
+
>>>6 beshort x \b%4.4x
|
|
1847
|
+
|
|
1848
|
+
# From: Joerg Jenderek
|
|
1849
|
+
# URL: https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/
|
|
1850
|
+
# http://fileformats.archiveteam.org/wiki/Photoshop
|
|
1851
|
+
# Reference: http://www.nomodes.com/aco.html
|
|
1852
|
+
# Note: registers as Photoshop.SwatchesFile for Photoshop.exe on Windows
|
|
1853
|
+
# check for valid versions like: 2 (newest) 1 (old) 0 (oldest no examples)
|
|
1854
|
+
0 ubeshort <3
|
|
1855
|
+
# skip few Atari DEGAS med-res bitmap (DIAGRAM1.PI2) and many ISO 9660 CD-ROM by check for invalid low color numbers (0)
|
|
1856
|
+
>2 ubeshort >0
|
|
1857
|
+
# skip few Targa (bmpsuite-15col.tga rgb24_top_left_colormap.tga) by check for invalid high color space ID (F0 1D)
|
|
1858
|
+
>>4 ubeshort <16
|
|
1859
|
+
# skip many (69/327) Targa image *.TGA by check of accessing near the ending of first color space section (size=nc*5*2)
|
|
1860
|
+
>>>(2.S*10) ubelong x
|
|
1861
|
+
# RGB branch for Adobe Photoshop Color swatch
|
|
1862
|
+
>>>>4 ubeshort =0
|
|
1863
|
+
# skip many (220/327) Targa by check of for invalid high RGB color z value (hexadecimal 2 3 2e03 4600 5e04 7502 8002 8b05 c700)
|
|
1864
|
+
>>>>>12 ubeshort =0
|
|
1865
|
+
# RGB branch for Adobe Photoshop Color swatch for older versions
|
|
1866
|
+
>>>>>>0 ubeshort <2
|
|
1867
|
+
>>>>>>>0 use adobe-aco
|
|
1868
|
+
# RGB branch for Adobe Photoshop Color swatch for newer version 2
|
|
1869
|
+
>>>>>>0 ubeshort =2
|
|
1870
|
+
# skip many (74/176) Atari DEGAS hi-res bitmap (*.PI3) by check for invalid low color name length (0)
|
|
1871
|
+
>>>>>>>16 ubeshort >0
|
|
1872
|
+
>>>>>>>>0 use adobe-aco
|
|
1873
|
+
# non RGB branch for Adobe Photoshop Color swatch
|
|
1874
|
+
>>>>4 ubeshort !0
|
|
1875
|
+
# non RGB branch for Adobe Photoshop Color swatch for older versions
|
|
1876
|
+
>>>>>0 ubeshort <2
|
|
1877
|
+
# skip many GEM Image (CHURCH.IMG TIGER.IMG) by check for invalid second high color space ID (55 114 143 157 256 288 450)
|
|
1878
|
+
>>>>>>14 ubeshort <16
|
|
1879
|
+
>>>>>>>0 use adobe-aco
|
|
1880
|
+
# non RGB branch for Adobe Photoshop Color swatch for newer version 2
|
|
1881
|
+
>>>>>0 ubeshort =2
|
|
1882
|
+
# skip few Atari DEGAS hi-res bitmap (pal1wb-blue.pi3) and few ABR by check for invalid "high" nil bytes (7) before color name length
|
|
1883
|
+
>>>>>>14 ubeshort =0
|
|
1884
|
+
>>>>>>>0 use adobe-aco
|
|
1885
|
+
# display Adobe Photoshop Color swatch file information (version, number of colors, color spaces, coordinates, names)
|
|
1886
|
+
0 name adobe-aco
|
|
1887
|
+
>0 ubeshort x Adobe Photoshop Color swatch, version %u
|
|
1888
|
+
#!:mime application/octet-stream
|
|
1889
|
+
!:mime application/x-adobe-aco
|
|
1890
|
+
!:apple ????8BCO
|
|
1891
|
+
!:ext aco
|
|
1892
|
+
>0 ubeshort <2
|
|
1893
|
+
>>(2.S*10) ubelong x
|
|
1894
|
+
# version 2 section after version 1 section
|
|
1895
|
+
>>>&0 ubeshort 2 and 2
|
|
1896
|
+
# nc; number of colors like: 20 50 86 88 126 204 300 1050 1137 1280 2092 3010 4096
|
|
1897
|
+
>2 ubeshort x \b, %u colors
|
|
1898
|
+
# maybe last 4 bytes of first section (probably y z color value) like: 0 0x66660000 0xfe700000 0xffff0000
|
|
1899
|
+
#>(2.S*10) ubelong x 1ST_SECTION_END=%#8.8x
|
|
1900
|
+
>0 ubeshort <2 \b; 1st
|
|
1901
|
+
# first older Adobe Photoshop Color entry
|
|
1902
|
+
>>4 use aco-color
|
|
1903
|
+
>>>2 ubeshort >1 \b; 2nd
|
|
1904
|
+
# second older Adobe Photoshop Color entry
|
|
1905
|
+
>>>>14 use aco-color
|
|
1906
|
+
>0 ubeshort =2 \b; 1st
|
|
1907
|
+
# first new Adobe Photoshop Color entry
|
|
1908
|
+
>>4 use aco-color-v2
|
|
1909
|
+
>>>2 ubeshort >1 \b; 2nd
|
|
1910
|
+
# jump first color name length words
|
|
1911
|
+
>>>>(16.S*2) ubequad x
|
|
1912
|
+
# second new Adobe Photoshop Color entry
|
|
1913
|
+
>>>>>&10 use aco-color-v2
|
|
1914
|
+
# display Adobe Photoshop Color entry (color space, color coordinates)
|
|
1915
|
+
0 name aco-color
|
|
1916
|
+
# each color spec entry occupies five words
|
|
1917
|
+
# color space: 0~RGB 1~HSB 2~CMYK 3~Pantone 4~Focoltone 5~Trumatch 6~Toyo 7~Lab 8~Grayscale 9?~wideCMYK 10~HKS ...
|
|
1918
|
+
#>0 ubeshort x COLOR_ENTRY
|
|
1919
|
+
>0 ubeshort 0 RGB
|
|
1920
|
+
>0 ubeshort 1 HSB
|
|
1921
|
+
>0 ubeshort 2 CMYK
|
|
1922
|
+
>0 ubeshort 3 Pantone
|
|
1923
|
+
>0 ubeshort 4 Focoltone
|
|
1924
|
+
>0 ubeshort 5 Trumatch
|
|
1925
|
+
>0 ubeshort 6 Toyo
|
|
1926
|
+
>0 ubeshort 7 Lab
|
|
1927
|
+
>0 ubeshort 8 Grayscale
|
|
1928
|
+
>0 ubeshort 9 wide CMYK
|
|
1929
|
+
>0 ubeshort 10 HKS
|
|
1930
|
+
# unofficial
|
|
1931
|
+
# >0 ubeshort 12 foo
|
|
1932
|
+
# >0 ubeshort 13 bar
|
|
1933
|
+
# >0 ubeshort 14 FOO
|
|
1934
|
+
# >0 ubeshort 15 BAR
|
|
1935
|
+
>0 ubeshort x space (%u)
|
|
1936
|
+
# color coordinate w
|
|
1937
|
+
>2 ubeshort x \b, w %#x
|
|
1938
|
+
# color coordinate x
|
|
1939
|
+
>4 ubeshort x \b, x %#x
|
|
1940
|
+
# color coordinate y
|
|
1941
|
+
>6 ubeshort x \b, y %#x
|
|
1942
|
+
# color coordinate z; zero for RGB space
|
|
1943
|
+
>8 ubeshort x \b, z %#x
|
|
1944
|
+
# display Adobe Photoshop Color entry version 2 (color space, color coordinates names)
|
|
1945
|
+
0 name aco-color-v2
|
|
1946
|
+
>0 use aco-color
|
|
1947
|
+
#>10 ubeshort x \b, NUL_BYTES %#x
|
|
1948
|
+
# color name length plus one (len+1) like: 7 8 9 13 14 15 16 17 22 26
|
|
1949
|
+
#>>12 ubeshort x \b, LENGTH %u
|
|
1950
|
+
>>12 ubeshort-1 x \b, %u chars
|
|
1951
|
+
# len words; UTF-16 representation of the color name like: "DIC 1s" "PANTONE Process Yellow PC"
|
|
1952
|
+
>>14 bestring16 x "%s"
|
|
1953
|
+
# followed by nil word
|
|
1954
|
+
|
|
1955
|
+
# XV thumbnail indicator (ThMO)
|
|
1956
|
+
# URL: https://en.wikipedia.org/wiki/Xv_(software)
|
|
1957
|
+
# Reference: http://fileformats.archiveteam.org/wiki/XV_thumbnail
|
|
1958
|
+
# Update: Joerg Jenderek
|
|
1959
|
+
0 string P7\ 332 XV thumbnail image data
|
|
1960
|
+
#0 string P7\ 332 XV "thumbnail file" (icon) data
|
|
1961
|
+
!:mime image/x-xv-thumbnail
|
|
1962
|
+
# thumbnail .xvpic/foo.bar for graphic foo.bar
|
|
1963
|
+
!:ext p7/gif/tif/xpm/jpg
|
|
1964
|
+
|
|
1965
|
+
# NITF is defined by United States MIL-STD-2500A
|
|
1966
|
+
0 string NITF National Imagery Transmission Format
|
|
1967
|
+
>25 string >\0 dated %.14s
|
|
1968
|
+
|
|
1969
|
+
# GEM Image: Version 1, Headerlen 8 (Wolfram Kleff)
|
|
1970
|
+
# Format variations from: Bernd Nuernberger <bernd.nuernberger@web.de>
|
|
1971
|
+
# Update: Joerg Jenderek
|
|
1972
|
+
# See http://fileformats.archiveteam.org/wiki/GEM_Raster
|
|
1973
|
+
# For variations, also see:
|
|
1974
|
+
# https://www.seasip.info/Gem/ff_img.html (Ventura)
|
|
1975
|
+
# http://www.atari-wiki.com/?title=IMG_file (XIMG, STTT)
|
|
1976
|
+
# http://www.fileformat.info/format/gemraster/spec/index.htm (XIMG, STTT)
|
|
1977
|
+
# http://sylvana.net/1stguide/1STGUIDE.ENG (TIMG)
|
|
1978
|
+
0 beshort 0x0001
|
|
1979
|
+
# header_size
|
|
1980
|
+
>2 beshort 0x0008
|
|
1981
|
+
>>0 use gem_info
|
|
1982
|
+
>2 beshort 0x0009
|
|
1983
|
+
>>0 use gem_info
|
|
1984
|
+
# no example for NOSIG
|
|
1985
|
+
>2 beshort 24
|
|
1986
|
+
>>0 use gem_info
|
|
1987
|
+
# no example for HYPERPAINT
|
|
1988
|
+
>2 beshort 25
|
|
1989
|
+
>>0 use gem_info
|
|
1990
|
+
16 string XIMG\0
|
|
1991
|
+
>0 use gem_info
|
|
1992
|
+
# no example
|
|
1993
|
+
16 string STTT\0\x10
|
|
1994
|
+
>0 use gem_info
|
|
1995
|
+
# no example or description
|
|
1996
|
+
16 string TIMG\0
|
|
1997
|
+
>0 use gem_info
|
|
1998
|
+
|
|
1999
|
+
0 name gem_info
|
|
2000
|
+
# version is 2 for some XIMG and 1 for all others
|
|
2001
|
+
>0 ubeshort <0x0003 GEM
|
|
2002
|
+
# https://www.snowstone.org.uk/riscos/mimeman/mimemap.txt
|
|
2003
|
+
!:mime image/x-gem
|
|
2004
|
+
# header_size 24 25 27 59 779 words for colored bitmaps
|
|
2005
|
+
>>2 ubeshort >9
|
|
2006
|
+
>>>16 string STTT\0\x10 STTT
|
|
2007
|
+
>>>16 string TIMG\0 TIMG
|
|
2008
|
+
# HYPERPAINT or NOSIG variant
|
|
2009
|
+
>>>16 string \0\x80
|
|
2010
|
+
>>>>2 ubeshort =24 NOSIG
|
|
2011
|
+
>>>>2 ubeshort !24 HYPERPAINT
|
|
2012
|
+
# NOSIG or XIMG variant
|
|
2013
|
+
>>>16 default x
|
|
2014
|
+
>>>>16 string !XIMG\0 NOSIG
|
|
2015
|
+
>>16 string =XIMG\0 XIMG Image data
|
|
2016
|
+
!:ext img/ximg
|
|
2017
|
+
# to avoid Warning: Current entry does not yet have a description for adding a EXTENSION type
|
|
2018
|
+
>>16 string !XIMG\0 Image data
|
|
2019
|
+
!:ext img
|
|
2020
|
+
# header_size is 9 for Ventura files and 8 for other GEM Paint files
|
|
2021
|
+
>>2 ubeshort 9 (Ventura)
|
|
2022
|
+
#>>2 ubeshort 8 (Paint)
|
|
2023
|
+
>>12 ubeshort x %d x
|
|
2024
|
+
>>14 ubeshort x %d,
|
|
2025
|
+
# 1 4 8
|
|
2026
|
+
>>4 ubeshort x %d planes,
|
|
2027
|
+
# in tenths of a millimetre
|
|
2028
|
+
>>8 ubeshort x %d x
|
|
2029
|
+
>>10 ubeshort x %d pixelsize
|
|
2030
|
+
# pattern_size 1-8. 2 for GEM Paint
|
|
2031
|
+
>>6 ubeshort !2 \b, pattern size %d
|
|
2032
|
+
|
|
2033
|
+
# GEM Metafile (Wolfram Kleff)
|
|
2034
|
+
0 ulelong 0x0018FFFF GEM Metafile data
|
|
2035
|
+
>4 uleshort x version %d
|
|
2036
|
+
|
|
2037
|
+
#
|
|
2038
|
+
# SMJPEG. A custom Motion JPEG format used by Loki Entertainment
|
|
2039
|
+
# Software Torbjorn Andersson <d91tan@Update.UU.SE>.
|
|
2040
|
+
#
|
|
2041
|
+
0 string \0\nSMJPEG SMJPEG
|
|
2042
|
+
>8 ubelong x %d.x data
|
|
2043
|
+
# According to the specification you could find any number of _TXT
|
|
2044
|
+
# headers here, but I can't think of any way of handling that. None of
|
|
2045
|
+
# the SMJPEG files I tried it on used this feature. Even if such a
|
|
2046
|
+
# file is encountered the output should still be reasonable.
|
|
2047
|
+
>16 string _SND \b,
|
|
2048
|
+
>>24 ubeshort >0 %d Hz
|
|
2049
|
+
>>26 ubyte 8 8-bit
|
|
2050
|
+
>>26 ubyte 16 16-bit
|
|
2051
|
+
>>28 string NONE uncompressed
|
|
2052
|
+
# >>28 string APCM ADPCM compressed
|
|
2053
|
+
>>27 ubyte 1 mono
|
|
2054
|
+
>>28 ubyte 2 stereo
|
|
2055
|
+
# Help! Isn't there any way to avoid writing this part twice?
|
|
2056
|
+
# Yes, use a name/use
|
|
2057
|
+
>>32 string _VID \b,
|
|
2058
|
+
# >>>48 string JFIF JPEG
|
|
2059
|
+
>>>40 ubelong >0 %d frames
|
|
2060
|
+
>>>44 ubeshort >0 (%d x
|
|
2061
|
+
>>>46 ubeshort >0 %d)
|
|
2062
|
+
>16 string _VID \b,
|
|
2063
|
+
# >>32 string JFIF JPEG
|
|
2064
|
+
>>24 ubelong >0 %d frames
|
|
2065
|
+
>>28 ubeshort >0 (%d x
|
|
2066
|
+
>>30 ubeshort >0 %d)
|
|
2067
|
+
|
|
2068
|
+
0 string Paint\ Shop\ Pro\ Image\ File Paint Shop Pro Image File
|
|
2069
|
+
|
|
2070
|
+
# taken from fkiss: (<yav@mte.biglobe.ne.jp> ?)
|
|
2071
|
+
0 string KiSS KISS/GS
|
|
2072
|
+
>4 ubyte 16 color
|
|
2073
|
+
>>5 ubyte x %d bit
|
|
2074
|
+
>>8 uleshort x %d colors
|
|
2075
|
+
>>10 uleshort x %d groups
|
|
2076
|
+
>4 ubyte 32 cell
|
|
2077
|
+
>>5 ubyte x %d bit
|
|
2078
|
+
>>8 uleshort x %d x
|
|
2079
|
+
>>10 uleshort x %d
|
|
2080
|
+
>>12 uleshort x +%d
|
|
2081
|
+
>>14 uleshort x +%d
|
|
2082
|
+
|
|
2083
|
+
# Webshots (www.webshots.com), by John Harrison
|
|
2084
|
+
0 string C\253\221g\230\0\0\0 Webshots Desktop .wbz file
|
|
2085
|
+
|
|
2086
|
+
# Hercules DASD image files
|
|
2087
|
+
# From Jan Jaeger <jj@septa.nl> and Jay Maynard <jaymaynard@gmail.com>
|
|
2088
|
+
0 string CKD_P370 Hercules CKD DASD image file
|
|
2089
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2090
|
+
>12 lelong x \b, track size %d bytes
|
|
2091
|
+
>16 byte x \b, device type 33%2.2X
|
|
2092
|
+
|
|
2093
|
+
0 string CKD_C370 Hercules compressed CKD DASD image file
|
|
2094
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2095
|
+
>12 lelong x \b, track size %d bytes
|
|
2096
|
+
>16 byte x \b, device type 33%2.2X
|
|
2097
|
+
>552 lelong x \b, %d total cylinders
|
|
2098
|
+
>>557 byte 0 \b, no compression
|
|
2099
|
+
>>557 byte 1 \b, ZLIB compression
|
|
2100
|
+
>>557 byte 2 \b, BZ2 compression
|
|
2101
|
+
|
|
2102
|
+
0 string CKD_S370 Hercules CKD DASD shadow file
|
|
2103
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2104
|
+
>12 lelong x \b, track size %d bytes
|
|
2105
|
+
>16 byte x \b, device type 33%2.2X
|
|
2106
|
+
|
|
2107
|
+
0 string CKD_P064 Hercules CKD64 DASD image file
|
|
2108
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2109
|
+
>12 lelong x \b, track size %d bytes
|
|
2110
|
+
>16 byte x \b, device type 33%2.2X
|
|
2111
|
+
|
|
2112
|
+
0 string CKD_C064 Hercules compressed CKD64 DASD image file
|
|
2113
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2114
|
+
>12 lelong x \b, track size %d bytes
|
|
2115
|
+
>16 byte x \b, device type 33%2.2X
|
|
2116
|
+
>524 lelong x \b, %d total cylinders
|
|
2117
|
+
>>585 byte 0 \b, no compression
|
|
2118
|
+
>>585 byte 1 \b, ZLIB compression
|
|
2119
|
+
>>585 byte 2 \b, BZ2 compression
|
|
2120
|
+
|
|
2121
|
+
0 string CKD_S064 Hercules CKD64 DASD shadow file
|
|
2122
|
+
>8 lelong x \b, %d heads per cylinder
|
|
2123
|
+
>12 lelong x \b, track size %d bytes
|
|
2124
|
+
>16 byte x \b, device type 33%2.2X
|
|
2125
|
+
|
|
2126
|
+
# Squeak images and programs - etoffi@softhome.net
|
|
2127
|
+
0 string \146\031\0\0 Squeak image data
|
|
2128
|
+
0 search/1 'From\040Squeak Squeak program text
|
|
2129
|
+
|
|
2130
|
+
# partimage: file(1) magic for PartImage files (experimental, incomplete)
|
|
2131
|
+
# Author: Hans-Joachim Baader <hjb@pro-linux.de>
|
|
2132
|
+
0 string PaRtImAgE-VoLuMe PartImage
|
|
2133
|
+
>0x0020 string 0.6.1 file version %s
|
|
2134
|
+
>>0x0060 ulelong >-1 volume %d
|
|
2135
|
+
#>>0x0064 8 byte identifier
|
|
2136
|
+
#>>0x007c reserved
|
|
2137
|
+
>>0x0200 string >\0 type %s
|
|
2138
|
+
>>0x1400 string >\0 device %s,
|
|
2139
|
+
>>0x1600 string >\0 original filename %s,
|
|
2140
|
+
# Some fields omitted
|
|
2141
|
+
>>0x2744 ulelong 0 not compressed
|
|
2142
|
+
>>0x2744 ulelong 1 gzip compressed
|
|
2143
|
+
>>0x2744 ulelong 2 bzip2 compressed
|
|
2144
|
+
>>0x2744 ulelong >2 compressed with unknown algorithm
|
|
2145
|
+
>0x0020 string >0.6.1 file version %s
|
|
2146
|
+
>0x0020 string <0.6.1 file version %s
|
|
2147
|
+
|
|
2148
|
+
# DCX is multi-page PCX, using a simple header of up to 1024
|
|
2149
|
+
# offsets for the respective PCX components.
|
|
2150
|
+
# From: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de>
|
|
2151
|
+
# Update: Joerg Jenderek
|
|
2152
|
+
# URL: http://fileformats.archiveteam.org/wiki/DCX
|
|
2153
|
+
0 ulelong 987654321 DCX multi-page
|
|
2154
|
+
# http://www.nationalarchives.gov.uk/pronom/x-fmt/348
|
|
2155
|
+
!:mime image/x-dcx
|
|
2156
|
+
!:ext dcx
|
|
2157
|
+
# The first file offset usually starts at file offset 0x1004
|
|
2158
|
+
# print 1 space after 0x100? offset and then handles PCX images by ./images
|
|
2159
|
+
>4 ulelong x \b, at %#x
|
|
2160
|
+
>(4.l) indirect x
|
|
2161
|
+
# possible 2nd PCX image
|
|
2162
|
+
#>8 ulelong !0 \b, at %#x
|
|
2163
|
+
#>>(8.l) indirect x
|
|
2164
|
+
# possible 3rd PCX image
|
|
2165
|
+
#>12 ulelong !0 \b, at %#x
|
|
2166
|
+
#>>(12.l) indirect x
|
|
2167
|
+
|
|
2168
|
+
# Simon Walton <simonw@matteworld.com>
|
|
2169
|
+
# Kodak Cineon format for scanned negatives
|
|
2170
|
+
# http://www.kodak.com/US/en/motion/support/dlad/
|
|
2171
|
+
0 ulelong 0xd75f2a80 Cineon image data
|
|
2172
|
+
>200 ubelong >0 \b, %d x
|
|
2173
|
+
>204 ubelong >0 %d
|
|
2174
|
+
|
|
2175
|
+
|
|
2176
|
+
# Bio-Rad .PIC is an image format used by microscope control systems
|
|
2177
|
+
# and related image processing software used by biologists.
|
|
2178
|
+
# From: Vebjorn Ljosa <vebjorn@ljosa.com>
|
|
2179
|
+
# BOOL values are two-byte integers; use them to rule out false positives.
|
|
2180
|
+
# https://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt
|
|
2181
|
+
# Samples: https://www.loci.wisc.edu/software/sample-data
|
|
2182
|
+
14 uleshort <2
|
|
2183
|
+
>62 uleshort <2
|
|
2184
|
+
>>54 uleshort 12345 Bio-Rad .PIC Image File
|
|
2185
|
+
>>>0 uleshort >0 %d x
|
|
2186
|
+
>>>2 uleshort >0 %d,
|
|
2187
|
+
>>>4 uleshort =1 1 image in file
|
|
2188
|
+
>>>4 uleshort >1 %d images in file
|
|
2189
|
+
|
|
2190
|
+
# From Jan "Yenya" Kasprzak <kas@fi.muni.cz>
|
|
2191
|
+
# The description of *.mrw format can be found at
|
|
2192
|
+
# http://www.dalibor.cz/minolta/raw_file_format.htm
|
|
2193
|
+
0 string \000MRM Minolta Dimage camera raw image data
|
|
2194
|
+
|
|
2195
|
+
# Summary: DjVu image / document
|
|
2196
|
+
# Extension: .djvu
|
|
2197
|
+
# Reference: http://djvu.org/docs/DjVu3Spec.djvu
|
|
2198
|
+
# Submitted by: Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
|
|
2199
|
+
# Modified by (1): Abel Cheung <abelcheung@gmail.com>
|
|
2200
|
+
0 string AT&TFORM
|
|
2201
|
+
>12 string DJVM DjVu multiple page document
|
|
2202
|
+
!:mime image/vnd.djvu
|
|
2203
|
+
>12 string DJVU DjVu image or single page document
|
|
2204
|
+
!:mime image/vnd.djvu
|
|
2205
|
+
>12 string DJVI DjVu shared document
|
|
2206
|
+
!:mime image/vnd.djvu
|
|
2207
|
+
>12 string THUM DjVu page thumbnails
|
|
2208
|
+
!:mime image/vnd.djvu
|
|
2209
|
+
|
|
2210
|
+
# Originally by Marc Espie
|
|
2211
|
+
# Modified by Robert Minsk <robertminsk at yahoo.com>
|
|
2212
|
+
# https://www.openexr.com/openexrfilelayout.pdf
|
|
2213
|
+
0 ulelong 20000630 OpenEXR image data,
|
|
2214
|
+
!:mime image/x-exr
|
|
2215
|
+
>4 ulelong&0x000000ff x version %d,
|
|
2216
|
+
>4 ulelong ^0x00000200 storage: scanline
|
|
2217
|
+
>4 ulelong &0x00000200 storage: tiled
|
|
2218
|
+
>8 search/0x1000 compression\0 \b, compression:
|
|
2219
|
+
>>&16 ubyte 0 none
|
|
2220
|
+
>>&16 ubyte 1 rle
|
|
2221
|
+
>>&16 ubyte 2 zips
|
|
2222
|
+
>>&16 ubyte 3 zip
|
|
2223
|
+
>>&16 ubyte 4 piz
|
|
2224
|
+
>>&16 ubyte 5 pxr24
|
|
2225
|
+
>>&16 ubyte 6 b44
|
|
2226
|
+
>>&16 ubyte 7 b44a
|
|
2227
|
+
>>&16 ubyte 8 dwaa
|
|
2228
|
+
>>&16 ubyte 9 dwab
|
|
2229
|
+
>>&16 ubyte >9 unknown
|
|
2230
|
+
>8 search/0x1000 dataWindow\0 \b, dataWindow:
|
|
2231
|
+
>>&10 ulelong x (%d
|
|
2232
|
+
>>&14 ulelong x %d)-
|
|
2233
|
+
>>&18 ulelong x \b(%d
|
|
2234
|
+
>>&22 ulelong x %d)
|
|
2235
|
+
>8 search/0x1000 displayWindow\0 \b, displayWindow:
|
|
2236
|
+
>>&10 ulelong x (%d
|
|
2237
|
+
>>&14 ulelong x %d)-
|
|
2238
|
+
>>&18 ulelong x \b(%d
|
|
2239
|
+
>>&22 ulelong x %d)
|
|
2240
|
+
>8 search/0x1000 lineOrder\0 \b, lineOrder:
|
|
2241
|
+
>>&14 ubyte 0 increasing y
|
|
2242
|
+
>>&14 ubyte 1 decreasing y
|
|
2243
|
+
>>&14 ubyte 2 random y
|
|
2244
|
+
>>&14 ubyte >2 unknown
|
|
2245
|
+
|
|
2246
|
+
# SMPTE Digital Picture Exchange Format, SMPTE DPX
|
|
2247
|
+
#
|
|
2248
|
+
# ANSI/SMPTE 268M-1994, SMPTE Standard for File Format for Digital
|
|
2249
|
+
# Moving-Picture Exchange (DPX), v1.0, 18 February 1994
|
|
2250
|
+
# Robert Minsk <robertminsk at yahoo.com>
|
|
2251
|
+
# Modified by Harry Mallon <hjmallon at gmail.com>
|
|
2252
|
+
0 string SDPX DPX image data, big-endian,
|
|
2253
|
+
!:mime image/x-dpx
|
|
2254
|
+
>0 use dpx_info
|
|
2255
|
+
0 string XPDS DPX image data, little-endian,
|
|
2256
|
+
!:mime image/x-dpx
|
|
2257
|
+
>0 use \^dpx_info
|
|
2258
|
+
|
|
2259
|
+
0 name dpx_info
|
|
2260
|
+
>768 ubeshort <4
|
|
2261
|
+
>>772 ubelong x %dx
|
|
2262
|
+
>>776 ubelong x \b%d,
|
|
2263
|
+
>768 ubeshort >3
|
|
2264
|
+
>>776 ubelong x %dx
|
|
2265
|
+
>>772 ubelong x \b%d,
|
|
2266
|
+
>768 ubeshort 0 left to right/top to bottom
|
|
2267
|
+
>768 ubeshort 1 right to left/top to bottom
|
|
2268
|
+
>768 ubeshort 2 left to right/bottom to top
|
|
2269
|
+
>768 ubeshort 3 right to left/bottom to top
|
|
2270
|
+
>768 ubeshort 4 top to bottom/left to right
|
|
2271
|
+
>768 ubeshort 5 top to bottom/right to left
|
|
2272
|
+
>768 ubeshort 6 bottom to top/left to right
|
|
2273
|
+
>768 ubeshort 7 bottom to top/right to left
|
|
2274
|
+
|
|
2275
|
+
# From: Tom Hilinski <tom.hilinski@comcast.net>
|
|
2276
|
+
# Update: Joerg Jenderek
|
|
2277
|
+
# URL: https://en.wikipedia.org/wiki/NetCDF
|
|
2278
|
+
# http://fileformats.archiveteam.org/wiki/NetCDF
|
|
2279
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/n/netcdf.trid.xml
|
|
2280
|
+
# https://www.loc.gov/preservation/digital/formats/fdd/fdd000330.shtml
|
|
2281
|
+
# Note: called "NetCDF Network Common Data Form" by TrID and
|
|
2282
|
+
# "netCDF-3 Classic" by DROID via PUID fmt/282
|
|
2283
|
+
# https://www.unidata.ucar.edu/packages/netcdf/
|
|
2284
|
+
0 string CDF\001
|
|
2285
|
+
# skip DROID fmt-282-signature-id-298.nc by test for more content bytes
|
|
2286
|
+
>3 uleshort >0 NetCDF Data Format data
|
|
2287
|
+
#!:mime application/netcdf
|
|
2288
|
+
# https://reposcope.com/mimetype/application/x-netcdf
|
|
2289
|
+
!:mime application/x-netcdf
|
|
2290
|
+
!:ext nc
|
|
2291
|
+
# https://fileinfo.com/extension/cdf
|
|
2292
|
+
# https://www.file-extensions.org/cdf-file-extension-unidata-network-common-data-form
|
|
2293
|
+
# in 1994 changed from CDF to NC file extension avoid a clash with other file formats
|
|
2294
|
+
#!:ext nc/cdf
|
|
2295
|
+
# 64-bit offset netcdf Classic https://www.unidata.ucar.edu/software/netcdf/docs/file_format_specifications
|
|
2296
|
+
# Note: called "netCDF-3 64-bit" by DROID via PUID fmt/283
|
|
2297
|
+
0 string CDF\002
|
|
2298
|
+
# skip DROID fmt-283-signature-id-299.nc by test for more content bytes
|
|
2299
|
+
>3 uleshort >0 NetCDF Data Format data (64-bit offset)
|
|
2300
|
+
#!:mime application/netcdf
|
|
2301
|
+
!:mime application/x-netcdf
|
|
2302
|
+
!:ext nc
|
|
2303
|
+
|
|
2304
|
+
# From: Michael Liu
|
|
2305
|
+
# https://en.wikipedia.org/wiki/Common_Data_Format
|
|
2306
|
+
0 ubelong 0xCDF30001 Common Data Format (Version 3 or later) data
|
|
2307
|
+
!:mime application/x-cdf
|
|
2308
|
+
|
|
2309
|
+
0 ubelong 0xCDF26002 Common Data Format (Version 2.6 or 2.7) data
|
|
2310
|
+
!:mime application/x-cdf
|
|
2311
|
+
|
|
2312
|
+
0 ubelong 0x0000FFFF Common Data Format (Version 2.5 or earlier) data
|
|
2313
|
+
!:mime application/x-cdf
|
|
2314
|
+
|
|
2315
|
+
# Hierarchical Data Format, used to facilitate scientific data exchange
|
|
2316
|
+
# specifications at http://hdf.ncsa.uiuc.edu/
|
|
2317
|
+
# URL: http://fileformats.archiveteam.org/wiki/HDF
|
|
2318
|
+
# https://en.wikipedia.org/wiki/Hierarchical_Data_Format
|
|
2319
|
+
# Reference: https://portal.hdfgroup.org/download/attachments/52627880/HDF5_File_Format_Specification_Version-3.0.pdf
|
|
2320
|
+
0 ubelong 0x0e031301 Hierarchical Data Format (version 4) data
|
|
2321
|
+
!:mime application/x-hdf
|
|
2322
|
+
!:ext hdf/hdf4/h4
|
|
2323
|
+
0 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) data
|
|
2324
|
+
#!:mime application/x-hdf
|
|
2325
|
+
!:mime application/x-hdf5
|
|
2326
|
+
!:ext h5/hdf5/hdf/he5
|
|
2327
|
+
512 string \211HDF\r\n\032\n
|
|
2328
|
+
# skip Matlab v5 mat-file testhdf5_7.4_GLNX86.mat handled by ./mathematica
|
|
2329
|
+
>0 string !MATLAB Hierarchical Data Format (version 5) with 512 bytes user block
|
|
2330
|
+
#!:mime application/x-hdf
|
|
2331
|
+
!:mime application/x-hdf5
|
|
2332
|
+
!:ext h5/hdf5/hdf/he5
|
|
2333
|
+
1024 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 1k user block
|
|
2334
|
+
#!:mime application/x-hdf
|
|
2335
|
+
!:mime application/x-hdf5
|
|
2336
|
+
!:ext h5/hdf5/hdf/he5
|
|
2337
|
+
2048 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 2k user block
|
|
2338
|
+
#!:mime application/x-hdf
|
|
2339
|
+
!:mime application/x-hdf5
|
|
2340
|
+
!:ext h5/hdf5/hdf/he5
|
|
2341
|
+
4096 string \211HDF\r\n\032\n Hierarchical Data Format (version 5) with 4k user block
|
|
2342
|
+
#!:mime application/x-hdf
|
|
2343
|
+
!:mime application/x-hdf5
|
|
2344
|
+
!:ext h5/hdf5/hdf/he5
|
|
2345
|
+
|
|
2346
|
+
# From: Tobias Burnus <burnus@net-b.de>
|
|
2347
|
+
# Xara (for a while: Corel Xara) is a graphic package, see
|
|
2348
|
+
# http://www.xara.com/ for Windows and as GPL application for Linux
|
|
2349
|
+
0 string XARA\243\243 Xara graphics file
|
|
2350
|
+
|
|
2351
|
+
# From: Joerg Jenderek
|
|
2352
|
+
# URL: http://fileformats.archiveteam.org/wiki/Corel_Gallery
|
|
2353
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bmf-corel.trid.xml
|
|
2354
|
+
# Note: called "Corel Binary Material Format" by TrID and
|
|
2355
|
+
# "Corel Flow" by XnView
|
|
2356
|
+
0 string @CorelBMF\n\rCorel\040Corporation Corel GALLERY Clipart
|
|
2357
|
+
!:mime image/x-corel-bmf
|
|
2358
|
+
!:ext bmf
|
|
2359
|
+
|
|
2360
|
+
# https://www.cartesianinc.com/Tech/
|
|
2361
|
+
# Reference: http://fileformats.archiveteam.org/wiki/Cartesian_Perceptual_Compression
|
|
2362
|
+
0 string CPC\262 Cartesian Perceptual Compression image
|
|
2363
|
+
!:mime image/x-cpi
|
|
2364
|
+
!:ext cpi/cpc
|
|
2365
|
+
|
|
2366
|
+
# From Albert Cahalan <acahalan@gmail.com>
|
|
2367
|
+
# puredigital used it for the CVS disposable camcorder
|
|
2368
|
+
#8 lelong 4 ZBM bitmap image data
|
|
2369
|
+
#>4 uleshort x %u x
|
|
2370
|
+
#>6 uleshort x %u
|
|
2371
|
+
|
|
2372
|
+
# From Albert Cahalan <acahalan@gmail.com>
|
|
2373
|
+
# uncompressed 5:6:5 HighColor image for OLPC XO firmware icons
|
|
2374
|
+
0 string C565 OLPC firmware icon image data
|
|
2375
|
+
>4 uleshort x %u x
|
|
2376
|
+
>6 uleshort x %u
|
|
2377
|
+
|
|
2378
|
+
# Applied Images - Image files from Cytovision
|
|
2379
|
+
# Gustavo Junior Alves <gjalves@gjalves.com.br>
|
|
2380
|
+
0 string \xce\xda\xde\xfa Cytovision Metaphases file
|
|
2381
|
+
0 string \xed\xad\xef\xac Cytovision Karyotype file
|
|
2382
|
+
0 string \x0b\x00\x03\x00 Cytovision FISH Probe file
|
|
2383
|
+
0 string \xed\xfe\xda\xbe Cytovision FLEX file
|
|
2384
|
+
0 string \xed\xab\xed\xfe Cytovision FLEX file
|
|
2385
|
+
0 string \xad\xfd\xea\xad Cytovision RATS file
|
|
2386
|
+
|
|
2387
|
+
# Wavelet Scalar Quantization format used in gray-scale fingerprint images
|
|
2388
|
+
# From Tano M Fotang <mfotang@quanteq.com>
|
|
2389
|
+
0 string \xff\xa0\xff\xa8\x00 Wavelet Scalar Quantization image data
|
|
2390
|
+
|
|
2391
|
+
# Type: PCO B16 image files
|
|
2392
|
+
# URL: http://www.pco.de/fileadmin/user_upload/db/download/MA_CWDCOPIE_0412b.pdf
|
|
2393
|
+
# From: Florian Philipp <florian.philipp@binarywings.net>
|
|
2394
|
+
# Extension: .b16
|
|
2395
|
+
# Description: Pixel image format produced by PCO Camware, typically used
|
|
2396
|
+
# together with PCO cameras.
|
|
2397
|
+
# Note: Different versions exist for e.g. 8 bit and 16 bit images.
|
|
2398
|
+
# Documentation is incomplete.
|
|
2399
|
+
0 string/b PCO- PCO B16 image data
|
|
2400
|
+
>12 ulelong x \b, %dx
|
|
2401
|
+
>16 ulelong x \b%d
|
|
2402
|
+
>20 ulelong 0 \b, short header
|
|
2403
|
+
>20 ulelong -1 \b, extended header
|
|
2404
|
+
>>24 ulelong 0 \b, grayscale
|
|
2405
|
+
>>>36 ulelong 0 linear LUT
|
|
2406
|
+
>>>36 ulelong 1 logarithmic LUT
|
|
2407
|
+
>>>28 ulelong x [%d
|
|
2408
|
+
>>>32 ulelong x \b,%d]
|
|
2409
|
+
>>24 ulelong 1 \b, color
|
|
2410
|
+
>>>64 ulelong 0 linear LUT
|
|
2411
|
+
>>>64 ulelong 1 logarithmic LUT
|
|
2412
|
+
>>>40 ulelong x r[%d
|
|
2413
|
+
>>>44 ulelong x \b,%d]
|
|
2414
|
+
>>>48 ulelong x g[%d
|
|
2415
|
+
>>>52 ulelong x \b,%d]
|
|
2416
|
+
>>>56 ulelong x b[%d
|
|
2417
|
+
>>>60 ulelong x \b,%d]
|
|
2418
|
+
|
|
2419
|
+
# Polar Monitor Bitmap (.pmb) used as logo for Polar Electro watches
|
|
2420
|
+
# From: Markus Heidelberg <markus.heidelberg at web.de>
|
|
2421
|
+
0 string/t [BitmapInfo2] Polar Monitor Bitmap text
|
|
2422
|
+
!:mime image/x-polar-monitor-bitmap
|
|
2423
|
+
|
|
2424
|
+
# From: Rick Richardson <rickrich@gmail.com>
|
|
2425
|
+
# updated by: Joerg Jenderek
|
|
2426
|
+
# URL: http://techmods.net/nuvi/
|
|
2427
|
+
0 string GARMIN\ BITMAP\ 01 Garmin Bitmap file
|
|
2428
|
+
# extension is also used for
|
|
2429
|
+
# Sony SRF raw image (image/x-sony-srf)
|
|
2430
|
+
# SRF map
|
|
2431
|
+
# Terragen Surface Map (https://www.planetside.co.uk/terragen)
|
|
2432
|
+
# FileLocator Pro search criteria file (https://www.mythicsoft.com/filelocatorpro)
|
|
2433
|
+
!:ext srf
|
|
2434
|
+
#!:mime image/x-garmin-srf
|
|
2435
|
+
# version 1.00,2.00,2.10,2.40,2.50
|
|
2436
|
+
>0x2f string >0 \b, version %4.4s
|
|
2437
|
+
# width (2880,2881,3240)
|
|
2438
|
+
>0x55 uleshort >0 \b, %dx
|
|
2439
|
+
# height (80,90)
|
|
2440
|
+
>>0x53 uleshort x \b%d
|
|
2441
|
+
|
|
2442
|
+
# From: Joerg Jenderek
|
|
2443
|
+
# URL: http://fileformats.archiveteam.org/wiki/Imageiio/imaginfo_(Ulead)
|
|
2444
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/p/pe3.trid.xml
|
|
2445
|
+
# Note: called "Ulead Imageiio/Imaginfo thumbnail" by TrID
|
|
2446
|
+
0 string IIO1$ Ulead Photo Explorer 3
|
|
2447
|
+
#!:mime application/octet-stream
|
|
2448
|
+
!:mime image/x-ulead-pe3
|
|
2449
|
+
# IMAGEIIO.PE3
|
|
2450
|
+
!:ext pe3
|
|
2451
|
+
# look for DOS/Windows drive letter
|
|
2452
|
+
>5 search/192/s :\\
|
|
2453
|
+
# directory or full name of corresponding imaginfo.pe3 like: "T:\SAMPLES\TEXTURES\SKY_SNOW\IIOE371.TMP "S:\PI3\PIMPACT3\PROGRAMS\PATTERNS\imaginfo.pe3"
|
|
2454
|
+
>>&-1 string x "%s"
|
|
2455
|
+
# look for DOS/Windows network path if no drive letter part
|
|
2456
|
+
>5 default x
|
|
2457
|
+
>>5 search/192/s \x5c\x5c
|
|
2458
|
+
# full name of corresponding imaginfo.pe3 like: "\\Lionking\upi\SAMPLES\IMAGES\ANIMALS\imaginfo.pe3"
|
|
2459
|
+
>>>&0 string x "%s"
|
|
2460
|
+
# Type: Ulead Photo Explorer5 (.pe5)
|
|
2461
|
+
# URL: http://fileformats.archiveteam.org/wiki/Imageiio/imaginfo_(Ulead)
|
|
2462
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/p/pe4.trid.xml
|
|
2463
|
+
# From: Simon Horman <horms@debian.org>
|
|
2464
|
+
# Update: Joerg Jenderek
|
|
2465
|
+
# Note: some called "Ulead Imageiio/Imaginfo thumbnail" by TrID
|
|
2466
|
+
# and used in various Ulead applications
|
|
2467
|
+
0 string IIO2H Ulead Photo Explorer 4 or 5
|
|
2468
|
+
#!:mime application/octet-stream
|
|
2469
|
+
!:mime image/x-ulead-pe4
|
|
2470
|
+
# IMAGEIIO.PE4
|
|
2471
|
+
!:ext pe4/pe5
|
|
2472
|
+
# look in most samples for JPEG signature like: SAMPLES/IMAGES/SCENES/IMAGINFO.PE4
|
|
2473
|
+
>0x4c2 search/0xE02/s JFIF with JPEG image data
|
|
2474
|
+
>>&-6 use jpeg
|
|
2475
|
+
# near the end list of image names like: Img0001.pcd 1116012L.JPG NCARD4.TPL
|
|
2476
|
+
#
|
|
2477
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/p/pe3-imaginfo.trid.xml
|
|
2478
|
+
11 string \001\0\0\0\0
|
|
2479
|
+
# check for version 3 part
|
|
2480
|
+
>19 string \0\001\0\003\0
|
|
2481
|
+
>>0 use ulead-imaginfo
|
|
2482
|
+
# From: Joerg Jenderek
|
|
2483
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/p/pe4-imaginfo.trid.xml
|
|
2484
|
+
11 string \001\0\0\0\0
|
|
2485
|
+
# check for version 4 part
|
|
2486
|
+
>19 string \0\0\0\004\0
|
|
2487
|
+
>>0 use ulead-imaginfo
|
|
2488
|
+
# display information about Ulead Imaginfo thumbnail (version, directory, image extension)
|
|
2489
|
+
0 name ulead-imaginfo
|
|
2490
|
+
>22 ubyte x Ulead Imaginfo thumbnail
|
|
2491
|
+
#!:mime application/octet-stream
|
|
2492
|
+
!:mime image/x-ulead-imaginfo
|
|
2493
|
+
>22 ubyte =3 \b, version 3
|
|
2494
|
+
# IMAGINFO.PE3
|
|
2495
|
+
!:ext pe3
|
|
2496
|
+
>22 ubyte =4 \b, version 4
|
|
2497
|
+
# IMAGINFO.PE4
|
|
2498
|
+
!:ext pe4
|
|
2499
|
+
# MAYBE ALSO VERSION 5 ?
|
|
2500
|
+
#>22 ubyte =5 \b, version 5
|
|
2501
|
+
#!:ext pe5
|
|
2502
|
+
>22 ubyte x
|
|
2503
|
+
# look for DOS/Windows driver letter
|
|
2504
|
+
>>4 search/192/s :\x5c
|
|
2505
|
+
# skip f:\Programme\iPhoto Plus 4\Template\Business Cards\IMAGINFO.PE4
|
|
2506
|
+
# by looking for driver letter in range A-Z
|
|
2507
|
+
>>>&-1 ubyte >0x40
|
|
2508
|
+
# directory path like: "E:\iPE\CDSample\Images\Scenes" "D:\XmasCard\Samples" "C:\TEMP\PLANTS"
|
|
2509
|
+
>>>>&-5 pstring/l >0 \b, "%s"
|
|
2510
|
+
# look for DOS/Windows network path if no valid drive letter part
|
|
2511
|
+
>>>&-1 default x
|
|
2512
|
+
>>>>4 search/192/s \x5c\x5c
|
|
2513
|
+
# directory path like: "\\FSX\SYS\OPPS\IPE.ENG\TEMPLATE\BUSINESS" "\\Lionking\upi\SAMPLES\IMAGES\ANIMALS"
|
|
2514
|
+
>>>>>&-4 pstring/l >0 \b, "%s"
|
|
2515
|
+
# look for DOS/Windows network path if no drive letter part
|
|
2516
|
+
>>4 default x
|
|
2517
|
+
>>>4 search/192/s \x5c\x5c
|
|
2518
|
+
# directory path like: "\\FSX\SYS\opps\ipe.eng\samples" "\\DANIEL\IPE_CD\IPE.ITA"
|
|
2519
|
+
>>>>&-4 pstring/l >0 \b, "%s"
|
|
2520
|
+
# look for point character inside image names
|
|
2521
|
+
>56 search/38/s .
|
|
2522
|
+
# image name extension like: bmp jpg pcd tpl
|
|
2523
|
+
>>&1 string x with %-.3s images
|
|
2524
|
+
# Summary: Ulead Pattern image (Corel Corporation)
|
|
2525
|
+
# URL: https://en.wikipedia.org/wiki/Ulead_Systems
|
|
2526
|
+
# https://www.file-extensions.org/pst-file-extension-ulead-pattern-image-format
|
|
2527
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/p/pst-ulead.trid.xml
|
|
2528
|
+
# From: Joerg Jenderek
|
|
2529
|
+
# Note: used also by CorelDraw Essentials 3 version 13.0.0.800
|
|
2530
|
+
# there seems to exist other versions
|
|
2531
|
+
0 ubelong 0xFFFF0100
|
|
2532
|
+
>8 search/21 PresetInfo Ulead pattern image
|
|
2533
|
+
#!:mime application/octet-stream
|
|
2534
|
+
!:mime image/x-ulead-pst
|
|
2535
|
+
!:ext pst
|
|
2536
|
+
# string length like: 16 18 19 21 24
|
|
2537
|
+
#>>4 uleshort x n=%u
|
|
2538
|
+
# like: BlendPresetInfo DropShadowPresetInfo FileNewPresetInfo VectorExtrudePresetInfo EnvelopePresetInfo ContourPresetInfo DistortionPresetInfo
|
|
2539
|
+
>>4 pstring/h x "%s"
|
|
2540
|
+
|
|
2541
|
+
# Type: X11 cursor
|
|
2542
|
+
# URL: http://webcvs.freedesktop.org/mime/shared-mime-info/freedesktop.org.xml.in?view=markup
|
|
2543
|
+
# From: Mathias Brodala <info@noctus.net>
|
|
2544
|
+
0 string Xcur X11 cursor
|
|
2545
|
+
|
|
2546
|
+
# Type: Olympus ORF raw images.
|
|
2547
|
+
# URL: https://libopenraw.freedesktop.org/wiki/Olympus_ORF
|
|
2548
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
2549
|
+
0 string MMOR Olympus ORF raw image data, big-endian
|
|
2550
|
+
!:mime image/x-olympus-orf
|
|
2551
|
+
0 string IIRO Olympus ORF raw image data, little-endian
|
|
2552
|
+
!:mime image/x-olympus-orf
|
|
2553
|
+
0 string IIRS Olympus ORF raw image data, little-endian
|
|
2554
|
+
!:mime image/x-olympus-orf
|
|
2555
|
+
|
|
2556
|
+
# Type: files used in modern AVCHD camcoders to store clip information
|
|
2557
|
+
# Extension: .cpi
|
|
2558
|
+
# From: Alexander Danilov <alexander.a.danilov@gmail.com>
|
|
2559
|
+
0 string HDMV0100 AVCHD Clip Information
|
|
2560
|
+
|
|
2561
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
2562
|
+
# URL: http://local.wasp.uwa.edu.au/~pbourke/dataformats/pic/
|
|
2563
|
+
# Radiance HDR; usually has .pic or .hdr extension.
|
|
2564
|
+
0 string #?RADIANCE\n Radiance HDR image data
|
|
2565
|
+
!:mime image/vnd.radiance
|
|
2566
|
+
|
|
2567
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
2568
|
+
# URL: https://www.mpi-inf.mpg.de/resources/pfstools/pfs_format_spec.pdf
|
|
2569
|
+
# Used by the pfstools packages. The regex matches for the image size could
|
|
2570
|
+
# probably use some work. The MIME type is made up; if there's one in
|
|
2571
|
+
# actual common use, it should replace the one below.
|
|
2572
|
+
0 string PFS1\x0a PFS HDR image data
|
|
2573
|
+
#!mime image/x-pfs
|
|
2574
|
+
>1 regex [0-9]*\ \b, %s
|
|
2575
|
+
>>1 regex \ [0-9]{4} \bx%s
|
|
2576
|
+
|
|
2577
|
+
# Type: Foveon X3F
|
|
2578
|
+
# URL: https://www.photofo.com/downloads/x3f-raw-format.pdf
|
|
2579
|
+
# From: Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
2580
|
+
# Note that the MIME type isn't defined anywhere that I can find; if
|
|
2581
|
+
# there's a canonical type for this format, it should replace this one.
|
|
2582
|
+
0 string FOVb Foveon X3F raw image data
|
|
2583
|
+
!:mime image/x-x3f
|
|
2584
|
+
>6 uleshort x \b, version %d.
|
|
2585
|
+
>4 uleshort x \b%d
|
|
2586
|
+
>28 ulelong x \b, %dx
|
|
2587
|
+
>32 ulelong x \b%d
|
|
2588
|
+
|
|
2589
|
+
# Paint.NET file
|
|
2590
|
+
# From Adam Buchbinder <adam.buchbinder@gmail.com>
|
|
2591
|
+
0 string PDN3 Paint.NET image data
|
|
2592
|
+
!:mime image/x-paintnet
|
|
2593
|
+
|
|
2594
|
+
# Not really an image.
|
|
2595
|
+
# From: "Tano M. Fotang" <mfotang@quanteq.com>
|
|
2596
|
+
0 string \x46\x4d\x52\x00 ISO/IEC 19794-2 Format Minutiae Record (FMR)
|
|
2597
|
+
|
|
2598
|
+
# doc: https://www.shikino.co.jp/eng/products/images/FLOWER.jpg.zip
|
|
2599
|
+
# example: https://www.shikino.co.jp/eng/products/images/FLOWER.wdp.zip
|
|
2600
|
+
90 ubequad 0x574D50484F544F00 JPEG-XR Image
|
|
2601
|
+
>98 ubyte&0x08 =0x08 \b, hard tiling
|
|
2602
|
+
>99 ubyte&0x80 =0x80 \b, tiling present
|
|
2603
|
+
>99 ubyte&0x40 =0x40 \b, codestream present
|
|
2604
|
+
>99 ubyte&0x38 x \b, spatial xform=
|
|
2605
|
+
>99 ubyte&0x38 0x00 \bTL
|
|
2606
|
+
>99 ubyte&0x38 0x08 \bBL
|
|
2607
|
+
>99 ubyte&0x38 0x10 \bTR
|
|
2608
|
+
>99 ubyte&0x38 0x18 \bBR
|
|
2609
|
+
>99 ubyte&0x38 0x20 \bBT
|
|
2610
|
+
>99 ubyte&0x38 0x28 \bRB
|
|
2611
|
+
>99 ubyte&0x38 0x30 \bLT
|
|
2612
|
+
>99 ubyte&0x38 0x38 \bLB
|
|
2613
|
+
>100 ubyte&0x80 =0x80 \b, short header
|
|
2614
|
+
>>102 ubeshort+1 x \b, %d
|
|
2615
|
+
>>104 ubeshort+1 x \bx%d
|
|
2616
|
+
>100 ubyte&0x80 =0x00 \b, long header
|
|
2617
|
+
>>102 ubelong+1 x \b, %x
|
|
2618
|
+
>>106 ubelong+1 x \bx%x
|
|
2619
|
+
>101 ubeshort&0xf x \b, bitdepth=
|
|
2620
|
+
>>101 ubeshort&0xf 0x0 \b1-WHITE=1
|
|
2621
|
+
>>101 ubeshort&0xf 0x1 \b8
|
|
2622
|
+
>>101 ubeshort&0xf 0x2 \b16
|
|
2623
|
+
>>101 ubeshort&0xf 0x3 \b16-SIGNED
|
|
2624
|
+
>>101 ubeshort&0xf 0x4 \b16-FLOAT
|
|
2625
|
+
>>101 ubeshort&0xf 0x5 \b(reserved 5)
|
|
2626
|
+
>>101 ubeshort&0xf 0x6 \b32-SIGNED
|
|
2627
|
+
>>101 ubeshort&0xf 0x7 \b32-FLOAT
|
|
2628
|
+
>>101 ubeshort&0xf 0x8 \b5
|
|
2629
|
+
>>101 ubeshort&0xf 0x9 \b10
|
|
2630
|
+
>>101 ubeshort&0xf 0xa \b5-6-5
|
|
2631
|
+
>>101 ubeshort&0xf 0xb \b(reserved %d)
|
|
2632
|
+
>>101 ubeshort&0xf 0xc \b(reserved %d)
|
|
2633
|
+
>>101 ubeshort&0xf 0xd \b(reserved %d)
|
|
2634
|
+
>>101 ubeshort&0xf 0xe \b(reserved %d)
|
|
2635
|
+
>>101 ubeshort&0xf 0xf \b1-BLACK=1
|
|
2636
|
+
>101 ubeshort&0xf0 x \b, colorfmt=
|
|
2637
|
+
>>101 ubeshort&0xf0 0x00 \bYONLY
|
|
2638
|
+
>>101 ubeshort&0xf0 0x10 \bYUV240
|
|
2639
|
+
>>101 ubeshort&0xf0 0x20 \bYWV422
|
|
2640
|
+
>>101 ubeshort&0xf0 0x30 \bYWV444
|
|
2641
|
+
>>101 ubeshort&0xf0 0x40 \bCMYK
|
|
2642
|
+
>>101 ubeshort&0xf0 0x50 \bCMYKDIRECT
|
|
2643
|
+
>>101 ubeshort&0xf0 0x60 \bNCOMPONENT
|
|
2644
|
+
>>101 ubeshort&0xf0 0x70 \bRGB
|
|
2645
|
+
>>101 ubeshort&0xf0 0x80 \bRGBE
|
|
2646
|
+
>>101 ubeshort&0xf0 >0x80 \b(reserved %#x)
|
|
2647
|
+
|
|
2648
|
+
# From: Johan van der Knijff <johan.vanderknijff@kb.nl>
|
|
2649
|
+
#
|
|
2650
|
+
# BPG (Better Portable Graphics) format
|
|
2651
|
+
# https://bellard.org/bpg/
|
|
2652
|
+
# http://fileformats.archiveteam.org/wiki/BPG
|
|
2653
|
+
#
|
|
2654
|
+
0 string \x42\x50\x47\xFB BPG (Better Portable Graphics)
|
|
2655
|
+
!:mime image/bpg
|
|
2656
|
+
|
|
2657
|
+
# From: Joerg Jenderek
|
|
2658
|
+
# URL: https://en.wikipedia.org/wiki/Apple_Icon_Image_format
|
|
2659
|
+
0 string icns Mac OS X icon
|
|
2660
|
+
!:mime image/x-icns
|
|
2661
|
+
!:apple ????icns
|
|
2662
|
+
!:ext icns
|
|
2663
|
+
>4 ubelong >0
|
|
2664
|
+
# file size
|
|
2665
|
+
>>4 ubelong x \b, %d bytes
|
|
2666
|
+
# icon type
|
|
2667
|
+
>>8 string x \b, "%4.4s" type
|
|
2668
|
+
|
|
2669
|
+
# TIM images
|
|
2670
|
+
# URL: http://fileformats.archiveteam.org/wiki/TIM_(PlayStation_graphics)
|
|
2671
|
+
# Reference: https://mrclick.zophar.net/TilEd/download/timgfx.txt
|
|
2672
|
+
# Update: Joerg Jenderek
|
|
2673
|
+
# Note: called as "PSX TIM *bpp bitmap" by bitmap-tim-*.trid.xml
|
|
2674
|
+
# verified as "TIM PSX" by XnView `nconvert -fullinfo *.tim` and
|
|
2675
|
+
# by RECOIL `recoil2png -o TMP.PNG input.tim; file TMP.PNG` and often
|
|
2676
|
+
# as "PSX TIM" by ImageMagick version 7.1.0-10 command `identify *.tim`
|
|
2677
|
+
# here signed integers are used but according to Kaitai unsigned
|
|
2678
|
+
0 ulelong 0x00000010
|
|
2679
|
+
# 32 Flag bits *cttt; c~CLUT flag t~type 000~4BPP 001~8BPP 010~16BPP 011~24BPP 100~Mixed
|
|
2680
|
+
#>4 ulelong x FLAGS=%#x
|
|
2681
|
+
# 12+Size of CLUT (2Ch for 4BPP; 20Ch 40Ch 60Ch 80Ch C0Ch for 8BPP) or
|
|
2682
|
+
# +image data size (800Ch 2000Ch 2580C for 16BPP) (02000003h for dBase memo test.dbt)
|
|
2683
|
+
#>8 ulelong x \b, 12+CLUT or data size=%#8.8x
|
|
2684
|
+
# CLUT or data size remainder is 12 (Ch), but 03 for dBase memo test.dbt
|
|
2685
|
+
#>8 ubyte&0x0F =0x0C \b, SIZE REMAINDER IS 12
|
|
2686
|
+
# skip dBase III memo test.dbt with invalid flags 22D10189h
|
|
2687
|
+
>4 ulelong&0xffFFffF0 =0 Sony PlayStation PSX image,
|
|
2688
|
+
# file (version 5.40) labeled the above entry as "TIM image"
|
|
2689
|
+
!:mime image/x-sony-tim
|
|
2690
|
+
!:ext tim
|
|
2691
|
+
#>>4 ulelong&0x00000007 x \b, BPP~%u
|
|
2692
|
+
# 4BPP and 8BPP examples exist with CLUT or without CLUT
|
|
2693
|
+
>>4 ulelong&0x07 0x0 4-Bit,
|
|
2694
|
+
>>4 ulelong&0x07 0x1 8-Bit,
|
|
2695
|
+
# 16BPP and 24BPP examples have no CLUT
|
|
2696
|
+
>>4 ulelong 0x2 15-Bit,
|
|
2697
|
+
>>4 ulelong 0x3 24-Bit,
|
|
2698
|
+
# no example
|
|
2699
|
+
>>4 ulelong&0x07 0x4 Mixed-Bit,
|
|
2700
|
+
# CLUT flag set
|
|
2701
|
+
>>4 ulelong &8
|
|
2702
|
+
# 12 + size of CLUT like: 1000Ch 800Ch 400Ch 40Ch and 2FEh (KAGE.TIM)
|
|
2703
|
+
#>>>(8.l+8) ulelong x \b, 12+CLUT SIZE=%#8.8x
|
|
2704
|
+
>>>(8.l+12) uleshort x Pixel at (%d,
|
|
2705
|
+
>>>(8.l+14) uleshort x \b%d) Size=
|
|
2706
|
+
# image width (to get actual width multiply by 4 for 4BPP and by 2 for 8BPP)
|
|
2707
|
+
>>>>4 ulelong 0x8
|
|
2708
|
+
>>>>>(8.l+16) uleshort*4 x \b%d
|
|
2709
|
+
>>>>4 ulelong 0x9
|
|
2710
|
+
>>>>>(8.l+16) uleshort*2 x \b%d
|
|
2711
|
+
# image height like: 32 64 128 144 160 208 256
|
|
2712
|
+
>>>(8.l+18) uleshort x \bx%d,
|
|
2713
|
+
>>>4 ulelong 0x8 16 CLUT Entries at
|
|
2714
|
+
>>>4 ulelong 0x9 256 CLUT Entries at
|
|
2715
|
+
>>>12 uleshort x (%d,
|
|
2716
|
+
>>>14 uleshort x \b%d)
|
|
2717
|
+
# no Color LookUp Table (CLUT)
|
|
2718
|
+
>>4 ulelong ^8
|
|
2719
|
+
# image origin X Y
|
|
2720
|
+
>>>12 uleshort x Pixel at (%d,
|
|
2721
|
+
>>>14 uleshort x \b%d) Size=
|
|
2722
|
+
# real image width = multiply by 4 (4BPP) 2 (8BPP) 1 (16BPP) 2/3 (24BPP)
|
|
2723
|
+
>>>>4 ulelong 0x0
|
|
2724
|
+
>>>>>16 uleshort*4 x \b%d
|
|
2725
|
+
>>>>4 ulelong 0x1
|
|
2726
|
+
>>>>>16 uleshort*2 x \b%d
|
|
2727
|
+
>>>>4 ulelong 0x2
|
|
2728
|
+
>>>>>16 uleshort x \b%d
|
|
2729
|
+
>>>>4 ulelong 0x3
|
|
2730
|
+
# GRR: NOT working
|
|
2731
|
+
#>>>>>16 uleshort*2/3 x \b%d
|
|
2732
|
+
>>>>>16 uleshort x \b2/3*%d
|
|
2733
|
+
# mixed format width not explained!
|
|
2734
|
+
>>>>4 ulelong 0x4
|
|
2735
|
+
>>>>>16 uleshort x \b%d
|
|
2736
|
+
# image height like: 64 240 256
|
|
2737
|
+
>>>18 uleshort x \bx%d
|
|
2738
|
+
# TIM image data
|
|
2739
|
+
|
|
2740
|
+
# MDEC streams
|
|
2741
|
+
0 ulelong 0x80010160 MDEC video stream,
|
|
2742
|
+
>16 uleshort x %dx
|
|
2743
|
+
>18 uleshort x \b%d
|
|
2744
|
+
#>8 ulelong x %d frames
|
|
2745
|
+
#>4 uleshort x secCount=%d;
|
|
2746
|
+
#>6 uleshort x nSectors=%d;
|
|
2747
|
+
#>12 ulelong x frameSize=%d;
|
|
2748
|
+
|
|
2749
|
+
# BS encoded bitstreams
|
|
2750
|
+
2 uleshort 0x3800 BS image,
|
|
2751
|
+
# GRR: the above line is also true for binary Computer Graphics Metafile SAB00012.CGM with long parameter length 56 (=38h)
|
|
2752
|
+
>6 uleshort x Version %d,
|
|
2753
|
+
>4 uleshort x Quantization %d,
|
|
2754
|
+
>0 uleshort x (Decompresses to %d words)
|
|
2755
|
+
|
|
2756
|
+
# Type: farbfeld image.
|
|
2757
|
+
# Url: http://tools.suckless.org/farbfeld/
|
|
2758
|
+
# From: Ian D. Scott <ian@iandouglasscott.com>
|
|
2759
|
+
#
|
|
2760
|
+
0 string farbfeld farbfeld image data,
|
|
2761
|
+
>8 ubelong x %dx
|
|
2762
|
+
>12 ubelong x \b%d
|
|
2763
|
+
|
|
2764
|
+
# Type: Microsoft DirectDraw Surface (DXGI formats)
|
|
2765
|
+
# URL: https://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/graphics/reference/DDSFileReference/ddsfileformat.asp
|
|
2766
|
+
# From: Morten Hustveit <morten@debian.org>
|
|
2767
|
+
# Updated by: David Korth <gerbilsoft@gerbilsoft.com>
|
|
2768
|
+
0 name ms-directdraw-dx10
|
|
2769
|
+
>0 ulelong x \b, DXGI format:
|
|
2770
|
+
>0 ulelong 1 R32G32B32A32_TYPELESS
|
|
2771
|
+
>0 ulelong 2 R32G32B32A32_FLOAT
|
|
2772
|
+
>0 ulelong 3 R32G32B32A32_UINT
|
|
2773
|
+
>0 ulelong 4 R32G32B32A32_SINT
|
|
2774
|
+
>0 ulelong 5 R32G32B32_TYPELESS
|
|
2775
|
+
>0 ulelong 6 R32G32B32_FLOAT
|
|
2776
|
+
>0 ulelong 7 R32G32B32_UINT
|
|
2777
|
+
>0 ulelong 8 R32G32B32_SINT
|
|
2778
|
+
>0 ulelong 9 R16G16B16A16_TYPELESS
|
|
2779
|
+
>0 ulelong 10 R16G16B16A16_FLOAT
|
|
2780
|
+
>0 ulelong 11 R16G16B16A16_UNORM
|
|
2781
|
+
>0 ulelong 12 R16G16B16A16_UINT
|
|
2782
|
+
>0 ulelong 13 R16G16B16A16_SNORM
|
|
2783
|
+
>0 ulelong 14 R16G16B16A16_SINT
|
|
2784
|
+
>0 ulelong 15 R32G32_TYPELESS
|
|
2785
|
+
>0 ulelong 16 R32G32_FLOAT
|
|
2786
|
+
>0 ulelong 17 R32G32_UINT
|
|
2787
|
+
>0 ulelong 18 R32G32_SINT
|
|
2788
|
+
>0 ulelong 19 R32G8X24_TYPELESS
|
|
2789
|
+
>0 ulelong 20 D32_FLOAT_S8X24_UINT
|
|
2790
|
+
>0 ulelong 21 R32_FLOAT_X8X24_TYPELESS
|
|
2791
|
+
>0 ulelong 22 X32_TYPELESS_G8X24_UINT
|
|
2792
|
+
>0 ulelong 23 R10G10B10A2_TYPELESS
|
|
2793
|
+
>0 ulelong 24 R10G10B10A2_UNORM
|
|
2794
|
+
>0 ulelong 25 R10G10B10A2_UINT
|
|
2795
|
+
>0 ulelong 26 R11G11B10_FLOAT
|
|
2796
|
+
>0 ulelong 27 R8G8B8A8_TYPELESS
|
|
2797
|
+
>0 ulelong 28 R8G8B8A8_UNORM
|
|
2798
|
+
>0 ulelong 29 R8G8B8A8_UNORM_SRGB
|
|
2799
|
+
>0 ulelong 30 R8G8B8A8_UINT
|
|
2800
|
+
>0 ulelong 31 R8G8B8A8_SNORM
|
|
2801
|
+
>0 ulelong 32 R8G8B8A8_SINT
|
|
2802
|
+
>0 ulelong 33 R16G16_TYPELESS
|
|
2803
|
+
>0 ulelong 34 R16G16_FLOAT
|
|
2804
|
+
>0 ulelong 35 R16G16_UNORM
|
|
2805
|
+
>0 ulelong 36 R16G16_UINT
|
|
2806
|
+
>0 ulelong 37 R16G16_SNORM
|
|
2807
|
+
>0 ulelong 38 R16G16_SINT
|
|
2808
|
+
>0 ulelong 39 R32_TYPELESS
|
|
2809
|
+
>0 ulelong 40 D32_FLOAT
|
|
2810
|
+
>0 ulelong 41 R32_FLOAT
|
|
2811
|
+
>0 ulelong 42 R32_UINT
|
|
2812
|
+
>0 ulelong 43 R32_SINT
|
|
2813
|
+
>0 ulelong 44 R24G8_TYPELESS
|
|
2814
|
+
>0 ulelong 45 D24_UNORM_S8_UINT
|
|
2815
|
+
>0 ulelong 46 R24_UNORM_X8_TYPELESS
|
|
2816
|
+
>0 ulelong 47 X24_TYPELESS_G8_UINT
|
|
2817
|
+
>0 ulelong 48 R8G8_TYPELESS
|
|
2818
|
+
>0 ulelong 49 R8G8_UNORM
|
|
2819
|
+
>0 ulelong 50 R8G8_UINT
|
|
2820
|
+
>0 ulelong 51 R8G8_SNORM
|
|
2821
|
+
>0 ulelong 52 R8G8_SINT
|
|
2822
|
+
>0 ulelong 53 R16_TYPELESS
|
|
2823
|
+
>0 ulelong 54 R16_FLOAT
|
|
2824
|
+
>0 ulelong 55 D16_UNORM
|
|
2825
|
+
>0 ulelong 56 R16_UNORM
|
|
2826
|
+
>0 ulelong 57 R16_UINT
|
|
2827
|
+
>0 ulelong 58 R16_SNORM
|
|
2828
|
+
>0 ulelong 59 R16_SINT
|
|
2829
|
+
>0 ulelong 60 R8_TYPELESS
|
|
2830
|
+
>0 ulelong 61 R8_UNORM
|
|
2831
|
+
>0 ulelong 62 R8_UINT
|
|
2832
|
+
>0 ulelong 63 R8_SNORM
|
|
2833
|
+
>0 ulelong 64 R8_SINT
|
|
2834
|
+
>0 ulelong 65 A8_UNORM
|
|
2835
|
+
>0 ulelong 66 R1_UNORM
|
|
2836
|
+
>0 ulelong 67 R9G9B9E5_SHAREDEXP
|
|
2837
|
+
>0 ulelong 68 R8G8_B8G8_UNORM
|
|
2838
|
+
>0 ulelong 69 G8R8_G8B8_UNORM
|
|
2839
|
+
>0 ulelong 70 BC1_TYPELESS
|
|
2840
|
+
>0 ulelong 71 BC1_UNORM
|
|
2841
|
+
>0 ulelong 72 BC1_UNORM_SRGB
|
|
2842
|
+
>0 ulelong 73 BC2_TYPELESS
|
|
2843
|
+
>0 ulelong 74 BC2_UNORM
|
|
2844
|
+
>0 ulelong 75 BC2_UNORM_SRGB
|
|
2845
|
+
>0 ulelong 76 BC3_TYPELESS
|
|
2846
|
+
>0 ulelong 77 BC3_UNORM
|
|
2847
|
+
>0 ulelong 78 BC3_UNORM_SRGB
|
|
2848
|
+
>0 ulelong 79 BC4_TYPELESS
|
|
2849
|
+
>0 ulelong 80 BC4_UNORM
|
|
2850
|
+
>0 ulelong 81 BC4_SNORM
|
|
2851
|
+
>0 ulelong 82 BC5_TYPELESS
|
|
2852
|
+
>0 ulelong 83 BC5_UNORM
|
|
2853
|
+
>0 ulelong 84 BC5_SNORM
|
|
2854
|
+
>0 ulelong 85 B5G6R5_UNORM
|
|
2855
|
+
>0 ulelong 86 B5G5R5A1_UNORM
|
|
2856
|
+
>0 ulelong 87 B8G8R8A8_UNORM
|
|
2857
|
+
>0 ulelong 88 B8G8R8X8_UNORM
|
|
2858
|
+
>0 ulelong 89 R10G10B10_XR_BIAS_A2_UNORM
|
|
2859
|
+
>0 ulelong 90 B8G8R8A8_TYPELESS
|
|
2860
|
+
>0 ulelong 91 B8G8R8A8_UNORM_SRGB
|
|
2861
|
+
>0 ulelong 92 B8G8R8X8_TYPELESS
|
|
2862
|
+
>0 ulelong 93 B8G8R8X8_UNORM_SRGB
|
|
2863
|
+
>0 ulelong 94 BC6H_TYPELESS
|
|
2864
|
+
>0 ulelong 95 BC6H_UF16
|
|
2865
|
+
>0 ulelong 96 BC6H_SF16
|
|
2866
|
+
>0 ulelong 97 BC7_TYPELESS
|
|
2867
|
+
>0 ulelong 98 BC7_UNORM
|
|
2868
|
+
>0 ulelong 99 BC7_UNORM_SRGB
|
|
2869
|
+
>0 ulelong 100 AYUV
|
|
2870
|
+
>0 ulelong 101 Y410
|
|
2871
|
+
>0 ulelong 102 Y416
|
|
2872
|
+
>0 ulelong 103 NV12
|
|
2873
|
+
>0 ulelong 104 P010
|
|
2874
|
+
>0 ulelong 105 P016
|
|
2875
|
+
>0 ulelong 106 420_OPAQUE
|
|
2876
|
+
>0 ulelong 107 YUY2
|
|
2877
|
+
>0 ulelong 108 Y210
|
|
2878
|
+
>0 ulelong 109 Y216
|
|
2879
|
+
>0 ulelong 110 NV11
|
|
2880
|
+
>0 ulelong 111 AI44
|
|
2881
|
+
>0 ulelong 112 IA44
|
|
2882
|
+
>0 ulelong 113 P8
|
|
2883
|
+
>0 ulelong 114 A8P8
|
|
2884
|
+
>0 ulelong 115 B4G4R4A4_UNORM
|
|
2885
|
+
|
|
2886
|
+
>0 ulelong 116 XBOX_R10G10B10_7E3_A2_FLOAT
|
|
2887
|
+
>0 ulelong 117 XBOX_R10G10B10_6E4_A2_FLOAT
|
|
2888
|
+
>0 ulelong 118 XBOX_D16_UNORM_S8_UINT
|
|
2889
|
+
>0 ulelong 119 XBOX_R16_UNORM_X8_TYPELESS
|
|
2890
|
+
>0 ulelong 120 XBOX_X16_TYPELESS_G8_UINT
|
|
2891
|
+
|
|
2892
|
+
>0 ulelong 130 DXGI_FORMAT_P208
|
|
2893
|
+
>0 ulelong 131 DXGI_FORMAT_V208
|
|
2894
|
+
>0 ulelong 132 DXGI_FORMAT_V408
|
|
2895
|
+
|
|
2896
|
+
>0 ulelong 133 ASTC_4X4_TYPELESS
|
|
2897
|
+
>0 ulelong 134 ASTC_4X4_UNORM
|
|
2898
|
+
>0 ulelong 135 ASTC_4X4_UNORM_SRGB
|
|
2899
|
+
>0 ulelong 137 ASTC_5X4_TYPELESS
|
|
2900
|
+
>0 ulelong 138 ASTC_5X4_UNORM
|
|
2901
|
+
>0 ulelong 139 ASTC_5X4_UNORM_SRGB
|
|
2902
|
+
>0 ulelong 141 ASTC_5X5_TYPELESS
|
|
2903
|
+
>0 ulelong 142 ASTC_5X5_UNORM
|
|
2904
|
+
>0 ulelong 143 ASTC_5X5_UNORM_SRGB
|
|
2905
|
+
>0 ulelong 145 ASTC_6X5_TYPELESS
|
|
2906
|
+
>0 ulelong 146 ASTC_6X5_UNORM
|
|
2907
|
+
>0 ulelong 147 ASTC_6X5_UNORM_SRGB
|
|
2908
|
+
>0 ulelong 149 ASTC_6X6_TYPELESS
|
|
2909
|
+
>0 ulelong 150 ASTC_6X6_UNORM
|
|
2910
|
+
>0 ulelong 151 ASTC_6X6_UNORM_SRGB
|
|
2911
|
+
>0 ulelong 153 ASTC_8X5_TYPELESS
|
|
2912
|
+
>0 ulelong 154 ASTC_8X5_UNORM
|
|
2913
|
+
>0 ulelong 155 ASTC_8X5_UNORM_SRGB
|
|
2914
|
+
>0 ulelong 157 ASTC_8X6_TYPELESS
|
|
2915
|
+
>0 ulelong 158 ASTC_8X6_UNORM
|
|
2916
|
+
>0 ulelong 159 ASTC_8X6_UNORM_SRGB
|
|
2917
|
+
>0 ulelong 161 ASTC_8X8_TYPELESS
|
|
2918
|
+
>0 ulelong 162 ASTC_8X8_UNORM
|
|
2919
|
+
>0 ulelong 163 ASTC_8X8_UNORM_SRGB
|
|
2920
|
+
>0 ulelong 165 ASTC_10X5_TYPELESS
|
|
2921
|
+
>0 ulelong 166 ASTC_10X5_UNORM
|
|
2922
|
+
>0 ulelong 167 ASTC_10X5_UNORM_SRGB
|
|
2923
|
+
>0 ulelong 169 ASTC_10X6_TYPELESS
|
|
2924
|
+
>0 ulelong 170 ASTC_10X6_UNORM
|
|
2925
|
+
>0 ulelong 171 ASTC_10X6_UNORM_SRGB
|
|
2926
|
+
>0 ulelong 173 ASTC_10X8_TYPELESS
|
|
2927
|
+
>0 ulelong 174 ASTC_10X8_UNORM
|
|
2928
|
+
>0 ulelong 175 ASTC_10X8_UNORM_SRGB
|
|
2929
|
+
>0 ulelong 177 ASTC_10X10_TYPELESS
|
|
2930
|
+
>0 ulelong 178 ASTC_10X10_UNORM
|
|
2931
|
+
>0 ulelong 179 ASTC_10X10_UNORM_SRGB
|
|
2932
|
+
>0 ulelong 181 ASTC_12X10_TYPELESS
|
|
2933
|
+
>0 ulelong 182 ASTC_12X10_UNORM
|
|
2934
|
+
>0 ulelong 183 ASTC_12X10_UNORM_SRGB
|
|
2935
|
+
>0 ulelong 185 ASTC_12X12_TYPELESS
|
|
2936
|
+
>0 ulelong 186 ASTC_12X12_UNORM
|
|
2937
|
+
>0 ulelong 187 ASTC_12X12_UNORM_SRGB
|
|
2938
|
+
|
|
2939
|
+
>0 ulelong 190 XBOX_R10G10B10_SNORM_A2_UNORM
|
|
2940
|
+
>0 ulelong 189 XBOX_R4G4_UNORM
|
|
2941
|
+
>0 ulelong 0xFFFFFFFF DXGI_FORMAT_FORCE_UINT
|
|
2942
|
+
|
|
2943
|
+
# Type: Microsoft DirectDraw Surface (common data)
|
|
2944
|
+
# URL: https://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/graphics/reference/DDSFileReference/ddsfileformat.asp
|
|
2945
|
+
# From: Morten Hustveit <morten@debian.org>
|
|
2946
|
+
# Updated by: David Korth <gerbilsoft@gerbilsoft.com>
|
|
2947
|
+
0 name ms-directdraw-surface
|
|
2948
|
+
>0x10 ulelong x %u x
|
|
2949
|
+
>0x0C ulelong x %u
|
|
2950
|
+
# Color depth.
|
|
2951
|
+
>0x58 ulelong >0 \b, %u-bit color
|
|
2952
|
+
# Determine the pixel format.
|
|
2953
|
+
>0x50 ulelong&0x4 4
|
|
2954
|
+
# FIXME: Handle DX10 and XBOX formats.
|
|
2955
|
+
>>0x54 string DX10
|
|
2956
|
+
>>>0x80 use ms-directdraw-dx10
|
|
2957
|
+
>>0x54 string !DX10 \b, compressed using %.4s
|
|
2958
|
+
>0x50 ulelong&0x2 0x2 \b, alpha only
|
|
2959
|
+
>0x50 ulelong&0x200 0x200 \b, YUV
|
|
2960
|
+
>0x50 ulelong&0x20000 0x20000 \b, luminance
|
|
2961
|
+
# RGB pixel format
|
|
2962
|
+
>0x50 ulelong&0x40 0x40
|
|
2963
|
+
|
|
2964
|
+
# Determine the RGB format using the color masks.
|
|
2965
|
+
# ulequad order: 0xGGGGGGGGRRRRRRRR, 0xAAAAAAAABBBBBBBB
|
|
2966
|
+
|
|
2967
|
+
>>0x58 ulelong 16
|
|
2968
|
+
|
|
2969
|
+
# NOTE: 15-bit color formats usually have 16-bit listed as the color depth.
|
|
2970
|
+
>>>0x5C ulequad 0x000003E000007C00
|
|
2971
|
+
>>>>0x64 ulequad 0x000000000000001F \b, RGB555
|
|
2972
|
+
>>>0x5C ulequad 0x000003E000001F00
|
|
2973
|
+
>>>>0x64 ulequad 0x000000000000007C \b, BGR555
|
|
2974
|
+
|
|
2975
|
+
>>>0x5C ulequad 0x000007E00000F800
|
|
2976
|
+
>>>>0x64 ulequad 0x000000000000001F \b, RGB565
|
|
2977
|
+
>>>0x5C ulequad 0x000007E000001F00
|
|
2978
|
+
>>>>0x64 ulequad 0x00000000000000F8 \b, BGR565
|
|
2979
|
+
|
|
2980
|
+
>>>0x5C ulequad 0x000000F000000F00
|
|
2981
|
+
>>>>0x64 ulequad 0x0000F0000000000F \b, ARGB4444
|
|
2982
|
+
>>>0x5C ulequad 0x000000F00000000F
|
|
2983
|
+
>>>>0x64 ulequad 0x0000F00000000F00 \b, ABGR4444
|
|
2984
|
+
|
|
2985
|
+
>>>0x5C ulequad 0x00000F000000F000
|
|
2986
|
+
>>>>0x64 ulequad 0x0000000F000000F0 \b, RGBA4444
|
|
2987
|
+
>>>0x5C ulequad 0x00000F00000000F0
|
|
2988
|
+
>>>>0x64 ulequad 0x0000000F0000F000 \b, BGRA4444
|
|
2989
|
+
|
|
2990
|
+
>>>0x5C ulequad 0x000000F000000F00
|
|
2991
|
+
>>>>0x64 ulequad 0x000000000000000F \b, xRGB4444
|
|
2992
|
+
>>>0x5C ulequad 0x000000F00000000F
|
|
2993
|
+
>>>>0x64 ulequad 0x0000000000000F00 \b, xBGR4444
|
|
2994
|
+
|
|
2995
|
+
>>>0x5C ulequad 0x00000F000000F000
|
|
2996
|
+
>>>>0x64 ulequad 0x00000000000000F0 \b, RGBx4444
|
|
2997
|
+
>>>0x5C ulequad 0x00000F00000000F0
|
|
2998
|
+
>>>>0x64 ulequad 0x000000000000F000 \b, BGRx4444
|
|
2999
|
+
|
|
3000
|
+
>>>0x5C ulequad 0x000003E000007C00
|
|
3001
|
+
>>>>0x64 ulequad 0x000080000000001F \b, ARGB1555
|
|
3002
|
+
>>>0x5C ulequad 0x000003E000001F00
|
|
3003
|
+
>>>>0x64 ulequad 0x000080000000007C \b, ABGR1555
|
|
3004
|
+
>>>0x5C ulequad 0x000007C00000F800
|
|
3005
|
+
>>>>0x64 ulequad 0x000000010000003E \b, RGBA5551
|
|
3006
|
+
>>>0x5C ulequad 0x000007C00000003E
|
|
3007
|
+
>>>>0x64 ulequad 0x000000010000F800 \b, BGRA5551
|
|
3008
|
+
|
|
3009
|
+
>>88 ulelong 24
|
|
3010
|
+
>>>0x5C ulequad 0x0000FF0000FF0000
|
|
3011
|
+
>>>>0x64 ulequad 0x00000000000000FF \b, RGB888
|
|
3012
|
+
>>>0x5C ulequad 0x0000FF00000000FF
|
|
3013
|
+
>>>>0x64 ulequad 0x0000000000FF0000 \b, BGR888
|
|
3014
|
+
|
|
3015
|
+
>>88 ulelong 32
|
|
3016
|
+
>>>0x5C ulequad 0x0000FF0000FF0000
|
|
3017
|
+
>>>>0x64 ulequad 0xFF000000000000FF \b, ARGB8888
|
|
3018
|
+
>>>0x5C ulequad 0x0000FF00000000FF
|
|
3019
|
+
>>>>0x64 ulequad 0xFF00000000FF0000 \b, ABGR8888
|
|
3020
|
+
|
|
3021
|
+
>>>0x5C ulequad 0x00FF0000FF000000
|
|
3022
|
+
>>>>0x64 ulequad 0x000000FF0000FF00 \b, RGBA8888
|
|
3023
|
+
>>>0x5C ulequad 0x00FF00000000FF00
|
|
3024
|
+
>>>>0x64 ulequad 0x000000FFFF000000 \b, BGBA8888
|
|
3025
|
+
|
|
3026
|
+
>>>0x5C ulequad 0x0000FF0000FF0000
|
|
3027
|
+
>>>>0x64 ulequad 0x00000000000000FF \b, xRGB8888
|
|
3028
|
+
>>>0x5C ulequad 0x0000FF00000000FF
|
|
3029
|
+
>>>>0x64 ulequad 0x0000000000FF0000 \b, xBGR8888
|
|
3030
|
+
|
|
3031
|
+
>>>0x5C ulequad 0x00FF0000FF000000
|
|
3032
|
+
>>>>0x64 ulequad 0x000000000000FF00 \b, RGBx8888
|
|
3033
|
+
>>>0x5C ulequad 0x00FF00000000FF00
|
|
3034
|
+
>>>>0x64 ulequad 0x00000000FF000000 \b, BGBx8888
|
|
3035
|
+
|
|
3036
|
+
# Less common 32-bit color formats.
|
|
3037
|
+
>>>0x5C ulequad 0xFFFF00000000FFFF
|
|
3038
|
+
>>>>0x64 ulequad 0x0000000000000000 \b, G16R16
|
|
3039
|
+
>>>0x5C ulequad 0x0000FFFFFFFF0000
|
|
3040
|
+
>>>>0x64 ulequad 0x0000000000000000 \b, R16G16
|
|
3041
|
+
|
|
3042
|
+
>>>0x5C ulequad 0x000FFC003FF00000
|
|
3043
|
+
>>>>0x64 ulequad 0xC0000000000003FF \b, A2R10G10B10
|
|
3044
|
+
>>>0x5C ulequad 0x000FFC00000003FF
|
|
3045
|
+
>>>>0x64 ulequad 0xC00000003FF00000 \b, A2B10G10R10
|
|
3046
|
+
|
|
3047
|
+
# Type: Microsoft DirectDraw Surface
|
|
3048
|
+
# URL: https://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/graphics/reference/DDSFileReference/ddsfileformat.asp
|
|
3049
|
+
# From: Morten Hustveit <morten@debian.org>
|
|
3050
|
+
# Updated by: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3051
|
+
0 string/b DDS\040\174\000\000\000 Microsoft DirectDraw Surface (DDS):
|
|
3052
|
+
>0 use ms-directdraw-surface
|
|
3053
|
+
|
|
3054
|
+
# Type: Sega PVR image.
|
|
3055
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3056
|
+
# References:
|
|
3057
|
+
# - https://fabiensanglard.net/Mykaruga/tools/segaPVRFormat.txt
|
|
3058
|
+
# - https://github.com/yazgoo/pvrx2png
|
|
3059
|
+
# - https://github.com/nickworonekin/puyotools
|
|
3060
|
+
|
|
3061
|
+
# Sega PVR header.
|
|
3062
|
+
0 name sega-pvr-image-header
|
|
3063
|
+
>0x0C uleshort x %u x
|
|
3064
|
+
>0x0E uleshort x %u
|
|
3065
|
+
# Image format.
|
|
3066
|
+
>0x08 ubyte 0 \b, ARGB1555
|
|
3067
|
+
>0x08 ubyte 1 \b, RGB565
|
|
3068
|
+
>0x08 ubyte 2 \b, ARGB4444
|
|
3069
|
+
>0x08 ubyte 3 \b, YUV442
|
|
3070
|
+
>0x08 ubyte 4 \b, Bump
|
|
3071
|
+
>0x08 ubyte 5 \b, 4bpp
|
|
3072
|
+
>0x08 ubyte 6 \b, 8bpp
|
|
3073
|
+
# Image data type.
|
|
3074
|
+
>0x09 ubyte 0x01 \b, square twiddled
|
|
3075
|
+
>0x09 ubyte 0x02 \b, square twiddled & mipmap
|
|
3076
|
+
>0x09 ubyte 0x03 \b, VQ
|
|
3077
|
+
>0x09 ubyte 0x04 \b, VQ & mipmap
|
|
3078
|
+
>0x09 ubyte 0x05 \b, 8-bit CLUT twiddled
|
|
3079
|
+
>0x09 ubyte 0x06 \b, 4-bit CLUT twiddled
|
|
3080
|
+
>0x09 ubyte 0x07 \b, 8-bit direct twiddled
|
|
3081
|
+
>0x09 ubyte 0x08 \b, 4-bit direct twiddled
|
|
3082
|
+
>0x09 ubyte 0x09 \b, rectangle
|
|
3083
|
+
>0x09 ubyte 0x0B \b, rectangular stride
|
|
3084
|
+
>0x09 ubyte 0x0D \b, rectangular twiddled
|
|
3085
|
+
>0x09 ubyte 0x10 \b, small VQ
|
|
3086
|
+
>0x09 ubyte 0x11 \b, small VQ & mipmap
|
|
3087
|
+
>0x09 ubyte 0x12 \b, square twiddled & mipmap
|
|
3088
|
+
|
|
3089
|
+
# Sega PVR image.
|
|
3090
|
+
0 string PVRT
|
|
3091
|
+
>0x10 string DDS\040\174\000\000\000 Sega PVR (Xbox) image:
|
|
3092
|
+
>>0x20 use ms-directdraw-surface
|
|
3093
|
+
>0x10 ubelong !0x44445320 Sega PVR image:
|
|
3094
|
+
>>0 use sega-pvr-image-header
|
|
3095
|
+
|
|
3096
|
+
# Sega PVR image with GBIX.
|
|
3097
|
+
0 string GBIX
|
|
3098
|
+
>0x10 string PVRT
|
|
3099
|
+
>>0x10 string DDS\040\174\000\000\000 Sega PVR (Xbox) image:
|
|
3100
|
+
>>>0x20 use ms-directdraw-surface
|
|
3101
|
+
>>0x10 ubelong !0x44445320 Sega PVR image:
|
|
3102
|
+
>>>0x10 use sega-pvr-image-header
|
|
3103
|
+
>>0x08 ulelong x \b, global index = %u
|
|
3104
|
+
|
|
3105
|
+
# Sega GVR header.
|
|
3106
|
+
0 name sega-gvr-image-header
|
|
3107
|
+
>0x0C ubeshort x %u x
|
|
3108
|
+
>0x0E ubeshort x %u
|
|
3109
|
+
# Image data format.
|
|
3110
|
+
>0x0B ubyte 0 \b, I4
|
|
3111
|
+
>0x0B ubyte 1 \b, I8
|
|
3112
|
+
>0x0B ubyte 2 \b, IA4
|
|
3113
|
+
>0x0B ubyte 3 \b, IA8
|
|
3114
|
+
>0x0B ubyte 4 \b, RGB565
|
|
3115
|
+
>0x0B ubyte 5 \b, RGB5A3
|
|
3116
|
+
>0x0B ubyte 6 \b, ARGB8888
|
|
3117
|
+
>0x0B ubyte 8 \b, CI4
|
|
3118
|
+
>0x0B ubyte 9 \b, CI8
|
|
3119
|
+
>0x0B ubyte 14 \b, DXT1
|
|
3120
|
+
|
|
3121
|
+
# Sega GVR image.
|
|
3122
|
+
0 string GVRT Sega GVR image:
|
|
3123
|
+
>0x10 use sega-gvr-image-header
|
|
3124
|
+
|
|
3125
|
+
# Sega GVR image with GBIX.
|
|
3126
|
+
0 string GBIX
|
|
3127
|
+
>0x10 string GVRT Sega GVR image:
|
|
3128
|
+
>>0x10 use sega-gvr-image-header
|
|
3129
|
+
>>0x08 ubelong x \b, global index = %u
|
|
3130
|
+
|
|
3131
|
+
# Sega GVR image with GCIX. (Wii)
|
|
3132
|
+
0 string GCIX
|
|
3133
|
+
>0x10 string GVRT Sega GVR image:
|
|
3134
|
+
>>0x10 use sega-gvr-image-header
|
|
3135
|
+
>>0x08 ubelong x \b, global index = %u
|
|
3136
|
+
|
|
3137
|
+
# Light Field Picture
|
|
3138
|
+
# Documentation: http://optics.miloush.net/lytro/TheFileFormat.aspx
|
|
3139
|
+
# Typical file extensions: .lfp .lfr .lfx
|
|
3140
|
+
|
|
3141
|
+
0 ubelong 0x894C4650
|
|
3142
|
+
>4 ubelong 0x0D0A1A0A
|
|
3143
|
+
>12 ubelong 0x00000000 Lytro Light Field Picture
|
|
3144
|
+
>8 ubelong x \b, version %d
|
|
3145
|
+
|
|
3146
|
+
# Type: Vision Research Phantom CINE Format
|
|
3147
|
+
# URL: https://www.phantomhighspeed.com/
|
|
3148
|
+
# URL2: http://phantomhighspeed.force.com/vriknowledge/servlet/fileField?id=0BEU0000000Cfyk
|
|
3149
|
+
# From: Harry Mallon <hjmallon at gmail.com>
|
|
3150
|
+
#
|
|
3151
|
+
# This has a short "CI" code but the 44 is the size of the struct which is
|
|
3152
|
+
# stable
|
|
3153
|
+
0 string CI
|
|
3154
|
+
>2 uleshort 44 Vision Research CINE Video,
|
|
3155
|
+
>>4 uleshort 0 Grayscale,
|
|
3156
|
+
>>4 uleshort 1 JPEG Compressed,
|
|
3157
|
+
>>4 uleshort 2 RAW,
|
|
3158
|
+
>>6 uleshort x version %d,
|
|
3159
|
+
>>20 ulelong x %d frames,
|
|
3160
|
+
>>48 ulelong x %dx
|
|
3161
|
+
>>52 ulelong x \b%d
|
|
3162
|
+
|
|
3163
|
+
# Type: ARRI Raw Image
|
|
3164
|
+
# Info: SMPTE RDD30:2014
|
|
3165
|
+
# From: Harry Mallon <hjmallon at gmail.com>
|
|
3166
|
+
0 string ARRI ARRI ARI image data,
|
|
3167
|
+
>4 ulelong 0x78563412 little-endian,
|
|
3168
|
+
>4 ulelong 0x12345678 big-endian,
|
|
3169
|
+
>12 ulelong x version %d,
|
|
3170
|
+
>20 ulelong x %dx
|
|
3171
|
+
>24 ulelong x \b%d
|
|
3172
|
+
|
|
3173
|
+
# Type: Khronos KTX texture.
|
|
3174
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3175
|
+
# Reference: https://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/
|
|
3176
|
+
|
|
3177
|
+
# glEnum decoding.
|
|
3178
|
+
# NOTE: Only the most common formats are listed here.
|
|
3179
|
+
0 name khronos-ktx-glEnum
|
|
3180
|
+
>0 ulelong 0x1907 \b, RGB
|
|
3181
|
+
>0 ulelong 0x1908 \b, RGBA
|
|
3182
|
+
>0 ulelong 0x1909 \b, LUMINANCE
|
|
3183
|
+
>0 ulelong 0x190A \b, LUMINANCE_ALPHA
|
|
3184
|
+
>0 ulelong 0x80E1 \b, BGR
|
|
3185
|
+
>0 ulelong 0x80E2 \b, BGRA
|
|
3186
|
+
>0 ulelong 0x83A0 \b, RGB_S3TC
|
|
3187
|
+
>0 ulelong 0x83A1 \b, RGB4_S3TC
|
|
3188
|
+
>0 ulelong 0x83A2 \b, RGBA_S3TC
|
|
3189
|
+
>0 ulelong 0x83A3 \b, RGBA4_S3TC
|
|
3190
|
+
>0 ulelong 0x83A4 \b, RGBA_DXT5_S3TC
|
|
3191
|
+
>0 ulelong 0x83A5 \b, RGBA4_DXT5_S3TC
|
|
3192
|
+
>0 ulelong 0x83F0 \b, COMPRESSED_RGB_S3TC_DXT1_EXT
|
|
3193
|
+
>0 ulelong 0x83F1 \b, COMPRESSED_RGBA_S3TC_DXT1_EXT
|
|
3194
|
+
>0 ulelong 0x83F2 \b, COMPRESSED_RGBA_S3TC_DXT3_EXT
|
|
3195
|
+
>0 ulelong 0x83F3 \b, COMPRESSED_RGBA_S3TC_DXT5_EXT
|
|
3196
|
+
>0 ulelong 0x8D64 \b, ETC1_RGB8_OES
|
|
3197
|
+
>0 ulelong 0x9270 \b, COMPRESSED_R11_EAC
|
|
3198
|
+
>0 ulelong 0x9271 \b, COMPRESSED_SIGNED_R11_EAC
|
|
3199
|
+
>0 ulelong 0x9272 \b, COMPRESSED_RG11_EAC
|
|
3200
|
+
>0 ulelong 0x9273 \b, COMPRESSED_SIGNED_RG11_EAC
|
|
3201
|
+
>0 ulelong 0x9274 \b, COMPRESSED_RGB8_ETC2
|
|
3202
|
+
>0 ulelong 0x9275 \b, COMPRESSED_SRGB8_ETC2
|
|
3203
|
+
>0 ulelong 0x9276 \b, COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
|
|
3204
|
+
>0 ulelong 0x9277 \b, COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2
|
|
3205
|
+
>0 ulelong 0x9278 \b, COMPRESSED_RGBA2_ETC2_EAC
|
|
3206
|
+
>0 ulelong 0x9279 \b, COMPRESSED_SRGB8_ALPHA8_ETC2_EAC
|
|
3207
|
+
>0 ulelong 0x93B0 \b, COMPRESSED_RGBA_ASTC_4x4_KHR
|
|
3208
|
+
>0 ulelong 0x93B1 \b, COMPRESSED_RGBA_ASTC_5x4_KHR
|
|
3209
|
+
>0 ulelong 0x93B2 \b, COMPRESSED_RGBA_ASTC_5x5_KHR
|
|
3210
|
+
>0 ulelong 0x93B3 \b, COMPRESSED_RGBA_ASTC_6x5_KHR
|
|
3211
|
+
>0 ulelong 0x93B4 \b, COMPRESSED_RGBA_ASTC_6x6_KHR
|
|
3212
|
+
>0 ulelong 0x93B5 \b, COMPRESSED_RGBA_ASTC_8x5_KHR
|
|
3213
|
+
>0 ulelong 0x93B6 \b, COMPRESSED_RGBA_ASTC_8x6_KHR
|
|
3214
|
+
>0 ulelong 0x93B7 \b, COMPRESSED_RGBA_ASTC_8x8_KHR
|
|
3215
|
+
>0 ulelong 0x93B8 \b, COMPRESSED_RGBA_ASTC_10x5_KHR
|
|
3216
|
+
>0 ulelong 0x93B9 \b, COMPRESSED_RGBA_ASTC_10x6_KHR
|
|
3217
|
+
>0 ulelong 0x93BA \b, COMPRESSED_RGBA_ASTC_10x8_KHR
|
|
3218
|
+
>0 ulelong 0x93BB \b, COMPRESSED_RGBA_ASTC_10x10_KHR
|
|
3219
|
+
>0 ulelong 0x93BC \b, COMPRESSED_RGBA_ASTC_12x10_KHR
|
|
3220
|
+
>0 ulelong 0x93BD \b, COMPRESSED_RGBA_ASTC_12x12_KHR
|
|
3221
|
+
>0 ulelong 0x93D0 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR
|
|
3222
|
+
>0 ulelong 0x93D1 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR
|
|
3223
|
+
>0 ulelong 0x93D2 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR
|
|
3224
|
+
>0 ulelong 0x93D3 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR
|
|
3225
|
+
>0 ulelong 0x93D4 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR
|
|
3226
|
+
>0 ulelong 0x93D5 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR
|
|
3227
|
+
>0 ulelong 0x93D6 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR
|
|
3228
|
+
>0 ulelong 0x93D7 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR
|
|
3229
|
+
>0 ulelong 0x93D8 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR
|
|
3230
|
+
>0 ulelong 0x93D9 \b, COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR
|
|
3231
|
+
>0 ulelong 0x93DA \b, COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR
|
|
3232
|
+
>0 ulelong 0x93DB \b, COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR
|
|
3233
|
+
>0 ulelong 0x93DC \b, COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR
|
|
3234
|
+
>0 ulelong 0x93DD \b, COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR
|
|
3235
|
+
|
|
3236
|
+
# Endian-specific KTX header.
|
|
3237
|
+
# TODO: glType (all textures I've seen so far are GL_UNSIGNED_BYTE)
|
|
3238
|
+
0 name khronos-ktx-endian-header
|
|
3239
|
+
>20 ulelong x \b, %u
|
|
3240
|
+
>24 ulelong >1 x %u
|
|
3241
|
+
>28 ulelong >1 x %u
|
|
3242
|
+
>8 ulelong >0
|
|
3243
|
+
>>8 use khronos-ktx-glEnum
|
|
3244
|
+
>8 ulelong 0
|
|
3245
|
+
>>12 use khronos-ktx-glEnum
|
|
3246
|
+
|
|
3247
|
+
# Main KTX header.
|
|
3248
|
+
# Determine endianness, then check the rest of the header.
|
|
3249
|
+
0 string \xABKTX\ 11\xBB\r\n\x1A\n Khronos KTX texture
|
|
3250
|
+
>12 ulelong 0x04030201 (little-endian)
|
|
3251
|
+
>>16 use khronos-ktx-endian-header
|
|
3252
|
+
>12 ubelong 0x04030201 (big-endian)
|
|
3253
|
+
>>16 use \^khronos-ktx-endian-header
|
|
3254
|
+
|
|
3255
|
+
# Type: Khronos KTX2 texture.
|
|
3256
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3257
|
+
# Based on draft19.
|
|
3258
|
+
# Reference: http://github.khronos.org/KTX-Specification/
|
|
3259
|
+
|
|
3260
|
+
# Supercompression enum.
|
|
3261
|
+
0 name khronos-ktx2-supercompression
|
|
3262
|
+
>0 ulelong 1 BasisLZ
|
|
3263
|
+
>0 ulelong 2 Zstandard
|
|
3264
|
+
>0 ulelong 3 ZLIB
|
|
3265
|
+
|
|
3266
|
+
# Vulkan format identifier.
|
|
3267
|
+
# NOTE: Formats prohibited from KTX2 are commented out.
|
|
3268
|
+
0 name khronos-ktx2-vkFormat
|
|
3269
|
+
>0 ulelong 0 UNDEFINED
|
|
3270
|
+
>0 ulelong 1 R4G4_UNORM_PACK8
|
|
3271
|
+
>0 ulelong 2 R4G4B4A4_UNORM_PACK16
|
|
3272
|
+
>0 ulelong 3 B4G4R4A4_UNORM_PACK16
|
|
3273
|
+
>0 ulelong 4 R5G6B5_UNORM_PACK16
|
|
3274
|
+
>0 ulelong 5 B5G6R5_UNORM_PACK16
|
|
3275
|
+
>0 ulelong 6 R5G5B5A1_UNORM_PACK16
|
|
3276
|
+
>0 ulelong 7 B5G5R5A1_UNORM_PACK16
|
|
3277
|
+
>0 ulelong 8 A1R5G5B5_UNORM_PACK16
|
|
3278
|
+
>0 ulelong 9 R8_UNORM
|
|
3279
|
+
>0 ulelong 10 R8_SNORM
|
|
3280
|
+
#>0 ulelong 11 R8_USCALED
|
|
3281
|
+
#>0 ulelong 12 R8_SSCALED
|
|
3282
|
+
>0 ulelong 13 R8_UINT
|
|
3283
|
+
>0 ulelong 14 R8_SINT
|
|
3284
|
+
>0 ulelong 15 R8_SRGB
|
|
3285
|
+
>0 ulelong 16 R8G8_UNORM
|
|
3286
|
+
>0 ulelong 17 R8G8_SNORM
|
|
3287
|
+
#>0 ulelong 18 R8G8_USCALED
|
|
3288
|
+
#>0 ulelong 19 R8G8_SSCALED
|
|
3289
|
+
>0 ulelong 20 R8G8_UINT
|
|
3290
|
+
>0 ulelong 21 R8G8_SINT
|
|
3291
|
+
>0 ulelong 22 R8G8_SRGB
|
|
3292
|
+
>0 ulelong 23 R8G8B8_UNORM
|
|
3293
|
+
>0 ulelong 24 R8G8B8_SNORM
|
|
3294
|
+
#>0 ulelong 25 R8G8B8_USCALED
|
|
3295
|
+
#>0 ulelong 26 R8G8B8_SSCALED
|
|
3296
|
+
>0 ulelong 27 R8G8B8_UINT
|
|
3297
|
+
>0 ulelong 28 R8G8B8_SINT
|
|
3298
|
+
>0 ulelong 29 R8G8B8_SRGB
|
|
3299
|
+
>0 ulelong 30 B8G8R8_UNORM
|
|
3300
|
+
>0 ulelong 31 B8G8R8_SNORM
|
|
3301
|
+
#>0 ulelong 32 B8G8R8_USCALED
|
|
3302
|
+
#>0 ulelong 33 B8G8R8_SSCALED
|
|
3303
|
+
>0 ulelong 34 B8G8R8_UINT
|
|
3304
|
+
>0 ulelong 35 B8G8R8_SINT
|
|
3305
|
+
>0 ulelong 36 B8G8R8_SRGB
|
|
3306
|
+
>0 ulelong 37 R8G8B8A8_UNORM
|
|
3307
|
+
>0 ulelong 38 R8G8B8A8_SNORM
|
|
3308
|
+
#>0 ulelong 39 R8G8B8A8_USCALED
|
|
3309
|
+
#>0 ulelong 40 R8G8B8A8_SSCALED
|
|
3310
|
+
>0 ulelong 41 R8G8B8A8_UINT
|
|
3311
|
+
>0 ulelong 42 R8G8B8A8_SINT
|
|
3312
|
+
>0 ulelong 43 R8G8B8A8_SRGB
|
|
3313
|
+
>0 ulelong 44 B8G8R8A8_UNORM
|
|
3314
|
+
>0 ulelong 45 B8G8R8A8_SNORM
|
|
3315
|
+
#>0 ulelong 46 B8G8R8A8_USCALED
|
|
3316
|
+
#>0 ulelong 47 B8G8R8A8_SSCALED
|
|
3317
|
+
>0 ulelong 48 B8G8R8A8_UINT
|
|
3318
|
+
>0 ulelong 49 B8G8R8A8_SINT
|
|
3319
|
+
>0 ulelong 50 B8G8R8A8_SRGB
|
|
3320
|
+
#>0 ulelong 51 A8B8G8R8_UNORM_PACK32
|
|
3321
|
+
#>0 ulelong 52 A8B8G8R8_SNORM_PACK32
|
|
3322
|
+
#>0 ulelong 53 A8B8G8R8_USCALED_PACK32
|
|
3323
|
+
#>0 ulelong 54 A8B8G8R8_SSCALED_PACK32
|
|
3324
|
+
#>0 ulelong 55 A8B8G8R8_UINT_PACK32
|
|
3325
|
+
#>0 ulelong 56 A8B8G8R8_SINT_PACK32
|
|
3326
|
+
#>0 ulelong 57 A8B8G8R8_SRGB_PACK32
|
|
3327
|
+
>0 ulelong 58 A2R10G10B10_UNORM_PACK32
|
|
3328
|
+
>0 ulelong 59 A2R10G10B10_SNORM_PACK32
|
|
3329
|
+
#>0 ulelong 60 A2R10G10B10_USCALED_PACK32
|
|
3330
|
+
#>0 ulelong 61 A2R10G10B10_SSCALED_PACK32
|
|
3331
|
+
>0 ulelong 62 A2R10G10B10_UINT_PACK32
|
|
3332
|
+
>0 ulelong 63 A2R10G10B10_SINT_PACK32
|
|
3333
|
+
>0 ulelong 64 A2B10G10R10_UNORM_PACK32
|
|
3334
|
+
>0 ulelong 65 A2B10G10R10_SNORM_PACK32
|
|
3335
|
+
#>0 ulelong 66 A2B10G10R10_USCALED_PACK32
|
|
3336
|
+
#>0 ulelong 67 A2B10G10R10_SSCALED_PACK32
|
|
3337
|
+
>0 ulelong 68 A2B10G10R10_UINT_PACK32
|
|
3338
|
+
>0 ulelong 69 A2B10G10R10_SINT_PACK32
|
|
3339
|
+
>0 ulelong 70 R16_UNORM
|
|
3340
|
+
>0 ulelong 71 R16_SNORM
|
|
3341
|
+
#>0 ulelong 72 R16_USCALED
|
|
3342
|
+
#>0 ulelong 73 R16_SSCALED
|
|
3343
|
+
>0 ulelong 74 R16_UINT
|
|
3344
|
+
>0 ulelong 75 R16_SINT
|
|
3345
|
+
>0 ulelong 76 R16_SFLOAT
|
|
3346
|
+
>0 ulelong 77 R16G16_UNORM
|
|
3347
|
+
>0 ulelong 78 R16G16_SNORM
|
|
3348
|
+
#>0 ulelong 79 R16G16_USCALED
|
|
3349
|
+
#>0 ulelong 80 R16G16_SSCALED
|
|
3350
|
+
>0 ulelong 81 R16G16_UINT
|
|
3351
|
+
>0 ulelong 82 R16G16_SINT
|
|
3352
|
+
>0 ulelong 83 R16G16_SFLOAT
|
|
3353
|
+
>0 ulelong 84 R16G16B16_UNORM
|
|
3354
|
+
>0 ulelong 85 R16G16B16_SNORM
|
|
3355
|
+
#>0 ulelong 86 R16G16B16_USCALED
|
|
3356
|
+
#>0 ulelong 87 R16G16B16_SSCALED
|
|
3357
|
+
>0 ulelong 88 R16G16B16_UINT
|
|
3358
|
+
>0 ulelong 89 R16G16B16_SINT
|
|
3359
|
+
>0 ulelong 90 R16G16B16_SFLOAT
|
|
3360
|
+
>0 ulelong 91 R16G16B16A16_UNORM
|
|
3361
|
+
>0 ulelong 92 R16G16B16A16_SNORM
|
|
3362
|
+
#>0 ulelong 93 R16G16B16A16_USCALED
|
|
3363
|
+
#>0 ulelong 94 R16G16B16A16_SSCALED
|
|
3364
|
+
>0 ulelong 95 R16G16B16A16_UINT
|
|
3365
|
+
>0 ulelong 96 R16G16B16A16_SINT
|
|
3366
|
+
>0 ulelong 97 R16G16B16A16_SFLOAT
|
|
3367
|
+
>0 ulelong 98 R32_UINT
|
|
3368
|
+
>0 ulelong 99 R32_SINT
|
|
3369
|
+
>0 ulelong 100 R32_SFLOAT
|
|
3370
|
+
>0 ulelong 101 R32G32_UINT
|
|
3371
|
+
>0 ulelong 102 R32G32_SINT
|
|
3372
|
+
>0 ulelong 103 R32G32_SFLOAT
|
|
3373
|
+
>0 ulelong 104 R32G32B32_UINT
|
|
3374
|
+
>0 ulelong 105 R32G32B32_SINT
|
|
3375
|
+
>0 ulelong 106 R32G32B32_SFLOAT
|
|
3376
|
+
>0 ulelong 107 R32G32B32A32_UINT
|
|
3377
|
+
>0 ulelong 108 R32G32B32A32_SINT
|
|
3378
|
+
>0 ulelong 109 R32G32B32A32_SFLOAT
|
|
3379
|
+
>0 ulelong 110 R64_UINT
|
|
3380
|
+
>0 ulelong 111 R64_SINT
|
|
3381
|
+
>0 ulelong 112 R64_SFLOAT
|
|
3382
|
+
>0 ulelong 113 R64G64_UINT
|
|
3383
|
+
>0 ulelong 114 R64G64_SINT
|
|
3384
|
+
>0 ulelong 115 R64G64_SFLOAT
|
|
3385
|
+
>0 ulelong 116 R64G64B64_UINT
|
|
3386
|
+
>0 ulelong 117 R64G64B64_SINT
|
|
3387
|
+
>0 ulelong 118 R64G64B64_SFLOAT
|
|
3388
|
+
>0 ulelong 119 R64G64B64A64_UINT
|
|
3389
|
+
>0 ulelong 120 R64G64B64A64_SINT
|
|
3390
|
+
>0 ulelong 121 R64G64B64A64_SFLOAT
|
|
3391
|
+
>0 ulelong 122 B10G11R11_UFLOAT_PACK32
|
|
3392
|
+
>0 ulelong 123 E5B9G9R9_UFLOAT_PACK32
|
|
3393
|
+
>0 ulelong 124 D16_UNORM
|
|
3394
|
+
>0 ulelong 125 X8_D24_UNORM_PACK32
|
|
3395
|
+
>0 ulelong 126 D32_SFLOAT
|
|
3396
|
+
>0 ulelong 127 S8_UINT
|
|
3397
|
+
>0 ulelong 128 D16_UNORM_S8_UINT
|
|
3398
|
+
>0 ulelong 129 D24_UNORM_S8_UINT
|
|
3399
|
+
>0 ulelong 130 D32_SFLOAT_S8_UINT
|
|
3400
|
+
|
|
3401
|
+
>0 ulelong 131 BC1_RGB_UNORM_BLOCK
|
|
3402
|
+
>0 ulelong 132 BC1_RGB_SRGB_BLOCK
|
|
3403
|
+
>0 ulelong 133 BC1_RGBA_UNORM_BLOCK
|
|
3404
|
+
>0 ulelong 134 BC1_RGBA_SRGB_BLOCK
|
|
3405
|
+
>0 ulelong 135 BC2_UNORM_BLOCK
|
|
3406
|
+
>0 ulelong 136 BC2_SRGB_BLOCK
|
|
3407
|
+
>0 ulelong 137 BC3_UNORM_BLOCK
|
|
3408
|
+
>0 ulelong 138 BC3_SRGB_BLOCK
|
|
3409
|
+
>0 ulelong 139 BC4_UNORM_BLOCK
|
|
3410
|
+
>0 ulelong 140 BC4_SNORM_BLOCK
|
|
3411
|
+
>0 ulelong 141 BC5_UNORM_BLOCK
|
|
3412
|
+
>0 ulelong 142 BC5_SNORM_BLOCK
|
|
3413
|
+
>0 ulelong 143 BC6H_UFLOAT_BLOCK
|
|
3414
|
+
>0 ulelong 144 BC6H_SFLOAT_BLOCK
|
|
3415
|
+
>0 ulelong 145 BC7_UNORM_BLOCK
|
|
3416
|
+
>0 ulelong 146 BC7_SRGB_BLOCK
|
|
3417
|
+
|
|
3418
|
+
>0 ulelong 147 ETC2_R8G8B8_UNORM_BLOCK
|
|
3419
|
+
>0 ulelong 148 ETC2_R8G8B8_SRGB_BLOCK
|
|
3420
|
+
>0 ulelong 149 ETC2_R8G8B8A1_UNORM_BLOCK
|
|
3421
|
+
>0 ulelong 150 ETC2_R8G8B8A1_SRGB_BLOCK
|
|
3422
|
+
>0 ulelong 151 ETC2_R8G8B8A8_UNORM_BLOCK
|
|
3423
|
+
>0 ulelong 152 ETC2_R8G8B8A8_SRGB_BLOCK
|
|
3424
|
+
|
|
3425
|
+
>0 ulelong 153 EAC_R11_UNORM_BLOCK
|
|
3426
|
+
>0 ulelong 154 EAC_R11_SNORM_BLOCK
|
|
3427
|
+
>0 ulelong 155 EAC_R11G11_UNORM_BLOCK
|
|
3428
|
+
>0 ulelong 156 EAC_R11G11_SNORM_BLOCK
|
|
3429
|
+
|
|
3430
|
+
>0 ulelong 157 ASTC_4x4_UNORM_BLOCK
|
|
3431
|
+
>0 ulelong 158 ASTC_4x4_SRGB_BLOCK
|
|
3432
|
+
>0 ulelong 159 ASTC_5x4_UNORM_BLOCK
|
|
3433
|
+
>0 ulelong 160 ASTC_5x4_SRGB_BLOCK
|
|
3434
|
+
>0 ulelong 161 ASTC_5x5_UNORM_BLOCK
|
|
3435
|
+
>0 ulelong 162 ASTC_5x5_SRGB_BLOCK
|
|
3436
|
+
>0 ulelong 163 ASTC_6x5_UNORM_BLOCK
|
|
3437
|
+
>0 ulelong 164 ASTC_6x5_SRGB_BLOCK
|
|
3438
|
+
>0 ulelong 165 ASTC_6x6_UNORM_BLOCK
|
|
3439
|
+
>0 ulelong 166 ASTC_6x6_SRGB_BLOCK
|
|
3440
|
+
>0 ulelong 167 ASTC_8x5_UNORM_BLOCK
|
|
3441
|
+
>0 ulelong 168 ASTC_8x5_SRGB_BLOCK
|
|
3442
|
+
>0 ulelong 169 ASTC_8x6_UNORM_BLOCK
|
|
3443
|
+
>0 ulelong 170 ASTC_8x6_SRGB_BLOCK
|
|
3444
|
+
>0 ulelong 171 ASTC_8x8_UNORM_BLOCK
|
|
3445
|
+
>0 ulelong 172 ASTC_8x8_SRGB_BLOCK
|
|
3446
|
+
>0 ulelong 173 ASTC_10x5_UNORM_BLOCK
|
|
3447
|
+
>0 ulelong 174 ASTC_10x5_SRGB_BLOCK
|
|
3448
|
+
>0 ulelong 175 ASTC_10x6_UNORM_BLOCK
|
|
3449
|
+
>0 ulelong 176 ASTC_10x6_SRGB_BLOCK
|
|
3450
|
+
>0 ulelong 177 ASTC_10x8_UNORM_BLOCK
|
|
3451
|
+
>0 ulelong 178 ASTC_10x8_SRGB_BLOCK
|
|
3452
|
+
>0 ulelong 179 ASTC_10x10_UNORM_BLOCK
|
|
3453
|
+
>0 ulelong 180 ASTC_10x10_SRGB_BLOCK
|
|
3454
|
+
>0 ulelong 181 ASTC_12x10_UNORM_BLOCK
|
|
3455
|
+
>0 ulelong 182 ASTC_12x10_SRGB_BLOCK
|
|
3456
|
+
>0 ulelong 183 ASTC_12x12_UNORM_BLOCK
|
|
3457
|
+
>0 ulelong 184 ASTC_12x12_SRGB_BLOCK
|
|
3458
|
+
|
|
3459
|
+
>0 ulelong 1000156000 G8B8G8R8_422_UNORM
|
|
3460
|
+
>0 ulelong 1000156001 B8G8R8G8_422_UNORM
|
|
3461
|
+
>0 ulelong 1000156002 G8_B8_R8_3PLANE_420_UNORM
|
|
3462
|
+
>0 ulelong 1000156003 G8_B8R8_2PLANE_420_UNORM
|
|
3463
|
+
>0 ulelong 1000156004 G8_B8_R8_3PLANE_422_UNORM
|
|
3464
|
+
>0 ulelong 1000156005 G8_B8R8_2PLANE_422_UNORM
|
|
3465
|
+
>0 ulelong 1000156006 G8_B8_R8_3PLANE_444_UNORM
|
|
3466
|
+
>0 ulelong 1000156007 R10X6_UNORM_PACK16
|
|
3467
|
+
>0 ulelong 1000156008 R10X6G10X6_UNORM_2PACK16
|
|
3468
|
+
>0 ulelong 1000156009 R10X6G10X6B10X6A10X6_UNORM_4PACK16
|
|
3469
|
+
>0 ulelong 1000156010 G10X6B10X6G10X6R10X6_422_UNORM_4PACK16
|
|
3470
|
+
>0 ulelong 1000156011 B10X6G10X6R10X6G10X6_422_UNORM_4PACK16
|
|
3471
|
+
>0 ulelong 1000156012 G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16
|
|
3472
|
+
>0 ulelong 1000156013 G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16
|
|
3473
|
+
>0 ulelong 1000156014 G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16
|
|
3474
|
+
>0 ulelong 1000156015 G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16
|
|
3475
|
+
>0 ulelong 1000156016 G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16
|
|
3476
|
+
>0 ulelong 1000156017 R12X4_UNORM_PACK16
|
|
3477
|
+
>0 ulelong 1000156018 R12X4G12X4_UNORM_2PACK16
|
|
3478
|
+
>0 ulelong 1000156019 R12X4G12X4B12X4A12X4_UNORM_4PACK16
|
|
3479
|
+
>0 ulelong 1000156020 G12X4B12X4G12X4R12X4_422_UNORM_4PACK16
|
|
3480
|
+
>0 ulelong 1000156021 B12X4G12X4R12X4G12X4_422_UNORM_4PACK16
|
|
3481
|
+
>0 ulelong 1000156022 G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16
|
|
3482
|
+
>0 ulelong 1000156023 G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16
|
|
3483
|
+
>0 ulelong 1000156024 G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16
|
|
3484
|
+
>0 ulelong 1000156025 G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16
|
|
3485
|
+
>0 ulelong 1000156026 G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16
|
|
3486
|
+
>0 ulelong 1000156027 G16B16G16R16_422_UNORM
|
|
3487
|
+
>0 ulelong 1000156028 B16G16R16G16_422_UNORM
|
|
3488
|
+
>0 ulelong 1000156029 G16_B16_R16_3PLANE_420_UNORM
|
|
3489
|
+
>0 ulelong 1000156030 G16_B16R16_2PLANE_420_UNORM
|
|
3490
|
+
>0 ulelong 1000156031 G16_B16_R16_3PLANE_422_UNORM
|
|
3491
|
+
>0 ulelong 1000156032 G16_B16R16_2PLANE_422_UNORM
|
|
3492
|
+
>0 ulelong 1000156033 G16_B16_R16_3PLANE_444_UNORM
|
|
3493
|
+
|
|
3494
|
+
>0 ulelong 1000054000 PVRTC1_2BPP_UNORM_BLOCK_IMG
|
|
3495
|
+
>0 ulelong 1000054001 PVRTC1_4BPP_UNORM_BLOCK_IMG
|
|
3496
|
+
>0 ulelong 1000054002 PVRTC2_2BPP_UNORM_BLOCK_IMG
|
|
3497
|
+
>0 ulelong 1000054003 PVRTC2_4BPP_UNORM_BLOCK_IMG
|
|
3498
|
+
>0 ulelong 1000054004 PVRTC1_2BPP_SRGB_BLOCK_IMG
|
|
3499
|
+
>0 ulelong 1000054005 PVRTC1_4BPP_SRGB_BLOCK_IMG
|
|
3500
|
+
>0 ulelong 1000054006 PVRTC2_2BPP_SRGB_BLOCK_IMG
|
|
3501
|
+
>0 ulelong 1000054007 PVRTC2_4BPP_SRGB_BLOCK_IMG
|
|
3502
|
+
|
|
3503
|
+
>0 ulelong 1000066000 ASTC_4x4_SFLOAT_BLOCK_EXT
|
|
3504
|
+
>0 ulelong 1000066001 ASTC_5x4_SFLOAT_BLOCK_EXT
|
|
3505
|
+
>0 ulelong 1000066002 ASTC_5x5_SFLOAT_BLOCK_EXT
|
|
3506
|
+
>0 ulelong 1000066003 ASTC_6x5_SFLOAT_BLOCK_EXT
|
|
3507
|
+
>0 ulelong 1000066004 ASTC_6x6_SFLOAT_BLOCK_EXT
|
|
3508
|
+
>0 ulelong 1000066005 ASTC_8x5_SFLOAT_BLOCK_EXT
|
|
3509
|
+
>0 ulelong 1000066006 ASTC_8x6_SFLOAT_BLOCK_EXT
|
|
3510
|
+
>0 ulelong 1000066007 ASTC_8x8_SFLOAT_BLOCK_EXT
|
|
3511
|
+
>0 ulelong 1000066008 ASTC_10x5_SFLOAT_BLOCK_EXT
|
|
3512
|
+
>0 ulelong 1000066009 ASTC_10x6_SFLOAT_BLOCK_EXT
|
|
3513
|
+
>0 ulelong 1000066010 ASTC_10x8_SFLOAT_BLOCK_EXT
|
|
3514
|
+
>0 ulelong 1000066011 ASTC_10x10_SFLOAT_BLOCK_EXT
|
|
3515
|
+
>0 ulelong 1000066012 ASTC_12x10_SFLOAT_BLOCK_EXT
|
|
3516
|
+
>0 ulelong 1000066013 ASTC_12x12_SFLOAT_BLOCK_EXT
|
|
3517
|
+
|
|
3518
|
+
# Main KTX2 header.
|
|
3519
|
+
0 string \xABKTX\ 20\xBB\r\n\x1A\n Khronos KTX2 texture
|
|
3520
|
+
>20 ulelong x \b, %u
|
|
3521
|
+
>24 ulelong >1 x %u
|
|
3522
|
+
>28 ulelong >1 x %u
|
|
3523
|
+
>32 ulelong >1 \b, %u layers
|
|
3524
|
+
>36 ulelong >1 \b, %u faces
|
|
3525
|
+
>40 ulelong >1 \b, %u mipmaps
|
|
3526
|
+
>44 ulelong >0 \b,
|
|
3527
|
+
>>44 use khronos-ktx2-supercompression
|
|
3528
|
+
>12 ulelong >0 \b,
|
|
3529
|
+
>>12 use khronos-ktx2-vkFormat
|
|
3530
|
+
|
|
3531
|
+
# Type: Valve VTF texture.
|
|
3532
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3533
|
+
# References:
|
|
3534
|
+
# - https://developer.valvesoftware.com/wiki/Valve_Texture_Format
|
|
3535
|
+
|
|
3536
|
+
# VTF image formats.
|
|
3537
|
+
0 name vtf-image-format
|
|
3538
|
+
>0 ulelong 0 RGBA8888
|
|
3539
|
+
>0 ulelong 1 ABGR8888
|
|
3540
|
+
>0 ulelong 2 RGB888
|
|
3541
|
+
>0 ulelong 3 BGR888
|
|
3542
|
+
>0 ulelong 4 RGB565
|
|
3543
|
+
>0 ulelong 5 I8
|
|
3544
|
+
>0 ulelong 6 IA88
|
|
3545
|
+
>0 ulelong 7 P8
|
|
3546
|
+
>0 ulelong 8 A8
|
|
3547
|
+
>0 ulelong 9 RGB888 (bluescreen)
|
|
3548
|
+
>0 ulelong 10 BGR888 (bluescreen)
|
|
3549
|
+
>0 ulelong 11 ARGB8888
|
|
3550
|
+
>0 ulelong 12 BGRA8888
|
|
3551
|
+
>0 ulelong 13 DXT1
|
|
3552
|
+
>0 ulelong 14 DXT3
|
|
3553
|
+
>0 ulelong 15 DXT5
|
|
3554
|
+
>0 ulelong 16 BGRx8888
|
|
3555
|
+
>0 ulelong 17 BGR565
|
|
3556
|
+
>0 ulelong 18 BGRx5551
|
|
3557
|
+
>0 ulelong 19 BGRA4444
|
|
3558
|
+
>0 ulelong 20 DXT1+A1
|
|
3559
|
+
>0 ulelong 21 BGRA5551
|
|
3560
|
+
>0 ulelong 22 UV88
|
|
3561
|
+
>0 ulelong 23 UVWQ8888
|
|
3562
|
+
>0 ulelong 24 RGBA16161616F
|
|
3563
|
+
>0 ulelong 25 RGBA16161616
|
|
3564
|
+
>0 ulelong 26 UVLX8888
|
|
3565
|
+
|
|
3566
|
+
# Main VTF header.
|
|
3567
|
+
0 string VTF\0 Valve Texture Format
|
|
3568
|
+
>4 ulelong x v%u
|
|
3569
|
+
>8 ulelong x \b.%u
|
|
3570
|
+
>0x10 uleshort x \b, %u
|
|
3571
|
+
>0x12 uleshort >1 x %u
|
|
3572
|
+
>4 lequad 0x0000000700000002
|
|
3573
|
+
>>0x3F uleshort >1 x %u
|
|
3574
|
+
>0x18 uleshort >1 \b, %u frames
|
|
3575
|
+
>0x38 ubyte x \b, mipmaps: %u
|
|
3576
|
+
>0x34 ulelong >-1 \b,
|
|
3577
|
+
>>0x34 use vtf-image-format
|
|
3578
|
+
|
|
3579
|
+
# Type: Valve VTF3 (PS3) texture.
|
|
3580
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3581
|
+
0 string VTF3 Valve Texture Format (PS3)
|
|
3582
|
+
>0x14 ubeshort x \b, %u
|
|
3583
|
+
>0x16 ubeshort x \b x %u
|
|
3584
|
+
>0x10 ubelong&0x2000 0 \b, DXT1
|
|
3585
|
+
>0x10 ubelong&0x2000 0x2000 \b, DXT5
|
|
3586
|
+
|
|
3587
|
+
# Type: ASTC texture.
|
|
3588
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3589
|
+
# References:
|
|
3590
|
+
# - https://stackoverflow.com/questions/22600678/determine-internal-format-of-given-astc-compressed-image-through-its-header
|
|
3591
|
+
# - https://stackoverflow.com/a/22682244
|
|
3592
|
+
0 ulelong 0x5ca1ab13 ASTC
|
|
3593
|
+
>4 ubyte x %u
|
|
3594
|
+
>5 ubyte x \bx%u
|
|
3595
|
+
>6 ubyte >1 \bx%u
|
|
3596
|
+
# X, Y, and Z dimensions are stored as 24-bit LE.
|
|
3597
|
+
# Pretend it's 32-bit and mask off the high byte.
|
|
3598
|
+
>7 ulelong&0x00FFFFFF x texture, %u
|
|
3599
|
+
>10 ulelong&0x00FFFFFF x x %u
|
|
3600
|
+
>13 ulelong&0x00FFFFFF >1 x %u
|
|
3601
|
+
|
|
3602
|
+
# Zebra Metafile graphic
|
|
3603
|
+
# http://www.fileformat.info/format/zbr/egff.htm
|
|
3604
|
+
0 ubeshort 0x9a02 Zebra Metafile graphic
|
|
3605
|
+
>2 uleshort 1 (version 1.x)
|
|
3606
|
+
>2 uleshort 2 (version 1.1x or 1.2x)
|
|
3607
|
+
>2 uleshort 3 (version 1.49)
|
|
3608
|
+
>2 uleshort 4 (version 1.50)
|
|
3609
|
+
>4 string x (comment = %s)
|
|
3610
|
+
|
|
3611
|
+
# Microsoft Paint graphic
|
|
3612
|
+
# http://www.fileformat.info/format/mspaint/egff.htm
|
|
3613
|
+
0 string DanM icrosoft Paint image data (version 1.x)
|
|
3614
|
+
>4 uleshort x (%d
|
|
3615
|
+
>>6 uleshort x x %d)
|
|
3616
|
+
0 string LinS Microsoft Paint image data (version 2.0)
|
|
3617
|
+
>4 uleshort x (%d
|
|
3618
|
+
>>6 uleshort x x %d)
|
|
3619
|
+
|
|
3620
|
+
# reMarkable tablet internal file format (https://www.remarkable.com/)
|
|
3621
|
+
# https://github.com/ax3l/lines-are-beautiful
|
|
3622
|
+
# https://plasma.ninja/blog/devices/remarkable/binary/format/2017/12/26/\
|
|
3623
|
+
# reMarkable-lines-file-format.html#what-to-do-next
|
|
3624
|
+
# from Axel Huebl
|
|
3625
|
+
0 string reMarkable
|
|
3626
|
+
>11 string lines
|
|
3627
|
+
>>17 string with
|
|
3628
|
+
>>>22 string selections
|
|
3629
|
+
>>>>33 string and
|
|
3630
|
+
>>>>>37 string layers
|
|
3631
|
+
>>>>>>43 ulelong x reMarkable tablet notebook lines, 1404 x 1872, %x page(s)
|
|
3632
|
+
|
|
3633
|
+
# newer per-page files for the reMarkable
|
|
3634
|
+
0 string reMarkable
|
|
3635
|
+
>11 string .lines
|
|
3636
|
+
>>18 string file,
|
|
3637
|
+
>>>24 string version=
|
|
3638
|
+
>>>>32 ubyte x reMarkable tablet page (v%c), 1404 x 1872,
|
|
3639
|
+
>>>>>43 ulelong x %d layer(s)
|
|
3640
|
+
|
|
3641
|
+
# Type: PVR3 texture.
|
|
3642
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3643
|
+
# References:
|
|
3644
|
+
# - http://cdn.imgtec.com/sdk-documentation/PVR+File+Format.Specification.pdf
|
|
3645
|
+
|
|
3646
|
+
# PVR3 pixel formats.
|
|
3647
|
+
0 name pvr3-pixel-format
|
|
3648
|
+
>0 ulelong 0 PVRTC 2bpp RGB
|
|
3649
|
+
>0 ulelong 1 PVRTC 2bpp RGBA
|
|
3650
|
+
>0 ulelong 2 PVRTC 4bpp RGB
|
|
3651
|
+
>0 ulelong 3 PVRTC 4bpp RGBA
|
|
3652
|
+
>0 ulelong 4 PVRTC-II 2bpp
|
|
3653
|
+
>0 ulelong 5 PVRTC-II 4bpp
|
|
3654
|
+
>0 ulelong 6 ETC1
|
|
3655
|
+
>0 ulelong 7 DXT1
|
|
3656
|
+
>0 ulelong 8 DXT2
|
|
3657
|
+
>0 ulelong 9 DXT3
|
|
3658
|
+
>0 ulelong 10 DXT4
|
|
3659
|
+
>0 ulelong 11 DXT5
|
|
3660
|
+
>0 ulelong 12 BC4
|
|
3661
|
+
>0 ulelong 13 BC5
|
|
3662
|
+
>0 ulelong 14 BC6
|
|
3663
|
+
>0 ulelong 15 BC7
|
|
3664
|
+
>0 ulelong 16 UYVY
|
|
3665
|
+
>0 ulelong 17 YUY2
|
|
3666
|
+
>0 ulelong 18 BW1bpp
|
|
3667
|
+
>0 ulelong 19 R9G9B9E5 Shared Exponent
|
|
3668
|
+
>0 ulelong 20 RGBG8888
|
|
3669
|
+
>0 ulelong 21 GRGB8888
|
|
3670
|
+
>0 ulelong 22 ETC2 RGB
|
|
3671
|
+
>0 ulelong 23 ETC2 RGBA
|
|
3672
|
+
>0 ulelong 24 ETC2 RGB A1
|
|
3673
|
+
>0 ulelong 25 EAC R11
|
|
3674
|
+
>0 ulelong 26 EAC RG11
|
|
3675
|
+
>0 ulelong 27 ASTC_4x4
|
|
3676
|
+
>0 ulelong 28 ASTC_5x4
|
|
3677
|
+
>0 ulelong 29 ASTC_5x5
|
|
3678
|
+
>0 ulelong 30 ASTC_6x5
|
|
3679
|
+
>0 ulelong 31 ASTC_6x6
|
|
3680
|
+
>0 ulelong 32 ASTC_8x5
|
|
3681
|
+
>0 ulelong 33 ASTC_8x6
|
|
3682
|
+
>0 ulelong 34 ASTC_8x8
|
|
3683
|
+
>0 ulelong 35 ASTC_10x5
|
|
3684
|
+
>0 ulelong 36 ASTC_10x6
|
|
3685
|
+
>0 ulelong 37 ASTC_10x8
|
|
3686
|
+
>0 ulelong 38 ASTC_10x10
|
|
3687
|
+
>0 ulelong 39 ASTC_12x10
|
|
3688
|
+
>0 ulelong 40 ASTC_12x12
|
|
3689
|
+
>0 ulelong 41 ASTC_3x3x3
|
|
3690
|
+
>0 ulelong 42 ASTC_4x3x3
|
|
3691
|
+
>0 ulelong 43 ASTC_4x4x3
|
|
3692
|
+
>0 ulelong 44 ASTC_4x4x4
|
|
3693
|
+
>0 ulelong 45 ASTC_5x4x4
|
|
3694
|
+
>0 ulelong 46 ASTC_5x5x4
|
|
3695
|
+
>0 ulelong 47 ASTC_5x5x5
|
|
3696
|
+
>0 ulelong 48 ASTC_6x5x5
|
|
3697
|
+
>0 ulelong 49 ASTC_6x6x5
|
|
3698
|
+
>0 ulelong 50 ASTC_6x6x6
|
|
3699
|
+
|
|
3700
|
+
0 string PVR\x03 PowerVR 3.0 texture:
|
|
3701
|
+
>0x18 ulelong x %u x
|
|
3702
|
+
>0x1C ulelong x %u
|
|
3703
|
+
>0x20 ulelong >1 x %u
|
|
3704
|
+
>0x08 ubyte x \b,
|
|
3705
|
+
>0x0C ulelong 0
|
|
3706
|
+
>>0x08 use pvr3-pixel-format
|
|
3707
|
+
>0x0C ulelong !0
|
|
3708
|
+
>>0x08 ubyte !0 %c
|
|
3709
|
+
>>>0x0C ubyte !0 \b%u
|
|
3710
|
+
>>0x09 ubyte !0 \b%c
|
|
3711
|
+
>>>0x0D ubyte !0 \b%u
|
|
3712
|
+
>>0x0A ubyte !0 \b%c
|
|
3713
|
+
>>>0x0E ubyte !0 \b%u
|
|
3714
|
+
>>0x0B ubyte !0 \b%c
|
|
3715
|
+
>>>0x0F ubyte !0 \b%u
|
|
3716
|
+
>0x10 ulelong 1 \b, sRGB
|
|
3717
|
+
>0x04 ulelong&0x02 0x02 \b, premultiplied alpha
|
|
3718
|
+
|
|
3719
|
+
0 string \x03RVP PowerVR 3.0 texture: BE,
|
|
3720
|
+
>0x18 ubelong x %u x
|
|
3721
|
+
>0x1C ubelong x %u
|
|
3722
|
+
>0x20 ubelong >1 x %u
|
|
3723
|
+
>0x08 ubyte x \b,
|
|
3724
|
+
>0x0C ubelong 0
|
|
3725
|
+
>>0x08 use pvr3-pixel-format
|
|
3726
|
+
>0x0C ubelong !0
|
|
3727
|
+
>>0x0B ubyte !0 %c
|
|
3728
|
+
>>>0x0F ubyte !0 \b%u
|
|
3729
|
+
>>0x0A ubyte !0 \b%c
|
|
3730
|
+
>>>0x0E ubyte !0 \b%u
|
|
3731
|
+
>>0x09 ubyte !0 \b%c
|
|
3732
|
+
>>>0x0D ubyte !0 \b%u
|
|
3733
|
+
>>0x08 ubyte !0 \b%c
|
|
3734
|
+
>>>0x0C ubyte !0 \b%u
|
|
3735
|
+
>0x10 ubelong 1 \b, sRGB
|
|
3736
|
+
>0x04 ubelong&0x02 0x02 \b, premultiplied alpha
|
|
3737
|
+
|
|
3738
|
+
# Type: Microsoft Xbox XPR0 texture.
|
|
3739
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3740
|
+
# References:
|
|
3741
|
+
# - https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/blob/develop/src/core/hle/D3D8/XbD3D8Types.h
|
|
3742
|
+
|
|
3743
|
+
# XPR pixel formats.
|
|
3744
|
+
0 name xbox-xpr-pixel-format
|
|
3745
|
+
>0 ubyte 0x00 L8
|
|
3746
|
+
>0 ubyte 0x01 AL8
|
|
3747
|
+
>0 ubyte 0x02 ARGB1555
|
|
3748
|
+
>0 ubyte 0x03 RGB555
|
|
3749
|
+
>0 ubyte 0x04 ARGB4444
|
|
3750
|
+
>0 ubyte 0x05 RGB565
|
|
3751
|
+
>0 ubyte 0x06 ARGB8888
|
|
3752
|
+
>0 ubyte 0x07 xRGB8888
|
|
3753
|
+
>0 ubyte 0x0B P8
|
|
3754
|
+
>0 ubyte 0x0C DXT1
|
|
3755
|
+
>0 ubyte 0x0E DXT2
|
|
3756
|
+
>0 ubyte 0x0F DXT4
|
|
3757
|
+
>0 ubyte 0x10 Linear ARGB1555
|
|
3758
|
+
>0 ubyte 0x11 Linear RGB565
|
|
3759
|
+
>0 ubyte 0x12 Linear ARGB8888
|
|
3760
|
+
>0 ubyte 0x13 Linear L8
|
|
3761
|
+
>0 ubyte 0x16 Linear R8B8
|
|
3762
|
+
>0 ubyte 0x17 Linear G8B8
|
|
3763
|
+
>0 ubyte 0x19 A8
|
|
3764
|
+
>0 ubyte 0x1A A8L8
|
|
3765
|
+
>0 ubyte 0x1B Linear AL8
|
|
3766
|
+
>0 ubyte 0x1C Linear RGB555
|
|
3767
|
+
>0 ubyte 0x1D Linear ARGB4444
|
|
3768
|
+
>0 ubyte 0x1E Linear xRGB8888
|
|
3769
|
+
>0 ubyte 0x1F Linear A8
|
|
3770
|
+
>0 ubyte 0x20 Linear A8L8
|
|
3771
|
+
>0 ubyte 0x24 YUY2
|
|
3772
|
+
>0 ubyte 0x25 UYVY
|
|
3773
|
+
>0 ubyte 0x27 L6V5U5
|
|
3774
|
+
>0 ubyte 0x28 V8U8
|
|
3775
|
+
>0 ubyte 0x29 R8B8
|
|
3776
|
+
>0 ubyte 0x2A D24S8
|
|
3777
|
+
>0 ubyte 0x2B F24S8
|
|
3778
|
+
>0 ubyte 0x2C D16
|
|
3779
|
+
>0 ubyte 0x2D F16
|
|
3780
|
+
>0 ubyte 0x2E Linear D24S8
|
|
3781
|
+
>0 ubyte 0x2F Linear F24S8
|
|
3782
|
+
>0 ubyte 0x30 Linear D16
|
|
3783
|
+
>0 ubyte 0x31 Linear F16
|
|
3784
|
+
>0 ubyte 0x32 L16
|
|
3785
|
+
>0 ubyte 0x33 V16U16
|
|
3786
|
+
>0 ubyte 0x35 Linear L16
|
|
3787
|
+
>0 ubyte 0x36 Linear V16U16
|
|
3788
|
+
>0 ubyte 0x37 Linear L6V5U5
|
|
3789
|
+
>0 ubyte 0x38 RGBA5551
|
|
3790
|
+
>0 ubyte 0x39 RGBA4444
|
|
3791
|
+
>0 ubyte 0x3A QWVU8888
|
|
3792
|
+
>0 ubyte 0x3B BGRA8888
|
|
3793
|
+
>0 ubyte 0x3C RGBA8888
|
|
3794
|
+
>0 ubyte 0x3D Linear RGBA5551
|
|
3795
|
+
>0 ubyte 0x3E Linear RGBA4444
|
|
3796
|
+
>0 ubyte 0x3F Linear ABGR8888
|
|
3797
|
+
>0 ubyte 0x40 Linear BGRA8888
|
|
3798
|
+
>0 ubyte 0x41 Linear RGBA8888
|
|
3799
|
+
>0 ubyte 0x64 Vertex Data
|
|
3800
|
+
|
|
3801
|
+
0 string XPR0 Microsoft Xbox XPR0 texture
|
|
3802
|
+
>0x19 ubyte x \b, format:
|
|
3803
|
+
>>0x19 use xbox-xpr-pixel-format
|
|
3804
|
+
|
|
3805
|
+
# ILDA Image Data Transfer Format
|
|
3806
|
+
# https://www.ilda.com/resources/StandardsDocs/ILDA_IDTF14_rev011.pdf
|
|
3807
|
+
#
|
|
3808
|
+
# Updated by Chuck Hein (laser@geekdude.com)
|
|
3809
|
+
#
|
|
3810
|
+
0 string ILDA ILDA Image Data Transfer Format
|
|
3811
|
+
>7 ubyte 0x00 3D Coordinates with Indexed Color
|
|
3812
|
+
>7 ubyte 0x01 2D Coordinates with Indexed Color
|
|
3813
|
+
>7 ubyte 0x02 Color Palette
|
|
3814
|
+
>7 ubyte 0x04 3D Coordinates with True Color
|
|
3815
|
+
>7 ubyte 0x05 2D Coordinates with True Color
|
|
3816
|
+
>8 string >0 \b, palette %s
|
|
3817
|
+
>16 string >0 \b, company %s
|
|
3818
|
+
>24 ubeshort >0 \b, number of records %d
|
|
3819
|
+
>>26 ubeshort x \b, palette number %d
|
|
3820
|
+
>>28 ubeshort >0 \b, number of frames %d
|
|
3821
|
+
>>30 ubyte >0 \b, projector number %d
|
|
3822
|
+
|
|
3823
|
+
# Dropbox "lepton" compressed jpeg format
|
|
3824
|
+
# https://github.com/dropbox/lepton
|
|
3825
|
+
0 ubelong&0xfffff0ff 0xcf84005a Lepton image file
|
|
3826
|
+
>2 ubyte x (version %d)
|
|
3827
|
+
|
|
3828
|
+
# Apple QuickTake camera raw images
|
|
3829
|
+
# https://en.wikipedia.org/wiki/Apple_QuickTake
|
|
3830
|
+
# dcraw can decode them
|
|
3831
|
+
0 name quicktake
|
|
3832
|
+
>4 ubelong 8
|
|
3833
|
+
>>544 ubeshort x \b, %dx
|
|
3834
|
+
>>546 ubeshort x \b%d
|
|
3835
|
+
>4 ubelong 4
|
|
3836
|
+
>>546 ubeshort x \b, %dx
|
|
3837
|
+
>>544 ubeshort x \b%d
|
|
3838
|
+
|
|
3839
|
+
0 string qktk Apple QuickTake 100 Raw Image
|
|
3840
|
+
>0 use quicktake
|
|
3841
|
+
|
|
3842
|
+
0 string qktn
|
|
3843
|
+
>4 ubyte 0 Apple QuickTake 150 Raw Image
|
|
3844
|
+
>4 ubyte >0 Apple QuickTake 200 Raw Image
|
|
3845
|
+
>0 use quicktake
|
|
3846
|
+
|
|
3847
|
+
# From: Joerg Jenderek
|
|
3848
|
+
# URL: http://fileformats.archiveteam.org/wiki/Corel_Photo-Paint_image
|
|
3849
|
+
# Reference: http://blog.argasinski.eu/wp-content/uploads/2011/08/cpt-specification-0.01.pdf
|
|
3850
|
+
0 string CPT
|
|
3851
|
+
>4 string FILE Corel Photo-Paint image, version
|
|
3852
|
+
# version like 7, 9 or 8
|
|
3853
|
+
>>3 ubyte x %c,
|
|
3854
|
+
!:mime image/x-corel-cpt
|
|
3855
|
+
!:ext cpt
|
|
3856
|
+
# if blocks_array_offset available jump blockNumber*8 bytes
|
|
3857
|
+
>>0x34 ulelong >0
|
|
3858
|
+
>>>(0x28.l*8) ubyte x
|
|
3859
|
+
# jump additional stored blocks_array_offset bytes forward to object block
|
|
3860
|
+
>>>>&(0x34.l-1) ulelong x %u
|
|
3861
|
+
# object height in pixels
|
|
3862
|
+
>>>>>&0 ulelong x x %u
|
|
3863
|
+
# if no blocks_array_offset available jump blockNumber*8 bytes
|
|
3864
|
+
>>0x34 ulelong =0
|
|
3865
|
+
>>>(0x28.l*8) ubyte x
|
|
3866
|
+
# jump additional 0x13C bytes forward to object block
|
|
3867
|
+
>>>>&0x13B ulelong x %u
|
|
3868
|
+
>>>>>&0 ulelong x x %u
|
|
3869
|
+
# image color model used
|
|
3870
|
+
>>0x8 ulelong x
|
|
3871
|
+
>>>0x8 ulelong 0x1 RGB 24 bits
|
|
3872
|
+
>>>0x8 ulelong 0x3 CMYK 24 bits
|
|
3873
|
+
>>>0x8 ulelong 0x5 greyscale 8 bits
|
|
3874
|
+
>>>0x8 ulelong 0x6 black and white 1 bit
|
|
3875
|
+
>>>0x8 ulelong 0xA RGB 8 bits
|
|
3876
|
+
# palette_length number of colors * 3 in case of 8-bit RGB paletted image
|
|
3877
|
+
# 0 otherwise. Allowed values: 0 or [1..256] * 3
|
|
3878
|
+
#>>0xC ulelong >0 \b, palette length %u
|
|
3879
|
+
>>>>0xC ulelong/3 <256 \b, %u colors
|
|
3880
|
+
>>>0x8 ulelong 0xB LAB
|
|
3881
|
+
>>>0x8 ulelong 0xC RGB 48 bits
|
|
3882
|
+
>>>0x8 ulelong 0xE greyscale 16 bits
|
|
3883
|
+
# this should not happen
|
|
3884
|
+
>>>0x8 default x color model
|
|
3885
|
+
>>>>0x8 ulelong x %#x
|
|
3886
|
+
# bit 1 in CPT file flags: UCS-2 file comment present
|
|
3887
|
+
>>0x31 ubyte &0x02
|
|
3888
|
+
# look for comment marker
|
|
3889
|
+
>>>0x100 search/0xc9d \4\2\0\0
|
|
3890
|
+
# UCS-2 file comment
|
|
3891
|
+
>>>>&0 lestring16 x "%s"
|
|
3892
|
+
# if no UCS-2 is present show ANSI file comment[112] if available
|
|
3893
|
+
>>0x31 ubyte&0x02 =0
|
|
3894
|
+
>>>0x3C string >\0 "%-.112s"
|
|
3895
|
+
# reserved seems to be always 0
|
|
3896
|
+
#>>0x10 ulelong >0 \b, reserved1 %u
|
|
3897
|
+
# horizontal real dpi = dpi_h * 25.4 / 10**6
|
|
3898
|
+
>>0x18 ulelong x \b, %u micro dots/mm
|
|
3899
|
+
# image vertical DPI in CPT DPI unit
|
|
3900
|
+
#>>0x1C ulelong x \b, %u micro dots/mm
|
|
3901
|
+
# reserved seems to be always 0
|
|
3902
|
+
#>>0x20 ulelong >0 \b, reserved2 %u
|
|
3903
|
+
#>>0x24 ulelong >0 \b, reserved3 %u
|
|
3904
|
+
# blocks_count; number of CPT_Block blocks. Allowed values: > 0
|
|
3905
|
+
>>0x28 ulelong x \b, %u block
|
|
3906
|
+
# plural s
|
|
3907
|
+
>>0x28 ulelong !1 \bs
|
|
3908
|
+
# CPT file flags
|
|
3909
|
+
# lower byte of CPT file flags: 0x94~CPT9FILE 0x01~often CPT7FILE 0x8C~CPT8FILE
|
|
3910
|
+
#>>0x30 ubyte x \b, lower flags %#x
|
|
3911
|
+
# upper byte of CPT file flags:
|
|
3912
|
+
#>>0x31 ubyte >0 \b, upper flags %#x
|
|
3913
|
+
# bit 2 in CPT file flags: unknown
|
|
3914
|
+
#>>0x31 ubyte &0x04 \b, with UNKNOWN
|
|
3915
|
+
# bits 3-7 in CPT file flags: unknown, seem to be often 0
|
|
3916
|
+
# show unusual flag combinations
|
|
3917
|
+
>>0x31 ubyte&0xFC >0
|
|
3918
|
+
>>>0x30 uleshort x \b, flags %#4.4x
|
|
3919
|
+
# reserved seems to be always 0
|
|
3920
|
+
#>>0x32 uleshort >0 \b, reserved4 %#x
|
|
3921
|
+
# blocks_array_offset is always 0 for CPT7 and CPT8 files created by PP7-PP8
|
|
3922
|
+
# typical values like: 13Ch 154h 43Ch 4F0h DA8h
|
|
3923
|
+
>>0x34 ulelong x \b, array offset %#x
|
|
3924
|
+
# reserved seems to be often 0
|
|
3925
|
+
>>0x38 ulelong >0 \b, reserved5 %#x
|
|
3926
|
+
# possible next master block
|
|
3927
|
+
#>>0x100 ubequad !0 \b, next block=%#llx...
|
|
3928
|
+
# bit 0: ICC profile block present
|
|
3929
|
+
>>0x31 ubyte &0x01 \b, with ICC profile
|
|
3930
|
+
# check for characteristic string acsp of color profile for DEBUGGING
|
|
3931
|
+
#>>>0x178 string x icc=%.4s
|
|
3932
|
+
# display ICC/ICM color profile by ./icc
|
|
3933
|
+
#>>>0x154 use color-profile
|
|
3934
|
+
|
|
3935
|
+
# URL: http://fileformats.archiveteam.org/wiki/CorelDRAW
|
|
3936
|
+
# https://en.wikipedia.org/wiki/CorelDRAW
|
|
3937
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/c/cdr-gen.trid.xml
|
|
3938
|
+
# Note: called "CorelDRAW drawing (generic)" by TrID
|
|
3939
|
+
# version til 2 WL-based; from version 3 til 13 handled by ./riff and from 14 zip based handled by ./archive
|
|
3940
|
+
0 ubelong&0xFFffF7ff 0x574C6500 Corel Draw Picture
|
|
3941
|
+
#!:mime image/x-coreldraw
|
|
3942
|
+
!:mime application/vnd.corel-draw
|
|
3943
|
+
!:ext cdr
|
|
3944
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/c/cdr-corel-10.trid.xml
|
|
3945
|
+
# Note: called "CorelDRAW drawing (v1.0)" by TrID and
|
|
3946
|
+
# "CorelDraw Drawing" with version "1.0" by DROID via PUID fmt/467
|
|
3947
|
+
# only DROID fmt-467-signature-id-726.cdr example
|
|
3948
|
+
>2 ubyte 0x65 \b, version 1.0
|
|
3949
|
+
#>>4 ubelong !0x45000000 \b, at 4 %#8.8x
|
|
3950
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/c/cdr-corel-20.trid.xml
|
|
3951
|
+
# Note: called "CorelDRAW drawing (v2.0)" by TrID and
|
|
3952
|
+
# "CorelDraw Drawing" with version "2.0" by DROID via PUID fmt/466
|
|
3953
|
+
>2 ubyte 0x6D \b, version 2.0
|
|
3954
|
+
# According to DROID 0xed080000 or 0x25050000
|
|
3955
|
+
#>>4 ubelong !0xed080000
|
|
3956
|
+
#>>>4 ubelong !0x25050000 \b, at 4 %#8.8x
|
|
3957
|
+
|
|
3958
|
+
# Type: Crunch compressed texture.
|
|
3959
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3960
|
+
# References:
|
|
3961
|
+
# - https://github.com/BinomialLLC/crunch/blob/44c8402e24441c7524ca364941fd224ab3b971e9/inc/crn_decomp.h#L267
|
|
3962
|
+
0 ubelong 0x4878004A Crunch compressed texture:
|
|
3963
|
+
>0x0C ubeshort x %u x
|
|
3964
|
+
>0x0E ubeshort x %u
|
|
3965
|
+
>0x12 ubyte 0 \b, DXT1
|
|
3966
|
+
>0x12 ubyte 1 \b, DXT3
|
|
3967
|
+
>0x12 ubyte 2 \b, DXT5
|
|
3968
|
+
>0x12 ubyte 3 \b, DXT5 CCxY
|
|
3969
|
+
>0x12 ubyte 4 \b, DXT5 xGxR
|
|
3970
|
+
>0x12 ubyte 5 \b, DXT5 xGBR
|
|
3971
|
+
>0x12 ubyte 6 \b, DXT5 AGBR
|
|
3972
|
+
>0x12 ubyte 7 \b, DXn XY
|
|
3973
|
+
>0x12 ubyte 8 \b, DXn YX
|
|
3974
|
+
>0x12 ubyte 9 \b, DXT5 Alpha
|
|
3975
|
+
>0x12 ubyte 10 \b, ETC1
|
|
3976
|
+
>0x10 ubyte >1 \b, %u images
|
|
3977
|
+
>0x11 ubyte >1 \b, %u faces
|
|
3978
|
+
# TODO: Flags at 0x13? (ubeshort)
|
|
3979
|
+
|
|
3980
|
+
# Type: BasisLZ compressed texture.
|
|
3981
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
3982
|
+
# References:
|
|
3983
|
+
# - https://github.com/BinomialLLC/basis_universal/blob/master/spec/basis_spec.txt
|
|
3984
|
+
0 uleshort 0x4273
|
|
3985
|
+
>0x04 uleshort 0x4D BasisLZ
|
|
3986
|
+
>>0x02 uleshort x v%x compressed texture:
|
|
3987
|
+
>>0x14 ubyte 0 ETC1S
|
|
3988
|
+
>>0x14 ubyte 1 UASTC 4x4
|
|
3989
|
+
>>0x0E ulelong&0xFFFFFF >1 \b, %u slices
|
|
3990
|
+
>>0x11 ulelong&0xFFFFFF >1 \b, %u images
|
|
3991
|
+
>>0x15 uleshort&0x02 2 \b, Y-flipped
|
|
3992
|
+
|
|
3993
|
+
# MIME registration: https://www.iana.org/assignments/media-types/model/e57
|
|
3994
|
+
# Sample files: http://www.libe57.org/data.html
|
|
3995
|
+
# Reference implementation: http://www.libe57.org/
|
|
3996
|
+
# https://www.ri.cmu.edu/pub_files/2011/1/2011-huber-e57-v3.pdf
|
|
3997
|
+
0 string ASTM-E57 ASTM E57 three-dimensional model
|
|
3998
|
+
!:mime model/e57
|
|
3999
|
+
!:ext e57
|
|
4000
|
+
|
|
4001
|
+
# QOI [Quite OK Image Format] images
|
|
4002
|
+
# (Horia Mihai David, mihaidavid@posteo.net)
|
|
4003
|
+
#
|
|
4004
|
+
# QOI format by Dominic Szablewski <http://phoboslab.org/>
|
|
4005
|
+
# <https://qoiformat.org/>
|
|
4006
|
+
#
|
|
4007
|
+
# Based on spec v1.0 (2022.01.05) <https://qoiformat.org/qoi-specification.pdf>
|
|
4008
|
+
|
|
4009
|
+
0 string qoif QOI image data
|
|
4010
|
+
!:ext qoi
|
|
4011
|
+
!:mime image/x-qoi
|
|
4012
|
+
# See <https://github.com/phoboslab/qoi/issues/167>
|
|
4013
|
+
>4 ubelong x %ux
|
|
4014
|
+
>8 ubelong x \b%u,
|
|
4015
|
+
>>13 ubyte 0 s
|
|
4016
|
+
>>>12 ubyte 3 \bRGB
|
|
4017
|
+
>>>12 ubyte 4 \bRGBA
|
|
4018
|
+
>>>12 default x
|
|
4019
|
+
>>>>12 ubyte x \b*bad channels %u*
|
|
4020
|
+
>>>13 ubyte 0 (linear alpha)
|
|
4021
|
+
>>13 ubyte 1
|
|
4022
|
+
>>>12 ubyte 3 RGB
|
|
4023
|
+
>>>12 ubyte 4 RGBA
|
|
4024
|
+
>>>13 ubyte 1 (all channels linear)
|
|
4025
|
+
>>13 default x
|
|
4026
|
+
>>>13 ubyte x *bad colorspace %u*
|
|
4027
|
+
|
|
4028
|
+
|
|
4029
|
+
# Type: Godot 3, 4 texture (pixel format)
|
|
4030
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
4031
|
+
0 name godot-pixel-format
|
|
4032
|
+
>0 ulelong&0xFFFFF 0 L8
|
|
4033
|
+
>0 ulelong&0xFFFFF 1 LA8
|
|
4034
|
+
>0 ulelong&0xFFFFF 2 R8
|
|
4035
|
+
>0 ulelong&0xFFFFF 3 RG8
|
|
4036
|
+
>0 ulelong&0xFFFFF 4 RGB8
|
|
4037
|
+
>0 ulelong&0xFFFFF 5 RGBA8
|
|
4038
|
+
>0 ulelong&0xFFFFF 6 RGBA4444
|
|
4039
|
+
>0 ulelong&0xFFFFF 7 RGB565
|
|
4040
|
+
>0 ulelong&0xFFFFF 8 RF
|
|
4041
|
+
>0 ulelong&0xFFFFF 9 RGF
|
|
4042
|
+
>0 ulelong&0xFFFFF 10 RGBF
|
|
4043
|
+
>0 ulelong&0xFFFFF 11 RGBAF
|
|
4044
|
+
>0 ulelong&0xFFFFF 12 RH
|
|
4045
|
+
>0 ulelong&0xFFFFF 13 RGH
|
|
4046
|
+
>0 ulelong&0xFFFFF 14 RGBH
|
|
4047
|
+
>0 ulelong&0xFFFFF 15 RGBAH
|
|
4048
|
+
>0 ulelong&0xFFFFF 16 RGBE9995
|
|
4049
|
+
>0 ulelong&0xFFFFF 17 DXT1
|
|
4050
|
+
>0 ulelong&0xFFFFF 18 DXT3
|
|
4051
|
+
>0 ulelong&0xFFFFF 19 DXT5
|
|
4052
|
+
>0 ulelong&0xFFFFF 20 RGTC_R
|
|
4053
|
+
>0 ulelong&0xFFFFF 21 RGTC_RG
|
|
4054
|
+
>0 ulelong&0xFFFFF 22 BPTC_RGBA
|
|
4055
|
+
>0 ulelong&0xFFFFF 23 BPTC_RGBF
|
|
4056
|
+
>0 ulelong&0xFFFFF 24 BPTC_RGBFU
|
|
4057
|
+
>0 ulelong&0xFFFFF 25 PVRTC1_2
|
|
4058
|
+
>0 ulelong&0xFFFFF 26 PVRTC1_2A
|
|
4059
|
+
>0 ulelong&0xFFFFF 27 PVRTC1_4
|
|
4060
|
+
>0 ulelong&0xFFFFF 28 PVRTC1_4A
|
|
4061
|
+
>0 ulelong&0xFFFFF 29 ETC
|
|
4062
|
+
>0 ulelong&0xFFFFF 30 ETC2_R11
|
|
4063
|
+
>0 ulelong&0xFFFFF 31 ETC2_R11S
|
|
4064
|
+
>0 ulelong&0xFFFFF 32 ETC2_RG11
|
|
4065
|
+
>0 ulelong&0xFFFFF 33 ETC2_RG11S
|
|
4066
|
+
>0 ulelong&0xFFFFF 34 ETC2_RGB8
|
|
4067
|
+
>0 ulelong&0xFFFFF 35 ETC2_RGBA8
|
|
4068
|
+
>0 ulelong&0xFFFFF 36 ETC2_RGB8A1
|
|
4069
|
+
>0 ulelong&0xFFFFF 37 ASTC_8x8
|
|
4070
|
+
|
|
4071
|
+
# Type: Godot 3, 4 texture (rescale display, width)
|
|
4072
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
4073
|
+
# Shows rescale value if it's not a power of 2.
|
|
4074
|
+
0 name godot-rescale-display-w
|
|
4075
|
+
>0 uleshort 0
|
|
4076
|
+
>0 uleshort 1
|
|
4077
|
+
>0 uleshort 2
|
|
4078
|
+
>0 uleshort 4
|
|
4079
|
+
>0 uleshort 8
|
|
4080
|
+
>0 uleshort 16
|
|
4081
|
+
>0 uleshort 32
|
|
4082
|
+
>0 uleshort 64
|
|
4083
|
+
>0 uleshort 128
|
|
4084
|
+
>0 uleshort 256
|
|
4085
|
+
>0 uleshort 512
|
|
4086
|
+
>0 uleshort 1024
|
|
4087
|
+
>0 uleshort 2048
|
|
4088
|
+
>0 uleshort 4096
|
|
4089
|
+
>0 uleshort 8192
|
|
4090
|
+
>0 uleshort 16384
|
|
4091
|
+
>0 uleshort 32768
|
|
4092
|
+
>0 default x
|
|
4093
|
+
>>0 uleshort x (rescale to %u x
|
|
4094
|
+
|
|
4095
|
+
# Type: Godot 3, 4 texture (rescale display, height)
|
|
4096
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
4097
|
+
# Shows rescale value if it's not a power of 2.
|
|
4098
|
+
0 name godot-rescale-display-h
|
|
4099
|
+
>0 clear x
|
|
4100
|
+
>0 uleshort 0
|
|
4101
|
+
>0 uleshort 1
|
|
4102
|
+
>0 uleshort 2
|
|
4103
|
+
>0 uleshort 4
|
|
4104
|
+
>0 uleshort 8
|
|
4105
|
+
>0 uleshort 16
|
|
4106
|
+
>0 uleshort 32
|
|
4107
|
+
>0 uleshort 64
|
|
4108
|
+
>0 uleshort 128
|
|
4109
|
+
>0 uleshort 256
|
|
4110
|
+
>0 uleshort 512
|
|
4111
|
+
>0 uleshort 1024
|
|
4112
|
+
>0 uleshort 2048
|
|
4113
|
+
>0 uleshort 4096
|
|
4114
|
+
>0 uleshort 8192
|
|
4115
|
+
>0 uleshort 16384
|
|
4116
|
+
>0 uleshort 32768
|
|
4117
|
+
>0 default x
|
|
4118
|
+
>>0 uleshort x %u)
|
|
4119
|
+
|
|
4120
|
+
# Type: Godot 3 texture
|
|
4121
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
4122
|
+
# References:
|
|
4123
|
+
# - https://github.com/godotengine/godot/blob/3.3/core/image.h
|
|
4124
|
+
# - https://github.com/godotengine/godot/blob/3.3/scene/resources/texture.cpp
|
|
4125
|
+
# - https://github.com/godotengine/godot/blob/3.3/scene/resources/texture.h
|
|
4126
|
+
# TODO: Don't show "rescale to" if it matches the image size.
|
|
4127
|
+
0 string GDST Godot 3 texture:
|
|
4128
|
+
!:ext stex
|
|
4129
|
+
!:mime image/x-godot-stex
|
|
4130
|
+
>4 uleshort x %u x
|
|
4131
|
+
>8 uleshort x %u
|
|
4132
|
+
>6 uleshort 0 \b,
|
|
4133
|
+
>6 uleshort !0
|
|
4134
|
+
>>6 use godot-rescale-display-w
|
|
4135
|
+
>>10 use godot-rescale-display-h
|
|
4136
|
+
>>10 uleshort x \b,
|
|
4137
|
+
>16 ulelong&0x800000 !0 has mipmaps,
|
|
4138
|
+
>16 ulelong&0x100000 0x100000 lossless encoding
|
|
4139
|
+
>16 ulelong&0x200000 0x200000 lossy encoding
|
|
4140
|
+
>16 ulelong&0x300000 0
|
|
4141
|
+
>>16 use godot-pixel-format
|
|
4142
|
+
|
|
4143
|
+
# Type: Godot 4 texture
|
|
4144
|
+
# From: David Korth <gerbilsoft@gerbilsoft.com>
|
|
4145
|
+
# References:
|
|
4146
|
+
# - https://github.com/godotengine/godot/blob/master/core/io/image.h
|
|
4147
|
+
# - https://github.com/godotengine/godot/blob/master/scene/resources/texture.cpp
|
|
4148
|
+
# - https://github.com/godotengine/godot/blob/master/scene/resources/texture.h
|
|
4149
|
+
# TODO: Don't show "rescale to" if it matches the image size.
|
|
4150
|
+
0 string GST2 Godot 4 texture
|
|
4151
|
+
!:ext stex
|
|
4152
|
+
!:mime image/x-godot-stex
|
|
4153
|
+
>4 ulelong x v%u:
|
|
4154
|
+
>0x28 uleshort x %u x
|
|
4155
|
+
>0x2A uleshort x %u
|
|
4156
|
+
>8 use godot-rescale-display-w
|
|
4157
|
+
>12 use godot-rescale-display-h
|
|
4158
|
+
>12 uleshort x \b,
|
|
4159
|
+
>0x2C ulelong >1 %u mipmaps,
|
|
4160
|
+
>0x30 use godot-pixel-format
|
|
4161
|
+
>0x24 ulelong 1 \b, embedded PNG image
|
|
4162
|
+
>0x24 ulelong 2 \b, embedded WebP image
|
|
4163
|
+
>0x24 ulelong 3 \b, Basis Universal
|
|
4164
|
+
|
|
4165
|
+
# Summary: iCEDraw graphic *.IDF
|
|
4166
|
+
# URL: http://fileformats.archiveteam.org/wiki/ICEDraw
|
|
4167
|
+
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/i/idf-icedraw.trid.xml
|
|
4168
|
+
# From: Joerg Jenderek
|
|
4169
|
+
# Note: called "iCEDraw graphic" by TrID, "iCEDraw text" by FFmpeg and "iCE Draw" by Ansilove
|
|
4170
|
+
# verified by FFmpeg command `ffprobe ICE-9605.IDF` and `ansilove -s SQ-FORCE.IDF`
|
|
4171
|
+
0 string \0041.4\0\0\0\0O\0 iCEDraw graphic
|
|
4172
|
+
#!:mime application/octet-stream
|
|
4173
|
+
!:mime image/x-idf
|
|
4174
|
+
!:ext idf
|
|
4175
|
+
|
|
4176
|
+
# Type: ColoRIX VGA Paint Image File (.rix/.sci/.scX)
|
|
4177
|
+
# From: Eddy Jansson <github.com/eloj>
|
|
4178
|
+
# Reference: https://www.fileformat.info/format/rix/spec/
|
|
4179
|
+
#
|
|
4180
|
+
0 name rix-header
|
|
4181
|
+
>0 uleshort x \b, %u x
|
|
4182
|
+
>2 uleshort x %u
|
|
4183
|
+
# palette type:
|
|
4184
|
+
# .. if direct color, low bits encode bpp
|
|
4185
|
+
>4 ubyte&128 0
|
|
4186
|
+
>>4 ubyte&127 x \b %u bpp (direct color)
|
|
4187
|
+
# .. else palette
|
|
4188
|
+
>4 ubyte&128 128
|
|
4189
|
+
>>4 ubyte&7 0 \b x 2
|
|
4190
|
+
>>4 ubyte&7 1 \b x 4
|
|
4191
|
+
>>4 ubyte&7 2 \b x 8
|
|
4192
|
+
>>4 ubyte&7 3 \b x 16
|
|
4193
|
+
>>4 ubyte&7 4 \b x 32
|
|
4194
|
+
>>4 ubyte&7 5 \b x 64
|
|
4195
|
+
>>4 ubyte&7 6 \b x 128
|
|
4196
|
+
>>4 ubyte&7 7 \b x 256
|
|
4197
|
+
# storage type
|
|
4198
|
+
#>5 ubyte&15 0 \b, Linear
|
|
4199
|
+
>5 ubyte&15 1 \b, Planar (0213)
|
|
4200
|
+
>5 ubyte&15 2 \b, Planar
|
|
4201
|
+
>5 ubyte&15 3 \b, Text
|
|
4202
|
+
>5 ubyte&15 4 \b, Planar lines
|
|
4203
|
+
>5 ubyte&128 128 \b (compressed)
|
|
4204
|
+
>5 ubyte&64 64 \b (extension)
|
|
4205
|
+
>5 ubyte&32 32 \b (encrypted)
|
|
4206
|
+
|
|
4207
|
+
0 string RIX3 ColoRIX Image
|
|
4208
|
+
>4 use rix-header
|
|
4209
|
+
|
|
4210
|
+
0 string RIX7 ColoRIX Slideshow
|