Subject: Re: MD hooks in zsopen()/zsclose()
To: Julian Coleman <J.D.Coleman@newcastle.ac.uk>
From: Todd Whitesel <toddpw@best.com>
List: tech-kern
Date: 03/05/2000 00:52:39
> PS.  Now all I need to do is understand why one channel somestimes sends
> garbage and why the external mouse doesn't work ... I think I'm going to
> end up knowing somewhat more about the 8530 than I do now ;-)

I don't envy you this journey :|

The 8530 is a blight upon humanity. Possibly the worst programming
interface ever designed for a humble serial controller, it fights
any attempt to write clean, elegant drivers for it, and does so with
such a bitter vengeance, that one begins to suspect it was deliberately
crafted as a hazing ritual for device driver programmers.

Why is it so ubiquitous then? Three reasons.

    1. it is dirt cheap to produce, and nearly everyone who makes
    serial chips makes a slightly enhanced (but backwards compatible)
    variant of the 8530.

    2. it is replete with bullet-item features for serial controllers.
    Never mind that actually trying to use these features can be like
    having teeth pulled.

    3. it is the only realistic choice if you ever plan to support
    Apple's LocalTalk networking system (remember that?). It is no
    surprise that all Macs (and even the last Apple II's), Suns,
    and NeXT boxes use the 8530 or derivatives.

I hope everyone enjoyed this rant. As I'm sure you can tell, the 8530
is near and dear to my heart in the most sarcastic way possible.

Todd Whitesel
toddpw @ best.com