VOGONS


First post, by ravensholt

User metadata
Rank Newbie
Rank
Newbie

Hi there,

I'm in the midst of setting up an 80286 with 2MB RAM.

How do I get access to UMB on a 80286? I've tried googling, and some people refer to tools like Quarterdeck's QRAM.
I've tried installing QRAM, but when loading QRAM in Config.sys, the machine just hangs.
The 80286 has an EGA graphics card in it, so I was hoping I could maybe make use of some of that pre-allocated memory between 640k-102k4, to free up some base memory?

Anyone who can refresh my memory here?

On anything newer, like a 386, I'd simply use EMM386, but that's obviously not an option here.

Thanks
//Martin

Reply 1 of 12, by ravensholt

User metadata
Rank Newbie
Rank
Newbie

Maybe just to clarify. My end goal is to free up more base memory. I currently have 586k available (or somewhere around that number, I'll check later).
I decided to go with DOS 6.22, even though DOS 5.0 would probably suffice.

Thanks

Reply 2 of 12, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie

a 286 can still use himem.sys with hma and umb memory blocks.

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 3 of 12, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

QRAM only works if you either:
1) have LIM 4.0 EMS hardware - either a discreet add-on board or built into the motherboard, or
2) have a supported shadow RAM chipset

Reply 4 of 12, by Jo22

User metadata
Rank l33t++
Rank
l33t++

I second this.

The most common method of getting UMBs to work on pure 16-Bit machines is to use a dedicated memory board that maps into the UMA.

Unfortunately, such cards were mostly 8-Bit ISA (or more precisely, PC/XT bus cards).

Personally, I've got an very old card by C'T magazine that has to be wired by hand for the correct configuration..

Edit: Here is s photo of my card/board:
Re: 80x86/Vxx PC emulators with x87, EMS, UMBs and no artificial 640KiB limit ?

Luckily, there are also modern cards still.
Like that 1MB card by Lo-Tech.

But keep in mind that these cards are using 8-Bit I/O, so they are slower (8-Bit I/O and 4, 77MHz clock).

Anyway.. For simple things like TSR drivers (mouse, keyboard, Ansi.sys) it may do.

After all, having not enough memory is worse than a performance penalty.

Also, what most people seem to forget:
286 PCs not capable of shadow memory run code of Option-ROMs directly from the ISA cards themselves.
Which can be slow, too, if the EPROM is not interleaved (a single EPROM instead of 2x 8-bit EPROMs in tandem) or slow (250ns responce time). 😉

Edit: There's also EMM286 that provides EMS on a 286 by using XMS. And EMU386, which emulates some 80386 instructions.

"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 5 of 12, by zyga64

User metadata
Rank Oldbie
Rank
Oldbie

UMBDRVR maybe ? http://www.win3x.org/win3board/viewtopic.php? … 070&language=en
or
The last byte memory manager http://files.mpoli.fi/unpacked/software/dos/u … ip/contents.doc

1) VLSI SCAMP /286@20 /4M /CL-GD5422 /CMI8330
2) i420EX /486DX33 /16M /TGUI9440 /GUS+ALS100+MT32PI
3) i430FX /K6-2@400 /64M /Rage Pro PCI /ES1370+YMF718
4) i440BX /P!!!750 /256M /MX440 /SBLive!
5) iB75 /3470s /4G /HD7750 /HDA

Reply 6 of 12, by ravensholt

User metadata
Rank Newbie
Rank
Newbie

Thanks. I'll try the UMBDRVR, and see if that works.
I don't think there's any games, that run on a 80286, that would require EMS. Dune 2 maybe? in order to have both Adlib music and digitized speech?
Besides that, I don't know any games that requires EMS.
I was more interested in freeing up some base memory, by being able to use DeviceHigh and LoadHigh.

Reply 7 of 12, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie

i'll say it again, good old basic himem.sys will give you hma and umb memory for devicehigh/loadhigh.

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 9 of 12, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
kolderman wrote on 2021-01-12, 21:35:
BloodyCactus wrote on 2021-01-12, 21:33:

i'll say it again, good old basic himem.sys will give you hma and umb memory for devicehigh/loadhigh.

Eh how is that even possible?

why would it NOT be possible? a 286 has the full 24 bits of address bus 🤣

EDIT: I now see that he mentioned UMB, which it won't give you my bad. HMA on 286 is good to go though

Reply 10 of 12, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie

well a umb is nothing more than writable ram between a000 and ffff. on a 286 its down to shadowram, etc via the chipset (suntac, headland, c&t, etc).

(I wrote a umb driver for xt/tandy/pcjr).

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 11 of 12, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

Ok then I'm sure you know that himem by itself will not provide UMB services in shadow ram. First you need a chipset that can even support it, many early 286 boards do not. Second you need an installable device driver to control it, like UMBDRVR or The Last Byte.

Reply 12 of 12, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Indeed. Himem.sys of MS-DOS merely makes XMS, which uses Extended Memory, available to DOS.
It also includes an A20 handler* and grants access to the HMA.

Edit: I forgot to add: UMB providers like The Last Byte etc. do provide a minimal XMS-like stub (akin to Himem.sys) so that DOS becomes "aware" of usable UMBs during the early booting process.
And later on, Himem.sys takes over, I believe.
So it was not exactly wrong saying that Himem.sys is part of the UMB thingy. 😀

(*Though in practice, the state of the A20 gate was not that critical.
MS-DOS and 90s era applications would work whether it was open or closed.
And on a 386+ with EMM386/QEMM etc. the A20 line was emulated anyway.)

The DOS=HIGH, UMB setting in Config.sys merely allows DOS to use these things.
It does not configure them, though.

That being said, DR-DOS 6.x and Novell DOS 7 have a much more sophisticated "Himem".
It has native support for several 286 chipsets, if memory serves.

Edit: Some videos.

The Last Byte
https://www.youtube.com/watch?v=lr9KrPNis-Q

Windows 3.0 with chipset-based EMS
https://www.youtube.com/watch?v=XqFSWnMpVic

C't magazine UMB card in an XT
https://www.youtube.com/watch?v=8nMB8XvwUJo

Above Disc LIMulator that used the HDD
https:// www.youtube.com/watch?v=539tnsX-Zso

High resolution FLC animations on 286/Hercules
https://www.youtube.com/watch?v=ydEdC_QiV-U

Edit: I modified the posting a bit.

"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//