On 10/31/2011 09:26 AM, Thomas Jensen wrote:
> On Sun, 30 Oct 2011 22:23:19 +0100, Bjarni Juliusson wrote:
>
>
>> Why do so many people still run MSDOS on their computers?
>
> Are there so many people doing that? Well, I can come up with several
> possible answers, and none of them involve it is superiour.
Well at least in a couple of the newsgroups I frequent, there seems to
be a balls load of people who teleported there from the 80s and
apparently brought their computers with them. In alt.os.development they
all want to know how to write a bootloader for floppy disks.
Where do you even buy floppy disks?
I might add that I myself am an avid retrocomputing fan - my collection
includes both PDP-11s, DG Eclipses, VAXen, a DG Nova 3, and a PDP-10,
I'm currently repairing a rare PDP-12 together with friends at the
computer club, and I still have the C64 that I learned to program on,
and if you give me a moment to go through my tapes I probably have the
very first machine code program I wrote all by myself.
But as for the 16-bit x86 days, I say good riddance! The C64 at least is
a nice platform, into the design of which seems to have gone some not
insignificant amount of thought.
Programming the 6510 CPU involves all the register shuffling of
programming the 8086, but with the 6510 it's not because it's a
complicated architecture, but because it's a simple one! Some 3500
transistors compared to over 20000 in the 8086 - you had your 8-bit
accumulator, you could add and subtract and do the logical operations,
and then they threw in two index registers for speed.
And fast it was, impressively so, and given that it was introduced at a
small fraction of the price of all of its competitors, it was a hit.
Some people could hardly believe it. Imagine seeing an ad for a computer
ostensibly touting the same performance as a £1000 PC, but being sold
for less than £200. Would you bother reading an ad like that?
The C64 was introduced just a few months after the PC. They both came
with 64K RAM, they both stored their programs on cassette tapes, and
they both used your TV for their display. But while the C64, sometimes
derided for its poor graphics capabilities, had 320x200 16-colour tiled
or bitmapped graphics with hardware sprites and retrace interrupts, the
PC had the (optional) CGA card which gave you 320x200 in only 4 colours,
no sprites, no tiles, no retrace interrupts. Who remembers playing games
in cyan and magenta back in the day?
While the C64 included the fantastic 6581 sound chip, which gave you
three independent voices of sound, each with three waveforms plus noise,
16-bit pitch covering eight octaves, and an ADSR envelope generator,
plus a common programmable analog filter, the PC gave you no sound at
all. Well, it could go "beep" I guess.
The C64 came with a floppy/printer interface, tape interface, two game
ports including analog inputs, a parallel "user port", a cartridge
expansion port, and RF and composite video outputs, all built into the
keyboard, selling for a third of the price of the PC.
And then of course there is the damn BIOS, and the keyboard controller
which seems be the chip that really does everything in a PC, the cruddy
floppy controller, and of course all the cumulative extensions to
everything without any apparent thought or planning.
And then there's MSDOS. Or was!
<inflammatory material>
Now I just wish the "Windows" part of "DOS/Windows" would go die too.
</inflammatory material>
>> Also, 8086? That's a 35 year old processor you have there.
>
> Yes. And my car is 42 and my boat is 53... ;-) I could easily get a
> faster car and boat, but they have their own charme. And, I do have a
> faster computer... and it has absolutlu no much charme... ;-)
I know all about this charm, but I wouldn't associate the 8086 with it!
>>I'd like to
>> encourage you to learn about assembly language programming,
>
> Good. I would also be very disappointed if you didn't - specially here in
> this group! Just kidding... ;-)
I suspect that assembly gives you a sound understanding of programming
that is a great help in understanding other languages.
> No, you have a point. There's no need to learn a lot of stuff no longer
> needed in modern OS'es. 10 years ago I would have said it is good to know
> the history, and it makes you understand the reason why things are as
> they are today, but... No, I agree. No-one today will benefit from
> learning 16bit assembly.
I couldn't agree more about the history, and I've given a couple of
lectures here at the university on the topic of computer history, but
I'm not so sure it applies in that way. You'd want to study computer
architecture and then read about the architectures of computers through
the decades to see how they have changed (and how the x86 is very much a
1970s architecture, at least in real mode), and study operating systems
and the progression of ideas that have led to the systems we have today.
I'd say it's the operating systems that have really made a difference;
they've completely changed the way computers work and what they can be
used for, much more than the details of which registers you can multiply
in real mode, or "Steampunk Mode" as a friend called it.
I don't see MSDOS in there among the ancestors of modern operating
systems. I see VMS, UNIX, Multics, and a bunch of other systems that
pioneered ideas that are used in modern operating systems today: time
sharing, high-level programming languages, user accounts, file systems,
file permissions, job control, memory protection, paging, block caches,
dynamic linking, networking, graphical user interfaces, and so on. Some
of those things depend on hardware support, but historically that
hardware was often originally custom-built for some operating system
research project.
Knowledge of MSDOS is of course a good thing because knowledge of
history is, but it is mostly a question of understanding the times; to
understand how computers were used by the general population in the
1980s, how much work something that is trivial today might have
entailed, and as a part of understanding the broad variety of operating
systems and computer architectures available to the home user in that
decade and what that meant to the users. I can't really say it pioneered
anything.
And even so, it's one thing to study something out of historical
interest, and another to actually use it seriously every day. :)
> And I actually have a book about assembly programming in Linux - the AT&T
> way with gas. It's just waiting for me taking it down from the shell and
> start.
Take it off the shelf!
Wow!
I personally have a Bondwell model 2. It's my only laptop. :)