X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=pdf2swf%2Fttf2pt1%2Fbyteorder.h;fp=pdf2swf%2Fttf2pt1%2Fbyteorder.h;h=c139817e51892789d131e4565c79b6652296fcc6;hb=92c5f229fdf4d1a1d1efd8205dae033e70d07a1a;hp=0000000000000000000000000000000000000000;hpb=774da0eb175e36c6b8a563f3a7af82e6640b19c9;p=swftools.git diff --git a/pdf2swf/ttf2pt1/byteorder.h b/pdf2swf/ttf2pt1/byteorder.h new file mode 100644 index 0000000..c139817 --- /dev/null +++ b/pdf2swf/ttf2pt1/byteorder.h @@ -0,0 +1,24 @@ +/* + * see COPYRIGHT + */ + +/* This defines the macroes ntohs and ntohl, which convert short and long + ints from network order (used on 68000 chips, and in TrueType font + files) to whatever order your computer uses. #define _BIG_ENDIAN or not + to control which set of definitions apply. If you don't know, try both. If + you have a peculiar machine you're on your own. +*/ + +#if defined(_BIG_ENDIAN) +#define ntohl(x) (x) +#define ntohs(x) (x) +#else +#define ntohs(x) \ + ((USHORT)((((USHORT)(x) & 0x00ff) << 8) | \ + (((USHORT)(x) & 0xff00) >> 8))) +#define ntohl(x) \ + ((ULONG)((((ULONG)(x) & 0x000000ffU) << 24) | \ + (((ULONG)(x) & 0x0000ff00U) << 8) | \ + (((ULONG)(x) & 0x00ff0000U) >> 8) | \ + (((ULONG)(x) & 0xff000000U) >> 24))) +#endif