• Re: rules

    From JJ@21:1/5 to Paul Edwards on Tue Feb 20 02:59:39 2024
    On Mon, 19 Feb 2024 12:37:33 +0800, Paul Edwards wrote:
    Assuming I had followed these rules:

    https://en.wikipedia.org/wiki/Protected_mode

    This was not without its limitations. If an application utilized or
    relied on any of the techniques below, it would not run:

    Segment arithmetic
    Privileged instructions
    Direct hardware access
    Writing to a code segment
    Executing data
    Overlapping segments
    Use of BIOS functions, due to the BIOS interrupts being reserved by
    Intel[31]
    In reality, almost all DOS application programs violated these rules

    .... what could I actually do, assuming I had
    an 80286 computer?

    "binary compatibility with real-mode code" - sounds good.

    "the ability to access up to 16 MB of physical memory, and 1 GB of
    virtual memory" - sounds good.

    But ... WHERE?

    Is this something I could do on OS/2 1.x?

    With an MZ executable? A .com?

    What are they advertising?

    NE executables didn't exist except on MSDOS 4.0,
    which may or may not buy something. Is that what
    they are advertising?

    I didn't use OS/2 1.x, but it may have had an
    MSDOS window and an MSDOS fullscreen.

    Did something work on either of those if you
    followed "the rules"?

    As opposed to a program that DIDN'T follow
    the rules, e.g. it wouldn't run in the window.

    Thanks. Paul.

    A compatibility layer program would be needed to make programs usable in non-compatible environment - to work like a subsystem. In PM OS, it may need
    to be run at a priviledge level which is high enough to perform its task - depending on whether a task require higher privilege level or not.

    e.g. adding support for non OS native executable binary format will require system service/function hooking if the OS doesn't support custom executable binary format loader. OS native executable binary loader usually run at
    higher privilege level.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)