Announcement

Collapse
No announcement yet.

EMM386 LIM4.0

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

  • Tim Camarda
    replied
    Thanks Tom,
    Using another switch for the EMM386 driver (device=emm386.exe i=e000-efff m9 ram)
    rectified the problem. According to MS it allocates 64K of free contiguous memory, that is not being used by a non IBM PC. So, Im not sure why on these 2
    particular PC's they could not allocate contiguous EMS, without the above option.

    Tim



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

    Leave a comment:


  • Tom Hanlin
    replied
    The 3rd and 4th pages are expected to be sequential, also, but you
    can probably do without them if you're prepared to do without TSRs
    that use EMS, and the debugger, respectively.

    Split page frames turn out to require one of the LIM 4.0-specific
    options that no one ever used, because they weren't compatible with
    earlier LIM versions, and didn't have any apparent virtue. It's an
    entirely separate set of, umm, "API calls".

    ------------------
    Tom Hanlin, PowerBASIC Staff
    Opinions expressed may not be those of my employer or myself

    Leave a comment:


  • Tom Hanlin
    replied
    Ok. It still isn't clear whether you can get away with less than a
    64K block but, you will definitely need at least a 32K block. The
    virtual array support requires it. If you can arrange for the first
    two pages to be contiguous, it may be worth trying.

    If not, you might rummage around in the Download section. It may be
    that one of the EMS libraries there will be useful to you.

    http://www.powerbasic.com/files/pub/pbdos/library/

    ------------------
    Tom Hanlin, PowerBASIC Staff
    Opinions expressed may not be those of my employer or myself

    Leave a comment:


  • Tom Hanlin
    replied
    LIM 4.0 was the final EMS spec. PB/Dos is certainly compatible with
    LIM 4.0... but Microsoft's pulling a little bit of a fast one, here.
    A full LIM 4.0 setup should be able to provide contiguous pages and,
    I suspect, most programs that use EMS expect it that way. I'll check
    with R&D...

    ------------------
    Tom Hanlin, PowerBASIC Staff
    Opinions expressed may not be those of my employer or myself

    Leave a comment:


  • Tim Camarda
    started a topic EMM386 LIM4.0

    EMM386 LIM4.0

    There are some system configurations that do not like using the 64k
    page framing, and the EMM386 driver generates this error:
    "unable to set page frame base address"

    From Microsoft
    -The following line in your CONFIG.SYS file sets the page frame
    -by loading the four different pages in the indicated non-contiguous locations:
    -device=c:\dos\emm386.exe p0=c800 p1=d400 p2=e000 p3=d000 ram

    Microsoft says this is OK for programs that can use the LIM 4.0 specification.
    What exactly is LIM 4.0? and does PB compile programs for this spec?

    I noted that using the above switch that I can use EMM386 with my software with Dynamic arrays,
    However, the problem comes in when I exit the program, as after I exit the
    system locks-up.

    Also, fre(-11) with this switch reports the free Extended RAM.

    TIA, Tim

    ------------------
Working...
X