🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #2047

Re: GCC 1.31 Sun4, Sys4-3.2 & X.V11R3

#2047
From: Keith McNeill
Date: Mon, 05 Dec 1988 16:44
4273 lines
49185 bytes
#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of shell archive."
# Contents:  bdftosnf.part.i
# Wrapped by mcneill@eplrx7 on Mon Dec  5 11:42:29 1988
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'bdftosnf.part.i' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bdftosnf.part.i'\"
else
echo shar: Extracting \"'bdftosnf.part.i'\" \(39316 characters\)
sed "s/^X//" >'bdftosnf.part.i' <<'END_OF_FILE'
X# 1 "bdftosnf.c"
X
X
X# 1 "/usr/include/stdio.h"
X
X
X
X
X
Xextern	struct	_iobuf {
X	int	_cnt;
X	unsigned char *_ptr;
X	unsigned char *_base;
X	int	_bufsiz;
X	short	_flag;
X	char	_file;		
X} _iob[];
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xextern struct _iobuf	*fopen();
Xextern struct _iobuf	*fdopen();
Xextern struct _iobuf	*freopen();
Xextern struct _iobuf	*popen();
Xextern struct _iobuf	*tmpfile();
Xextern long	ftell();
Xextern char	*fgets();
Xextern char	*gets();
X
X
X
Xextern char	*ctermid();
Xextern char	*cuserid();
Xextern char	*tempnam();
Xextern char	*tmpnam();
X
X
X
X
X
X
X# 3 "bdftosnf.c"
X
X# 1 "../.././X11/Xos.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "/usr/include/sys/types.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xextern int setjmp();
X#pragma unknown_control_flow(setjmp)
X
X# 1 "/usr/include/sys/sysmacros.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 18 "/usr/include/sys/types.h"
X
X
Xtypedef	unsigned char	u_char;
Xtypedef	unsigned short	u_short;
Xtypedef	unsigned int	u_int;
Xtypedef	unsigned long	u_long;
Xtypedef	unsigned short	ushort;		
Xtypedef	unsigned int	uint;		
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct  _physadr { int r[1]; } *physadr;
Xtypedef struct label_t {
X	int     val[2];
X} label_t;
X
Xtypedef	struct	_quad { long val[2]; } quad;
Xtypedef	long	daddr_t;
Xtypedef	char *	caddr_t;
Xtypedef	u_long	ino_t;
Xtypedef	long	swblk_t;
Xtypedef	int	size_t;
Xtypedef	long	time_t;
Xtypedef	short	dev_t;
Xtypedef	int	off_t;
Xtypedef long	key_t;
X
Xtypedef	struct	fd_set { int fds_bits[1]; } fd_set;
X
X
X# 37 "../.././X11/Xos.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "/usr/include/strings.h"
X
X
X
X
X
X
Xchar	*strcat();
Xchar	*strncat();
Xint	strcmp();
Xint	strncmp();
Xchar	*strcpy();
Xchar	*strncpy();
Xint	strlen();
Xchar	*index();
Xchar	*rindex();
X# 68 "../.././X11/Xos.h"
X
X
X
X
X
X
X
X
X
X
X
X# 1 "/usr/include/sys/file.h"
X
X
X
X
X
X# 1 "/usr/include/sys/fcntl.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xstruct flock {
X        short   l_type;		
X        short   l_whence;	
X        long    l_start;	
X        long    l_len;          
X        short   l_pid;		
X        short   l_xxx;		
X};
X
X
X# 6 "/usr/include/sys/file.h"
X
X
X# 33 "/usr/include/sys/file.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 80 "/usr/include/sys/file.h"
X
X
X
X# 79 "../.././X11/Xos.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "/usr/include/sys/time.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xstruct timeval {
X	long	tv_sec;		
X	long	tv_usec;	
X};
X
Xstruct timezone {
X	int	tz_minuteswest;	
X	int	tz_dsttime;	
X};
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xstruct	itimerval {
X	struct	timeval it_interval;	
X	struct	timeval it_value;	
X};
X
X
X# 1 "/usr/include/time.h"
X
X
X
X
X
Xstruct tm {
X	int	tm_sec;
X	int	tm_min;
X	int	tm_hour;
X	int	tm_mday;
X	int	tm_mon;
X	int	tm_year;
X	int	tm_wday;
X	int	tm_yday;
X	int	tm_isdst;
X};
X
Xextern	struct tm *gmtime(), *localtime();
Xextern	char *asctime(), *ctime();
X# 62 "/usr/include/sys/time.h"
X
X
X
X
X# 96 "../.././X11/Xos.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 4 "bdftosnf.c"
X
X# 1 "/usr/include/errno.h"
X
X
X
X
X
X
X# 1 "/usr/include/sys/errno.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X	
X
X
X
X
X
X
X
X
X
X
X
X
X
X	
X
X
X
X
X
X
X
X
X
X
X
X
X
X	
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 7 "/usr/include/errno.h"
X
Xextern int errno;
X# 5 "bdftosnf.c"
X
X# 1 "/usr/include/ctype.h"
X
X
X
X
X
X
X
X
X
X
X
Xextern	char	_ctype_[];
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 6 "bdftosnf.c"
X
X	extern char *malloc(), *realloc();
X
X# 1 "../.././server/include/misc.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xextern unsigned long globalSerialNumber;
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef unsigned char *pointer;
Xtypedef int Bool;
Xtypedef unsigned long PIXEL;
Xtypedef unsigned long ATOM;
X
X
X
X
X
X
X# 1 "../.././server/include/os.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././server/include/misc.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 117 "../.././server/include/misc.h"
X
X# 29 "../.././server/include/os.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef pointer	FID;
Xtypedef struct _FontPathRec *FontPathPtr;
Xtypedef struct _NewClientRec *NewClientPtr;
X
X
X
X
X
X
X
X
X
X
X# 69 "../.././server/include/os.h"
X
X
X
X
X
X
X
X
X
Xchar *alloca();
X
X
X
X
X
X# 92 "../.././server/include/os.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xchar		*ReadRequestFromClient();
Xchar		*strcat();
Xchar		*strncat();
Xchar		*strcpy();
Xchar		*strncpy();
XBool		CloseDownConnection();
XFontPathPtr	GetFontPath();
XFontPathPtr	ExpandFontNamePattern();
XFID		FiOpenForRead();
Xvoid		CreateWellKnownSockets();
Xvoid		SetDefaultFontPath();
Xvoid		FreeFontRecord();
Xvoid		SetFontPath();
Xvoid		ErrorF();
Xvoid		Error();
Xvoid		FatalError();
Xvoid		ProcessCommandLine();
Xvoid		Xfree();
Xvoid		FlushAllOutput();
Xvoid		FlushIfCriticalOutputPending();
Xunsigned long	*Xalloc();
Xunsigned long	*Xrealloc();
Xlong		GetTimeInMillis();
X
X
X# 58 "../.././server/include/misc.h"
X
X
X
X
X
X
X    
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct _DDXPoint *DDXPointPtr;
Xtypedef struct _Box *BoxPtr;
X
X
X# 9 "bdftosnf.c"
X
X# 1 "../.././X11/X.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef unsigned long XID;
X
Xtypedef XID Window;
Xtypedef XID Drawable;
Xtypedef XID Font;
Xtypedef XID Pixmap;
Xtypedef XID Cursor;
Xtypedef XID Colormap;
Xtypedef XID GContext;
Xtypedef XID KeySym;
X
Xtypedef unsigned long Mask;
X
Xtypedef unsigned long Atom;
X
Xtypedef unsigned long VisualID;
X
Xtypedef unsigned long Time;
X
Xtypedef unsigned char KeyCode;
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X		       
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 311 "../.././X11/X.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 10 "bdftosnf.c"
X
X# 1 "../.././X11/Xproto.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././X11/Xmd.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef long           INT32;
Xtypedef short          INT16;
Xtypedef char           INT8;
X
Xtypedef unsigned long CARD32;
Xtypedef unsigned short CARD16;
Xtypedef unsigned char  CARD8;
X
Xtypedef unsigned long		BITS32;
Xtypedef unsigned short		BITS16;
Xtypedef unsigned char		BYTE;
X
Xtypedef unsigned char            BOOL;
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X  
X
X
X
X
X# 53 "../.././X11/Xproto.h"
X
X# 1 "../.././X11/Xprotostr.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././X11/Xmd.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 139 "../.././X11/Xmd.h"
X
X# 28 "../.././X11/Xprotostr.h"
X
X
X
X
Xtypedef struct _xSegment {
X    INT16 x1 , y1 , x2 , y2 ;
X} xSegment;
X
X
X
Xtypedef struct _xPoint {
X	INT16		x , y ;
X} xPoint;
X
Xtypedef struct _xRectangle {
X    INT16 x , y ;
X    CARD16  width , height ;
X} xRectangle;
X
X
X
Xtypedef struct _xArc {
X    INT16 x , y ;
X    CARD16   width , height ;
X    INT16   angle1 , angle2 ;
X} xArc;
X
X
X# 54 "../.././X11/Xproto.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef CARD16 KeyButMask;
X
X
X
X
X
X
Xtypedef struct {
X    CARD8	byteOrder;
X    BYTE	pad;
X    CARD16	majorVersion , minorVersion ;
X    CARD16	nbytesAuthProto ;	
X    CARD16	nbytesAuthString ;	
X    CARD16	pad2;
X} xConnClientPrefix;
X
Xtypedef struct {
X    BOOL           success;
X    BYTE           lengthReason; 
X    CARD16         majorVersion , 
X                   minorVersion ;
X    CARD16         length ;  
X} xConnSetupPrefix;
X
X
Xtypedef struct {
X    CARD32         release ;
X    CARD32         ridBase , 
X                   ridMask ;
X    CARD32         motionBufferSize ;
X    CARD16         nbytesVendor ;  
X    CARD16         maxRequestSize ;
X    CARD8          numRoots;          
X    CARD8          numFormats;        
X    CARD8          imageByteOrder;        
X    CARD8          bitmapBitOrder;        
X    CARD8          bitmapScanlineUnit,     
X                   bitmapScanlinePad;     
X    CARD8	   minKeyCode, maxKeyCode;
X    CARD32	   pad2 ;
X} xConnSetup;
X
Xtypedef struct {
X    CARD8          depth;
X    CARD8          bitsPerPixel;
X    CARD8          scanLinePad;
X    CARD8          pad1;
X    CARD32	   pad2 ;
X} xPixmapFormat;
X
X
X
Xtypedef struct {
X    CARD8 	depth;
X    CARD8 	pad1;
X    CARD16	nVisuals ;  
X    CARD32	pad2 ;
X    } xDepth;
X
Xtypedef struct {
X    CARD32 visualID ;
X    CARD8 class;
X    CARD8 bitsPerRGB;
X    CARD16 colormapEntries ;
X    CARD32 redMask , greenMask , blueMask ;
X    CARD32 pad ;
X    } xVisualType;
X
Xtypedef struct {
X    CARD32         windowId ;
X    CARD32       defaultColormap ;
X    CARD32         whitePixel , blackPixel ;
X    CARD32         currentInputMask ;   
X    CARD16         pixWidth , pixHeight ;
X    CARD16         mmWidth , mmHeight ;
X    CARD16         minInstalledMaps , maxInstalledMaps ;
X    CARD32       rootVisualID ;
X    CARD8          backingStore;
X    BOOL           saveUnders;
X    CARD8          rootDepth;
X    CARD8          nDepths;  
X} xWindowRoot;
X
X
X
X
X
X
X
X
X
Xtypedef struct {
X    CARD32 time ;
X    INT16 x , y ;
X} xTimecoord;
X
Xtypedef struct {
X    CARD8 family;
X    BYTE pad;
X    CARD16 length ;
X} xHostEntry;
X
Xtypedef struct {
X    INT16 leftSideBearing ,
X	  rightSideBearing ,
X	  characterWidth ,
X	  ascent ,
X	  descent ;
X    CARD16 attributes ;
X} xCharInfo;
X
Xtypedef struct {
X    CARD32 name ;
X    CARD32 value ;
X} xFontProp;
X
X
X
X
Xtypedef struct {           
X    CARD8 len;	
X
X    INT8 delta;
X} xTextElt;
X
X
Xtypedef struct {        
X    CARD32 pixel ;
X    CARD16 red , green , blue ;
X    CARD8 flags;  
X    CARD8 pad;
X} xColorItem;
X
X
Xtypedef struct {
X    CARD16 red , green , blue , pad ;
X} xrgb;
X
Xtypedef CARD8 KEYCODE;
X
X
X
X
X
X
X
X# 937 "../.././X11/Xproto.h"
X
X
X
X
X
X
X
X
X
X
Xtypedef struct {
X    BYTE type;                  
X    BYTE errorCode;
X    CARD16 sequenceNumber ;       
X    CARD32 resourceID ;
X    CARD16 minorCode ;
X    CARD8 majorCode;
X    BYTE pad1;
X    CARD32 pad3 ;
X    CARD32 pad4 ;
X    CARD32 pad5 ;
X    CARD32 pad6 ;
X    CARD32 pad7 ;
X} xError;
X
X
X
X
X
X
X# 1196 "../.././X11/Xproto.h"
X
X
X
X
X
X
X
X
X
X# 1250 "../.././X11/Xproto.h"
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct {
X	CARD8 reqType;
X	CARD8 data;            
X	CARD16 length ;         
X
X} xReq;
X
X
X
X
X
X
X
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 id ;  
X    } xResourceReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 depth;
X    CARD16 length ;
X    CARD32 wid , parent ;
X    INT16 x , y ;
X    CARD16 width , height , borderWidth ;  
X    CARD16 class ;
X    CARD32 visual ;
X    CARD32 mask ;
X} xCreateWindowReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 valueMask ; 
X} xChangeWindowAttributesReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE mode;
X    CARD16 length ;
X    CARD32 window ;
X} xChangeSaveSetReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window , parent ;
X    INT16 x , y ;
X} xReparentWindowReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD16 mask ;
X    CARD16 pad2 ;
X} xConfigureWindowReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 direction;
X    CARD16 length ;
X    CARD32 window ;
X} xCirculateWindowReq;
X
Xtypedef struct {    
X    CARD8 reqType;
X    BOOL onlyIfExists;
X    CARD16 length ;
X    CARD16 nbytes  ;    
X    CARD16 pad ;
X} xInternAtomReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 mode;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 property , type ;
X    CARD8 format;
X    BYTE pad[3];
X    CARD32 nUnits ;     
X} xChangePropertyReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 property ;
X} xDeletePropertyReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL delete;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 property , type ;
X    CARD32 longOffset ;
X    CARD32 longLength ;
X} xGetPropertyReq;
X 
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 selection ;
X    CARD32 time ;
X} xSetSelectionOwnerReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 requestor ;
X    CARD32 selection , target , property ;
X    CARD32 time ;
X    } xConvertSelectionReq;
X
X# 1404 "../.././X11/Xproto.h"
X
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL ownerEvents;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD16 eventMask ;
X    BYTE pointerMode, keyboardMode;
X    CARD32 confineTo ;
X    CARD32 cursor ;
X    CARD32 time ;
X} xGrabPointerReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL ownerEvents;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD16 eventMask ;
X    BYTE pointerMode, keyboardMode;
X    CARD32 confineTo ;
X    CARD32 cursor ;
X    CARD8 button;
X    BYTE pad;
X    CARD16 modifiers ;
X} xGrabButtonReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 button;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD16 modifiers ;
X    CARD16 pad ;
X} xUngrabButtonReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cursor ;
X    CARD32 time ;
X    CARD16 eventMask ;
X    CARD16 pad2 ;
X} xChangeActivePointerGrabReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL ownerEvents;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD32 time ;
X    BYTE pointerMode, keyboardMode;  
X    CARD16 pad ;
X} xGrabKeyboardReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL ownerEvents;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD16 modifiers ;
X    CARD8 key;
X    BYTE pointerMode, keyboardMode;  
X    BYTE pad1, pad2, pad3;
X} xGrabKeyReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 key;
X    CARD16 length ;
X    CARD32 grabWindow ;
X    CARD16 modifiers ;
X    CARD16 pad ;
X} xUngrabKeyReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 mode;
X    CARD16 length ;
X    CARD32 time ;
X} xAllowEventsReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD32 start , stop ;
X} xGetMotionEventsReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 srcWid , dstWid ;
X    INT16 srcX , srcY ;
X} xTranslateCoordsReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 srcWid , dstWid ;
X    INT16 srcX , srcY ;
X    CARD16 srcWidth , srcHeight ;
X    INT16 dstX , dstY ;
X} xWarpPointerReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 revertTo;
X    CARD16 length ;
X    CARD32 focus ;
X    CARD32 time ;
X} xSetInputFocusReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 fid ;
X    CARD16 nbytes ;
X    BYTE pad1, pad2;	
X} xOpenFontReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL oddLength;
X    CARD16 length ;
X    CARD32 fid ;
X    } xQueryTextExtentsReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD16 maxNames ;
X    CARD16 nbytes ;  
X} xListFontsReq;
X
Xtypedef xListFontsReq xListFontsWithInfoReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD16 nFonts ;
X    BYTE pad1, pad2;	
X} xSetFontPathReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 depth;
X    CARD16 length ;
X    CARD32 pid ;
X    CARD32 drawable ;
X    CARD16 width , height ;
X} xCreatePixmapReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 gc ;
X    CARD32 drawable ;
X    CARD32 mask ;
X} xCreateGCReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 gc ;
X    CARD32 mask ;
X} xChangeGCReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 srcGC , dstGC ;
X    CARD32 mask ;
X} xCopyGCReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 gc ;
X    CARD16 dashOffset ;
X    CARD16 nDashes ;        
X} xSetDashesReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE ordering;
X    CARD16 length ;
X    CARD32 gc ;
X    INT16 xOrigin , yOrigin ;
X} xSetClipRectanglesReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL exposures;
X    CARD16 length ;
X    CARD32 window ;
X    INT16 x , y ;
X    CARD16 width , height ;
X} xClearAreaReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 srcDrawable , dstDrawable ;
X    CARD32 gc ;
X    INT16 srcX , srcY , dstX , dstY ;
X    CARD16 width , height ;
X} xCopyAreaReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 srcDrawable , dstDrawable ;
X    CARD32 gc ;
X    INT16 srcX , srcY , dstX , dstY ;
X    CARD16 width , height ;
X    CARD32 bitPlane ;
X} xCopyPlaneReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE coordMode;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X} xPolyPointReq;    
X
Xtypedef xPolyPointReq xPolyLineReq;  
X
X
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X} xPolySegmentReq;    
X
Xtypedef xPolySegmentReq xPolyArcReq;
Xtypedef xPolySegmentReq xPolyRectangleReq;
Xtypedef xPolySegmentReq xPolyFillRectangleReq;
Xtypedef xPolySegmentReq xPolyFillArcReq;
X
Xtypedef struct _FillPolyReq {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X    BYTE shape;
X    BYTE coordMode;
X    CARD16 pad1 ;
X} xFillPolyReq;    
X
X
Xtypedef struct _PutImageReq {
X    CARD8 reqType;
X    CARD8 format;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X    CARD16 width , height ;
X    INT16 dstX , dstY ;
X    CARD8 leftPad;
X    CARD8 depth;
X    CARD16 pad ;
X} xPutImageReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 format;
X    CARD16 length ;
X    CARD32 drawable ;
X    INT16 x , y ;
X    CARD16 width , height ;
X    CARD32 planeMask ;
X} xGetImageReq;    
X
X
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 pad;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X    INT16 x , y ;		
X} xPolyTextReq;    
X
Xtypedef xPolyTextReq xPolyText8Req;
Xtypedef xPolyTextReq xPolyText16Req;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE nChars;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD32 gc ;
X    INT16 x , y ;
X} xImageTextReq;    
X
Xtypedef xImageTextReq xImageText8Req;
Xtypedef xImageTextReq xImageText16Req;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE alloc;
X    CARD16 length ;
X    CARD32 mid ;
X    CARD32 window ;
X    CARD32 visual ;
X} xCreateColormapReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 mid ;
X    CARD32 srcCmap ;
X} xCopyColormapAndFreeReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD16 red , green , blue ;
X    CARD16 pad2 ;
X} xAllocColorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD16 nbytes ;  
X    BYTE pad1, pad2;
X} xAllocNamedColorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL contiguous;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD16 colors , planes ;
X} xAllocColorCellsReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BOOL contiguous;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD16 colors , red , green , blue ;
X} xAllocColorPlanesReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD32 planeMask ;
X} xFreeColorsReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X} xStoreColorsReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 flags;   
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD32 pixel ;
X    CARD16 nbytes ;  
X    BYTE pad1, pad2;
X    } xStoreNamedColorReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X} xQueryColorsReq;    
X
Xtypedef struct {    
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cmap ;
X    CARD16 nbytes ;  
X    BYTE pad1, pad2;
X} xLookupColorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cid ;
X    CARD32 source , mask ;
X    CARD16 foreRed , foreGreen , foreBlue ;
X    CARD16 backRed , backGreen , backBlue ;
X    CARD16 x , y ;
X} xCreateCursorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cid ;
X    CARD32 source , mask ;
X    CARD16 sourceChar , maskChar ;
X    CARD16 foreRed , foreGreen , foreBlue ;
X    CARD16 backRed , backGreen , backBlue ;
X} xCreateGlyphCursorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 cursor ;
X    CARD16 foreRed , foreGreen , foreBlue ;
X    CARD16 backRed , backGreen , backBlue ;
X} xRecolorCursorReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 class;
X    CARD16 length ;
X    CARD32 drawable ;
X    CARD16 width , height ;
X} xQueryBestSizeReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD16 nbytes ;  
X    BYTE pad1, pad2;
X} xQueryExtensionReq;
X
Xtypedef struct {
X    CARD8   reqType;
X    CARD8   numKeyPerModifier;
X    CARD16  length ;
X} xSetModifierMappingReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 nElts;  
X    CARD16 length ;
X} xSetPointerMappingReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD8 firstKeyCode;
X    CARD8 count;
X    CARD16 pad1 ;
X} xGetKeyboardMappingReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    CARD8 keyCodes;
X    CARD16 length ;
X    CARD8 firstKeyCode;
X    CARD8 keySymsPerKeyCode;
X    CARD16 pad1 ;
X} xChangeKeyboardMappingReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 mask ;
X} xChangeKeyboardControlReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    INT8 percent;  
X    CARD16 length ;
X} xBellReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    INT16 accelNum , accelDenum ;
X    INT16 threshold ;             
X    BOOL doAccel, doThresh;
X} xChangePointerControlReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    INT16 timeout , interval ;
X    BYTE preferBlank, allowExpose;  
X    CARD16 pad2 ;
X} xSetScreenSaverReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE mode;
X    CARD16 length ;
X    CARD8 hostFamily;
X    BYTE pad;
X    CARD16 hostLength ;
X} xChangeHostsReq;    
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    } xListHostsReq;
X
Xtypedef struct {
X    CARD8 reqType;
X    BYTE mode;
X    CARD16 length ;
X    } xChangeModeReq;
X
Xtypedef xChangeModeReq xSetAccessControlReq;
Xtypedef xChangeModeReq xSetCloseDownModeReq;
Xtypedef xChangeModeReq xForceScreenSaverReq;
X
Xtypedef struct { 
X    CARD8 reqType;
X    BYTE pad;
X    CARD16 length ;
X    CARD32 window ;
X    CARD16 nAtoms ;
X    INT16 nPositions ;
X    } xRotatePropertiesReq;
X    
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 11 "bdftosnf.c"
X
X# 1 "../.././server/include/fontstruct.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././server/include/font.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././server/include/servermd.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 143 "../.././server/include/servermd.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct _PaddingInfo {
X	int     padRoundUp;	
X	int	padPixelsLog2;	
X	int     padBytesLog2;	
X} PaddingInfo;
Xextern PaddingInfo PixmapWidthPaddingInfo[];
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 27 "../.././server/include/font.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct _FontProp *FontPropPtr;
Xtypedef struct _CharInfo *CharInfoPtr;
Xtypedef struct _FontInfo *FontInfoPtr;
Xtypedef unsigned int DrawDirection;
Xtypedef struct _ExtentInfo *ExtentInfoPtr;
X
X
X
X# 26 "../.././server/include/fontstruct.h"
X
X# 1 "../.././server/include/misc.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 117 "../.././server/include/misc.h"
X
X# 27 "../.././server/include/fontstruct.h"
X
X
Xtypedef struct _CharInfo {
X    xCharInfo	metrics;	
X    unsigned	byteOffset:24;	
X    Bool	exists:1;	
X    unsigned	pad:7;		
X} CharInfoRec;
X
Xtypedef struct _FontInfo {
X    unsigned int	version1;   
X    unsigned int	allExist;
X    unsigned int	drawDirection;
X    unsigned int	noOverlap;	
X
X
X
X    unsigned int	constantMetrics;
X    unsigned int	terminalFont;	
X
X
X
X
X
X
X    unsigned int	linear:1;	
X    unsigned int	constantWidth:1;  
X
X
X    unsigned int	inkInside:1;    
X
X
X
X
X
X    unsigned int	inkMetrics:1;	
X					
X					
X    unsigned int	padding:28;
X    unsigned int	firstCol;
X    unsigned int	lastCol;
X    unsigned int	firstRow;
X    unsigned int	lastRow;
X    unsigned int	nProps;
X    unsigned int	lenStrings; 
X    unsigned int	chDefault;   
X    int			fontDescent; 
X    int			fontAscent;  
X    CharInfoRec		minbounds;  
X    CharInfoRec		maxbounds;  
X    unsigned int	pixDepth;   
X    unsigned int	glyphSets;  
X
X    unsigned int	version2;   
X} FontInfoRec;
X
Xtypedef struct _ExtentInfo {
X    DrawDirection	drawDirection;
X    int			fontAscent;
X    int			fontDescent;
X    int			overallAscent;
X    int			overallDescent;
X    int			overallWidth;
X    int			overallLeft;
X    int			overallRight;
X} ExtentInfoRec;
X
X
X
X# 12 "bdftosnf.c"
X
X# 1 "../.././server/include/snfstruct.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 1 "../.././server/include/font.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 90 "../.././server/include/font.h"
X
X# 26 "../.././server/include/snfstruct.h"
X
X# 1 "../.././server/include/misc.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 117 "../.././server/include/misc.h"
X
X# 27 "../.././server/include/snfstruct.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct _FontProp { 
X	CARD32	name;		
X	INT32	value;		
X	Bool	indirect;	
X} FontPropRec;
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X 
X
X
X# 13 "bdftosnf.c"
X
X# 1 "../.././server/include/font.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 90 "../.././server/include/font.h"
X
X# 14 "bdftosnf.c"
X
X
X# 1 "bdftosnf.h"
X
X
X
X
X
X
X
X
X
X
X
X
X
X
Xtypedef struct _GlyphMap {
X    char	*bits;
X    int		h;
X    int		w;
X    int		widthBytes;
X} GlyphMap;
X
X
X
X
X
X
Xtypedef struct _TempFont {
X    FontInfoPtr pFI;
X    CharInfoPtr pCI;
X    unsigned char *pGlyphs;
X    FontPropPtr pFP;
X    CharInfoPtr pInkCI;
X    CharInfoPtr pInkMin;
X    CharInfoPtr pInkMax;
X} TempFont; 
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X# 109 "bdftosnf.h"
X
X
X
X
X
X
X
X
X
X
X# 16 "bdftosnf.c"
X
X
X
X
X
Xextern char *gets(), *index();
Xextern void bitorderinvert(), twobyteinvert(), fourbyteinvert();
X
Xstatic char *myname;	
Xstatic char *currentFile = 0;
X
Xint linenum = 0;	
Xint badbitswarn = 0;	
Xint ignoredcharwarn = 0;	
Xint makeTEfonts = 0;	
Xint inhibitInk = 0;	
X
Xint glyphPad = 	4		;
Xint bitorder = 		1	;
Xint scanunit = 1		;
Xint byteorder = 	1	;
X
X
X
X
X
X
X
XFontPropPtr fontProp = (FontPropPtr)0;
XFontPropPtr pointSizeProp = (FontPropPtr)0;
XFontPropPtr resolutionProp = (FontPropPtr)0;
XFontPropPtr xHeightProp = (FontPropPtr)0;
XFontPropPtr weightProp = (FontPropPtr)0;
XFontPropPtr quadWidthProp = (FontPropPtr)0;
X
X
XBOOL haveFontAscent = 0;
XBOOL haveFontDescent = 0;
X
X
Xstatic char **strings = 0;
X
Xchar *
Xpname(i)
X    unsigned i;
X{
X    return strings[i];
X}
X
X
Xmain(argc, argv)
X    int		argc;
X    char *	argv[];
X{
X    TempFont	font;
X    FontInfoRec	fi;
X    CharInfoPtr	cinfos[256];	
X    int		bytesGlAlloced = 1024;	
X
X    unsigned char *pGl = (unsigned char *)malloc((unsigned)bytesGlAlloced);
X    int		bytesGlUsed = 0;
X    int		nGl = 0;
X    int		nchars;
X    float	pointSize;
X    int		xRes, yRes;
X    char	linebuf[1024];
X    char	namebuf[100];
X    char	secondbuf[1024];
X    char	thirdbuf[1024];
X    char	fontName[100];
X    unsigned int attributes;
X    int		digitWidths = 0, digitCount = 0, ex = 0;
X    int		char_row, char_col;
X    int		i;
X    CharInfoRec	emptyCharInfo;
X
X    myname = argv[0];
X    argc--, argv++;
X    while (argc--) {
X	if (argv[0][0] == '-') {
X	    switch (argv[0][1]) {
X	    case 'p':
X		switch (argv[0][2]) {
X		case '1':
X		case '2':
X		case '4':
X		case '8':
X		    if (argv[0][3] != '\0')
X			goto usage;
X		    glyphPad = argv[0][2] - '0';
X		    break;
X		default:
X		    goto usage;
X		}
X		break;
X
X	    case 'u':
X		switch (argv[0][2]) {
X		case '1':
X		case '2':
X		case '4':
X		    if (argv[0][3] != '\0')
X			goto usage;
X		    scanunit = argv[0][2] - '0';
X		    break;
X		default:
X		    goto usage;
X		}
X		break;
X
X	    case 'm':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		bitorder = 	1;
X		break;
X
X	    case 'l':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		bitorder = 	0;
X		break;
X
X	    case 'M':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		byteorder = 	1;
X		break;
X
X	    case 'L':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		byteorder = 	0;
X		break;
X
X	    case 'w':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		badbitswarn = 1;
X		break;
X
X	    case 'W':
X		if (argv[0][2] != '\0')
X		    goto usage;
X		ignoredcharwarn = 1;
X		break;
X
X	    case 't':	
X		if (argv[0][2] != '\0')
X		    goto usage;
X		makeTEfonts = 1;
X		break;
X
X	    case 'i':	
X		if (argv[0][2] != '\0')
X		    goto usage;
X		inhibitInk = 1;
X		break;
X
X	    default:
X		goto usage;
X		break;
X	    }
X	} else {
X	    if (currentFile)
X	    {
X	usage:
X		fprintf((&_iob[2]),
X	"usage: %s [-p#] [-u#] [-m] [-l] [-M] [-L] [-w] [-W] [-t] [-i] [bdf file]\n",
X			myname);
X		fprintf((&_iob[2]),
X			"       where # for -p is 1, 2, 4, or 8\n");
X		fprintf((&_iob[2]),
X			"       and   # for -s is 1, 2, or 4\n");
X		exit(1);
X	    }
X	    currentFile = argv[0];
X	}
X	argv++;
X    }
X    if (currentFile) {
X	if (freopen(currentFile, "r", (&_iob[0])) == 0)
X	    fatal("could not open file\n");
X    } else {
X	currentFile = "(stdin)";
X    }
X
X    emptyCharInfo.metrics.leftSideBearing = 0;
X    emptyCharInfo.metrics.rightSideBearing = 0;
X    emptyCharInfo.metrics.ascent = 0;
X    emptyCharInfo.metrics.descent = 0;
X    emptyCharInfo.metrics.characterWidth = 0;
X    emptyCharInfo.byteOffset = 0;
X    emptyCharInfo.exists = 0;
X    emptyCharInfo.metrics.attributes = 0;
X
X    for (i = 0; i < 256; i++)
X	cinfos[i] = (CharInfoPtr)0;
X
X    font.pFI = &fi;
X    fi.firstRow = 256;
X    fi.lastRow = 0;
X    fi.firstCol	 = 256;
X    fi.lastCol		 = 0;
X    fi.pixDepth = 1;
X    fi.glyphSets = 1;
X    fi.chDefault = 0;	
X
X    getline(linebuf);
X
X    if ((sscanf(linebuf, "STARTFONT %s", namebuf) != 1) ||
X	!streq(namebuf, "2.1"))
X	fatal("bad 'STARTFONT'");
X    getline(linebuf);
X
X    if (sscanf(linebuf, "FONT %[^\n]", fontName) != 1)
X	fatal("bad 'FONT'");
X    getline(linebuf);
X
X    if (!prefix(linebuf, "SIZE"))
X	fatal("missing 'SIZE'");
X    if ((sscanf(linebuf, "SIZE %f%d%d", &pointSize, &xRes, &yRes) != 3))
X	fatal("bad 'SIZE'");
X    if ((pointSize < 1) || (xRes < 1) || (yRes < 1))
X	fatal("SIZE values must be > 0");
X    if (xRes != yRes)
X        fatal("x and y resolution must be equal");
X    getline(linebuf);
X
X    if (!prefix(linebuf, "FONTBOUNDINGBOX"))
X	fatal("missing 'FONTBOUNDINGBOX'");
X    getline(linebuf);
X
X    if (prefix(linebuf, "STARTPROPERTIES")) {
X	int nprops;
X	FontPropPtr pfp;
X
X	if (sscanf(linebuf, "STARTPROPERTIES %d", &nprops) != 1)
X	   fatal("bad 'STARTPROPERTIES'");
X	fi.nProps = nprops;
X	pfp = (FontPropPtr)malloc((unsigned)(nprops+6) *
X				  sizeof(FontPropRec));
X	font.pFP = pfp;
X	getline(linebuf);
X	while((nprops-- > 0) && !prefix(linebuf, "ENDPROPERTIES")) {
X
X	    switch (sscanf(linebuf, "%s%s%s", namebuf, secondbuf, thirdbuf) ) {
X
X	    case 1: 
X		fatal("missing '%s' parameter value",namebuf);
X		break;
X
X	    case 2:
X		
X
X
X
X
X
X		if( secondbuf[0] == '"'){
X		    pfp->indirect = 1;
X		    pfp->value = (INT32)remember(linebuf+strlen(namebuf));
X		    break;
X		} else if( isinteger(secondbuf) ){
X		    pfp->indirect = 0;
X		    pfp->value = atoi(secondbuf);
X		    break;
X		} else {
X		    fatal("invalid '%s' parameter value",namebuf);
X		    break;
X		}
X
X	    case 3:
X		
X
X
X
X
X		if( secondbuf[0] == '"'){
X		    pfp->indirect = 1;
X		    pfp->value = (INT32)remember(linebuf+strlen(namebuf));
X		    break;
X		} else {
X		    fatal("invalid '%s' parameter value",namebuf);
X		    break;
X		}
X	    }
X	    pfp->name = (CARD32)remember(namebuf);
X	    if (specialproperty(pfp, &fi))
X	        pfp++;
X	    else
X		fi.nProps--;
X	    getline(linebuf);
X	}
X	if (!prefix(linebuf, "ENDPROPERTIES"))
X	    fatal("missing 'ENDPROPERTIES'");
X	if (!haveFontAscent || !haveFontDescent)
X	    fatal("must have 'FONT_ASCENT' and 'FONT_DESCENT' properties");
X	if (nprops != -1)
X	    fatal("%d too few properties", nprops+1);
X	if (!fontProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("FONT");
X	    pfp->value = (INT32)intern(fontName);
X	    pfp->indirect = 1;
X	    fontProp = pfp++;
X	}
X	if (!pointSizeProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("POINT_SIZE");
X	    pfp->value = (INT32)(pointSize*10.0);
X	    pfp->indirect = 0;
X	    pointSizeProp = pfp++;
X	}
X	if (!weightProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("WEIGHT");
X	    pfp->value = -1;	
X	    pfp->indirect = 0;
X	    weightProp = pfp++;
X	}
X	if (!resolutionProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("RESOLUTION");
X	    pfp->value = (INT32)((xRes*100.0)/72.27);
X	    pfp->indirect = 0;
X	    resolutionProp = pfp++;
X	}
X	if (!xHeightProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("X_HEIGHT");
X	    pfp->value = -1;	
X	    pfp->indirect = 0;
X	    xHeightProp = pfp++;
X	}
X	if (!quadWidthProp) {
X	    fi.nProps++;
X	    pfp->name = (CARD32)intern("QUAD_WIDTH");
X	    pfp->value = -1;	
X	    pfp->indirect = 0;
X	    quadWidthProp = pfp++;
X	}
X    } else { 
X	fatal("missing 'STARTPROPERTIES'");
X    }
X    getline(linebuf);
X
X    if (sscanf(linebuf, "CHARS %d", &nchars) != 1)
X	fatal("bad 'CHARS'");
X    if (nchars < 1)
X	fatal("invalid number of CHARS");
X    getline(linebuf);
X
X    while ((nchars-- > 0) && prefix(linebuf, "STARTCHAR"))  {
X        int	t;
X	int	ix;	
X	int	wx;	
X	int	wy;	
X	int	bw;	
X	int	bh;	
X	int	bl;	
X	int	bb;	
X	int	enc, enc2;	
X	char	*p;	
X	int	bytesperrow, row, hexperrow, perrow, badbits;
X	char	charName[100];
X
X	if (sscanf(linebuf, "STARTCHAR %s", charName) != 1)
X	    fatal("bad character name");
X
X	getline( linebuf);
X	if ((t=sscanf(linebuf, "ENCODING %d %d", &enc, &enc2)) < 1)
X	    fatal("bad 'ENCODING'");
X	if ((enc < -1) || ((t == 2) && (enc2 < -1)))
X	    fatal("bad ENCODING value");
X	if (t == 2 && enc == -1)
X	    enc = enc2;
X	if (enc == -1) {
X	    if (ignoredcharwarn) warning("character '%s' ignored\n", charName);
X	    do {
X	    	char *s = getline(linebuf);
X		if (!s)
X		    fatal("Unexpected EOF");
X	    } while (!prefix(linebuf, "ENDCHAR"));
X	    getline(linebuf);
X	    continue;
X	}
X	if (enc > 0xFFFF)
X	    fatal("character '%s' has encoding(=%d) too large", charName, enc);
X	char_row = (enc >> 8) & 0xFF;
X	char_col = enc & 0xFF;
X	fi.firstRow = ((fi.firstRow)>( char_row)?( char_row):(fi.firstRow));
X	fi.lastRow = ((fi.lastRow)>( char_row)?(fi.lastRow):( char_row));
X	fi.firstCol	 = ((fi.firstCol	)>( char_col)?( char_col):(fi.firstCol	));
X	fi.lastCol		 = ((fi.lastCol		)>( char_col)?(fi.lastCol		):( char_col));
X	if (!cinfos[char_row])
X	{
X	    cinfos[char_row] =
X		(CharInfoPtr)malloc(sizeof(CharInfoRec)*256);
X	    bzero((char *)cinfos[char_row], sizeof(CharInfoRec)*256);
X	}
X
X	getline( linebuf);
X	if (sscanf( linebuf, "SWIDTH %d %d", &wx, &wy) != 2)
X	    fatal("bad 'SWIDTH'");
X	if (wy != 0)
X	    fatal("SWIDTH y value must be zero");
X
X	getline( linebuf);
X	if (sscanf( linebuf, "DWIDTH %d %d", &wx, &wy) != 2)
X	    fatal("bad 'DWIDTH'");
X	if (wy != 0)
X	    fatal("DWIDTH y value must be zero");
X
X	getline( linebuf);
X	if (sscanf( linebuf, "BBX %d %d %d %d", &bw, &bh, &bl, &bb) != 4)
X	    fatal("bad 'BBX'");
X	if ((bh < 0) || (bw < 0))
X	    fatal("character '%s' has a negative sized bitmap, %dx%d", 
X	    	  charName, bw, bh);
X
X	getline( linebuf);
X	if (prefix(linebuf, "ATTRIBUTES"))
X	{
X	    for (p = linebuf + strlen("ATTRIBUTES ");
X		(*p == ' ') || (*p == '\t');
X		p ++)
X		 ;
X	    attributes = hexbyte(p)<< 8 + hexbyte(p+2);
X	    getline( linebuf);	
X	}
X	else
X	    attributes = 0;
X	if (!prefix(linebuf, "BITMAP"))
X	    fatal("missing 'BITMAP'");
X
X	
X	if ((strlen(charName) == 1)){
X	    if ((charName[0] >='0') && (charName[0] <= '9')) {
X		digitWidths += wx;
X		digitCount++;
X	    } else if (charName[0] == 'x') {
X	        ex = (bh+bb)<=0? bh : bh+bb ;
X	    }
X	}
X
X	cinfos[char_row][char_col].metrics.leftSideBearing = bl;
X	cinfos[char_row][char_col].metrics.rightSideBearing = bl+bw;
X	cinfos[char_row][char_col].metrics.ascent = bh+bb;
X	cinfos[char_row][char_col].metrics.descent = -bb;
X	cinfos[char_row][char_col].metrics.characterWidth = wx;
X	cinfos[char_row][char_col].byteOffset = bytesGlUsed;
X	cinfos[char_row][char_col].exists = 0;  
X	cinfos[char_row][char_col].metrics.attributes = attributes;
X
X	badbits = 0;
X	bytesperrow = ((glyphPad) == 1 ? (((bw)+7)>>3)	 :(glyphPad) == 2 ? ((((bw)+15)>>3)&~1)	 :(glyphPad) == 4 ? ((((bw)+31)>>3)&~3)	 :(glyphPad) == 8 ? ((((bw)+63)>>3)&~7)	 : 0);
X	hexperrow = (bw + 7) >> 3;
X	if (hexperrow == 0) hexperrow = 1;
X	for (row=0; row < bh; row++) {
X	    getline(linebuf);
X	    p = linebuf;
X	    t = strlen(p);
X	    if (t & 1)
X		fatal("odd number of characters in hex encoding");
X	    t >>= 1;
X	    if ((bytesGlUsed + bytesperrow) >= bytesGlAlloced) {
X		bytesGlAlloced = (bytesGlUsed + bytesperrow) * 2;
X		pGl = (unsigned char *)realloc((char *)pGl,
X					       (unsigned)bytesGlAlloced);
X	    }
X	    perrow = ((hexperrow)>( t)?( t):(hexperrow));
X	    for ( ix=0; ix < perrow; ix++, p+=2, bytesGlUsed++)
X	    {
X	        pGl[bytesGlUsed] = hexbyte(p);
X	    }
X	    if (perrow && (hexperrow <= t) && (bw & 7) &&
X		(ix = (pGl[bytesGlUsed-1] & (0xff >> (bw & 7))))) {
X		pGl[bytesGlUsed-1] &= ~ix;
X		if (badbitswarn)
X		    badbits = 1;
X	    }
X	    if (badbitswarn) {
X		for ( ix = perrow; ix < t; ix++, p+= 2) {
X		    if (hexbyte(p) != 0) {
X			badbits = 1;
X			break;
X		    }
X		}
X	    }
X	    for ( ix=perrow; ix < bytesperrow; ix++, bytesGlUsed++)
X	    {
X	        pGl[bytesGlUsed] = 0;
X	    }
X 	    
X
X
X	    bytesGlUsed = ((glyphPad) == 1 ? (((bytesGlUsed<<3)+7)>>3)	 :(glyphPad) == 2 ? ((((bytesGlUsed<<3)+15)>>3)&~1)	 :(glyphPad) == 4 ? ((((bytesGlUsed<<3)+31)>>3)&~3)	 :(glyphPad) == 8 ? ((((bytesGlUsed<<3)+63)>>3)&~7)	 : 0);
X	}
X	if (badbits)
X	    warning("character '%s' has bits outside bounding box ignored",
X		    charName);
X	getline( linebuf);
X	if (!prefix(linebuf, "ENDCHAR"))
X            fatal("missing 'ENDCHAR'");
X	nGl++;
X	getline( linebuf);		
X    }
X
X    if (nchars != -1)
X        fatal("%d too few characters", nchars+1);
X    if (prefix(linebuf, "STARTCHAR"))
X	fatal("more characters than specified");
X    if (!prefix(linebuf, "ENDFONT"))
X        fatal("missing 'ENDFONT'");
X    if (nchars != -1)
X        fatal("%d too few characters", nchars+1);
X    if (nGl == 0)
X        fatal("No characters with valid encodings");
X
X    fi.maxbounds.byteOffset = bytesGlUsed;
X    font.pGlyphs = pGl;
X
X    font.pCI = (CharInfoPtr)malloc(sizeof(CharInfoRec)*(((font.pFI)->lastCol - (font.pFI)->firstCol + 1) * ((font.pFI)->lastRow - (font.pFI)->firstRow + 1)));
X    i = 0;
X    for (char_row = fi.firstRow; char_row <= fi.lastRow; char_row++)
X    {
X	if (!cinfos[char_row])
X	    for (char_col = fi.firstCol	; char_col <= fi.lastCol		; char_col++)
X		{
X		font.pCI[i] = emptyCharInfo;
X		i++;
X		}
X	else
X	    for (char_col = fi.firstCol	; char_col <= fi.lastCol		; char_col++)
X		{
X		font.pCI[i] = cinfos[char_row][char_col];
X		i++;
X		}
X    }
X    computeNaccelerators(&font, makeTEfonts, inhibitInk, glyphPad);
X
X    
X    if (xHeightProp && (xHeightProp->value == -1))
X        xHeightProp->value = ex? ex : fi.minbounds.metrics.ascent;
X    if (quadWidthProp && (quadWidthProp->value == -1))
X        quadWidthProp->value = digitCount?
X	    (INT32)((float)digitWidths/(float)digitCount) :
X	    (fi.minbounds.metrics.characterWidth+fi.maxbounds.metrics.characterWidth)/2;
X    if (weightProp && (weightProp->value == -1))
X        weightProp->value = computeweight(&font);
X
X    if (bitorder == 	0)
X	bitorderinvert(pGl, bytesGlUsed);
X    if (bitorder != byteorder) {
X	if (scanunit == 2)
X	    twobyteinvert(pGl, bytesGlUsed);
X	else if (scanunit == 4)
X	    fourbyteinvert(pGl, bytesGlUsed);
X    }
X
X    WriteNFont((&_iob[1]), &font, pname);
X    exit(0);
X}
X
END_OF_FILE
if test 39316 -ne `wc -c <'bdftosnf.part.i'`; then
    echo shar: \"'bdftosnf.part.i'\" unpacked with wrong size!
fi
# end of 'bdftosnf.part.i'
fi
echo shar: End of shell archive.
exit 0
Technical Details
Message-ID: <8812051644.AA08466@chip_and_dips.com>
Path: arc1-ca.pugleaf.net!utzoo!telly!ddsw1!mcdchg!rutgers!tut.cis.ohio-state.edu!UUNET.UU.NET!eplrx7!mcneill

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!telly!ddsw1!mcdchg!rutgers!tut.cis.ohio-state.edu!UUNET.UU.NET!eplrx7!mcneill
From: eplrx7!mcneill@UUNET.UU.NET (Keith McNeill)
Newsgroups: gnu.gcc.bug
Subject: Re: GCC 1.31 Sun4, Sys4-3.2 & X.V11R3
Message-ID: <8812051644.AA08466@chip_and_dips.com>
Date: 5 Dec 88 16:44:38 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 4273