Changeset 6277 for trunk/src


Ignore:
Timestamp:
Jul 10, 2001, 7:17:37 AM (24 years ago)
Author:
bird
Message:

New hybrid 16-bit import proc.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/win32k/dev16/mkcalltab.c

    r5247 r6277  
    1 /* $Id: mkcalltab.c,v 1.6 2001-02-23 02:57:52 bird Exp $
     1/* $Id: mkcalltab.c,v 1.7 2001-07-10 05:17:37 bird Exp $
    22 *
    33 * Description:     Generates the calltab.asm from aImportTab.
     
    113113     * Write Start of file.
    114114     */
    115     printf16("; $Id: mkcalltab.c,v 1.6 2001-02-23 02:57:52 bird Exp $\n"
     115    printf16("; $Id: mkcalltab.c,v 1.7 2001-07-10 05:17:37 bird Exp $\n"
    116116             ";\n"
    117117             "; Autogenerated calltab file.\n"
     
    149149             "IMPORT16_PROLOG       EQU 08h\n"
    150150             "NRIMPORT16_PROLOG     EQU 07h\n"
     151             "IMPORTH16_PROLOG      EQU 08h\n"
     152             "IMPORTHNR16_PROLOG    EQU 07h\n"
    151153             "\n"
    152154             "\n"
     
    197199             "    fnname proc near\n"
    198200             "        db IMPORT16_PROLOG dup(0cch)\n"
     201             "    fnname endp\n"
     202             "endm\n"
     203             "\n"
     204             "; Macro which makes a function calltable entry\n"
     205             "FnHybrid16Entry macro fnname\n"
     206             "    public fnname\n"
     207             "    fnname proc near\n"
     208             "        db IMPORTH16_PROLOG dup(0cch)\n"
    199209             "    fnname endp\n"
    200210             "endm\n"
     
    240250    for (i = 0; i < NBR_OF_KRNLIMPORTS; i++)
    241251    {
    242         if (!EPT16Proc(aImportTab[i]))
     252        if (!EPT16Proc(aImportTab[i]) && !EPTProcImportHybrid(aImportTab[i]))
    243253        {
    244254            char *pszMacro = (aImportTab[i].fType & EPT_VARIMPORT) ?
     
    291301        if (EPT16Proc(aImportTab[i]))
    292302        {
    293 
    294303            printf16("FnOverload16Entry<%s>%*.s;%d\n",
    295304                     aImportTab[i].achName,
     
    298307                     i);
    299308        }
     309        else if (EPT16ProcImportH(aImportTab[i]))
     310        {
     311            printf16("FnHybrid16Entry<%s>%*.s;%d\n",
     312                     aImportTab[i].achName,
     313                     45 - 2 - 17 - aImportTab[i].cchName,
     314                     "",
     315                     i);
     316        }
    300317    }
    301318
     
    327344        char *  pszName     = (*pszPrefix != '\0' ? &aImportTab[i].achName[1] : &aImportTab[i].achName[0]);
    328345
    329         if (EPT16Proc(aImportTab[i]))
     346        if (EPT16Proc(aImportTab[i]) && !EPTProcImportHybrid(aImportTab[i]))
    330347        {   /* Overload procedure (Overloader function) */
    331348            #if 1
     
    356373            #endif
    357374        }
    358         else if (!(aImportTab[i].fType & (EPT_PROCIMPORT | EPT_VARIMPORT | EPT_NOT_REQ)))
     375        else if (!(aImportTab[i].fType & (EPT_PROCIMPORT | EPT_PROCIMPORTH |EPT_VARIMPORT | EPT_NOT_REQ)))
    359376        {   /* Overload procedure (Overloader function) */
    360377            printf16("    extrn %smy%s%s : NEAR\n"
     
    368385                     aImportTab[i].achExtra);
    369386        }
    370         else if ((aImportTab[i].fType & (EPT_NOT_REQ | EPT_VARIMPORT | EPT_PROCIMPORT)) == (EPT_NOT_REQ | EPT_PROCIMPORT))
     387        else if ((aImportTab[i].fType & (EPT_NOT_REQ | EPT_VARIMPORT | EPT_PROCIMPORT | EPT_PROCIMPORTH)) == (EPT_NOT_REQ | EPT_PROCIMPORT))
    371388        {   /* Not required imported function (NOP function) */
    372389            printf16("    extrn %snop%s%s : NEAR\n"
     
    408425     * Write Start of file.
    409426     */
    410     printf16("/* $Id: mkcalltab.c,v 1.6 2001-02-23 02:57:52 bird Exp $\n"
     427    printf16("/* $Id: mkcalltab.c,v 1.7 2001-07-10 05:17:37 bird Exp $\n"
    411428             " *\n"
    412429             " * Autogenerated TstFakers.c file.\n"
Note: See TracChangeset for help on using the changeset viewer.