/* Transfer data off of/on to card using programmed IO. Notes: this is incredibly slow.  */
static void fas216_pio(FAS216_Info *info, fasdmadir_t direction)
/* Transfer data off of/on to card using programmed IO. Notes: this is incredibly slow.  */
static void fas216_pio(FAS216_Info *info, fasdmadir_t direction)
{
	struct scsi_pointer *SCp = &info->scsi.SCp;
	fas216_checkmagic(info);
	if (direction == DMA_OUT)
		fas216_writeb(info, REG_FF, get_next_SCp_byte(SCp));
	else
		put_next_SCp_byte(SCp, fas216_readb(info, REG_FF));
	if (SCp->this_residual == 0)
		next_SCp(SCp);
}