Author Topic: nostalgia of 386-level systems?!?  (Read 4121 times)

0 Members and 1 Guest are viewing this topic.

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15797
  • Country: fr
Re: nostalgia of 386-level systems?!?
« Reply #25 on: April 03, 2022, 06:23:45 pm »
8080 and z80 are simple for me, 80286, 80386 and above are too complex for me.

Then you are basically questioning the point of designing a 386-based board, because you don't like the 386 and don't understand it?
My post was just meant to show that it's not purely a matter of "nostalgia", since there are even much older CPUs that people design boards around, and there's certainly an interesting learning factor beyond the nostalgia.

The fact the 386 is much more comple than a Z80, yet is still "approachable" enough that you can make your own board around it, makes it all the more interesting for learning purposes.
It's probably possibly to do the same thing with a 486, although that's beginning to be a bit hairy.

The architecture may not have been the best ever designed, for sure, but this still has had a large impact on the modern history of computing, so there's much to learn with it. Even the bad sides.

And, in spite of its quirks, the "protected mode" of the 386 was actually rather interesting, and was never really used to its full potential. Maybe because it was a bit too "inconvenient", and laziness almost always wins. ;)
 

Online DiTBhoTopic starter

  • Super Contributor
  • ***
  • Posts: 4367
  • Country: gb
Re: nostalgia of 386-level systems?!?
« Reply #26 on: April 03, 2022, 07:09:15 pm »
the "protected mode" of the 386 was actually rather interesting, and was never really used to its full potential. Maybe because it was a bit too "inconvenient", and laziness almost always wins

Even IBM with their OS/2 never really used to its full potential
Too complex even for their engineers.
The opposite of courage is not cowardice, it is conformity. Even a dead fish can go with the flow
 

Online DiTBhoTopic starter

  • Super Contributor
  • ***
  • Posts: 4367
  • Country: gb
Re: nostalgia of 386-level systems?!?
« Reply #27 on: April 03, 2022, 07:15:30 pm »
I suspect that one reason for significant i386 nostalgia is the fact that it was the first Intel device to support paged virtual memory, which I guess lead directly to the development of Linux, and sad, nerdy people subsequently spending hours downloading SLS ...

"and nerdy people subsequently spending hours downloading SLS ..."

That's true, I was there when I read a comment about it in the source of Linux v0.0.2 ;D
Linus T. was later able to log into a Sparc server, but only later.
The opposite of courage is not cowardice, it is conformity. Even a dead fish can go with the flow
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15797
  • Country: fr
Re: nostalgia of 386-level systems?!?
« Reply #28 on: April 04, 2022, 10:45:05 pm »
the "protected mode" of the 386 was actually rather interesting, and was never really used to its full potential. Maybe because it was a bit too "inconvenient", and laziness almost always wins

Even IBM with their OS/2 never really used to its full potential
Too complex even for their engineers.

Complexity is one thing. Possibly legacy is another. Even OS/2 had to be compatible with a bunch of exisiting stuff, so that may be the main reason.

It's a bit like Harvard vs. Von Neumann. Although strict Harvard architectures would have avoided a whole lot of security issues, Von Neumann won because it was much easier to use for general-purpose computing.

For instance, the executable bit of the 386 protected mode (which was already in the 286? not sure) was never really put to use until very late, if I'm not mistaken.
 

Offline aneevuser

  • Frequent Contributor
  • **
  • Posts: 252
  • Country: gb
Re: nostalgia of 386-level systems?!?
« Reply #29 on: April 05, 2022, 09:44:44 am »
I suspect that one reason for significant i386 nostalgia is the fact that it was the first Intel device to support paged virtual memory,
This is rather off-topic, but I claimed above the the 386 was the first Intel processor to support paged VM, but a bit of googling (and Wikipedia) seems to suggest that the 286 protected mode could also support paging, and that the 286 even had an on-chip MMU, which I find somewhat surprising.

Can anyone confirm this? I believe that I have an ancient 286 data book somewhere, but I can't find it to verify this.
 

Offline Berni

  • Super Contributor
  • ***
  • Posts: 5050
  • Country: si
Re: nostalgia of 386-level systems?!?
« Reply #30 on: April 05, 2022, 04:14:30 pm »
Legacy is a pretty heavy collection of baggage that x86 had to drag around in order to stay compatible with things.

What makes it even worse is when the x86 design didn't let the programmers do what they wanted to do, so they invented dirty hacks to get around some of the limitations, now these dirty hacks also had to be kept working. For example dropping from 386 mode back into 286 mode was not possible because the designers of the chip assumed that once you start a OS that knows how to use 386 mode it will elevate into that mode and stay there. However Windows developers found out that 16bit executables don't always work in 32bit mode, so they needed to switch back to 16bit mode for those. The way this had to be done is reseting the CPU so that it starts up in legacy mode, set it up and then quickly jump back to whatever they ware doing to continue execution. The intel engineers probably screamed in horror when they found out how they did it, but it worked and now became the standard way of getting back into 286 mode.

They did try to get rid of the baggage and start fresh with the Intel Itanium architecture, but we all know how well that worked out.
 
The following users thanked this post: DiTBho

Online Zero999

  • Super Contributor
  • ***
  • Posts: 20357
  • Country: gb
  • 0999
Re: nostalgia of 386-level systems?!?
« Reply #31 on: April 05, 2022, 05:15:41 pm »
The 386SX was too slow for DOOM, but the DX was just powerfull enough for a 320x240 screen resolution.
That's true. It depended on the clock rate. Doom was a  little choppy on my parents' old 25MHz SX but it was fine on a 40MHz machine. By the way, I thought Doom ran on 320x200.

Does anyone know why IBM didn't bother with even the most basic 2D hardware acceleration and badly crippled the VGA card, so it couldn't make full use of its memory, without hacks?

A couple of hardware sprites for the mouse and text cursors, a hardware scrolling layer and blitter wouldn't have cost much. VGA had 256kiB of VRAM, yet the maximum resolution with 16 colours was 640x480, which only used 150kiB and the standard 256 colour mode was only 320x200, using only 62.5kiB. Mode X could go up to 360x480, with one page, or 320x400 with two pages, but it wouldn't have cost any extra to have 640x400 with 256 colours. I appreciate gaming was never the target market, but basic acceleration and high resolutions would have made GUIs much faster and easier to code.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15797
  • Country: fr
Re: nostalgia of 386-level systems?!?
« Reply #32 on: April 05, 2022, 05:25:10 pm »
I suspect that one reason for significant i386 nostalgia is the fact that it was the first Intel device to support paged virtual memory,
This is rather off-topic, but I claimed above the the 386 was the first Intel processor to support paged VM, but a bit of googling (and Wikipedia) seems to suggest that the 286 protected mode could also support paging, and that the 286 even had an on-chip MMU, which I find somewhat surprising.

Can anyone confirm this? I believe that I have an ancient 286 data book somewhere, but I can't find it to verify this.

Yep. The 286 had of course more limited address space (24 bits IIRC) and each defined memory block per descriptor was only up to 64KB, but otherwise the protected mode was already pretty close to that of the 386.

So it absolutely supported virtual addressing and had descriptors similar to the 386, with access rights, privilege levels.

 

Offline Berni

  • Super Contributor
  • ***
  • Posts: 5050
  • Country: si
Re: nostalgia of 386-level systems?!?
« Reply #33 on: April 06, 2022, 08:23:28 am »
I am guessing the IBM PC was a bit too early to the party to have hardware accelerated graphics.

Back then most people had monochrome monitors on a command line. The idea of the PC was to build it out of off the shelf components too. The easiest way to add a graphics mode was to just barf the pixels from a dual port RAM out to the screen. To do anything more would require a graphics ASIC (Like the game consoles had) and i am guessing IBM just went "Nah not worth it for something that is a serious machine for doing serious business of finance and spreadsheets and word processing". Then i suppose they just kept up the mentality even as displays became color and high resolution enough for GUIs

PCs also typically had pretty powerful CPUs compared to other computers, so i guess the lack of hardware graphics was not as much of a pressing issue when the CPU had enough horsepower to push a fair number of pixels around. But it did get some DMA functionality useful for it later on
 

Offline magic

  • Super Contributor
  • ***
  • Posts: 7453
  • Country: pl
Re: nostalgia of 386-level systems?!?
« Reply #34 on: April 06, 2022, 08:48:57 am »
286 did not support paging (and Wikipedia is always wrong about everything).

286 only supported segmentation. You could define continuous segments of memory and restrict an application to accessing only some of them - that was the protection. You couldn't save a 4KB block from the middle of a segment to disk and mark it as "not present" so that the CPU would fault when the application tries to access it. You couldn't restore that block to a completely different physical address and make the MMU find it there. These are things that the 386 added.

Maybe it would be possible to swap out a whole segment at once, but then you would need to use fixed-size segments (like 386 pages) if you want them to be interchangeable in the physical RAM. Problem is, if they are 64KB then small applications are allocated more memory than they need, and if they are smaller then large applications can't allocate continuous blocks of memory larger than segment size. The 64KB segment size limitation of 16 bitters was a PITA in itself already.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15797
  • Country: fr
Re: nostalgia of 386-level systems?!?
« Reply #35 on: April 09, 2022, 05:43:52 pm »
If you want to know what the 286 was capable of, just read the manual. A safer bet than just relying on random blog articles and posts.
"80286  AND  80287  PROGRAMMER'S REFERENCE  MANUAL"
In particular, "CHAPTER  11 ADVANCED  TOPICS".
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf