# Copyright 2002 by Eric House (fixin@peak.org). All rights reserved. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. LANGCODE:HEX # uppercase all LANGFILTER_POSTCLIP: | tr [a-f] [A-F] LANGFILTER_POSTCLIP: | grep '^[A-F]*$' LANGFILTER_POSTCLIP: | tr '\n' '\000' LANGFILTER_POSTCLIP: | sort -z NEEDSSORT:false LANGINFO:

The hex "language" is something of a programmers' joke. LANGINFO: Hex is short for hexadecimal, a 16-base number system whose LANGINFO: "digits" are the numerals 0-9 plus the letters A-F. Hex LANGINFO: letters are often used to represent computer data, and LANGINFO: certain sequences are sometimes used as markers because LANGINFO: they're easy to pick out in large dumps of otherwise LANGINFO: meaningless (to humans) garbage. In staring at Mac memory LANGINFO: dumps, for example, you'd occasionally see the letters LANGINFO: DEADBEEF and know that memory in that area was probably LANGINFO: undamaged.

LANGINFO:

I use Hex dictionaries for testing since they have few LANGINFO: tiles and games play quickly. That's also why the Hex LANGINFO: tile set has four blanks; that's the largest number LANGINFO: Crosswords supports and I needed to test at the limit.

# High bit means "official". Next 7 bits are an enum where Hex==127 # (I just made that up; not sure what it was originally.) Low byte is # padding XLOC_HEADER:0xFF00 4 0 {"_"} 9 1 'A' 2 3 'B' 2 3 'C' 4 2 'D' 12 1 'E' 2 4 'F' # should ignore all after the above