• family API

    From muta...@gmail.com@mutazilah@gmail.com to comp.os.msdos.programmer on Sun Jun 18 02:31:11 2023
    From Newsgroup: comp.os.msdos.programmer

    This exists:

    http://www.osfree.org/doku/en:docs:fapi

    Also Family API file contains emulation library which translates OS/2 API calls to DOS interrupt calls.

    I would like to know the DOS interrupt call that did this Family API function:

    DosGetHugeShift

    http://www.osfree.org/doku/en:docs:fapi:dosgethugeshift

    http://www.edm2.com/index.php/DosGetHugeShift

    Anyone know?

    Thanks. Paul.
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From JJ@jj4public@outlook.com to comp.os.msdos.programmer on Mon Jun 19 00:51:31 2023
    From Newsgroup: comp.os.msdos.programmer

    On Sun, 18 Jun 2023 02:31:11 -0700 (PDT), muta...@gmail.com wrote:
    This exists:

    http://www.osfree.org/doku/en:docs:fapi

    Also Family API file contains emulation library which translates OS/2 API calls to DOS interrupt calls.

    I would like to know the DOS interrupt call that did this Family API function:

    DosGetHugeShift

    http://www.osfree.org/doku/en:docs:fapi:dosgethugeshift

    http://www.edm2.com/index.php/DosGetHugeShift

    Anyone know?

    Thanks. Paul.

    No such thing. It's an emulator for OS/2 CP API. There's no DOS interrupt equivalent for it. Everything is done manually.
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From muta...@gmail.com@mutazilah@gmail.com to comp.os.msdos.programmer on Mon Jun 19 17:14:38 2023
    From Newsgroup: comp.os.msdos.programmer

    On Monday, June 19, 2023 at 1:51:33rC>AM UTC+8, JJ wrote:
    On Sun, 18 Jun 2023 02:31:11 -0700 (PDT), muta...@gmail.com wrote:
    This exists:

    http://www.osfree.org/doku/en:docs:fapi

    Also Family API file contains emulation library which translates OS/2 API calls to DOS interrupt calls.

    I would like to know the DOS interrupt call that did this Family API function:

    DosGetHugeShift

    http://www.osfree.org/doku/en:docs:fapi:dosgethugeshift

    http://www.edm2.com/index.php/DosGetHugeShift

    Anyone know?
    No such thing. It's an emulator for OS/2 CP API. There's no DOS interrupt equivalent for it. Everything is done manually.
    Can you elaborate on this please?
    First of all, what is "CP"?
    I assume that you agree that SOME family APIs have DOS interrupt
    equivalents? Like DosOpen would eventually call an INT 21H.
    So was your statement specific to this one family API function?
    If it detects (any idea how that is done?) that the environment is
    MSDOS instead of OS2 it simply hardcodes a shift value?
    Thanks. Paul.
    --- Synchronet 3.21d-Linux NewsLink 1.2
  • From muta...@gmail.com@mutazilah@gmail.com to comp.os.msdos.programmer on Tue Jun 20 02:00:04 2023
    From Newsgroup: comp.os.msdos.programmer

    On Tuesday, June 20, 2023 at 8:14:39rC>AM UTC+8, muta...@gmail.com wrote:
    If it detects (any idea how that is done?) that the environment is
    MSDOS instead of OS2 it simply hardcodes a shift value?
    I found this:
    http://www.edm2.com/index.php/DosGetMachineMode
    But it still doesn't answer my question.
    But I think I've figured out the answer.
    There will be an "NE" (instead of "PE") marking in the
    executable. When running under OS/2 1.0 it will go
    straight to the NE code and run it appropriately, and
    it knows at that point that it is OS/2. And the bindings
    to the above 2 functions will be done against a DLL.
    But if it is running under MSDOS, it will execute the MZ
    part of the code, and at that point it knows that it is
    MSDOS, and then it will "manually" bind all the NE
    calls to its own MZ code, and then execute the NE
    code. And the MZ portion of the code may or may
    not do an INT 21H call, depending on what the function is.
    BFN. Paul.
    --- Synchronet 3.21d-Linux NewsLink 1.2