Announcement

Collapse
No announcement yet.

EMS memory and Windows XP

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tom Hanlin
    replied
    EMS doesn't necessarily require a 64k frame but, it looks like Microsoft's
    EMS managers do. This is probably not unreasonable. Most EMS programs
    are written to expect a fixed frame.

    If you dig around in old DOS archives (SIMTEL maybe?), you may be able
    to find other solutions. Time was, you could find EMS emulators that
    used low DOS memory for the page frame.

    ------------------
    Tom Hanlin
    PowerBASIC Staff

    Leave a comment:


  • Alan Guth
    Guest replied
    Thanks for the new feedback. From your messages I gather that on
    some XP systems it is necessary to set _default.pif for EMS, even
    when a specific non-default pif file is in use. This sounds
    strange, but your messages seem to indicate that this is true.
    On my system, however, it does not have any effect. I tried Tom
    Hanlin's settings exactly.

    I am now pretty well convinced that the problem on my system is
    in fact not caused by XP, but rather by the ROM associated with
    the hardware. I think that Tom Hanlin was right when he said
    that "Some manufacturers have been overloading the old "DOS"
    space with their hardware, because it's cheap and they figure no
    one will notice." As I mentioned in my 8/2/02 message, on my
    computer there is no place in memory for the 64K page frame that
    apparently EMS memory requires. (It would help me a lot if I had
    access to one 16K page, but I gather that EMS does not allow such
    an option.)

    Today I tried a control experiment that I think makes my
    situation completely clear: I tried booting Windows 98 DOS from a
    floppy, with a config.sys file reading:

    DEVICE=HIMEM.SYS
    DEVICE=EMM386.EXE RAM
    DOS=HIGH,UMB

    I got the messages:

    EMM386 not installed - unable to set page frame base address.
    Expanded memory services unavailable.
    Total upper memory available 34KB
    Largest Upper Memory Block available 34KB

    So, even with old fashioned Win98, my IBM A30 laptop is not
    capable of running EMM386. Using QEMM, booting Win98 DOS from a
    floppy, I was able to get EMS to work, using QEMM's "I=" option to
    make room for the page frame. With EMM386, however, I don't
    think that there is any similar option.

    If anyone knows how to eliminate video or system ROM, please let
    me know. Otherwise I think I will have to plan on getting along
    without EMS on this computer. It seems, however, that XP is not
    the problem after all.



    ------------------

    Leave a comment:


  • David J Walker
    replied
    I have had little or no success with ANY DOS apps under XP, not just mine, but all sorts of other stuff that my clients want to run..
    Apart from the memory, and I have fiddled endlessly with .PIFs, AUTOEXEC.BATs & CONFIG,SYSs, there is a big bug in the graphics when in full screen mode. Mostly it just crashes the app straight off.
    The curious thing is, if you examine the DOS emulator, it has a number of improvements and added capabilities compared to NT4 & W2K.
    So why has it got these, when M$ is claiming to be dumping DOS altogether?
    Maybe the new SP will fix it, but I'm not holding my breath!

    ------------------

    Leave a comment:


  • Jerry Fielden
    replied
    I remember in the past, I had some kind of memory problems with
    one of my DOS programs running in windows, what kind of memory
    problem, I don't remember.

    Buy anyway, to solve the problem, I increased my FILES= in config.sys
    to 20 more files. It might work in some cases.

    ------------------

    Leave a comment:


  • John Lee
    replied
    I think there may be difference in the XP "preloaded version"
    and the "user install version".

    The _default.pif file(in WINDOWS DIR/Folder) may or may not be hardware related and comes
    with the "preloaded version". Anyone any idea ?

    If so,
    I don't know if just copy the _default.pif file would make it work.
    (copy to WINDOWS DIR/Folder)
    Regards

    ------------------


    [This message has been edited by John Lee (edited August 05, 2002).]

    Leave a comment:


  • Mike Doty
    replied
    My system didn't have a _default.pif http://support.microsoft.com/default...EN-US;Q131877&

    Got EMS to work with Tom's method, but have not been able
    to get Microsoft's QBX to work with it.
    So close, but so far.

    ------------------

    Leave a comment:


  • John Lee
    replied
    Thanks Tom.

    Like it or not, more and more people would use XP because it is "preloaded".
    Rumors are MS would only support XP in the future.

    I have no problem to use PBDOS on the XP but my experience is limited.
    Since MS does not openly support DOS on the XP,
    informations might only be available by the users.

    I wish people can post details if DOS programs cannot run on XP,
    better how they can fix the problem.

    Regards

    ------------------

    Leave a comment:


  • Tom Hanlin
    replied
    Code:
    Windows\System32\Config.NT
       dos=high, umb
       device=%SystemRoot%\system32\himem.sys
       files=40
     
    Windows\_default[.pif]  Properties, Memory tab:
       Conventional memory: auto
       Initial environment: auto
       EMS: 16384
       XMS: 16384
       DPMI: auto
    Note that the extension for the _default.pif file doesn't show up
    in Windows Explorer, even if you have "Hide extensions for known
    file types" turned off. Nasty little bug, that. I think Win2k also
    has this problem.

    ------------------
    Tom Hanlin
    PowerBASIC Staff

    Leave a comment:


  • John Lee
    replied

    I wish people can post some "findings" as to

    under what situation is not working ?
    and what is now working ?

    Regards



    ------------------

    Leave a comment:


  • Mike Doty
    replied
    found a link about a previous discussion on this which didn't
    come up with a solution. hope you find something. http://www.powerbasic.com/support/pb...ad.php?t=18926

    ------------------

    Leave a comment:


  • Lance Edmonds
    replied
    There are a number of models of computer with hardware that preclude the ability to configure EMS. The first model with this problem that was brought to my attention was a Gateway with a Promise IDE controller that simply blocks the creation of EMS. BTW, the Gateway/EMS saga became an FAQ which can be found in the FAQ forum.

    Setting up EMS in Windows 2000 is dead easy if there are no hardware problems going on - editing the Properties of the shortcut I use to launch PB.EXE was sufficient. Eventually I remmed out everything in my CONFIG.NT and AUTOEXEC.NT files so that I could maximize conventional memory size for running the IDE. When I open the IDE in Win2K I get: "IDE memory available: 226384".

    That said, I would not imagine XP would be any more difficult (given compatible hardware) since the NTVDM subsystems are supposed to be virtually identical, but I'm yet to put together a new box that is "powerful" enough to run XP (I own a copy of XP home, but it is still in its wrapper).

    In any case, you might try looking for help on the EMS problem on some of the Windows "help" sites, such as at www.computing.net -- and maybe in the various XP-related UseNet groups.

    After all, chances are pretty good that someone has travelled this road before you, and has laid down a map.

    Good luck!

    ------------------
    Lance
    PowerBASIC Support
    mailto:[email protected][email protected]</A>

    Leave a comment:


  • John Lee
    replied

    Try this :

    Search for _default.pif
    Right Click on the file
    select Properties
    select Memory
    set Expanded Memory Size
    Apply
    Exit

    Re-boot and it should work

    ------------------

    Leave a comment:


  • e sutton
    replied
    I have not been able to get ems to work on W2K, let alone XP!
    Despite a lot of research.
    What helps me to increase the memory for PB ide was to rem out
    as much stuff as possible in Config.nt etc. and use
    C:\winnt\system32\command.com /c pb as the cmd line in properties
    for PB35. but I still only get 176kb of main mem and 4096 of ems.
    So I just use that for small programs and when I need to run big,
    I keep a dos partition with Qemm on the same machine.I have never
    seen dos/qemm bettered for max dos mem.
    By the way in w2k , you create an icon for command you can then you
    can set properties like line numbers on screen etc.
    On XP ,I decided sometime back that I didn't like the sound of it
    so I will never upgrade to XP. W2k I do find stable and good though
    apart from this.
    Eric

    ------------------

    Leave a comment:


  • Alan Guth
    Guest replied
    Thank you all for your feedback. I forgot to mention, by the
    way, that I am using XP Pro, although I doubt that this is why
    Tom Hanlin gets EMS memory and I don't.

    Like Tom, I am embarrassed to be using Windows XP, so I trust
    that the PB folk are giving PB/Linux a high priority. With XP
    one really has the feeling the Microsoft owns the machine, but
    they let me use it most of the time.

    So far I still do not have EMS memory on my machine. Trying Roy
    Scott's suggestion, I verified that the XP system on my computer
    contains no file called emm*.*.

    I would be curious to know if Tom Hanlin's machine uses an
    emm386.exe file, or whether XP Home provides EMS memory through
    some other route. I would also be curious to know what his
    config file says.

    I do have emm386.exe from other Windows and DOS versions, and
    tried loading several of them with a device= statement in
    config.nt. I get error messages like "EMM386 not installed -
    protected mode software already running." I also tried loading
    qemm386.sys in a similar way, with a similar error message:
    "Cannot load because the processor is already in Virtual 86
    mode."

    It is quite possible that Tom Hanlin is right that it is a
    hardware manufacturer problem. I discovered using Quarterdeck's
    old Manifest program (part of the QEMM system) that when I start
    a DOS window normally on my XP machine, there is no place in
    upper memory where the 64K EMS page frame might be put. There is
    a 32K "unused" segment (B000-B7FF), and a 40K "High Ram" segment
    (D200-DBFF), but the rest is taken up by VGA graphics (64K), VGA
    text (32K), video ROM (64K), ROM (8K and 80K segments), and
    SYSTEM ROM (64K). I believe that EMS requires 64K of consecutive
    memory for its page frame, so that could easily be the problem.
    If so, I doubt that there is any feasible fix, except of
    course buying a new machine and hoping, which is not very
    attractive. There are of course workarounds, like XMS memory
    (which is there) or disk storage.

    The computer is an IBM A30 laptop, model 265233U, with a
    1400x1050 TFT - active matrix screen, ATI Mobility Radeon
    graphics chipset, and AGP 4X graphics bus interface, with max
    resolution (for external monitors) 2048x1536. With the exception
    of my EMS problem, by the way, it seems to be a wonderful
    machine.


    ------------------

    Leave a comment:


  • Tom Hanlin
    replied
    I have 16 Mb of EMS available on my XP Home Edition machine. My
    favorite old DOS editor, TPE, says it's really there. I suspect a
    configuration problem or hardware issue on your machine. Some
    manufacturers have been overloading the old "DOS" space with their
    hardware, because it's cheap and they figure no one will notice.

    I am abashed to own any version of XP, which I find politically
    creepy, and less stable than Windows 2000. But, it was "free" with
    my new computer, a foolishly powerful machine at a foolishly low
    price. My consolation is, at this rate, it will only be a few years
    before the best hardware is $1.50 and no one is willing to spend
    the $900 required for a Windows ZP license.

    ------------------
    Tom Hanlin
    PowerBASIC Staff

    Leave a comment:


  • Mike Doty
    replied
    I vaguely remember trying that and an error
    message like virtual memory manager invalid appears.

    ------------------

    Leave a comment:


  • Roy Scott
    replied
    It sounds like MS is attempting to discourage use of this on XP.
    Search your hard drive to see if "emm386.exe" exists on it. If it
    does you may be able to activate it in the config.sys and approach
    the problem in that way. Since I do not use XP, I don't know if
    this will work or not.


    ------------------
    Roy Scott
    http://www.royscott.net

    Leave a comment:


  • Mike Doty
    replied
    I tried for a long time to get it to work with
    XP and finally gave up. Hope you are more succesful.
    I still have to support some PDS 7.1 programs
    and have not been able to get the IDE to load
    anything other than the smallest program.
    I've gone back to using Windows 98 SE.
    I'm curious if Windows 2000 supports it.


    ------------------

    Leave a comment:


  • Alan Guth
    Guest started a topic EMS memory and Windows XP

    EMS memory and Windows XP

    I have not been able to get EMS memory to work with Windows
    XP, and I have seen conflicting information about whether or not
    it was ever intended to work. Yesterday I spent over an hour on
    the phone with Microsoft Technical Support, and in the end the
    person I spoke to told me that he did not know, and could not
    find out!
    For PB for DOS users, the easiest way to see if EMS is
    enabled is to launch the PB 3.5 for DOS IDE, and click on COMPILE
    > Get Info, and then look for "EMS:" in the lower left corner of
    the panel. I would appreciate any info from other XP users about
    whether EMS memory can be found.
    The contradictory evidence that I have found so far consists
    of the following:
    Suggesting it should work:
    1) The Properties windows for DOS programs include a setting
    for the amount of EMS memory that should be provided.
    2) \windows\system32\config.nt contains commented
    instructions for enabling EMS memory.
    3) A number of books on XP, including Peter Norton's
    "Complete Guide to Microsoft Windows XP", describe how to
    enable EMS memory simply by using the tab on the
    properties window. (In Norton, this is on p. 600.)
    Suggesting it does not work:
    1) If I search for online help on the "Debug XA" command,
    the command that allocates EMS memory, the help window
    includes the following note: "Windows XP does not support
    EMS. To use expanded memory, you must install an expanded
    memory device driver that conforms to version 4.0 of the
    Lotus/Intel/Microsoft Expanded Memory Specification (LIM
    EMS)."
    2) On my system, I cannot get it to work. I have allocated
    EMS on the properties window, added the line "EMM=RAM" to
    config.nt, immediately after the "dos=high, umb" line and
    in other places, and no EMS memory can be found, either
    by the PB IDE or any of a number of other programs that
    use or include indicators for EMS memory.
    One possibility is that there are different versions of Windows
    XP. When I run cmd.exe, it tells me that my version is called
    5.1.2600. Perhaps, however, that number does not tell the whole
    story.


    ------------------
Working...
X
😀
🥰
🤢
😎
😡
👍
👎