DataMuseum.dk

Presents historical artifacts from the history of:

Commodore CBM-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Commodore CBM-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦71a5ac336⟧ TextFile

    Length: 699 (0x2bb)
    Types: TextFile
    Notes: UNIX file
    Names: »al.c«, »part.al.c«

Derivation

└─⟦f27320a65⟧ Bits:30001972 Commodore 900 hard disk image with partial source code
    └─⟦2d53db1df⟧ UNIX V7 Filesystem
        └─ ⟦this⟧ »frankh/BUGS/al.c« 
        └─ ⟦this⟧ »frankh/BUGS/part.al.c« 

TextFile

/*
 * External status interrupt handler for the SCC. The handler is called
 * upon changes in the DCD or CTS modem control lines, or upon a break
 * (line spacing) condition on the Rx line. Note that this only applies
 * if the given line is opened (or attempting to be) with modem control
 * enabled.
 */

alESintr(id)
{
	.
	.	
	.
 	.

	what = inb(b+RR0);
	outb(b+WR0, RESEXTINT);
--->>>	if ((what & BREAK) != 0) {
		inb(b+RR8);		/* read + dismiss */
		ttsignal(tp, SIGINT);
		ttflush(tp);
	} else {				<<<---
		if ((tp->t_flags & T_MODC) == 1)
			if ((what & (DCD|CTS)) != 0) 
				if (tp->t_open == 0)
					wakeup((char *)(&tp->t_open));
	}
	spl(s);
	outb(b+WR0, RESIUS);		/* reset interrupt */
}