On Saturday 26 April 2008 15:55, Tony Duell wrote:
That's not
the first time you've mentioned that, so now I have to ask
you: What's the #1 most glaring misdesign you can remember about the
5150 or 5160?
Oh, that's easy. The edge-triggered active high interrupts.
And on the software side, the fact that the BIOS serial port routines
don't use interrupts, making it necessary ot hit the hardware directly if
you wanted any decent data rate without dropping characters. You know, I
was under the impression that the whole point of device driver routines
was so you could make different physical hardware look the same to the
applicaiton programs.
I've not programmed to the level of actually getting paid to do so, but it's
been a casual interest of mine for a long time. For my CP/M boxes I was okay
with assembler, but the 8088 stuff was so distasteful to even look at I
decided to learn c. So I spent a *lot* of time hanging out in the fidonet
C_ECHO. To the point where the actually asked me to be moderator, a couple
of different times, which I declined both times. :-)
Anyhow, in those days *everybody* considered the BIOS code to be really and
truly awful stuff, and it was pretty much common practice to bypass them
every chance you got. There was some standardization for some things,
like "fossil" and such for serial comms, for one example.
I always thought it was an absurd waste of both time and space in terms of
coding to have to do stuff like figure out which kind of monitor you had
hooked up to the machine and code things differently in each case. But
that's my byte-stinginess from the CP/M days showing through, I guess.
--
Member of the toughest, meanest, deadliest, most unrelenting -- and
ablest -- form of life in this section of space, ?a critter that can
be killed but can't be tamed. ?--Robert A. Heinlein, "The Puppet Masters"
-
Information is more dangerous than cannon to a society ruled by lies. --James
M Dakin