xref: /freebsd/contrib/file/magic/Magdir/dyadic (revision 48c779cdecb5f803e5fe5d761987e976ca9609db)
1b6cee71dSXin LI
2b6cee71dSXin LI#------------------------------------------------------------------------------
3*48c779cdSXin LI# $File: dyadic,v 1.9 2019/04/19 00:42:27 christos Exp $
4b6cee71dSXin LI# Dyadic: file(1) magic for Dyalog APL.
5b6cee71dSXin LI#
6b6cee71dSXin LI# updated by Joerg Jenderek at Oct 2013
7*48c779cdSXin LI# https://en.wikipedia.org/wiki/Dyalog_APL
8*48c779cdSXin LI# https://www.dyalog.com/
9b6cee71dSXin LI# .DXV Dyalog APL External Variable
10b6cee71dSXin LI# .DIN Dyalog APL Input Table
11b6cee71dSXin LI# .DOT Dyalog APL Output Table
12b6cee71dSXin LI# .DFT Dyalog APL Format File
13b6cee71dSXin LI0	ubeshort&0xFF60	0xaa00
14b6cee71dSXin LI# skip biblio.dbt
15b6cee71dSXin LI>1	byte		!4
16b6cee71dSXin LI# real Dyalog APL have non zero version numbers like 7.3 or 13.4
17b6cee71dSXin LI>>2	ubeshort	>0x0000		Dyalog APL
18b6cee71dSXin LI>>>1	byte		0x00		aplcore
19b6cee71dSXin LI#>>>1	byte		0x00		incomplete workspace
20b6cee71dSXin LI# *.DCF Dyalog APL Component File
21b6cee71dSXin LI>>>1	byte		0x01		component file 32-bit non-journaled non-checksummed
22b6cee71dSXin LI#>>>1	byte		0x01		component file
23b6cee71dSXin LI>>>1	byte		0x02		external variable exclusive
24b6cee71dSXin LI#>>>1	byte		0x02		external variable
25b6cee71dSXin LI# *.DWS Dyalog APL Workspace
26b6cee71dSXin LI>>>1	byte		0x03		workspace
27b6cee71dSXin LI>>>>7	byte&0x28	0x00		32-bit
28b6cee71dSXin LI>>>>7	byte&0x28	0x20		64-bit
29b6cee71dSXin LI>>>>7	byte&0x0c	0x00		classic
30b6cee71dSXin LI>>>>7	byte&0x0c	0x04		unicode
31b6cee71dSXin LI>>>>7	byte&0x88	0x00		big-endian
32b6cee71dSXin LI>>>>7	byte&0x88	0x80		little-endian
33b6cee71dSXin LI>>>1	byte		0x06		external variable shared
34b6cee71dSXin LI# *.DSE Dyalog APL Session , *.DLF Dyalog APL Session Log File
35b6cee71dSXin LI>>>1	byte		0x07		session
36b6cee71dSXin LI>>>1	byte		0x08		mapped file 32-bit
37b6cee71dSXin LI>>>1	byte		0x09		component file 64-bit non-journaled non-checksummed
38b6cee71dSXin LI>>>1	byte		0x0a		mapped file 64-bit
39b6cee71dSXin LI>>>1	byte		0x0b		component file 32-bit level 1 journaled non-checksummed
40b6cee71dSXin LI>>>1	byte		0x0c		component file 64-bit level 1 journaled non-checksummed
41b6cee71dSXin LI>>>1	byte		0x0d		component file 32-bit level 1 journaled checksummed
42b6cee71dSXin LI>>>1	byte		0x0e		component file 64-bit level 1 journaled checksummed
43b6cee71dSXin LI>>>1	byte		0x0f		component file 32-bit level 2 journaled checksummed
44b6cee71dSXin LI>>>1	byte		0x10		component file 64-bit level 2 journaled checksummed
45b6cee71dSXin LI>>>1	byte		0x11		component file 32-bit level 3 journaled checksummed
46b6cee71dSXin LI>>>1	byte		0x12		component file 64-bit level 3 journaled checksummed
47b6cee71dSXin LI>>>1	byte		0x13		component file 32-bit non-journaled checksummed
48b6cee71dSXin LI>>>1	byte		0x14		component file 64-bit non-journaled checksummed
495f0216bdSXin LI>>>1	byte		0x15		component file under construction
505f0216bdSXin LI>>>1	byte		0x16		DFS component file 64-bit level 1 journaled checksummed
515f0216bdSXin LI>>>1	byte		0x17		DFS component file 64-bit level 2 journaled checksummed
525f0216bdSXin LI>>>1	byte		0x18		DFS component file 64-bit level 3 journaled checksummed
535f0216bdSXin LI>>>1	byte		0x19		external workspace
54b6cee71dSXin LI>>>1	byte		0x80		DDB
55b6cee71dSXin LI>>>2	byte		x		version %d
56b6cee71dSXin LI>>>3	byte		x		\b.%d
57b6cee71dSXin LI#>>>2	byte		x		type %d
58b6cee71dSXin LI#>>>3	byte		x		subtype %d
59b6cee71dSXin LI
60b6cee71dSXin LI# *.DXF Dyalog APL Transfer File
61b6cee71dSXin LI0	short		0x6060		Dyalog APL transfer
62