home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 15 / CDACTUAL15.iso / cdactual / OS2 / EDM2 / COMMON / SNIPPETS / NEWC2.ZIP / makedef.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-01-27  |  10.7 KB  |  397 lines

  1. /*
  2.  * This program was used to create newfwd.def.  It is for reference
  3.  * only.  You don't need to compile or run it.
  4.  */
  5.  
  6.  
  7. #include <stdio.h>
  8.  
  9. typedef struct _foo {
  10.     char *fn;
  11.     unsigned ord;
  12. } FOO;
  13.  
  14. static FOO foo[] = {
  15.     "DOSCWAIT", 2,
  16.     "DOSENTERCRITSEC", 3,
  17.     "DOSEXIT", 5,
  18.     "DOSEXITCRITSEC", 6,
  19.     "DOSEXITLIST", 7,
  20.     "DOSGETINFOSEG", 8,
  21.     "DOSGETPRTY", 9,
  22.     "DOSKILLPROCESS", 10,
  23.     "DOSSETPRTY", 11,
  24.     "DOSPTRACE", 12,
  25.     "DOSHOLDSIGNAL", 13,
  26.     "DOSSETSIGHANDLER", 14,
  27.     "DOSFLAGPROCESS", 15,
  28.     "DOSMAKEPIPE", 16,
  29.     "DOSSEMSETWAIT", 20,
  30.     "DOSMUXSEMWAIT", 22,
  31.     "DOSCLOSESEM", 23,
  32.     "DOSCREATESEM", 24,
  33.     "DOSOPENSEM", 25,
  34.     "DOSRESUMETHREAD", 26,
  35.     "DOSSUSPENDTHREAD", 27,
  36.     "DOSSETDATETIME", 28,
  37.     "DOSTIMERASYNC", 29,
  38.     "DOSTIMERSTART", 30,
  39.     "DOSTIMERSTOP", 31,
  40.     "DOSSLEEP", 32,
  41.     "DOSGETDATETIME", 33,
  42.     "DOSALLOCSEG", 34,
  43.     "DOSALLOCSHRSEG", 35,
  44.     "DOSGETSHRSEG", 36,
  45.     "DOSGIVESEG", 37,
  46.     "DOSREALLOCSEG", 38,
  47.     "DOSFREESEG", 39,
  48.     "DOSALLOCHUGE", 40,
  49.     "DOSGETHUGESHIFT", 41,
  50.     "DOSREALLOCHUGE", 42,
  51.     "DOSCREATECSALIAS", 43,
  52.     "DOSLOADMODULE", 44,
  53.     "DOSGETPROCADDR", 45,
  54.     "DOSFREEMODULE", 46,
  55.     "DOSGETMODHANDLE", 47,
  56.     "DOSGETMODNAME", 48,
  57.     "DOSGETMACHINEMODE", 49,
  58.     "DOSBEEP", 50,
  59.     "DOSCLIACCESS", 51,
  60.     "DOSDEVCONFIG", 52,
  61.     "DOSDEVIOCTL", 53,
  62.     "DOSBUFRESET", 56,
  63.     "DOSCHDIR", 57,
  64.     "DOSCHGFILEPTR", 58,
  65.     "DOSCLOSE", 59,
  66.     "DOSDELETE", 60,
  67.     "DOSDUPHANDLE", 61,
  68.     "DOSFILELOCKS", 62,
  69.     "DOSFINDCLOSE", 63,
  70.     "DOSFINDFIRST", 64,
  71.     "DOSFINDNEXT", 65,
  72.     "DOSMKDIR", 66,
  73.     "DOSMOVE", 67,
  74.     "DOSNEWSIZE", 68,
  75.     "DOSPORTACCESS", 69,
  76.     "DOSOPEN", 70,
  77.     "DOSQCURDIR", 71,
  78.     "DOSQCURDISK", 72,
  79.     "DOSQFHANDSTATE", 73,
  80.     "DOSQFILEINFO", 74,
  81.     "DOSQFILEMODE", 75,
  82.     "DOSQFSINFO", 76,
  83.     "DOSQHANDTYPE", 77,
  84.     "DOSQVERIFY", 78,
  85.     "DOSRMDIR", 80,
  86.     "DOSSELECTDISK", 81,
  87.     "DOSSETFHANDSTATE", 82,
  88.     "DOSSETFILEINFO", 83,
  89.     "DOSSETFILEMODE", 84,
  90.     "DOSSETMAXFH", 85,
  91.     "DOSSETVERIFY", 86,
  92.     "DOSSYSTEMSERVICE", 88,
  93.     "DOSSETVEC", 89,
  94.     "DOSSYSTRACE", 90,
  95.     "DOSGETENV", 91,
  96.     "DOSGETVERSION", 92,
  97.     "DOSGETPID", 94,
  98.     "DOSOPEN2", 95,
  99.     "DOSLIBINIT", 96,
  100.     "DOSSETFSINFO", 97,
  101.     "DOSQPATHINFO", 98,
  102.     "DOSDEVIOCTL2", 99,
  103.     "DOSSETPATHINFO", 104,
  104.     "DOSISETRELMAXFH", 108,
  105.     "DOSIDEVIOCTL", 109,
  106.     "DOS32FORCEDELETE", 110,
  107.     "DOS32KILLTHREAD", 111,
  108.     "DOSQUERYRASINFO", 112,
  109.     "DOSERROR", 120,
  110.     "DOSGETSEG", 121,
  111.     "DOSLOCKSEG", 122,
  112.     "DOSUNLOCKSEG", 123,
  113.     "DOSSIZESEG", 126,
  114.     "DOSMEMAVAIL", 127,
  115.     "DOSPHYSICALDISK", 129,
  116.     "DOSGETCP", 130,
  117.     "DOSSENDSIGNAL", 134,
  118.     "DOSHUGESHIFT", 135,
  119.     "DOSHUGEINCR", 136,
  120.     "DOSREAD", 137,
  121.     "DOSWRITE", 138,
  122.     "DOSERRCLASS", 139,
  123.     "DOSSEMREQUEST", 140,
  124.     "DOSSEMCLEAR", 141,
  125.     "DOSSEMWAIT", 142,
  126.     "DOSSEMSET", 143,
  127.     "DOSEXECPGM", 144,
  128.     "DOSCREATETHREAD", 145,
  129.     "DOSSUBSET", 146,
  130.     "DOSSUBALLOC", 147,
  131.     "DOSSUBFREE", 148,
  132.     "DOSREADASYNC", 149,
  133.     "DOSWRITEASYNC", 150,
  134.     "DOSSEARCHPATH", 151,
  135.     "DOSSCANENV", 152,
  136.     "DOSSETCP", 153,
  137.     "DOSGETRESOURCE", 155,
  138.     "DOSGETPPID", 156,
  139.     "DOSCALLBACK", 157,
  140.     "DOSR2STACKREALLOC", 160,
  141.     "DOSFSRAMSEMREQUEST", 161,
  142.     "DOSFSRAMSEMCLEAR", 162,
  143.     "DOSQAPPTYPE", 163,
  144.     "DOSSETPROCCP", 164,
  145.     "DOSDYNAMICTRACE", 165,
  146.     "DOSQSYSINFO", 166,
  147.     "DOSFSATTACH", 181,
  148.     "DOSQFSATTACH", 182,
  149.     "DOSFSCTL", 183,
  150.     "DOSFINDFIRST2", 184,
  151.     "DOSMKDIR2", 185,
  152.     "DOSFILEIO", 186,
  153.     "DOSFINDNOTIFYCLOSE", 187,
  154.     "DOSFINDNOTIFYFIRST", 188,
  155.     "DOSFINDNOTIFYNEXT", 189,
  156.     "DOSEDITNAME", 191,
  157.     "DOSCOPY", 201,
  158.     "DOSFORCEDELETE", 203,
  159.     "DOSENUMATTRIBUTE", 204,
  160.     "DOSSHUTDOWN", 206,
  161.     "DOSGETRESOURCE2", 207,
  162.     "DOSFREERESOURCE", 208,
  163.     "DOS32SETMAXFH", 209,
  164.     "DOS32SETVERIFY", 210,
  165.     "DOS32ERRCLASS", 211,
  166.     "DOS32ERROR", 212,
  167.     "DOSMAXPATHLEN", 214,
  168.     "DOSPAGESIZE", 215,
  169.     "DOSLOCALINFO", 216,
  170.     "DOSGLOBALINFO", 217,
  171.     "DOS32SETFILEINFO", 218,
  172.     "DOS32SETPATHINFO", 219,
  173.     "DOS32SETDEFAULTDISK", 220,
  174.     "DOS32SETFHSTATE", 221,
  175.     "DOS32SETFSINFO", 222,
  176.     "DOS32QUERYPATHINFO", 223,
  177.     "DOS32QUERYHTYPE", 224,
  178.     "DOS32QUERYVERIFY", 225,
  179.     "DOS32DELETEDIR", 226,
  180.     "DOS32SCANENV", 227,
  181.     "DOS32SEARCHPATH", 228,
  182.     "DOS32SLEEP", 229,
  183.     "DOS32GETDATETIME", 230,
  184.     "DOS32DEVCONFIG", 231,
  185.     "DOS32ENTERCRITSEC", 232,
  186.     "DOS32EXITCRITSEC", 233,
  187.     "DOS32EXIT", 234,
  188.     "DOS32KILLPROCESS", 235,
  189.     "DOS32SETPRIORITY", 236,
  190.     "DOS32RESUMETHREAD", 237,
  191.     "DOS32SUSPENDTHREAD", 238,
  192.     "DOS32CREATEPIPE", 239,
  193.     "DOS32CALLNPIPE", 240,
  194.     "DOS32CONNECTNPIPE", 241,
  195.     "DOS32DISCONNECTNPIPE", 242,
  196.     "DOS32CREATENPIPE", 243,
  197.     "DOS32PEEKNPIPE", 244,
  198.     "DOS32QUERYNPHSTATE", 245,
  199.     "DOS32RAWREADNPIPE", 246,
  200.     "DOS32RAWWRITENPIPE", 247,
  201.     "DOS32QUERYNPIPEINFO", 248,
  202.     "DOS32QUERYNPIPESEMSTATE", 249,
  203.     "DOS32SETNPHSTATE", 250,
  204.     "DOS32SETNPIPESEM", 251,
  205.     "DOS32TRANSACTNPIPE", 252,
  206.     "DOS32WAITNPIPE", 253,
  207.     "DOS32RESETBUFFER", 254,
  208.     "DOS32SETCURRENTDIR", 255,
  209.     "DOS32SETFILEPTR", 256,
  210.     "DOS32CLOSE", 257,
  211.     "DOS32COPY", 258,
  212.     "DOS32DELETE", 259,
  213.     "DOS32DUPHANDLE", 260,
  214.     "DOS32EDITNAME", 261,
  215.     "DOS32FINDCLOSE", 263,
  216.     "DOS32FINDFIRST", 264,
  217.     "DOS32FINDNEXT", 265,
  218.     "DOSOPENVDD", 266,
  219.     "DOSREQUESTVDD", 267,
  220.     "DOSCLOSEVDD", 268,
  221.     "DOS32FSATTACH", 269,
  222.     "DOS32CREATEDIR", 270,
  223.     "DOS32MOVE", 271,
  224.     "DOS32SETFILESIZE", 272,
  225.     "DOS32OPEN", 273,
  226.     "DOS32QUERYCURRENTDIR", 274,
  227.     "DOS32QUERYCURRENTDISK", 275,
  228.     "DOS32QUERYFHSTATE", 276,
  229.     "DOS32QUERYFSATTACH", 277,
  230.     "DOS32QUERYFSINFO", 278,
  231.     "DOS32QUERYFILEINFO", 279,
  232.     "DOS32WAITCHILD", 280,
  233.     "DOS32READ", 281,
  234.     "DOS32WRITE", 282,
  235.     "DOS32EXECPGM", 283,
  236.     "DOS32DEVIOCTL", 284,
  237.     "DOS32FSCTL", 285,
  238.     "DOS32BEEP", 286,
  239.     "DOS32PHYSICALDISK", 287,
  240.     "DOS32SETCP", 288,
  241.     "DOS32SETPROCESSCP", 289,
  242.     "DOS32STOPTIMER", 290,
  243.     "DOS32QUERYCP", 291,
  244.     "DOS32SETDATETIME", 292,
  245.     "DOS32EXITLIST", 296,
  246.     "DOS32ALLOCMEM", 299,
  247.     "DOS32ALLOCSHAREDMEM", 300,
  248.     "DOS32GETNAMEDSHAREDMEM", 301,
  249.     "DOS32GETSHAREDMEM", 302,
  250.     "DOS32GIVESHAREDMEM", 303,
  251.     "DOS32FREEMEM", 304,
  252.     "DOS32SETMEM", 305,
  253.     "DOS32QUERYMEM", 306,
  254.     "DOS32OPENVDD", 308,
  255.     "DOS32REQUESTVDD", 309,
  256.     "DOS32CLOSEVDD", 310,
  257.     "DOS32CREATETHREAD", 311,
  258.     "DOS32GETINFOBLOCKS", 312,
  259.     "DOS32DYNAMICTRACE", 316,
  260.     "DOS32DEBUG", 317,
  261.     "DOS32LOADMODULE", 318,
  262.     "DOS32QUERYMODULEHANDLE", 319,
  263.     "DOS32QUERYMODULENAME", 320,
  264.     "DOS32QUERYPROCADDR", 321,
  265.     "DOS32FREEMODULE", 322,
  266.     "DOS32QUERYAPPTYPE", 323,
  267.     "DOS32CREATEEVENTSEM", 324,
  268.     "DOS32OPENEVENTSEM", 325,
  269.     "DOS32CLOSEEVENTSEM", 326,
  270.     "DOS32RESETEVENTSEM", 327,
  271.     "DOS32POSTEVENTSEM", 328,
  272.     "DOS32WAITEVENTSEM", 329,
  273.     "DOS32QUERYEVENTSEM", 330,
  274.     "DOS32CREATEMUTEXSEM", 331,
  275.     "DOS32OPENMUTEXSEM", 332,
  276.     "DOS32CLOSEMUTEXSEM", 333,
  277.     "DOS32REQUESTMUTEXSEM", 334,
  278.     "DOS32RELEASEMUTEXSEM", 335,
  279.     "DOS32QUERYMUTEXSEM", 336,
  280.     "DOS32CREATEMUXWAITSEM", 337,
  281.     "DOS32OPENMUXWAITSEM", 338,
  282.     "DOS32CLOSEMUXWAITSEM", 339,
  283.     "DOS32WAITMUXWAITSEM", 340,
  284.     "DOS32ADDMUXWAITSEM", 341,
  285.     "DOS32DELETEMUXWAITSEM", 342,
  286.     "DOS32QUERYMUXWAITSEM", 343,
  287.     "DOS32SUBSETMEM", 344,
  288.     "DOS32SUBALLOCMEM", 345,
  289.     "DOS32SUBFREEMEM", 346,
  290.     "DOS32SUBUNSETMEM", 347,
  291.     "DOS32QUERYSYSINFO", 348,
  292.     "DOS32WAITTHREAD", 349,
  293.     "DOS32ASYNCTIMER", 350,
  294.     "DOS32STARTTIMER", 351,
  295.     "DOS32GETRESOURCE", 352,
  296.     "DOS32FREERESOURCE", 353,
  297.     "DOS32SETEXCEPTIONHANDLER", 354,
  298.     "DOS32UNSETEXCEPTIONHANDLER", 355,
  299.     "DOS32RAISEEXCEPTION", 356,
  300.     "DOS32UNWINDEXCEPTION", 357,
  301.     "DOS32TMRQUERYFREQ", 362,
  302.     "DOS32TMRQUERYTIME", 363,
  303.     "DOS32REGISTERPERFCTRS", 367,
  304.     "DOS32ENUMATTRIBUTE", 372,
  305.     "DOS32QUERYDOSPROPERTY", 373,
  306.     "DOS32SETDOSPROPERTY", 374,
  307.     "DOSQUERYDOSPROPERTY", 375,
  308.     "DOSSETDOSPROPERTY", 376,
  309.     "DOS32PROFILE", 377,
  310.     "DOS32SETSIGNALEXCEPTIONFOC", 378,
  311.     "DOS32SENDSIGNALEXCEPTION", 379,
  312.     "DOS32ENTERMUSTCOMPLETE", 380,
  313.     "DOS32EXITMUSTCOMPLETE", 381,
  314.     "DOS32SETRELMAXFH", 382,
  315.     "DOS32SHUTDOWN", 415,
  316.     "DOS32REPLACEMODULE", 417,
  317.     "DOS32ACKNOWLEDGESIGNALEXC", 418,
  318.     "DOS32TIB", 419,
  319.     "DOSTMRQUERYFREQ", 420,
  320.     "DOSTMRQUERYTIME", 421,
  321.     "DOSREGISTERPERFCTRS", 422,
  322.     "DOSFLATTOSEL", 423,
  323.     "DOSSELTOFLAT", 424,
  324.     "DOS32FLATTOSEL", 425,
  325.     "DOS32SELTOFLAT", 426,
  326.     "DOS32SETFILELOCKS", 428,
  327.     "DOS32CANCELLOCKREQUEST", 429,
  328.     "DOSOPENCHANGENOTIFY", 437,
  329.     "DOSRESETCHANGENOTIFY", 438,
  330.     "DOSCLOSECHANGENOTIFY", 439,
  331.     "DOS32OPENCHANGENOTIFY", 440,
  332.     "DOS32RESETCHANGENOTIFY", 441,
  333.     "DOS32CLOSECHANGENOTIFY", 442,
  334.     "DOS32ALLOCTHREADLOCALMEMORY", 454,
  335.     "DOS32FREETHREADLOCALMEMORY", 455,
  336.     "DOS32QUERYRESOURCESIZE", 572,
  337.     "DOSQUERYRESOURCESIZE", 573,
  338.     "DOS32INITIALIZEPORTHOLE", 580,
  339.     "DOS32QUERYHEADERINFO", 582,
  340.     "DOSINITIALIZEPORTHOLE", 583,
  341.     "DOSQUERYHEADERINFO", 584,
  342.     "DOS32QUERYPROCTYPE", 586,
  343.     "DOSQUERYPROCTYPE", 587,
  344.     "DOS32PROTECTSETFILEPTR", 621,
  345.     "DOSPROTECTCLOSE", 622,
  346.     "DOSPROTECTFILEIO", 623,
  347.     "DOSPROTECTFILELOCKS", 624,
  348.     "DOSPROTECTNEWSIZE", 627,
  349.     "DOSPROTECTOPEN", 628,
  350.     "DOSPROTECTQFHANDSTATE", 629,
  351.     "DOSPROTECTSETFHANDSTATE", 630,
  352.     "DOSPROTECTQFILEINFO", 631,
  353.     "DOSPROTECTSETFILEINFO", 632,
  354.     "DOSPROTECTCHGFILEPTR", 634,
  355.     "DOSPROTECTENUMATTRIBUTE", 635,
  356.     "DOS32PROTECTENUMATTRIBUTE", 636,
  357.     "DOS32PROTECTOPEN", 637,
  358.     "DOS32PROTECTCLOSE", 638,
  359.     "DOS32PROTECTSETFILELOCKS", 639,
  360.     "DOS32PROTECTSETFILESIZE", 640,
  361.     "DOS32PROTECTREAD", 641,
  362.     "DOS32PROTECTWRITE", 642,
  363.     "DOS32PROTECTSETFILEINFO", 643,
  364.     "DOS32PROTECTSETFHSTATE", 644,
  365.     "DOS32PROTECTQUERYFHSTATE", 645,
  366.     "DOS32PROTECTQUERYFILEINFO", 646,
  367.     "DOS32SETEXTLIBPATH", 873,
  368.     "DOS32QUERYEXTLIBPATH", 874,
  369.     "DOSSETEXTLIBPATH", 998,
  370.     "DOSQUERYEXTLIBPATH", 999,
  371.     NULL, 0
  372. };
  373.  
  374. int main(void)
  375. {
  376.     unsigned i, j;
  377.  
  378.     printf("LIBRARY NEWCALLS INITGLOBAL TERMGLOBAL\n\n\n");
  379.  
  380.     printf("IMPORTS\n");
  381.     for (i = 0; foo[i].fn; i++) {
  382.     printf("\t%-30s =DOSCALLS.%d\n", foo[i].fn, foo[i].ord);
  383.     for (j = foo[i].ord + 1; j < foo[i + 1].ord; j++) {
  384.         printf("\t_undoc%d  =DOSCALLS.%d\n", j, j);
  385.     }
  386.     }
  387.  
  388.     printf("\n");
  389.     printf("EXPORTS\n");
  390.     for (i = 0; foo[i].fn; i++) {
  391.     printf("\t%-30s @%d\n", foo[i].fn, foo[i].ord);
  392.     for (j = foo[i].ord + 1; j < foo[i + 1].ord; j++) {
  393.         printf("\t_undoc%d @%d\n", j, j);
  394.     }
  395.     }
  396. }
  397.