int sWriteTxPrioByte(CHANNEL_T * ChP, Byte_t Data) 
static int sWriteTxPrioByte(CHANNEL_T * ChP, Byte_t Data) 
int sWriteTxPrioByte(CHANNEL_T * ChP, Byte_t Data){	Byte_t DWBuf[4];	/* buffer for double word writes */	Word_t *WordPtr;	/* must be far because Win SS != DS */	register DWordIO_t IndexAddr;	if (sGetTxCnt(ChP) > 1) {	/* write it to Tx priority buffer */		IndexAddr = ChP->IndexAddr;		sOutW((WordIO_t) IndexAddr, ChP->TxPrioCnt);	/* get priority buffer status */		if (sInB((ByteIO_t) ChP->IndexData) & PRI_PEND)	/* priority buffer busy */			return (0);	/* nothing sent */		WordPtr = (Word_t *) (&DWBuf[0]);		*WordPtr = ChP->TxPrioBuf;	/* data byte address */		DWBuf[2] = Data;	/* data byte value */		sOutDW(IndexAddr, *((DWord_t *) (&DWBuf[0])));	/* write it out */		*WordPtr = ChP->TxPrioCnt;	/* Tx priority count address */		DWBuf[2] = PRI_PEND + 1;	/* indicate 1 byte pending */		DWBuf[3] = 0;	/* priority buffer pointer */		sOutDW(IndexAddr, *((DWord_t *) (&DWBuf[0])));	/* write it out */	} else {		/* write it to Tx FIFO */		sWriteTxByte(sGetTxRxDataIO(ChP), Data);	}	return (1);		/* 1 byte sent */}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f15313bf42337ade55376303932d8b6a62e6be43/rocket.c/buggy/drivers/char/rocket.c