Announcement

Collapse
No announcement yet.

EMS available or not?

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

  • EMS available or not?

    Operating PB 3.5 under pure DOS 6.20, "Compile Information" tells me: 128k Main, 1024k Ems and 3072k Xms memory available. The DOS "mem" command (of course) confirms these numbers.

    Nevertheless, I can't use virtual arrays (Error 202) and the FRE(-11) function shows that there are "0" Ems Bytes available.

    But why? And how can I use the obviously existing 1MB EMS for virtual arrays? Any suggestions would be very welcome!

    Heinz Salomon

    [This message has been edited by Heinz Salomon (edited February 21, 2006).]

  • #2
    Short answer: You can't.

    All you can do is free up as much base memory as possible. Assuming
    you are booting to DOS 6.x, use DEVICEHIGH in your config.sys and
    LH (LoadHigh) in your autoexec.bat file to load as many device
    drivers in the upper memory as possible.

    That's one of the reasons I am currently programming in PB/CC.
    With a file size limit of 2gb, file sizes aren't much of a
    problem any more.


    ------------------
    There are no atheists in a fox hole or the morning of a math test.
    If my flag offends you, I'll help you pack.

    Comment


    • #3
      Mel,
      <<Short answer: You can't.>>

      Why do you say that? This memory is usually available in DOS, it just needs to be set up.

      Heinz,
      I don't remember the details but look in the DOS help file for how to configure EMM386.EXE or check out places like this: http://www.microsoft.com/technet/arc...dos/comm3.mspx

      You probably need to allocate the page frames to allow access to the memory.
      Paul.

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

      Comment


      • #4
        Used to do it all the time, put all my saved screens in virtual arrays.
        Old DOS 6.2 machine stored in roof, will drag it out and see if it still works.


        ------------------
        Dave

        Avalon - Somewhere on the Australian coast

        [This message has been edited by Dave Stanton (edited February 21, 2006).]
        Dave.

        You're never too old to learn something stupid.

        Comment


        • #5
          I've been doing that a lot too, it's no problem; just it might be that you can't get 32 MB but "just" 16, i don't remember what does it depend on; however i always got 32. As Paul pointed out it's necessary to load an appropriate memory manager, EMM386.EXE or a third party one. I always used EMM386.EXE in AUTOEXEC.BAT, IIRC i used only one switch:
          Code:
          EMM386.EXE /RAM
          If you are still in need i can try to dig that AUTOEXEC.BAT out and post it.

          ------------------
          Davide Vecchi
          [email protected]

          Comment


          • #6
            Herewith:

            rem "CONFIG.SYS" DOS 6.22 30-07-01

            DEVICE=C:\DOS\HIMEM.SYS
            DEVICE=C:\DOS\EMM386.EXE RAM HISCAN I=B000-B7FF
            {*** note 1=B000-B7FF edited to I=B000-B7FF ****)
            BUFFERS=15,0
            FILES=30
            DOS=UMB
            LASTDRIVE=E
            DEVICEHIGH /L:1,12048 =C:\DOS\SETVER.EXE
            DOS=HIGH
            COUNTRY=061,,C:\DOS\COUNTRY.SYS
            DEVICEHIGH /L:1,15792 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

            rem "AUTOEXEC.BAT" DOS 6.22 30-07-01

            LH /L:0 C:\DOS\SMARTDRV.EXE /X
            @ECHO OFF
            PROMPT $P$G
            PATH C:\DOS
            SET TEMP=C:\DOS
            MODE CON CODEPAGE PREPARE=((437) C:\DOS\EGA.CPI)
            MODE CON CODEPAGE SELECT=437

            ------------------
            Dave

            Avalon - Somewhere on the Australian coast

            [This message has been edited by Dave Stanton (edited February 23, 2006).]
            Dave.

            You're never too old to learn something stupid.

            Comment


            • #7
              Thanks a lot for your replies and suggestions!

              I'll try them out and post the results.

              Heinz Salomon

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

              Comment


              • #8
                It works!!! I have modified my CONFIG.SYS according to Dave's suggestions and now I can use EMS for virtual arrays. Thanks to everyone commenting on this topic! It's good to know that when you are having PB related problems you can rely on the competent help of the PB community!

                Heinz Salomon

                [This message has been edited by Heinz Salomon (edited February 25, 2006).]

                Comment

                Working...
                X