> You want(ed) the console code to be small (so it would fit into the
> EPROMs), reliable (much harder to update than something on disk), and
> possibly even to work on defective hardware (so you could do diagnostics).
I hadn't thought about the "defective hardware" angle.
> > My main complaint is about the software rather than the hardware, as I think
> > I pointed out. In DOS, you can DO whatever you want (if you can find the
> > documentation and if you know the card will handle it) but the OS has no
> > concept of it. In Windows NT, the OS has a concept but it's VERY limited.
> > I think the console API only promises 16 colors, which is pretty pathetic
> > since even the EGA gives you a palette of 64. In my experience, NT just
> > makes the situation too unreliable.
>
> Hmmm... As soon as you get to multitasking OS's, you really do need a way
> for the OS to realise that a particular program is changing screen modes,
> etc. Otherwise all hell will break loose. That's why MS-DOS lets you hit
> the hardware directly, while NT (and linux for that matter) insist you
> use the OS for this
Oddly, NT does seem to let programs change screen modes on their own. I can
start a program in console (full-screen text) mode and it will successfully
switch to some nonstandard graphics mode. (Borland-compiled programs are
particularly flagrant about that.) But this doesn't always work, depending
on the video card and maybe other things. Also, context-switching may mess
up the screen.
I get a lot better results with Win '95, and sometimes I have to use DOS.
The ironic downside, of course, is that DOS is such a terrible OS.
I think there are some write-only registers on many video cards. Write-only
registers are on my list of things that wouldn't go in a computer I
designed. That's mostly because of context-switching and expandability --
it's foolish to assume that no one will ever need to read from those
registers. But I think we discussed that subject a while ago, so I'll stop.
My point is that the NT code must be very frightening.
> I guess, thought, you're moaning that NT doesn't provide enough
> functionality to do what you want. And unlike linux you can't add it in.
Right. :) The published graphics API for console-mode programs is very
weak. (A console program can run in a full-screen text mode or inside a
window on the desktop. It doesn't have to be a DOS program; it can use all
the services of NT.) You get less functionality than a real EGA card under
DOS would give you.
It could have something to do with the multiple-CPU design of NT. Actually,
though, I think MS just doesn't want to deal with the problem. They
probably don't see the irony, which is that they helped _create_ the problem
in the first place.
-- Derek
Received on Wed Mar 03 1999 - 16:49:20 GMT
This archive was generated by hypermail 2.3.0
: Fri Oct 10 2014 - 23:32:19 BST