ciab
.cia = &ciab,
ciab.cra &= 0xC0; /* turn off timer A, continuous mode, from Eclk */
ciab.talo = jiffy_ticks % 256;
ciab.tahi = jiffy_ticks / 256;
ciab.cra |= 0x11;
hi = ciab.tahi;
lo = ciab.talo;
hi2 = ciab.tahi;
lo = ciab.talo;
DEFINE(CIABBASE, &ciab);
#define MOTOR_ON (ciab.prb &= ~DSKMOTOR)
#define MOTOR_OFF (ciab.prb |= DSKMOTOR)
#define SELECT(mask) (ciab.prb &= ~mask)
#define DESELECT(mask) (ciab.prb |= mask)
ciab.prb |= (SELMASK(0)|SELMASK(1)|SELMASK(2)|SELMASK(3));
ciab.prb = prb;
ciab.prb = prb;
prb = ciab.prb;
ciab.prb = prb;
prb = ciab.prb;
ciab.prb = prb;
ciab.prb = prb;
ciab.prb = prb;
ciab.prb = prb;
ciab.prb = prb;
prb = ciab.prb;
ciab.prb = prb;
ciab.prb = prb;
ciab.prb = prb;
s->u.amiga.status = ciab.pra & 7;
s->u.amiga.statusdir = ciab.ddra & 7;
ciab.pra |= (ciab.pra & 0xf8) | s->u.amiga.status;
ciab.ddra |= (ciab.ddra & 0xf8) | s->u.amiga.statusdir;
ciab.ddra &= 0xf8;
status = status_amiga_to_pc(ciab.pra & 7);
status = ciab.pra;
ciab.pra = ((bits & (SER_RTS | SER_DTR)) ^ (SER_RTS | SER_DTR)) | (ciab.pra & ~(SER_RTS | SER_DTR));
status = ciab.pra;
return !(ciab.pra & SER_DCD);
ciab.ddra |= (SER_DTR | SER_RTS); /* outputs */
ciab.ddra &= ~(SER_DCD | SER_CTS | SER_DSR); /* inputs */
unsigned char status = ciab.pra & (SER_DCD | SER_CTS | SER_DSR);
current_ctl_bits = ciab.pra & (SER_DCD | SER_CTS | SER_DSR);