VOGONS


How to add more memory to a 286?

Topic actions

First post, by MrSVCD

User metadata
Rank Newbie
Rank
Newbie

Hi,
I have just recived my first 286 and I am looking for a way to expand my memory beyond the 512KiByte that is installed.
Since my goal is to run MINIX and Turbo Pascal 7 on it I would like to add about 2 MiByte some way.
Is there a ISA-16 card design I can use for this?

Reply 2 of 46, by Many Bothans

User metadata
Rank Newbie
Rank
Newbie

The AST Advantage Premium was a popular card for IBM ATs back in the day.

  • Zenith Z386SX-20, 8MB FPM, Video 7 1024i, Unhoused
  • AOpen AP43, Am5x86-133@160, 1MB L2, 128MB FPM, Stealth III S540 32MB Savage4, SB32
  • ITX-Llama, 3Dfx V3
  • Asus CUV4X-E, P3-933, 512MB PC133, Hercules 3D Prophet II MX 32MB, SB Live!

Reply 3 of 46, by rmay635703

User metadata
Rank Oldbie
Rank
Oldbie
MrSVCD wrote on 2024-07-07, 18:51:
Hi, I have just recived my first 286 and I am looking for a way to expand my memory beyond the 512KiByte that is installed. Sinc […]
Show full quote

Hi,
I have just recived my first 286 and I am looking for a way to expand my memory beyond the 512KiByte that is installed.
Since my goal is to run MINIX and Turbo Pascal 7 on it I would like to add about 2 MiByte some way.
Is there a ISA-16 card design I can use for this?

It really depends on the model, the Tandy’s I had were limited to 640k and 1mb respectively

Other machines had onboard expansion sometimes via dipps, sipps or simms

And a few needed ISA expansion for extended memory because they lacked anything beyond base expansion

Reply 4 of 46, by douglar

User metadata
Rank l33t
Rank
l33t

It's always best to populate the motherboard first. The early boards used DIPPs, SIPPs were common in 1988/89, and boards after 1990 usually use 30 pin SIMMs, but there's no hard fast rule there. Depends on your board.

If all the sockets / slots in your motherboard are full, consider replacing the existing ram with higher capacity chips/modules. It will be cheaper / faster than the alternative.

The alternative is to buy something like one of these:
https://theretroweb.com/expansioncards/s/accu … ogic-inc-rampat
https://theretroweb.com/expansioncards/s/ast-rampage-2
https://theretroweb.com/expansioncards/s/boca … bocaram-at-plus
https://theretroweb.com/expansioncards/s/unkn … wn-8-meg-at-ram
But those ISA ram boards should be a last resort for the desperate.

Reply 5 of 46, by MrSVCD

User metadata
Rank Newbie
Rank
Newbie

My mother board can be expanded to 1MB RAM or 640KB so a add-in card is the only option for more ram.
So what I am really looking for is a DIY version of a ram card.

Reply 6 of 46, by douglar

User metadata
Rank l33t
Rank
l33t
MrSVCD wrote on 2024-07-08, 16:52:

My mother board can be expanded to 1MB RAM or 640KB so a add-in card is the only option for more ram.
So what I am really looking for is a DIY version of a ram card.

Do you want EMS or XMS?

I've seen DIY XMS cards, but they are only 8 bit

https://www.lo-tech.co.uk/wiki/Lo-tech_2MB_EMS_Board

Reply 7 of 46, by mkarcher

User metadata
Rank l33t
Rank
l33t
douglar wrote on 2024-07-08, 16:58:
Do you want EMS or XMS? […]
Show full quote
MrSVCD wrote on 2024-07-08, 16:52:

My mother board can be expanded to 1MB RAM or 640KB so a add-in card is the only option for more ram.
So what I am really looking for is a DIY version of a ram card.

Do you want EMS or XMS?

I've seen DIY XMS cards, but they are only 8 bit

https://www.lo-tech.co.uk/wiki/Lo-tech_2MB_EMS_Board

That's an EMS card, not an XMS card. You can't implement an XMS card using an 8-bit slot connector. Even if you only provide 8-bit access to the XMS on said XMS card, you still need the high address lines, and signalling for addresses exceeding 1MB, both of which is only available on the 16-bit extension of the slot.

Reply 8 of 46, by douglar

User metadata
Rank l33t
Rank
l33t
mkarcher wrote on 2024-07-08, 17:21:

That's an EMS card, not an XMS card. You can't implement an XMS card using an 8-bit slot connector. Even if you only provide 8-bit access to the XMS on said XMS card, you still need the high address lines, and signalling for addresses exceeding 1MB, both of which is only available on the 16-bit extension of the slot.

Thanks for catching that. I guess it says EMS in the link, doesn't it?

Reply 9 of 46, by MrSVCD

User metadata
Rank Newbie
Rank
Newbie

Now I have access to the manual again, aka I am home.
The motherboard is a "SUN'S ELECTRONICS S-5098 286 BABY AT"
I have ordered a set of 4164 dram chips so I can expand it to 640KB.
I am also looking at making a SRAM card with slots for either 2, 3 or 4MB ram. It is probably harder than I think.
I have already found a chip that can be useful https://www.mouser.com/ProductDetail/ISSI/IS6 … 2FCwONizA%3D%3D

Reply 10 of 46, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

There doesn't seem to be the big community for making new expansion cards around ATs that there is around XTs.
As you mention, an extended memory card built around an SRAM chip is one such possibility. Those are simple in an XT; for an AT I think you just need extra support to handle both 16- and 8-bit wide accesses.
Another one is a newly made Multi-IO card built around a "modern" ISA Super I/O chip with all the bells and whistles should anyone want them (16550 serial, ECP parallel, 2.88MB floppy, etc.) and a 16-bit wide ROM for XT-IDE Universal BIOS for the fastest possible speeds in 286 systems that can't shadow option ROMs. A bit about that idea here: Re: How does ISA MEMCS16# work?

Reply 12 of 46, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi, there used to be ISA memory boards for the IBM AT.

https://minuszerodegrees.net/5170/cards/5170_cards.htm

Maybe things like address decoding etc. can be better understood by studying the originals.
Interfacing SRAM instead of DRAM might be possible without much alteration, maybe.

PS: I do have an AST Rampage 286 here.
It's an EMS card, but I vaguely remember it can be repurposed for Extended Memory.

Other popular boards were the Boca RAM card and the QuadRAM boards, I think. Some had SIMM holders, even.

https://wiki.preterhuman.net/BOCARAM/AT

https://wiki.preterhuman.net/Quadram_Corporation

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 13 of 46, by wierd_w

User metadata
Rank Oldbie
Rank
Oldbie

I used to have a 16bit isa ram card that had 8 30pin sockets on it. (Sadly, no, could not use 4mb simms).

The most it could add was 16mb.

It was fine in 286 and very early 386 boards, but was an ankle shackle on 486 and up.

Keep in mind, 286 cpus dont have an official way to leave protected mode. (No, abusing LOADALL to go into unreal mode, is not actually leaving protected mode!) This is why 286 dos extenders are kinda rare / buggy.

A 286 should really be considered as a really fast XT with 16bit access available.

For having gobs of xms, consider a 386 or better.

Reply 14 of 46, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
wierd_w wrote on 2024-07-09, 20:41:

This is why 286 dos extenders are kinda rare / buggy.

Well with one exception, Windows <= 3.1 standard mode.

Reply 15 of 46, by Jo22

User metadata
Rank l33t++
Rank
l33t++
wierd_w wrote on 2024-07-09, 20:41:

A 286 should really be considered as a really fast XT with 16bit access available.

As someone who had spent most of the time running Windows 3.1 on a 286 this a depressing thought.

I've always liked the idea that my 286 PC would run Windows 3.1 natively all the years.
In a clean, all 16-Bit fashion without the trickery of V86, VXD drivers and memory managers.

If I had have had owned a 386/486 PC instead, I would have had suffered from all the issues so common among gamers back then.

I would have had ended up fiddling with EMM386 or I would have had ended up saving up money to buy latest QEMM.

Thanks to the 286 and the PAS16 I had been spared from this stress.

Edit: Quick explanation. The PAS16 was very user friendly. Software-configurable via setup program, SB emulation etc. The setup program did auto-detect best configuration.
I'm still glad my father knew about the PAS16.
To me, the card was much less of a pain than a real Sound Blaster would have been, I assume.

Instead of fiddling with UMBs and V86 memory managers, I had to go for the clean solutions and replace standard DOS drivers with smaller alternatives.

In retrospect, I'm rather glad that I was "stuck" with an 286 PC that had 4MB of RAM. On my own desktop, I mean. I had access to higher-end PCs, but didn't own them.

The 286 was slow by comparison, but nevertheless did get all the multimedia tasks done that I asked for.

I could visit CompuServe and watch latest Metosat weather images, play music, watch small video clips, use my handy scanner do digitize photos, use TrueType fonts for schoolworks etc.

The idea that an 286 PC is best to be used as an fast XT makes me depressive.

To me, the 286 platform is about VGA, friendly GUIs, DTP, astronomy software and the many advertisement games from the 90s.

The 80286 is also one of the most advanced 16-Bit CPUs made so far, I think.

Which I have a soft spot for. In the 90s, it was part of the declining 16-Bit era, just like Amiga, SuperNES or Sega Genesis/MD were.

Later 286 steppings are very clean by design, very CISC-like without complicated pipelines and parallelism of 386 or 486+ processors.

Apart from this, it also was being second-sourced and cloned, still.
The "other Germany" had developed an 80286 compatible before reunion, even.
The idea that such an old processor could be used to run Windows 3.1 or Geoworks Ensemble and do lightweight multimedia is mind blowing, I think.

Edit: Not quite a few PC emulators of the 90s did use an 80286 core to emulate an AT class PC.
SoftAT or SoftWindows 1.0, I think.
Windows NT 3.x on RISC platforms (PowerPC, MIPS etc) had featured an NTVDM with 80286 emulation.
The Windows 3.1 subsystem (WoW) was being limited to 16-Bit code, too.

Edit: Picture added.
Edit: Picture added.

Edit: Sorry for the long posting, I got carried away! 😅
My response was meant as an answer to the statement, only, btw.
I didn't mean to say wierd_w is wrong or something, it wasn't meant as a criticism either.
What I wrote was merely an answer to the one statement/idea in the quote.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 17 of 46, by akimmet

User metadata
Rank Member
Rank
Member

Sorry I don't harbor the same nostalgia for the 286. Bugs and severe limitations meant protected mode was a giant pain to use. Many considered the 286 a brain dead design at the time.

Edit: This was meant mostly a reply to Jo22's post. It got a little too carried away, but we all here have nostalgia for this deeply flawed platform known as the PC. Otherwise we wouldn't have a community here.

There was also Xenix for the 286, there may be others I'm not aware of too. However, many abandoned the 286 in favor of the 386 fairly quickly.

Reply 18 of 46, by Jo22

User metadata
Rank l33t++
Rank
l33t++

^I do fully agree here! ^^
I must also admit that the 80286 wasn't as mainstream as an Turbo XT or an 486 multimedia PC.
It's not without reason that retro sites do label 286 (and 386) PCs as "collector's PCs".

And what wierd_w said isn't wrong, either. A lot of 286 PCs had been used like fast PC/XTs. Sadly.
Otherwise they hadn't been stuck with 1MB of RAM so long.

Way back in the 80s, there wasn't so much Protected-Mode software yet. Not for the home user, at least.

Windows 3, Himem.sys and DPMI are from very late 80s ('88/'89) and early 90s.
Exactly at the transition point to 32-Bit software (~1993 was the years DOS4GW games started over).

Printer spoolers and RAM disks did already support Extended Memory via int15h, though.
Which wasn't unimportant to software developers or offices.

That's why Windows 3.1 was the "last hurray!" for the 80286, I think.
It saved a lot of 80286 systems from being dumped. Along with DR DOS and MS-DOS 6.x.
DR DOS 5/6 and NW DOS 7 had special 286 chipset support, also.

What's also remarkable is that 286 systems with integrated VGA or Hercules had been continuely used in small disk-less systems in the early 90s.
As small Novell Netware stations, too, I think.

This was an application were the 8086 had been considered too weak and the 80386 or 80486 being to precious or powerful, I assume.

Here in my place, the 80286 had been considered "good enough" by most PC users who merely wanted a workplace computer.

They essentially wanted sort of a fast XT, more or less. But with more modern hardware.
So they bought an 80286 PC when it was becoming closer to being obsolete.

Considering that most had bought a cheap no-name Turbo XT motherboard a few years earlier that makes sense.:
They had been quite money-oriented before, already (sadly).

I mean, Turbo XT systems had been so popular in the 80s because they had been very cheap, like an C64.

No name XT boards from the far east or Turbo XT boards were often sold in kit form, more or less.
RAM and BIOS had to be supplied by the user sometimes, too.

That's also why many 80286s were so dog slow, I think, by the way.
They had been assembled from XT era parts.

Or rather, the XT motherboard had been replaced by an AT board without changing the rest of system.

The DIP RAM chips, the old MFM/RLL HDD, 8-Bit graphics cards, serial port cards with an 8250 UART.. They all were kept.

Again, it's difficult to put into words.
Long story short, the 80286 PC was sort of standard by late 80s/early 90s.
Not in an outstanding way, but silently. More like a gray eminence.

It had a high market share, still. But it wasn't high-end anymore, that rather was the 80386 or 80486 PC:
That type of PC was what users wanted if the had been PC enthusiasts or developers.

The 80286 PC was more like a humble workhorse for daily life.
The uninteresting type of PC that used to be found in several applications.

The original MPC 1 specification named an 12 or 10 MHz 80286 as a minimum requirement, before it got changed for an 386SX at 16 MHz in the revised MPC 1 specification .
- Probably because of the ability to run Windows in 386 Enhanced-Mode, which I think was reasonable.

The Tandy VIS console had used an 80286, too and ran Modular Windows, a Windows 3.1 derivative.

Later versions of Symantec software had required an 80286 or V20/V30, even.

So again, by the 90s the 80286 PC was the lowest generation of "normal PCs" (an AT class system) at the time.

It could run most DOS applications as expected, including Turbo Pascal 6/7 which could use DPMI.

And if it had VGA and an Adlib/SB clone, it was an acceptable alternative to an Amiga 500 as a games computer, at least.

To some degree this statement was also true to owners of hot-rod Turbo XTs who had invested in an VGA card by turn of the decade.
Such users must have existed, as well.

Otherwise, VGA cards with an 8-Bit connector weren't being sold so much over the years.
It's also the reason that the PC/XT platform still has so many fans today, I guess. 🤷‍♂️

Edit: Speaking of XTs.. Windows 3 and some of the 3.1 Betas did run on XTs in Real-Mode.

To actually develop Windows software on Windows, though, an AT was required.:

Turbo Pascal for Windows and Visual Basic 1.0 did require an AT with 80286 processor and Windows 3.0. Or higher.
Same was true for Quick C for Windows 1.0, I think.

Edit: The UdSSR implementation of the 80286 was very interesting, too.

I've made a topic about this earlier:
Pseudo 80286 made in USSR?

A lot of work had been put into creating an 286 style system here, apparently.

It demonstrates how important or complicated the 80286 had been.

It really was hitting the limits of old manufacturing processes of the day, too.

Edit: One last edit here - I remembered that the 80286 also had played a role in networking.
The 16 MB address range and Protected-Mode was important to server software of the 80s, such as NetWare.
https://en.wikipedia.org/wiki/NetWare#NetWare_286_2.x

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 19 of 46, by mkarcher

User metadata
Rank l33t
Rank
l33t
Jo22 wrote on 2024-07-09, 21:44:

The idea that an 286 PC is best to be used as an fast XT makes me depressive.

I don't think it is as bad as it is portrayed in this thread. It is true that if you want to use DOS on a 286, you just use it as a fast XT - but that is mostly the same on any computer. Even a Pentium 4 computer running DOS is "just a fast XT". On the other hand, Windows 3.1 and 16-bit OS/2 are designed to make good use of the protected mode of the 286, and for these operating systems, the 286 provides clear advantages over a "fast XT", for example by making more than 1MB easily accessible to multitasking environments.

Jo22 wrote on 2024-07-09, 21:44:

To me, the 286 platform is about VGA, friendly GUIs, DTP, astronomy software and the many advertisement games from the 90s.

On 286 systems, DOS extenders often didn't provide sufficient advantage over real mode to be worth the hassle. The performance impacts of the switch-to-real-mode workaround is an actual issue if your application relies on using DOS services a lot. Different 286 systems had their own quirks with handling the A20 line and providing reset methods, so writing well-performing universally compatble DOS extenders was hard, but not impossible. There were the PharLap 286|DOS and the Rational Systems DOS/16M (the predecessor to the ubiquitous DOS/4G, best known for the variant bundled with the Watcom compiler as DOS/4GW). But most importantly, there was Windows 3.1 which likely contains the most practice-proven 16-bit DPMI host of all times.

VGA does not rely on the 286 - VGA cards work in XT-class hardware as well, although a 4.77MHz XT-class system is likely not fit to deal with 640x480 pixels at a good performance. A Turbo XT contaning a 10MHz V20 is a different piece of cake, though. Of course, as soon as you have VGA compatible cards with a 16-bit bus interface and on-VGA write posting, the XT bus is a severe limitation, and a 286 will outperform it easily. Back the 286 days, 8-bit VGA cards were common, though. And systems with just 1MB of RAM. This kind of system actually makes most sense as "fast XT", and that's why most of the advertisement games you mentioned actually used the 286 just as a "faster XT". Requiring more than 1MB of RAM for a game was only sensible for games if there are enough customers having computers with that much memory installed. The time that happened, most of those computers also had a 32-bit processor. Developers went directly to 32-bit software not due to the lacking performance of the 286 protected-to-real-mode transition, but because they did no longer want to deal with segmented memory but use flat 32-bit pointers instead. In my oppinion. the 286 was obsoleted in PC machines due to it's 16-bitness, not due to protected mode quirks.

For virtual memory operating systems, and even for EMM386, the paging feature of the 386 processor was a key feature - but for single-tasked protected mode games, paging was unnecessary, unless a tool like EMM386 already put the system into state that requires paging (like providing virtual UMBs or EMS). I expect that some DOS extenders invoked from a real mode environment do not use paging at all, which will provide performance benefits, as the processor can skip looking up page mappinigs, which is quite slow if you don't hit the 8-element cache ("TLB: translation lookaside buffer"), especially on a 386SX due to the narrow bus interface. So "paging" is not a 386 feature that caused application developers to abandon 286 compatibility.

As the most prominent reason to write 386 applications was the flat 32-bit memory space, not even hindsight-powered design improvements could have prevented the obsolencence of the 286 in general-purpose computing, as the 64K segment size is a direct consequence of the processor using 16-bit pointer registers.

The Windows 3.1 subsystem (WoW) was being limited to 16-Bit code, too.

I don't think that's entirely true. Windows 3.1 in 386 enhanced mode should be able to provide 32-bit memory segments to 16-bit applications. This means you should be able to execute 32-bit code in a 16 bit windows environment, but you would need to do stuff by hand (like loading 32-bit code), which is implemented in the operating system if you just need 16-bit stuff. I'd expect a lot of Win32s applications (if not all) don't need any kernel extensions to the 386 mode Windows 3.1 kernel.