Previous: argument-summary Up: ../chrrtn.html Next: chrasc


REHOSTING-THE-CHRxxx-FAMILY


 Although  the  KARxxx  routines  are  functionally  identical  on   all
 machines, internally they have  to deal with  the word size,  character
 size, and byte storage order of the host machine.  They therefore  tend
 to need modification  for each  new host, and  if they  are written  in
 assembly code, must be entirely rewritten to be retargeted.  The CHRxxx
 routines are much easier to adapt, since they can largely be written in
 standard conforming  FORTRAN  77,  although  one  may  still  wish  for
 efficiency reasons to write some of them in a lower level language.

 CHRASC and CHRORD need  to deal with the  possibility that ICHAR()  (if
 they use it) may return a negative value which must be remapped.

 CHRASC and CHRLCL will need a lookup table on non-ASCII hosts.

 CHRCHR and CHRLCL need  to be able  to select low  order bits of  their
 argument; they currently use the bit primitive IBTAND for this purpose,
 but the mask values may need adjustment for other machines.

 CHRVFY and CHRXLT are implemented  with lookup tables whose  dimensions
 must be at least as large as the host character set size.