1327e51cbSPeter Avalos 2327e51cbSPeter Avalos#------------------------------------------------------------------------------ 3*6fca56fbSSascha Wildner# $File: dyadic,v 1.9 2019/04/19 00:42:27 christos Exp $ 4327e51cbSPeter Avalos# Dyadic: file(1) magic for Dyalog APL. 5327e51cbSPeter Avalos# 682c5fa3eSPeter Avalos# updated by Joerg Jenderek at Oct 2013 7*6fca56fbSSascha Wildner# https://en.wikipedia.org/wiki/Dyalog_APL 8*6fca56fbSSascha Wildner# https://www.dyalog.com/ 982c5fa3eSPeter Avalos# .DXV Dyalog APL External Variable 1082c5fa3eSPeter Avalos# .DIN Dyalog APL Input Table 1182c5fa3eSPeter Avalos# .DOT Dyalog APL Output Table 1282c5fa3eSPeter Avalos# .DFT Dyalog APL Format File 1382c5fa3eSPeter Avalos0 ubeshort&0xFF60 0xaa00 1482c5fa3eSPeter Avalos# skip biblio.dbt 1582c5fa3eSPeter Avalos>1 byte !4 1682c5fa3eSPeter Avalos# real Dyalog APL have non zero version numbers like 7.3 or 13.4 1782c5fa3eSPeter Avalos>>2 ubeshort >0x0000 Dyalog APL 1882c5fa3eSPeter Avalos>>>1 byte 0x00 aplcore 1982c5fa3eSPeter Avalos#>>>1 byte 0x00 incomplete workspace 2082c5fa3eSPeter Avalos# *.DCF Dyalog APL Component File 2182c5fa3eSPeter Avalos>>>1 byte 0x01 component file 32-bit non-journaled non-checksummed 2282c5fa3eSPeter Avalos#>>>1 byte 0x01 component file 2382c5fa3eSPeter Avalos>>>1 byte 0x02 external variable exclusive 2482c5fa3eSPeter Avalos#>>>1 byte 0x02 external variable 2582c5fa3eSPeter Avalos# *.DWS Dyalog APL Workspace 2682c5fa3eSPeter Avalos>>>1 byte 0x03 workspace 2782c5fa3eSPeter Avalos>>>>7 byte&0x28 0x00 32-bit 2882c5fa3eSPeter Avalos>>>>7 byte&0x28 0x20 64-bit 2982c5fa3eSPeter Avalos>>>>7 byte&0x0c 0x00 classic 3082c5fa3eSPeter Avalos>>>>7 byte&0x0c 0x04 unicode 3182c5fa3eSPeter Avalos>>>>7 byte&0x88 0x00 big-endian 3282c5fa3eSPeter Avalos>>>>7 byte&0x88 0x80 little-endian 3382c5fa3eSPeter Avalos>>>1 byte 0x06 external variable shared 3482c5fa3eSPeter Avalos# *.DSE Dyalog APL Session , *.DLF Dyalog APL Session Log File 3582c5fa3eSPeter Avalos>>>1 byte 0x07 session 3682c5fa3eSPeter Avalos>>>1 byte 0x08 mapped file 32-bit 3782c5fa3eSPeter Avalos>>>1 byte 0x09 component file 64-bit non-journaled non-checksummed 3882c5fa3eSPeter Avalos>>>1 byte 0x0a mapped file 64-bit 3982c5fa3eSPeter Avalos>>>1 byte 0x0b component file 32-bit level 1 journaled non-checksummed 4082c5fa3eSPeter Avalos>>>1 byte 0x0c component file 64-bit level 1 journaled non-checksummed 4182c5fa3eSPeter Avalos>>>1 byte 0x0d component file 32-bit level 1 journaled checksummed 4282c5fa3eSPeter Avalos>>>1 byte 0x0e component file 64-bit level 1 journaled checksummed 4382c5fa3eSPeter Avalos>>>1 byte 0x0f component file 32-bit level 2 journaled checksummed 4482c5fa3eSPeter Avalos>>>1 byte 0x10 component file 64-bit level 2 journaled checksummed 4582c5fa3eSPeter Avalos>>>1 byte 0x11 component file 32-bit level 3 journaled checksummed 4682c5fa3eSPeter Avalos>>>1 byte 0x12 component file 64-bit level 3 journaled checksummed 4782c5fa3eSPeter Avalos>>>1 byte 0x13 component file 32-bit non-journaled checksummed 4882c5fa3eSPeter Avalos>>>1 byte 0x14 component file 64-bit non-journaled checksummed 49c30bd091SSascha Wildner>>>1 byte 0x15 component file under construction 50c30bd091SSascha Wildner>>>1 byte 0x16 DFS component file 64-bit level 1 journaled checksummed 51c30bd091SSascha Wildner>>>1 byte 0x17 DFS component file 64-bit level 2 journaled checksummed 52c30bd091SSascha Wildner>>>1 byte 0x18 DFS component file 64-bit level 3 journaled checksummed 53c30bd091SSascha Wildner>>>1 byte 0x19 external workspace 5482c5fa3eSPeter Avalos>>>1 byte 0x80 DDB 5582c5fa3eSPeter Avalos>>>2 byte x version %d 5682c5fa3eSPeter Avalos>>>3 byte x \b.%d 5782c5fa3eSPeter Avalos#>>>2 byte x type %d 5882c5fa3eSPeter Avalos#>>>3 byte x subtype %d 59e4d4ce0cSPeter Avalos 6082c5fa3eSPeter Avalos# *.DXF Dyalog APL Transfer File 61e4d4ce0cSPeter Avalos0 short 0x6060 Dyalog APL transfer 62