DOSX on XP
Results 1 to 10 of 10

Thread: DOSX on XP

  1. #1
    Junior Member
    Join Date
    May 2002
    Posts
    5

    Angry DOSX on XP

    Please help me on this one:

    I have this dos-based program which I need to run on Windows XP.
    As it needs 600k of memory I am unable to reach this.
    Strangly enough I have this program running in Windows 2000 enviroment with
    no probs. Even on XP on a different machine then mine.

    This thing is this dosx.... my autoexec.nt tells to load high but as a
    result it loads both high and in the upper mem. I tried editing the
    the _default.pif but to no avail. Using a REM causes the entire program not to
    start. Also changing the OS to a fresh win2000 pro was no solution.

    Strangly enough the mem/c environment on my win20000 machines (dell desktops) which have this
    program running is the same as my XP machine (dell notebook) both autoexec.nt & config.nt
    but dosx is NOT loaded in the conventional mem but instead in the upper mem.

    Conventional mem:

    msdos (15.2k)
    kbd (3.2k)
    himem (1.2k)
    command (3.3k)
    dosx (33.9k)

    free (583k)

    Upper mem:

    system (180k)
    dosx (0.1k)
    mouse (12.2k)
    mscdexnt (0.5k)
    redir (2.6k)

    free (27.7k)

    autoexec.nt

    lh %systemroot%\system32\mscdexnt.exe
    lh %systemroot%\system32\redir
    lh %systemroot%\system32\dosx

    config.nt

    dos=high, umb
    device=%systemroot%\system32\himem.sys
    files=40

    Any suggestions, advise or what so ever would be
    HIGHLY appreciated!

    Thank you

  2. #2
    Intel Mod Platypus's Avatar
    Join Date
    Jan 2001
    Location
    Australia
    Posts
    5,783

    Post

    Not my area of expertise, but it looks to me like your system might have a bit more ROM taking up Upper Memory. DOSX is looking for 34K, and only 27 is available, there is still a stub of memory owned by DOSX in Upper Memory, but it has had to load low. See if there are any shadowing options that can be turned off in the bios setup, but the extra may be being taken by a VGA bios extension or similar that you can't do anything about (other than try a different video card).

    Otherwise, if mouse could be persuaded to load low, that could free up 12K of extra Upper Memory, and DOSX might load there then. According to:

    <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q314106" target="_blank">http://support.microsoft.com/default.aspx?scid=kb;en-us;Q314106</a>

    there is a Registry key defining the device drivers loaded for the NT Virtual Dos Machine, you may be able to set mouse not to load high from there.

    On the other hand, I could be on the wrong track entirely... <img border="0" title="" alt="[Frown]" src="frown.gif" />

  3. #3
    Junior Member
    Join Date
    May 2002
    Posts
    5

    Post

    Thanx for your reply.

    Videobios is indeed shadowed but I am not able to
    change that.
    As for your theory about the mouse not to load high sounds very reasonable. Only problem is I cant find a way to have it not loaded high yet.
    For me its quite hard to tell where the line in the registry is hidden.

    Anyway, thanks for the help

    Cheers

  4. #4
    Intel Mod Platypus's Avatar
    Join Date
    Jan 2001
    Location
    Australia
    Posts
    5,783

    Post

    A Google search brings up others asking where mouse is loaded from and not getting answers. The Microsoft link includes:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Contro l\ VirtualDeviceDrivers
    This key stores the device drivers that are used in an NTVDM session. Windows Setup creates these entries when a device driver is installed.

    This may be the place to start, but I only have access to Win98, so someone with an NT/XP system might like to have a look on their system.

  5. #5
    Junior Member
    Join Date
    May 2002
    Posts
    5

    Post

    Thanx again for responding.

    Indeed there is a key present (VDD) exept the fact that its totally empty...

    I tried to insert different values but I have no clue on what these supposed to look like.

    Cheers,

  6. #6
    Registered User Mr_Miyagi's Avatar
    Join Date
    Jan 2001
    Location
    Westbury, Wiltshire, UK
    Posts
    1,099

    Post

    from my experience of dos, from v3.3, it is possibly a good idea to try rearranging the order the devices are loaded.

    sometimes the space required to load something is larger than that it eventually requires. so, a device wont load to upper mem even if you can see there is enough space available.

    Mr Miyagi, by any other name... (is this sig short enough?)

  7. #7
    Registered User
    Join Date
    May 2010
    Posts
    2
    Quote Originally Posted by Michel1975 View Post
    Please help me on this one:

    I have this dos-based program which I need to run on Windows XP.
    As it needs 600k of memory I am unable to reach this.
    Strangly enough I have this program running in Windows 2000 enviroment with
    no probs. Even on XP on a different machine then mine.

    This thing is this dosx.... my autoexec.nt tells to load high but as a
    result it loads both high and in the upper mem. I tried editing the
    the _default.pif but to no avail. Using a REM causes the entire program not to
    start. Also changing the OS to a fresh win2000 pro was no solution.

    Strangly enough the mem/c environment on my win20000 machines (dell desktops) which have this
    program running is the same as my XP machine (dell notebook) both autoexec.nt & config.nt
    but dosx is NOT loaded in the conventional mem but instead in the upper mem.

    Conventional mem:

    msdos (15.2k)
    kbd (3.2k)
    himem (1.2k)
    command (3.3k)
    dosx (33.9k)

    free (583k)

    Upper mem:

    system (180k)
    dosx (0.1k)
    mouse (12.2k)
    mscdexnt (0.5k)
    redir (2.6k)

    free (27.7k)

    autoexec.nt

    lh %systemroot%\system32\mscdexnt.exe
    lh %systemroot%\system32\redir
    lh %systemroot%\system32\dosx

    config.nt

    dos=high, umb
    device=%systemroot%\system32\himem.sys
    files=40

    Any suggestions, advise or what so ever would be
    HIGHLY appreciated!

    Thank you
    I know this is an old request but it was the second hit on google for the search of DOSX - so to answer your question

    Himem.sys must come before UMB.

    Himem.sys opens the way to shove stuff in the upper memory.

    You have 27.7 megs left in the upper memory, DOS is 15m so you should start your config.nt as:
    DEVICE=<path>\HIMEM.SYS
    DOS=HIGH,UMB


    That was just the most obvious thing I noticed.

  8. #8
    Intel Mod Platypus's Avatar
    Join Date
    Jan 2001
    Location
    Australia
    Posts
    5,783
    Hi Sylvester, and welcome to WinDrivers.

    Sadly, I don't think you've actually solved the matter - Michel's config.nt has the copybook content advised by Microsoft:

    http://support.microsoft.com/kb/324767

    DOS= is a switch, not a device driver, so it's not loading something that needs HIMEM.SYS to be loaded first.

    And I notice you've become too accustomed to using megs as a memory quantity...

  9. #9
    Registered User
    Join Date
    May 2010
    Posts
    2
    Quote Originally Posted by Platypus View Post
    Hi Sylvester, and welcome to WinDrivers.

    Sadly, I don't think you've actually solved the matter - Michel's config.nt has the copybook content advised by Microsoft:

    http://support.microsoft.com/kb/324767

    DOS= is a switch, not a device driver, so it's not loading something that needs HIMEM.SYS to be loaded first.

    And I notice you've become too accustomed to using megs as a memory quantity...
    Yep, and I've alway seen their advice as wrong and do it Himem.sys first.
    I do a lot of dos work.

    "As of MS-DOS 5.0, HIMEM.SYS was introduced and could be used to load the DOS kernel code into the High Memory Area (HMA) to increase the amount of available conventional memory by specifying DOS=HIGH in CONFIG.SYS." - http://en.wikipedia.org/wiki/HIMEM.SYS

    HIMEM.SYS is loaded to be able to load items like DOS=HIGH,UMB into high
    ram or why even include one or the other in the config.nt in the first place.

    The op should of also looked at DOSBOX http://www.dosbox.com/

  10. #10
    Intel Mod Platypus's Avatar
    Join Date
    Jan 2001
    Location
    Australia
    Posts
    5,783
    Quote Originally Posted by Sylvester View Post
    Yep, and I've alway seen their advice as wrong and do it Himem.sys first.
    It doesn't make any difference. Do a mem/c with HIMEM.SYS first, then one with DOS= first, the result is exactly the same.

    Quote Originally Posted by Sylvester View Post
    HIMEM.SYS is loaded to be able to load items like DOS=HIGH,UMB into high ram or why even include one or the other in the config.nt in the first place.
    DOS=HIGH,UMB isn't something that is being loaded into high memory. It's a switch - a text instruction that the DOS loader reads in order to know how it should map memory. Which line it's on in the file doesn't alter its action, it only has to be there to be read.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •