Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- XMS Specification (version 3.0) - <b>high memory area restrictions</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
HIGH MEMORY AREA RESTRICTIONS

    Far pointers to data located in the HMA cannot be passed to DOS. DOS
    normalizes any pointer which is passed into it. This will cause data
    addresses in the HMA to be invalidated.

    Disk I/O directly into the HMA (via DOS, INT 13h, or otherwise) is
    not recommended.

    Programs, especially drivers and TSRs, which use the HMA *MUST* use
    as much of it as possible. If a driver or TSR is unable to use at
    least 90% of the available HMA (typically ~58K), they must provide a
    command line switch for overriding HMA usage. This will allow the
    user to configure his machine for optimum use of the HMA.

    Device drivers and TSRs cannot leave the A20 line permanently turned
    on. Several applications rely on 1MB memory wrap and will overwrite
    the HMA if the A20 line is left enabled potentially causing a system
    crash.

    Interrupt vectors must not point into the HMA.  This is a result of
    the previous restriction. Note that interrupt vectors can point into
    any allocated upper memory blocks however.

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson