[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: Lost expanded memory



** Reply to message from Paul Breeze  on Fri, 7 Nov
2003 14:26:55 GMT

Paul:

I misspoke earlier ("How do you have your laptop set up, in terms of the
conditions and variables we've been discussing (XM, etc)?") I meant, of
course, ZX. Do you set ZX to any value in SETTINGS.DFL? Let's see... if you
don't set ZX to anything, the default is... [testing...] "1", i.e. do NOT use
expanded memory.

So, given that you (meaning Paul) _must_ set ZX=0, and you Paul _must_ have
expanded memory available, then... it seems likely that we all must have
expanded memory available in order to load non-US dictionaries (or to load the
whole dictionary anyway, oof). [expletive deleted]! I don't think that I have
any
machine here that does enable expanded mem ... lemme check ... well, I _do_ have
a (circa 2001) Phoenix A18 BIOS on one machine that permits EMS and USB both.
And yes, it seems true, that if no expanded memory is enabled on the command
line when you launch XyWrite, spelling doesn't work with UK. If ZX=1, spelling
doesn't work. With EMS enabled and ZX=0, it does work. However, I noticed
this additional factor: if I set expanded mem to "/e5120" on the XyWrite
launch line, there's no room for EMS to work. If I set it to "/e4096", I have
a 16Kb EMS space. If I set it to "/e2048", I have a 2 megabyte(!) EMS space to
work with. Interesting! Smaller is better. Just don't make it zero.

Then I looked at a (2003) IBM 1AET61WW BIOS. Now this came as a surprise:
Clearly, with the USB BIOS enabled, EMS doesn't work, and non-US spelling
doesn't work. Disable USB BIOS, and it does work. So, when Patricia suggested
that maybe this is a Win9x vs. WinNT thing, it appears incorrect; I think it's
a BIOS and x86 architecture thing. Maybe even a BIOS _manufacturer_ thing --
maybe we'll discover that Phoenix (or whatever) BIOSes work and others don't --
something like that. Future posts on this subject might include that
information. But clearly the BIOS designers had to find room for the USB BIOS,
in the same way that they make room for the video BIOS. New BIOSes grabbed what
used to be the Expanded Memory space.

But here's the interesting part. I hadn't been paying close enough attention
to what the BIOS says. First I thought, maybe I can reserve the memory space
in the BIOS, so that the USB code gets poked into some other location and
leaves the EMS are open for use. But IBM's BIOS doesn't have memory
reservation. However, what it _does_ say, quite clearly, is this: disabling
the USB BIOS "disables boot from USB diskette and USB CD-ROM. Frees 16KB of
high memory for use with loading device drivers when running DOS applications."
End quote. Well, I don't boot USB diskettes, and I don't have a USB CD-ROM. I
just have a mouse! So what the hell... I disabled the USB BIOS, the bloody
mouse still works fine, and now I have EMS back. Woo hoo!

I'd check to see what sort of flexibility your BIOS allows.

Let me look into on-the-fly swapping, taking this new information into account.
*Maybe* you could load the largest of the dictionaries (NotaBene Italian, 382K)
first, then swap the smaller ones into that space without overrun (and without
also checking Italian words against an English text). But frankly, I doubt it
-- I don't think you can swap, period. You start out with a dictionary, and
you're stuck with it, probably, for the duration of the session. Wanna swap
dictionaries? Probably have to Quit Xy, copy the new dictionary as DICT.SPL,
and relaunch Xy. More anon.