Esempio n. 1
0
/*
 *  状態の読出し(SR0の読出し)
 *
 *  μPD72001は,状態(SR0)を一度読むと受信通知ビットが落ちてしまうた
 *  め,状態を読み出す関数を設け,シリアルI/Oポート管理ブロック中の
 *  getready に受信通知状態,putready に送信可能状態を保存している(送
 *  信可能状態の保存は不要かもしれない).
 *  状態レジスタを読んでも受信通知ビットが落ちないデバイス(こちらが普
 *  通と思われる)では,この関数は必要ない.
 */
static void
upd72001_get_stat(SIOPCB *siopcb)
{
	UB	sr0;

	sr0 = upd72001_read_ctrl(siopcb->siopinib->ctrl, UPD72001_SR0);
	if ((sr0 & SR0_RECV) != 0) {
		siopcb->getready = TRUE;
	}
	if ((sr0 & SR0_SEND) != 0) {
		siopcb->putready = TRUE;
	}
}
Esempio n. 2
0
/*
 *  状態の読出し(SR0の読出し)
 *
 *  μPD72001は,状態(SR0)を一度読むと受信通知ビットが落ちてしまうた
 *  め,状態を読み出す関数を設け,シリアルI/Oポート管理ブロック中の
 *  getreadyに受信通知状態,putreadyに送信可能状態を保存している(送信
 *  可能状態の保存は不要かもしれない).
 *  状態レジスタを読んでも受信通知ビットが落ちないデバイス(こちらが普
 *  通と思われる)では,この関数は必要ない.
 */
static void
upd72001_get_stat(SIOPCB *p_siopcb)
{
	uint8_t	sr0;

	sr0 = upd72001_read_ctrl(p_siopcb->p_siopinib->ctrl, UPD72001_SR0);
	if ((sr0 & SR0_RECV) != 0) {
		p_siopcb->getready = true;
	}
	if ((sr0 & SR0_SEND) != 0) {
		p_siopcb->putready = true;
	}
}