• Please review our updated Terms and Rules here

Loading dos into UMB on an XT

I figured it all out. The problem was actually being caused by my MSCDEX statement. For some reason it insists on being the last file loaded, otherwise I can't load other things into UMB.

Here's how you get COMMAND as a UMB and free up 4kb (config.sys):

SHELL=C:\QRAM\LOADHI.COM /R:1 C:\COMMAND.COM C:\ /E:512 /P
 
You really are getting into this, aren't you...

You probably know this already, and I don't know if it makes any difference, but just in case:

FWIW, with qram & QEMM the FILES, BUFFERS, STACKS, FCBS and LASTDRIVE are all .com files that are loaded in autoexec, in case that's relevant.

Also, I think that at least in QEMM DOS-UP refers to a DOSDATA.SYS driver and a DOS-UP.DAT file for some configuration info; don't know if that's relevant to qram.

m
 
I knew about the FILES and BUFFERS programs with QRAM, and I managed to get them working. However, with DOS-UP.SYS those programs don't seem to be needed anymore, as DOS-UP.SYS seems to load FILES and BUFFERS into UMB region automatically.

I am also aware of DOSDATA.SYS and DOS-UP.DAT. In my current setup with DOS-UP.SYS I don't seem to need those files, so they may not be required for operation....I am actually pretty certain DOS-UP.DAT is optional.

Then again I might be doing everything terribly wrong...but as long as I get my memory, I'm happy.

I'm not sure that it matters at all, but my two XT systems are running V20 and V30 processors. I don't know if that's required to do any of this.
 
I've been trying a few more things to get at that B000-B7FF 32kb UMB, but I am now convinced without support from my EMS driver I'm just not going to be able to do it.

I had a theory that if I enabled the entire 1mb of memory installed in my XT motherboard that I could use an additional UMB program to get at that. USE!UMBS.SYS was what I decided to use, and I think it does a pretty good job on XT and AT systems without EMS memory boards. The only thing is that you must absolutely have extra memory chips sitting at the unused UMB locations or won't work. Well, as it turns out my Juko XT board does map it's extra 384kb into the entire UMB region. As far as I can tell only a 64kb chunk in the C region is wired directly, and the rest is only accessible via an EMS driver. So this method is completely useless for my hardware configuration.
While I was doing this, I also learned something very interesting about the Juko boards. It seems that you can actually disable all onboard memory, and use only expansion boards (if they support this). This would be useful for running large page frame EMS modes so you can use the entire 640kb memory range as a frame. I'm going to test this out with the RamQuest 8/16 board which supports this setup. However, it won't work well for me since my V30 is fully 16-bit, and running all the memory off the 8-bit ISA bus will halve my bandwidth. The only app I know of that can actually use large page frame is DesqView.
 
I've been trying a few more things to get at that B000-B7FF 32kb UMB, but I am now convinced without support from my EMS driver I'm just not going to be able to do it.

A cursory/quick reading of the LIM EMS 4.0 spec says that you won't be able to, because additional mapped segments are done in 64K chunks only, on segment boundaries only. You meet the segment boundary requirement but not the 64K requirement (and never will because you won't be able to display any text!)
 
Hello and Happy New Year,

I've read your article "Anonymous Coward's "V'ger XT" - 10MHz V30". I've owned one of these Yuko XT boards with 1 Mb of ram, and that you described that 640kb-1Mb area could be uses as EMS 3.2 or ramdrive. Could send me these drivers especially the EMS driver, because i'll try it to uses as umb with Qram 2.02 or TLBMM (i was try it on a HT12 chipset 286 board wich has hardware ems driver, and it worked with 3.2 EMS)
 
I managed to load DOS in UMB using a homemade built ISA UMB RAM card that adds 128 KB in D0000-EFFFF

umbcard01.jpg




And now I can load DOS, mouse driver, doskey and all drivers into UMB area. That gives 630 KB of free conventional memory (pretty cool for a NEC V20 / generic XT clone board)


20120117152513675.jpg
 
Nestor, how does this differ from ibmapc's method of replacing the mapping PROM in an ordinary XT to provide 128K between D000-EFFF?

I would imagine OS-side it's not any different -- it just means you could plug his card into any system with that address range free, without making changes to the mainboard or the PROM. A lot of old PC/XT class memory boards used to let you state RAM size and start address, including addresses at or above 640k...

I think it would be neat to make a board like that where you have three 64k (or more) segments you could change the mapping of (or available size of said bank) with toggle switches -- that way you could put one bank at A000 on non EGA/VGA systems, one bank at D000 and another at E000. Of course, another 32k at B000 would be fun too... BAM! 864k avail on a 8088. If you're lucky and C800..CFFF is free, that's another 32k getting you up to 896k -- and of course if you're on a CPU that will actually support the HMA that's another 64k minus 16 bytes.... 960k... so HRAM's claim of 944k isn't that outlandish.

Wish my hands weren't shaking so bad these days as I've been playing with making a board along those likes for my 1000 SX... makes me jealous of Nestor's surface mount skills as I can't work with anything that small anymore. Well done.

Still feels like ice-skating uphill -- but I guess most of us are 'unreasonable men' to borrow from Shaw.
 
Last edited:
I only used PC-DOS 2000, USE!UMBS and DOSMAX. I can't use QRAM or other QD utilities because there is no EMS card, only UMB RAM...
 
Nestor, how does this differ from ibmapc's method of replacing the mapping PROM in an ordinary XT to provide 128K between D000-EFFF?
I think the final result is the same.​

Nestor, I like your solution. I installed DOSMAX on my 5155 tonight and was amazed to see 631k of base memory available. The only strange thing I see is that mem only reports 92k of upper memory but before DOSMAX mem reported 128K of upper memory. I think DOSMAX is taking 36k of upper memory and making it appear as HMA. Before DOSMAX, if I specified DOS=HIGH,UMB in config.sys, the message
"HMA not available: Loading DOS low" comes up before autoexec.bat is executed. With DOSMAX, That message doesn't come up and MEM reports 631k of base memory.

PS The only advantage that I can see with my setup (Custom programmed GAL in U44 and 4 banks of 256k ram chips) is that I don't need to use an expansion slot for memory. If anyone is interested, I would be happy to supply GAL's to anyone interested in implimenting the mod that I did, since CHUCK(G) sold me his Programmer.
 
PS The only advantage that I can see with my setup (Custom programmed GAL in U44 and 4 banks of 256k ram chips) is that I don't need to use an expansion slot for memory.

The Custom GAL is only for IBM 5160 XT motherboards or will it work in other setups? I'm using the UMB ISA card on a taiwanese XT clone motherboard...
 
Back
Top