Unternehmensberatung Dieckmann

Home Report excerpts References DIHYPH -
Detailed programm descriptions Price List
InDesign PlugIns Contact







DIHYPH Unicode-16 Version

Character coding

Using editable code table "dhco??" or "dtco??" (?? =language-no. 01-50)
DIHYPH and DITECT are working with 1 byte character code, so the 2-byte
Unicode is internally converted into Iso-8859 code by calling:

DMCREPUC (1, nn, ptu, pti);

If needed Iso-code is converted back to Unicode by calling module:
DMCREPUC (2, nn, ptu, pti);
              |   |    |__ pointer to Iso-code string  (char)
              |   |_______ pointer to Unicode    " (unsigned short)
              |___________ language-no. (e.g. 02 = UK-English)

When calling DIHYPH or DITECT all Unicode strings must:
- start without BOM (byte order mark)
- end with hex: 00 00
- variable 'alc' be set to number of string characters.
e.g.: Unicode string (hex.):
00 65 00 78 00 61 00 6D 00 70 00 6C 00 65 00 00
alc = 7; (or higher !).
If 'alc=9999;' is set to a high number, the program recognizes end of string
by characters 00 00.

To tell the program whether a Unicode string has 'LE' (little endian byte order)
or 'BE' (big endian byte order), switch "unibom=0;" is defined in DHDEF.C
The program checks byte order of the strings automatically !

Module DMCREPUC.c uses code conversion file DMCREPUC

Unicode-programs differ from standard DIHYPH / DITECT as follows:

All Unicode-modules have the same type of name:
 |  | |____  Unicode version
 |  |
 |  |______  ???? unspecific letters
 |_________  h  = for DIHYPH program
 |_________  t  = for DITECT program
 |_________  m  = for DIHYPH and DITECT

To link DIHYPH according to installation description,
following programs and files have to be used for Unicode:
file           instead of     for
__________     __________     _______________________

DHTESTUC.c     DHTEST.c       DIHYPH-testprogram   *)


DMRDWTUC.c     (additional C-source)              **)

DMCREPUC.c     (additional C-source)

DMCREPUC       (additional code file)

*) used for test-programs only !
**) used for exception- and test-programs !

DIHYPH has to be called by text-/publishing system by:
alc= nn;    (nn = number of characters in 'luni' string or higher)
rc = DHYPH (luni, nn);
             |    |____  (integer)  language-no.  1 - 50
             |_________  (unsigned short) Unicode character string.

DIHYPH Unicode test-program   DHTESTUC.EXE

DHTESTUC  nn  infile  [outfile]  [(...)]
                                  (...) = test commands [optional].  
                                  (?)     displays possible commands.
                       outfile = test results in Unicode-16.
              infile = test words in Unicode-16, one word per line.	
          nn = language-no. 01 - 50
Test results are also diplayed on screen in ISO-encoding.