home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Exec 5 / CD_Magazyn_EXEC_nr_5.iso / Recent / dev / misc / FD2Pragma.lha / fd2pragma / usefd2pragma < prev    next >
Text File  |  2001-06-04  |  27KB  |  1,015 lines

  1. ; $VER: usefd2pragma 1.6 (04.06.2001) (Freeware) by Dirk Stöcker <stoecker@epost.de>
  2. ; ToDo: Lots of Options need to be disabled for types >10
  3.  
  4. Delete >NIL: ENV:UseFD#?
  5.  
  6. SetEnv UseFDOnCOMMENT       " A"
  7. SetEnv UseFDOnEXTERNC       " B"
  8. SetEnv UseFDOnFPUONLY       " C"
  9. SetEnv UseFDOnNEWSYNTAX     " D"
  10. SetEnv UseFDOnNOFPU         " E"
  11. SetEnv UseFDOnNOPPC         " F"
  12. SetEnv UseFDOnNOPPCREGNAME  " G"
  13. SetEnv UseFDOnNOSYMBOL      " H"
  14. SetEnv UseFDOnONLYCNAMES    " I"
  15. SetEnv UseFDOnOPT040        " J"
  16. SetEnv UseFDOnPPCONLY       " K"
  17. SetEnv UseFDOnPRIVATE       " L"
  18. SetEnv UseFDOnSECTION       " M"
  19. SetEnv UseFDOnSMALLCODE     " N"
  20. SetEnv UseFDOnSMALLDATA     " O"
  21. SetEnv UseFDOnSORTED        " P"
  22. SetEnv UseFDOnSYSTEMRELEASE " Q"
  23. SetEnv UseFDOnUSESYSCALL    " R"
  24.  
  25. RequestChoice "Select the language you want to make files for"  "NOTE: This script may take several seconds from one to next step!*n*n1: C (pragmas, protos, stubs, linker libs)*n2: Pascal (stubs, linker libs, units)*n3: Assembler (lvo files)*n4: PPC Assembler (lvo files)*n5: Basic (BMAP files)*n6: E (Module)*n7: FD/SFD/Clib files*n*n8: FD files (from Pragma)" 1 2 3 4 5 6 7 8 >ENV:UseFDA1
  26.  
  27. IF $UseFDA1 EQ 0        ;**** FD file ****
  28.   RequestFile TITLE "Select the pragma input file" >ENV:UseFDInFile
  29.   RequestFile DRAWERSONLY TITLE "Select the output drawer" >ENV:UseFDOutDrawer
  30.   Echo "Executing following command:"
  31.   Echo "fd2pragma SPECIAL 200 INFILE" $UseFDInFile "TO" $UseFDOutDrawer
  32.   fd2pragma SPECIAL 200 INFILE $UseFDInFile TO $UseFDOutDrawer
  33.   Skip CleanUp
  34. EndIF
  35.  
  36. IF $UseFDA1 EQ 1        ;**** C ****
  37.   RequestChoice "Select the file type" "1: pragma files*n2: stubs, link library*n3: local libbase stubs*n4: protos*n5: GCC stuff*n6: PPC stuff (GCC, SAS-C, proto)*n7: VBCC stuff (68K, WOS, PPC, MorphOS)*n8: multifile assembler stubs" 1 2 3 4 5 6 7 8 >ENV:UseFDA2
  38.  
  39.   IF $UseFDA2 EQ 1
  40.     RequestChoice "Select the pragma type" "1: Aztec*n2: DICE*n3: SAS*n4: MAXON*n5: STORM*n6: all [default]*n7: all + GCC redirect" 1 2 3 4 5 6 7 >ENV:UseFDA3
  41.     IF $UseFDA3 EQ 1
  42.       SetEnv UseFDSPECIAL 1
  43.     EndIF
  44.     IF $UseFDA3 EQ 2
  45.       SetEnv UseFDSPECIAL 2
  46.     EndIF
  47.     IF $UseFDA3 EQ 3
  48.       SetEnv UseFDSPECIAL 3
  49.     EndIF
  50.     IF $UseFDA3 EQ 4
  51.       SetEnv UseFDSPECIAL 4
  52.     EndIF
  53.     IF $UseFDA3 EQ 5
  54.       SetEnv UseFDSPECIAL 5
  55.     EndIF
  56.     IF $UseFDA3 EQ 6
  57.       SetEnv UseFDSPECIAL 6
  58.     EndIF
  59.     IF $UseFDA3 EQ 0
  60.       SetEnv UseFDSPECIAL 7
  61.     EndIF
  62.   EndIF
  63.   If $UseFDA2 EQ 2
  64.     RequestChoice "Select the stub type" "1: C text*n2: assembler text*n3: link library" 1 2 3 >ENV:UseFDA3
  65.     IF $UseFDA3 EQ 1
  66.       SetEnv UseFDSPECIAL 10
  67.     EndIF
  68.     IF $UseFDA3 EQ 2
  69.       SetEnv UseFDSPECIAL 11
  70.     EndIF
  71.     IF $UseFDA3 EQ 0
  72.       SetEnv UseFDSPECIAL 12
  73.     EndIF
  74.   EndIF
  75.   If $UseFDA2 EQ 3
  76.     RequestChoice "Select the type" "1: register call*n2: stack call" 1 2 >ENV:UseFDA3
  77.     IF $UseFDA3 EQ 1
  78.       SetEnv UseFDSPECIAL 13
  79.     EndIF
  80.     IF $UseFDA3 EQ 0
  81.       SetEnv UseFDSPECIAL 14
  82.     EndIF
  83.   EndIF
  84.   If $UseFDA2 EQ 4
  85.     RequestChoice "Select the proto type" "1: with pragma/..._lib.h call*n2: with pragma/..._pragmas.h call*n3: with pragmas/..._lib.h call*n4: with pragmas/..._pragmas.h call*n5: with local/..._loc.h call*n6: all compilers*n7: GNU-C compiler only*n8: without lib definition*n9: with VBCC inline call*n10: with PPC specials" 1 2 3 4 5 6 7 8 9 10 >ENV:UseFDA3
  86.     IF $UseFDA3 EQ 1
  87.       SetEnv UseFDSPECIAL 30
  88.     EndIF
  89.     IF $UseFDA3 EQ 2
  90.       SetEnv UseFDSPECIAL 31
  91.     EndIF
  92.     IF $UseFDA3 EQ 3
  93.       SetEnv UseFDSPECIAL 32
  94.     EndIF
  95.     IF $UseFDA3 EQ 4
  96.       SetEnv UseFDSPECIAL 33
  97.     EndIF
  98.     IF $UseFDA3 EQ 5
  99.       SetEnv UseFDSPECIAL 34
  100.     EndIF
  101.     IF $UseFDA3 EQ 6
  102.       SetEnv UseFDSPECIAL 35
  103.     EndIF
  104.     IF $UseFDA3 EQ 7
  105.       SetEnv UseFDSPECIAL 36
  106.     EndIF
  107.     IF $UseFDA3 EQ 8
  108.       SetEnv UseFDSPECIAL 37
  109.     EndIF
  110.     IF $UseFDA3 EQ 9
  111.       SetEnv UseFDSPECIAL 38
  112.     EndIF
  113.     IF $UseFDA3 EQ 0
  114.       SetEnv UseFDSPECIAL 39
  115.     EndIF
  116.   EndIF
  117.   If $UseFDA2 EQ 5
  118.     RequestChoice "Select inline file type" "1: new*n2: old*n3: lib stubs*n4: new style macros*n5: new style inlines*n6: new style inlines (with include lines)" 1 2 3 4 5 6 >ENV:UseFDA3
  119.     IF $UseFDA3 EQ 1
  120.       SetEnv UseFDSPECIAL 40
  121.     EndIF
  122.     IF $UseFDA3 EQ 2
  123.       SetEnv UseFDSPECIAL 41
  124.     EndIF
  125.     IF $UseFDA3 EQ 3
  126.       SetEnv UseFDSPECIAL 42
  127.     EndIF
  128.     IF $UseFDA3 EQ 4
  129.       SetEnv UseFDSPECIAL 43
  130.     EndIF
  131.     IF $UseFDA3 EQ 5
  132.       SetEnv UseFDSPECIAL 44
  133.     EndIF
  134.     IF $UseFDA3 EQ 0
  135.       SetEnv UseFDSPECIAL 45
  136.     EndIF
  137.   EndIF
  138.   If $UseFDA2 EQ 6
  139.     RequestChoice "Select PPC file type" "1: new inlines*n2: old inlines*n3: lib stub inlines*n4: SAS-C PPC file*n5: PPC proto file" 1 2 3 4 5 >ENV:UseFDA3
  140.     IF $UseFDA3 EQ 1
  141.       SetEnv UseFDSPECIAL 50
  142.     EndIF
  143.     IF $UseFDA3 EQ 2
  144.       SetEnv UseFDSPECIAL 51
  145.     EndIF
  146.     IF $UseFDA3 EQ 3
  147.       SetEnv UseFDSPECIAL 52
  148.     EndIF
  149.     IF $UseFDA3 EQ 4
  150.       SetEnv UseFDSPECIAL 53
  151.     EndIF
  152.     IF $UseFDA3 EQ 0
  153.       SetEnv UseFDSPECIAL 54
  154.     EndIF
  155.   EndIF
  156.   If $UseFDA2 EQ 7
  157.     RequestChoice "Select destination system" "1: 68K*n2: WarpOS*n3: PowerUP*n4: MorphOS" 1 2 3 4 >ENV:UseFDVBCC
  158.     IF $UseFDVBCC EQ 1
  159.       RequestChoice "Select file type" "1: inlines*n2: stubs (ASM)*n3: stubs (multifile ASM)*n4: stubs (link library)*n5: auto lib open (c code)*n6: auto lib open lib" 1 2 3 4 5 6 >ENV:UseFDA3
  160.       IF $UseFDA3 EQ 1
  161.         SetEnv UseFDSPECIAL 70
  162.       EndIF
  163.       IF $UseFDA3 EQ 2
  164.         SetEnv UseFDSPECIAL 11
  165.       EndIF
  166.       IF $UseFDA3 EQ 3
  167.         SetEnv UseFDSPECIAL 90
  168.       EndIF
  169.       IF $UseFDA3 EQ 4
  170.         SetEnv UseFDSPECIAL 12
  171.       EndIF
  172.       IF $UseFDA3 EQ 5
  173.         SetEnv UseFDSPECIAL 120
  174.       EndIF
  175.       IF $UseFDA3 EQ 0
  176.         SetEnv UseFDSPECIAL 121
  177.       EndIF
  178.     EndIF
  179.     IF $UseFDVBCC EQ 2
  180.       RequestChoice "Select file type" "1: inlines*n2: stubs (ASM)*n3: stubs (ASM, libbase)*n4: stubs (multifile ASM)*n5: stubs (link library)*n6: stubs (link library, libbase)*n7: auto lib open (c code)" 1 2 3 4 5 6 7 >ENV:UseFDA3
  181.       IF $UseFDA3 EQ 1
  182.         SetEnv UseFDSPECIAL 77
  183.       EndIF
  184.       IF $UseFDA3 EQ 2
  185.         SetEnv UseFDSPECIAL 71
  186.       EndIF
  187.       IF $UseFDA3 EQ 3
  188.         SetEnv UseFDSPECIAL 72
  189.       EndIF
  190.       IF $UseFDA3 EQ 4
  191.         SetEnv UseFDSPECIAL 92
  192.       EndIF
  193.       IF $UseFDA3 EQ 5
  194.         SetEnv UseFDSPECIAL 73
  195.       EndIF
  196.       IF $UseFDA3 EQ 6
  197.         SetEnv UseFDSPECIAL 74
  198.       EndIF
  199.       IF $UseFDA3 EQ 0
  200.         SetEnv UseFDSPECIAL 120
  201.       EndIF
  202.     EndIF
  203.     IF $UseFDVBCC EQ 3
  204.       RequestChoice "Select file type" "1: stubs (ASM)*n2: stubs (multifile ASM)*n3: stubs (link library)*n4: auto lib open (c code)" 1 2 3 4 >ENV:UseFDA3
  205.       IF $UseFDA3 EQ 1
  206.         SetEnv UseFDSPECIAL 75
  207.       EndIF
  208.       IF $UseFDA3 EQ 2
  209.         SetEnv UseFDSPECIAL 91
  210.       EndIF
  211.       IF $UseFDA3 EQ 3
  212.         SetEnv UseFDSPECIAL 76
  213.       EndIF
  214.       IF $UseFDA3 EQ 0
  215.         SetEnv UseFDSPECIAL 120
  216.       EndIF
  217.     EndIF
  218.     IF $UseFDVBCC EQ 0
  219.       RequestChoice "Select file type" "1: stubs (multifile ASM)*n2: stubs (link library)" 1 2 >ENV:UseFDA3
  220.       IF $UseFDA3 EQ 1
  221.         SetEnv UseFDSPECIAL 93
  222.       EndIF
  223.       IF $UseFDA3 EQ 0
  224.         SetEnv UseFDSPECIAL 78
  225.       EndIF
  226.     EndIF
  227.   EndIF
  228.   If $UseFDA2 EQ 0
  229.     RequestChoice "Select file type" "1: 68K*n2: VBCC PowerUP*n3: VBCC WOS*n4: VBCC MorphOS" 1 2 3 4 >ENV:UseFDA3
  230.     IF $UseFDA3 EQ 1
  231.       SetEnv UseFDSPECIAL 90
  232.     EndIF
  233.     IF $UseFDA3 EQ 2
  234.       SetEnv UseFDSPECIAL 91
  235.     EndIF
  236.     IF $UseFDA3 EQ 3
  237.       SetEnv UseFDSPECIAL 92
  238.     EndIF
  239.     IF $UseFDA3 EQ 0
  240.       SetEnv UseFDSPECIAL 93
  241.     EndIF
  242.   EndIF
  243. EndIF
  244.  
  245. IF $UseFDA1 EQ 2        ;**** Pascal ****
  246.   RequestChoice "Select the file type" "1: stub-functions - assembler text*n2: stub-functions - link library*n3: FPC unit text" 1 2 3 >ENV:UseFDA2
  247.  
  248.   IF $UseFDA2 EQ 1
  249.     SetEnv UseFDSPECIAL 15        ; stub-functions for Pascal - assembler text
  250.   EndIF
  251.  
  252.   IF $UseFDA2 EQ 2
  253.     SetEnv UseFDSPECIAL 16        ; stub-functions for Pascal - link library
  254.   EndIF
  255.  
  256.   IF $UseFDA2 EQ 0
  257.     SetEnv UseFDSPECIAL 60        ; FPC pascal unit text
  258.   EndIF
  259. EndIF
  260.  
  261. IF $UseFDA1 EQ 3        ;**** Assembler ****
  262.   RequestChoice "Select the file type" "1: lvo _lvo.i file*n2: lvo _lib.i file*n3: lvo _lvo.i file no XDEF*n4: lvo _lib.i file no XDEF*n5: link library" 1 2 3 4 5 >ENV:UseFDA2
  263.  
  264.   IF $UseFDA2 EQ 1
  265.     SetEnv UseFDSPECIAL 20        ; assembler lvo _lvo.i file
  266.   EndIF
  267.  
  268.   IF $UseFDA2 EQ 2
  269.     SetEnv UseFDSPECIAL 21        ; assembler lvo _lib.i file
  270.   EndIF
  271.  
  272.   IF $UseFDA2 EQ 3
  273.     SetEnv UseFDSPECIAL 22        ; assembler lvo _lvo.i file no XDEF
  274.   EndIF
  275.  
  276.   IF $UseFDA2 EQ 4
  277.     SetEnv UseFDSPECIAL 23        ; assembler lvo _lib.i file no XDEF
  278.   EndIF
  279.  
  280.   IF $UseFDA2 EQ 0
  281.     SetEnv UseFDSPECIAL 24        ; assembler lvo link library
  282.   EndIF
  283. EndIF
  284.  
  285. IF $UseFDA1 EQ 4        ;**** PPC Assembler ****
  286.   RequestChoice "Select the file type" "1: lvo file*n2: lvo file (no XDEF)*n3: lvo ELF lib*n4: lvo EHF lib*n5: V.4 lvo file*n6: V.4 lvo file (no XDEF)*n7: V.4 lvo ELF lib*n8: V.4lvo EHF lib" 1 2 3 4 5 6 7 8 >ENV:UseFDA2
  287.  
  288.   IF $UseFDA2 EQ 1
  289.     SetEnv UseFDSPECIAL 100        ; assembler lvo
  290.   EndIF
  291.  
  292.   IF $UseFDA2 EQ 2
  293.     SetEnv UseFDSPECIAL 101        ; assembler lvo no XDEF
  294.   EndIF
  295.  
  296.   IF $UseFDA2 EQ 3
  297.     SetEnv UseFDSPECIAL 102        ; assembler lvo EHF lib
  298.   EndIF
  299.  
  300.   IF $UseFDA2 EQ 4
  301.     SetEnv UseFDSPECIAL 103        ; assembler lvo ELF lib
  302.   EndIF
  303.  
  304.   IF $UseFDA2 EQ 5
  305.     SetEnv UseFDSPECIAL 104        ; V.4 assembler lvo
  306.   EndIF
  307.  
  308.   IF $UseFDA2 EQ 6
  309.     SetEnv UseFDSPECIAL 105        ; V.4 assembler lvo no XDEF
  310.   EndIF
  311.  
  312.   IF $UseFDA2 EQ 7
  313.     SetEnv UseFDSPECIAL 106        ; V.4 assembler lvo EHF lib
  314.   EndIF
  315.  
  316.   IF $UseFDA2 EQ 0
  317.     SetEnv UseFDSPECIAL 107        ; V.4 assembler lvo ELF lib
  318.   EndIF
  319. EndIF
  320.  
  321. IF $UseFDA1 EQ 5        ;**** Basic ****
  322.   SetEnv UseFDSPECIAL 17        ; BMAP file for AmigaBASIC and MaxonBASIC
  323. EndIF
  324.  
  325. IF $UseFDA1 EQ 6        ;**** E ****
  326.   SetEnv UseFDSPECIAL 18        ; Module file for E
  327. EndIF
  328.  
  329. IF $UseFDA1 EQ 7        ;**** FD, SFD, Clib ****
  330.   RequestChoice "Select the file type" "1: FD file*n2: Clib file*n3: SFD file" 1 2 3 >ENV:UseFDA2
  331.  
  332.   IF $UseFDA2 EQ 1
  333.     SetEnv UseFDSPECIAL 110        ; FD
  334.   EndIF
  335.  
  336.   IF $UseFDA2 EQ 2
  337.     SetEnv UseFDSPECIAL 111        ; Clib
  338.   EndIF
  339.  
  340.   IF $UseFDA2 EQ 0
  341.     SetEnv UseFDSPECIAL 112        ; SFD
  342.   EndIF
  343. EndIF
  344.  
  345. ; **** create type depending data here ****
  346. SetEnv UseFDSPEC `Eval 1000+$UseFDSPECIAL` ; *** we need 3 digit numbers
  347. SetEnv UseFDMode 0
  348. SetEnv UseFDNeedCLIB 0
  349. IF 1010 GE $UseFDSPEC   ;  1 -  8
  350.   SetEnv UseFDOnEXTERNC ""
  351.   SetEnv UseFDOnNEWSYNTAX ""
  352.   SetEnv UseFDOnNOPPCREGNAME ""
  353.   SetEnv UseFDOnNOSYMBOL ""
  354.   SetEnv UseFDOnONLYCNAMES ""
  355.   SetEnv UseFDOnOPT040 ""
  356.   SetEnv UseFDOnSECTION ""
  357.   SetEnv UseFDOnSMALLDATA ""
  358.   SetEnv UseFDOnSMALLCODE ""
  359.   IF $UseFDSPECIAL EQ 1
  360.     SetEnv UseFDMode 1
  361.   EndIF
  362.   IF $UseFDSPECIAL EQ 2
  363.     SetEnv UseFDMode 1
  364.   EndIF
  365.   IF $UseFDSPECIAL EQ 3
  366.     SetEnv UseFDMode 1
  367.   EndIF
  368.   IF $UseFDSPECIAL EQ 4
  369.     SetEnv UseFDMode 1
  370.   EndIF
  371.   IF $UseFDSPECIAL EQ 5
  372.     SetEnv UseFDMode 1
  373.   EndIF
  374.   IF $UseFDSPECIAL EQ 6
  375.     SetEnv UseFDMode 1
  376.   EndIF
  377.   IF $UseFDSPECIAL EQ 7
  378.     SetEnv UseFDMode 1
  379.   EndIF
  380.   Skip EndDisableOpts
  381. EndIF
  382. IF 1020 GE $UseFDSPEC   ; 10 - 18
  383.   SetEnv UseFDOnUSESYSCALL ""
  384.   IF $UseFDSPECIAL EQ 10
  385.     SetEnv UseFDNeedCLIB 1
  386.   EndIF
  387.   IF $UseFDSPECIAL EQ 11
  388.     SetEnv UseFDMode 2
  389.     SetEnv UseFDNeedCLIB 1
  390.   EndIF
  391.   IF $UseFDSPECIAL EQ 12
  392.     SetEnv UseFDMode 2
  393.     SetEnv UseFDNeedCLIB 1
  394.   EndIF
  395.   IF $UseFDSPECIAL EQ 13
  396.     SetEnv UseFDMode 2
  397.     SetEnv UseFDNeedCLIB 1
  398.   EndIF
  399.   IF $UseFDSPECIAL EQ 14
  400.     SetEnv UseFDMode 2
  401.     SetEnv UseFDNeedCLIB 1
  402.   EndIF
  403.   IF $UseFDSPECIAL EQ 15
  404.     SetEnv UseFDNeedCLIB 1
  405.   EndIF
  406.   IF $UseFDSPECIAL EQ 16
  407.     SetEnv UseFDNeedCLIB 1
  408.   EndIF
  409.   Skip EndDisableOpts
  410. EndIF
  411. IF 1030 GE $UseFDSPEC   ; 20 - 24
  412.   SetEnv UseFDOnUSESYSCALL ""
  413.   IF $UseFDSPECIAL EQ 20
  414.   EndIF
  415.   IF $UseFDSPECIAL EQ 21
  416.   EndIF
  417.   IF $UseFDSPECIAL EQ 22
  418.   EndIF
  419.   IF $UseFDSPECIAL EQ 23
  420.   EndIF
  421.   IF $UseFDSPECIAL EQ 24
  422.   EndIF
  423.   Skip EndDisableOpts
  424. EndIF
  425. IF 1040 GE $UseFDSPEC   ; 30 - 39
  426.   SetEnv UseFDOnUSESYSCALL ""
  427.   IF $UseFDSPECIAL EQ 30
  428.   EndIF
  429.   IF $UseFDSPECIAL EQ 31
  430.   EndIF
  431.   IF $UseFDSPECIAL EQ 32
  432.   EndIF
  433.   IF $UseFDSPECIAL EQ 33
  434.   EndIF
  435.   IF $UseFDSPECIAL EQ 34
  436.   EndIF
  437.   IF $UseFDSPECIAL EQ 35
  438.   EndIF
  439.   IF $UseFDSPECIAL EQ 36
  440.   EndIF
  441.   IF $UseFDSPECIAL EQ 37
  442.   EndIF
  443.   IF $UseFDSPECIAL EQ 38
  444.   EndIF
  445.   IF $UseFDSPECIAL EQ 39
  446.   EndIF
  447.   Skip EndDisableOpts
  448. EndIF
  449. IF 1050 GE $UseFDSPEC   ; 40 - 45
  450.   SetEnv UseFDOnUSESYSCALL ""
  451.   IF $UseFDSPECIAL EQ 40
  452.     SetEnv UseFDMode 2
  453.     SetEnv UseFDNeedCLIB 1
  454.   EndIF
  455.   IF $UseFDSPECIAL EQ 41
  456.     SetEnv UseFDMode 2
  457.     SetEnv UseFDNeedCLIB 1
  458.   EndIF
  459.   IF $UseFDSPECIAL EQ 42
  460.     SetEnv UseFDMode 2
  461.     SetEnv UseFDNeedCLIB 1
  462.   EndIF
  463.   IF $UseFDSPECIAL EQ 43
  464.     SetEnv UseFDMode 2
  465.     SetEnv UseFDNeedCLIB 1
  466.   EndIF
  467.   IF $UseFDSPECIAL EQ 44
  468.     SetEnv UseFDMode 2
  469.     SetEnv UseFDNeedCLIB 1
  470.   EndIF
  471.   IF $UseFDSPECIAL EQ 45
  472.     SetEnv UseFDMode 2
  473.     SetEnv UseFDNeedCLIB 1
  474.   EndIF
  475.   Skip EndDisableOpts
  476. EndIF
  477. IF 1060 GE $UseFDSPEC   ; 50 - 54
  478.   SetEnv UseFDOnUSESYSCALL ""
  479.   IF $UseFDSPECIAL EQ 50
  480.     SetEnv UseFDMode 2
  481.     SetEnv UseFDNeedCLIB 1
  482.   EndIF
  483.   IF $UseFDSPECIAL EQ 51
  484.     SetEnv UseFDMode 2
  485.     SetEnv UseFDNeedCLIB 1
  486.   EndIF
  487.   IF $UseFDSPECIAL EQ 52
  488.     SetEnv UseFDMode 2
  489.     SetEnv UseFDNeedCLIB 1
  490.   EndIF
  491.   IF $UseFDSPECIAL EQ 53
  492.     SetEnv UseFDMode 2
  493.     SetEnv UseFDNeedCLIB 1
  494.   EndIF
  495.   IF $UseFDSPECIAL EQ 54
  496.   EndIF
  497.   Skip EndDisableOpts
  498. EndIF
  499. IF 1070 GE $UseFDSPEC   ; 60
  500.   SetEnv UseFDOnUSESYSCALL ""
  501.   IF $UseFDSPECIAL EQ 60
  502.     SetEnv UseFDNeedCLIB 1
  503.   EndIF
  504.   Skip EndDisableOpts
  505. EndIF
  506. IF 1080 GE $UseFDSPEC   ; 70 - 77
  507.   SetEnv UseFDOnUSESYSCALL ""
  508.   IF $UseFDSPECIAL EQ 70
  509.     SetEnv UseFDNeedCLIB 1
  510.   EndIF
  511.   IF $UseFDSPECIAL EQ 71
  512.     SetEnv UseFDMode 2
  513.   EndIF
  514.   IF $UseFDSPECIAL EQ 72
  515.     SetEnv UseFDMode 2
  516.   EndIF
  517.   IF $UseFDSPECIAL EQ 73
  518.     SetEnv UseFDMode 2
  519.   EndIF
  520.   IF $UseFDSPECIAL EQ 74
  521.     SetEnv UseFDMode 2
  522.   EndIF
  523.   IF $UseFDSPECIAL EQ 75
  524.     SetEnv UseFDMode 2
  525.   EndIF
  526.   IF $UseFDSPECIAL EQ 76
  527.     SetEnv UseFDMode 2
  528.   EndIF
  529.   IF $UseFDSPECIAL EQ 77
  530.     SetEnv UseFDNeedCLIB 1
  531.   EndIF
  532.   IF $UseFDSPECIAL EQ 78
  533.     SetEnv UseFDMode 2
  534.   EndIF
  535.   Skip EndDisableOpts
  536. EndIF
  537. IF 1090 GE $UseFDSPEC   ; 80 - 83
  538.   SetEnv UseFDOnUSESYSCALL ""
  539.   IF $UseFDSPECIAL EQ 80
  540.   EndIF
  541.   IF $UseFDSPECIAL EQ 81
  542.   EndIF
  543.   IF $UseFDSPECIAL EQ 82
  544.   EndIF
  545.   IF $UseFDSPECIAL EQ 83
  546.   EndIF
  547.   Skip EndDisableOpts
  548. EndIF
  549. IF 1100 GE $UseFDSPEC  ; 90 - 93
  550.   SetEnv UseFDOnUSESYSCALL ""
  551.   IF $UseFDSPECIAL EQ 90
  552.     SetEnv UseFDMode 2
  553.   EndIF
  554.   IF $UseFDSPECIAL EQ 91
  555.     SetEnv UseFDMode 2
  556.   EndIF
  557.   IF $UseFDSPECIAL EQ 92
  558.     SetEnv UseFDMode 2
  559.   EndIF
  560.   IF $UseFDSPECIAL EQ 93
  561.     SetEnv UseFDMode 2
  562.   EndIF
  563.   Skip EndDisableOpts
  564. EndIF
  565. IF 1110 GE $UseFDSPEC  ; 100 - 107
  566.   SetEnv UseFDOnCOMMENT ""
  567.   SetEnv UseFDOnEXTERNC ""
  568.   SetEnv UseFDOnFPUONLY ""
  569.   SetEnv UseFDOnNEWSYNTAX ""
  570.   SetEnv UseFDOnNOFPU ""
  571.   SetEnv UseFDOnNOPPC ""
  572.   SetEnv UseFDOnNOPPCREGNAME ""
  573.   SetEnv UseFDOnNOSYMBOL ""
  574.   SetEnv UseFDOnONLYCNAMES ""
  575.   SetEnv UseFDOnOPT040 ""
  576.   SetEnv UseFDOnPPCONLY ""
  577.   SetEnv UseFDOnPRIVATE ""
  578.   SetEnv UseFDOnSECTION ""
  579.   SetEnv UseFDOnSMALLDATA ""
  580.   SetEnv UseFDOnSMALLCODE ""
  581.   SetEnv UseFDOnSORTED ""
  582.   SetEnv UseFDOnSYSTEMRELEASE ""
  583.   SetEnv UseFDOnUSESYSCALL ""
  584.   IF $UseFDSPECIAL EQ 100
  585.   EndIF
  586.   IF $UseFDSPECIAL EQ 101
  587.   EndIF
  588.   IF $UseFDSPECIAL EQ 102
  589.   EndIF
  590.   IF $UseFDSPECIAL EQ 103
  591.   EndIF
  592.   IF $UseFDSPECIAL EQ 104
  593.   EndIF
  594.   IF $UseFDSPECIAL EQ 105
  595.   EndIF
  596.   IF $UseFDSPECIAL EQ 106
  597.   EndIF
  598.   IF $UseFDSPECIAL EQ 107
  599.   EndIF
  600.   Skip EndDisableOpts
  601. EndIF
  602. IF 1120 GE $UseFDSPEC  ; 110 - 112
  603.   SetEnv UseFDOnUSESYSCALL ""
  604.   SetEnv UseFDMode 2
  605.   SetEnv UseFDNeedCLIB 1
  606.   IF $UseFDSPECIAL EQ 110
  607.     SetEnv UseFDOnEXTERNC ""
  608.     SetEnv UseFDOnSORTED ""
  609.   EndIF
  610.   IF $UseFDSPECIAL EQ 111
  611.   EndIF
  612.     SetEnv UseFDOnEXTERNC ""
  613.     SetEnv UseFDOnSORTED ""
  614.   IF $UseFDSPECIAL EQ 112
  615.   EndIF
  616.   Skip EndDisableOpts
  617. EndIF
  618. IF 1130 GE $UseFDSPEC  ; 120 - 121
  619.   SetEnv UseFDOnCOMMENT ""
  620.   SetEnv UseFDOnEXTERNC ""
  621.   SetEnv UseFDOnFPUONLY ""
  622.   SetEnv UseFDOnNEWSYNTAX ""
  623.   SetEnv UseFDOnNOFPU ""
  624.   SetEnv UseFDOnNOPPC ""
  625.   SetEnv UseFDOnNOPPCREGNAME ""
  626.   SetEnv UseFDOnNOSYMBOL ""
  627.   SetEnv UseFDOnONLYCNAMES ""
  628.   SetEnv UseFDOnOPT040 ""
  629.   SetEnv UseFDOnPPCONLY ""
  630.   SetEnv UseFDOnPRIVATE ""
  631.   SetEnv UseFDOnSECTION ""
  632.   SetEnv UseFDOnSORTED ""
  633.   SetEnv UseFDOnSYSTEMRELEASE ""
  634.   SetEnv UseFDOnUSESYSCALL ""
  635.   IF $UseFDSPECIAL EQ 120
  636.   EndIF
  637.   IF $UseFDSPECIAL EQ 121
  638.   EndIF
  639.   Skip EndDisableOpts
  640. EndIF
  641.  
  642. Lab EndDisableOpts
  643. ; **** scan options here ****
  644. Delete ENV:UseFDArgs >NIL:
  645.  
  646. Lab ScanOpts
  647. Delete ENV:UseFDOptions >NIL:
  648. Echo NOLINE >ENV:UseFDOptionText  "See documentation for option description.**n"
  649. Echo NOLINE >>ENV:UseFDOptionText "Finish this request with 'x'.**n**n"
  650.  
  651. SetEnv UseFDNum 0
  652. IF $UseFDOnCOMMENT
  653.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnCOMMENT=COMMENT      "
  654.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnCOMMENT"
  655.   SetEnv UseFDNum `Eval $UseFDNum+1`
  656.   IF `Eval $UseFDNum % 3` EQ 0
  657.     Echo >>ENV:UseFDOptionText ""
  658.   EndIF
  659. EndIF
  660. IF $UseFDOnEXTERNC
  661.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnEXTERNC=EXTERNC      "
  662.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnEXTERNC"
  663.   SetEnv UseFDNum `Eval $UseFDNum+1`
  664.   IF `Eval $UseFDNum % 3` EQ 0
  665.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  666.   EndIF
  667. EndIF
  668. IF $UseFDOnFPUONLY
  669.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnFPUONLY=FPUONLY      "
  670.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnFPUONLY"
  671.   SetEnv UseFDNum `Eval $UseFDNum+1`
  672.   IF `Eval $UseFDNum % 3` EQ 0
  673.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  674.   EndIF
  675. EndIF
  676. IF $UseFDOnNEWSYNTAX
  677.   Echo NOLINE >>ENV:UseFDOptionText        "$UseFDOnNEWSYNTAX=NEWSYNTAX    "
  678.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnNEWSYNTAX"
  679.   SetEnv UseFDNum `Eval $UseFDNum+1`
  680.   IF `Eval $UseFDNum % 3` EQ 0
  681.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  682.   EndIF
  683. EndIF
  684. IF $UseFDOnNOFPU
  685.   Echo NOLINE >>ENV:UseFDOptionText            "$UseFDOnNOFPU=NOFPU        "
  686.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnNOFPU"
  687.   SetEnv UseFDNum `Eval $UseFDNum+1`
  688.   IF `Eval $UseFDNum % 3` EQ 0
  689.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  690.   EndIF
  691. EndIF
  692. IF $UseFDOnNOPPC
  693.   Echo NOLINE >>ENV:UseFDOptionText            "$UseFDOnNOPPC=NOPPC        "
  694.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnNOPPC"
  695.   SetEnv UseFDNum `Eval $UseFDNum+1`
  696.   IF `Eval $UseFDNum % 3` EQ 0
  697.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  698.   EndIF
  699. EndIF
  700. IF $UseFDOnNOPPCREGNAME
  701.   Echo NOLINE >>ENV:UseFDOptionText     "$UseFDOnNOPPCREGNAME=NOPPCREGNAME "
  702.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnNOPPCREGNAME"
  703.   SetEnv UseFDNum `Eval $UseFDNum+1`
  704.   IF `Eval $UseFDNum % 3` EQ 0
  705.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  706.   EndIF
  707. EndIF
  708. IF $UseFDOnNOSYMBOL
  709.   Echo NOLINE >>ENV:UseFDOptionText         "$UseFDOnNOSYMBOL=NOSYMBOL     "
  710.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnNOSYMBOL"
  711.   SetEnv UseFDNum `Eval $UseFDNum+1`
  712.   IF `Eval $UseFDNum % 3` EQ 0
  713.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  714.   EndIF
  715. EndIF
  716. IF $UseFDOnONLYCNAMES
  717.   Echo NOLINE >>ENV:UseFDOptionText       "$UseFDOnONLYCNAMES=ONLYCNAMES   "
  718.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnONLYCNAMES"
  719.   SetEnv UseFDNum `Eval $UseFDNum+1`
  720.   IF `Eval $UseFDNum % 3` EQ 0
  721.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  722.   EndIF
  723. EndIF
  724. IF $UseFDOnOPT040
  725.   Echo NOLINE >>ENV:UseFDOptionText           "$UseFDOnOPT040=OPT040       "
  726.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnOPT040"
  727.   SetEnv UseFDNum `Eval $UseFDNum+1`
  728.   IF `Eval $UseFDNum % 3` EQ 0
  729.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  730.   EndIF
  731. EndIF
  732. IF $UseFDOnPPCONLY
  733.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnPPCONLY=PPCONLY      "
  734.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnPPCONLY"
  735.   SetEnv UseFDNum `Eval $UseFDNum+1`
  736.   IF `Eval $UseFDNum % 3` EQ 0
  737.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  738.   EndIF
  739. EndIF
  740. IF $UseFDOnPRIVATE
  741.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnPRIVATE=PRIVATE      "
  742.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnPRIVATE"
  743.   SetEnv UseFDNum `Eval $UseFDNum+1`
  744.   IF `Eval $UseFDNum % 3` EQ 0
  745.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  746.   EndIF
  747. EndIF
  748. IF $UseFDOnSECTION
  749.   Echo NOLINE >>ENV:UseFDOptionText          "$UseFDOnSECTION=SECTION      "
  750.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnSECTION"
  751.   SetEnv UseFDNum `Eval $UseFDNum+1`
  752.   IF `Eval $UseFDNum % 3` EQ 0
  753.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  754.   EndIF
  755. EndIF
  756. IF $UseFDOnSMALLCODE
  757.   Echo NOLINE >>ENV:UseFDOptionText        "$UseFDOnSMALLCODE=SMALLCODE    "
  758.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnSMALLCODE"
  759.   SetEnv UseFDNum `Eval $UseFDNum+1`
  760.   IF `Eval $UseFDNum % 3` EQ 0
  761.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  762.   EndIF
  763. EndIF
  764. IF $UseFDOnSMALLDATA
  765.   Echo NOLINE >>ENV:UseFDOptionText        "$UseFDOnSMALLDATA=SMALLDATA    "
  766.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnSMALLDATA"
  767.   SetEnv UseFDNum `Eval $UseFDNum+1`
  768.   IF `Eval $UseFDNum % 3` EQ 0
  769.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  770.   EndIF
  771. EndIF
  772. IF $UseFDOnSORTED
  773.   Echo NOLINE >>ENV:UseFDOptionText           "$UseFDOnSORTED=SORTED       "
  774.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnSORTED"
  775.   SetEnv UseFDNum `Eval $UseFDNum+1`
  776.   IF `Eval $UseFDNum % 3` EQ 0
  777.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  778.   EndIF
  779. EndIF
  780. IF $UseFDOnSYSTEMRELEASE
  781.   Echo NOLINE >>ENV:UseFDOptionText    "$UseFDOnSYSTEMRELEASE=SYSTEMRELEASE"
  782.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnSYSTEMRELEASE"
  783.   SetEnv UseFDNum `Eval $UseFDNum+1`
  784.   IF `Eval $UseFDNum % 3` EQ 0
  785.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  786.   EndIF
  787. EndIF
  788. IF $UseFDOnUSESYSCALL
  789.   Echo NOLINE >>ENV:UseFDOptionText       "$UseFDOnUSESYSCALL=USESYSCALL   "
  790.   Echo NOLINE >>ENV:UseFDOptions    "$UseFDOnUSESYSCALL"
  791.   SetEnv UseFDNum `Eval $UseFDNum+1`
  792.   IF `Eval $UseFDNum % 3` EQ 0
  793.     Echo NOLINE >>ENV:UseFDOptionText "**n"
  794.   EndIF
  795. EndIF
  796.  
  797. IF $UseFDNum EQ 0
  798.   Skip EndScanOpts
  799. EndIF
  800.  
  801. RequestChoice "Select Option" "`Type ENV:UseFDOptionText`" $UseFDOptions "x" >ENV:UseFDOption
  802.  
  803. IF $UseFDOption EQ 0
  804.   Skip EndScanOpts
  805. EndIF
  806.  
  807. SetEnv UseFDNum 1
  808. IF $UseFDOnCOMMENT
  809.   IF $UseFDOption EQ $UseFDNum
  810.     Echo NOLINE >>ENV:UseFDArgs " COMMENT"
  811.     SetEnv UseFDOnCOMMENT ""
  812.   EndIF
  813.   SetEnv UseFDNum `Eval $UseFDNum+1`
  814. EndIF
  815. IF $UseFDOnEXTERNC
  816.   IF $UseFDOption EQ $UseFDNum
  817.     Echo NOLINE >>ENV:UseFDArgs " EXTERNC"
  818.     SetEnv UseFDOnEXTERNC ""
  819.   EndIF
  820.   SetEnv UseFDNum `Eval $UseFDNum+1`
  821. EndIF
  822. IF $UseFDOnFPUONLY
  823.   IF $UseFDOption EQ $UseFDNum
  824.     Echo NOLINE >>ENV:UseFDArgs " FPUONLY"
  825.     SetEnv UseFDOnFPUONLY ""
  826.   EndIF
  827.   SetEnv UseFDNum `Eval $UseFDNum+1`
  828. EndIF
  829. IF $UseFDOnNEWSYNTAX
  830.   IF $UseFDOption EQ $UseFDNum
  831.     Echo NOLINE >>ENV:UseFDArgs " NEWSYNTAX"
  832.     SetEnv UseFDOnNEWSYNTAX ""
  833.   EndIF
  834.   SetEnv UseFDNum `Eval $UseFDNum+1`
  835. EndIF
  836. IF $UseFDOnNOFPU
  837.   IF $UseFDOption EQ $UseFDNum
  838.     Echo NOLINE >>ENV:UseFDArgs " NOFPU"
  839.     SetEnv UseFDOnNOFPU ""
  840.   EndIF
  841.   SetEnv UseFDNum `Eval $UseFDNum+1`
  842. EndIF
  843. IF $UseFDOnNOPPC
  844.   IF $UseFDOption EQ $UseFDNum
  845.     Echo NOLINE >>ENV:UseFDArgs " NOPPC"
  846.     SetEnv UseFDOnNOPPC ""
  847.   EndIF
  848.   SetEnv UseFDNum `Eval $UseFDNum+1`
  849. EndIF
  850. IF $UseFDOnNOPPCREGNAME
  851.   IF $UseFDOption EQ $UseFDNum
  852.     Echo NOLINE >>ENV:UseFDArgs " NOPPCREGNAME"
  853.     SetEnv UseFDOnNOPPCREGNAME ""
  854.   EndIF
  855.   SetEnv UseFDNum `Eval $UseFDNum+1`
  856. EndIF
  857. IF $UseFDOnNOSYMBOL
  858.   IF $UseFDOption EQ $UseFDNum
  859.     Echo NOLINE >>ENV:UseFDArgs " NOSYMBOL"
  860.     SetEnv UseFDOnNOSYMBOL ""
  861.   EndIF
  862.   SetEnv UseFDNum `Eval $UseFDNum+1`
  863. EndIF
  864. IF $UseFDOnONLYCNAMES
  865.   IF $UseFDOption EQ $UseFDNum
  866.     Echo NOLINE >>ENV:UseFDArgs " ONLYCNAMES"
  867.     SetEnv UseFDOnONLYCNAMES ""
  868.   EndIF
  869.   SetEnv UseFDNum `Eval $UseFDNum+1`
  870. EndIF
  871. IF $UseFDOnOPT040
  872.   IF $UseFDOption EQ $UseFDNum
  873.     Echo NOLINE >>ENV:UseFDArgs " OPT040"
  874.     SetEnv UseFDOnOPT040 ""
  875.   EndIF
  876.   SetEnv UseFDNum `Eval $UseFDNum+1`
  877. EndIF
  878. IF $UseFDOnPPCONLY
  879.   IF $UseFDOption EQ $UseFDNum
  880.     Echo NOLINE >>ENV:UseFDArgs " PPCONLY"
  881.     SetEnv UseFDOnPPCONLY ""
  882.   EndIF
  883.   SetEnv UseFDNum `Eval $UseFDNum+1`
  884. EndIF
  885. IF $UseFDOnPRIVATE
  886.   IF $UseFDOption EQ $UseFDNum
  887.     Echo NOLINE >>ENV:UseFDArgs " PRIVATE"
  888.     SetEnv UseFDOnPRIVATE ""
  889.   EndIF
  890.   SetEnv UseFDNum `Eval $UseFDNum+1`
  891. EndIF
  892. IF $UseFDOnSECTION
  893.   IF $UseFDOption EQ $UseFDNum
  894.     Echo NOLINE >>ENV:UseFDArgs " SECTION"
  895.     SetEnv UseFDOnSECTION ""
  896.   EndIF
  897.   SetEnv UseFDNum `Eval $UseFDNum+1`
  898. EndIF
  899. IF $UseFDOnSMALLCODE
  900.   IF $UseFDOption EQ $UseFDNum
  901.     Echo NOLINE >>ENV:UseFDArgs " SMALLCODE"
  902.     SetEnv UseFDOnSMALLCODE ""
  903.   EndIF
  904.   SetEnv UseFDNum `Eval $UseFDNum+1`
  905. EndIF
  906. IF $UseFDOnSMALLDATA
  907.   IF $UseFDOption EQ $UseFDNum
  908.     Echo NOLINE >>ENV:UseFDArgs " SMALLDATA"
  909.     SetEnv UseFDOnSMALLDATA ""
  910.   EndIF
  911.   SetEnv UseFDNum `Eval $UseFDNum+1`
  912. EndIF
  913. IF $UseFDOnSORTED
  914.   IF $UseFDOption EQ $UseFDNum
  915.     Echo NOLINE >>ENV:UseFDArgs " SORTED"
  916.     SetEnv UseFDOnSORTED ""
  917.   EndIF
  918.   SetEnv UseFDNum `Eval $UseFDNum+1`
  919. EndIF
  920. IF $UseFDOnSYSTEMRELEASE
  921.   IF $UseFDOption EQ $UseFDNum
  922.     Echo NOLINE >>ENV:UseFDArgs " SYSTEMRELEASE"
  923.     SetEnv UseFDOnSYSTEMRELEASE ""
  924.   EndIF
  925.   SetEnv UseFDNum `Eval $UseFDNum+1`
  926. EndIF
  927. IF $UseFDOnUSESYSCALL
  928.   IF $UseFDOption EQ $UseFDNum
  929.     Echo NOLINE >>ENV:UseFDArgs " USESYSCALL"
  930.     SetEnv UseFDOnUSESYSCALL ""
  931.   EndIF
  932.   SetEnv UseFDNum `Eval $UseFDNum+1`
  933. EndIF
  934.  
  935. Skip ScanOpts BACK
  936.  
  937. Lab EndScanOpts
  938.  
  939. RequestChoice "Do you want to insert a header?" "Select*nHEADERFILE to enter a file or*nSCANHEADER to scan the destionation file." HEADERFILE SCANHEADER NoHeader >ENV:UseFDHeader
  940. IF $UseFDHeader EQ 1
  941.   RequestFile TITLE "Select the header file" >>ENV:UseFDHeaderFile
  942.   IF $UseFDCLIB
  943.     Echo NOLINE >>ENV:UseFDArgs "HEADER=*""
  944.     Echo NOLINE >>ENV:UseFDArgs $UseFDHeaderFile
  945.     Echo NOLINE >>ENV:UseFDArgs "*""
  946.   EndIF
  947. EndIF
  948.  
  949. IF $UseFDHeader EQ 2
  950.   Echo NOLINE >>ENV:UseFDArgs "HEADER=@"
  951. EndIF
  952.  
  953. IF $UseFDMode EQ 1
  954.   RequestChoice "Select definition mode" "1: _INCLUDE_PRAGMA_..._LIB_H [default]*n2: _PRAGMAS_..._LIB_H*n3: _PRAGMAS_..._PRAGMAS_H*n4: no definition" 1 2 3 4 >ENV:UseFDMode2
  955.   IF $UseFDMode2 EQ 1
  956.     Echo NOLINE >>ENV:UseFDArgs " MODE 1"
  957.   EndIF
  958.   IF $UseFDMode2 EQ 2
  959.     Echo NOLINE >>ENV:UseFDArgs " MODE 2"
  960.   EndIF
  961.   IF $UseFDMode2 EQ 3
  962.     Echo NOLINE >>ENV:UseFDArgs " MODE 3"
  963.   EndIF
  964.   IF $UseFDMode2 EQ 0
  965.     Echo NOLINE >>ENV:UseFDArgs " MODE 4"
  966.   EndIF
  967. EndIF
  968.  
  969. IF $UseFDMode EQ 2
  970.   RequestChoice "Select work mode" "1: all functions, normal interface*n2: only tag-functions, tagcall interface*n3: all functions, both interfaces [default]" 1 2 3 >ENV:UseFDMode2
  971.   IF $UseFDMode2 EQ 1
  972.     Echo NOLINE >>ENV:UseFDArgs " MODE 1"
  973.   EndIF
  974.   IF $UseFDMode2 EQ 2
  975.     Echo NOLINE >>ENV:UseFDArgs " MODE 2"
  976.   EndIF
  977.   IF $UseFDMode2 EQ 0
  978.     Echo NOLINE >>ENV:UseFDArgs " MODE 3"
  979.   EndIF
  980. EndIF
  981.  
  982. RequestFile TITLE "Select the FD input file" >ENV:UseFDInFile
  983. IF $UseFDNeedCLIB EQ 1
  984.   RequestFile TITLE "Select the clib prototype file" >ENV:UseFDCLIB
  985.   IF $UseFDCLIB
  986.     Echo NOLINE >>ENV:UseFDArgs "CLIB=*""
  987.     Echo NOLINE >>ENV:UseFDArgs $UseFDCLIB
  988.     Echo NOLINE >>ENV:UseFDArgs "*""
  989.   EndIF
  990. EndIF
  991. RequestFile DRAWERSONLY TITLE "Select the output drawer" >ENV:UseFDOutDrawer
  992.  
  993. Echo NOLINE >>ENV:UseFDArgs " INFILE=*""
  994. Echo NOLINE >>ENV:UseFDArgs $UseFDInFile
  995. Echo NOLINE >>ENV:UseFDArgs "*""
  996.  
  997. IF $UseFDOutDrawer
  998.   Echo NOLINE >>ENV:UseFDArgs " TO=*""
  999.   Echo NOLINE >>ENV:UseFDArgs $UseFDOutDrawer
  1000.   Echo NOLINE >>ENV:UseFDArgs "*""
  1001. EndIF
  1002.  
  1003. Echo NOLINE >>ENV:UseFDArgs " SPECIAL="
  1004. Echo NOLINE >>ENV:UseFDArgs $UseFDSPECIAL
  1005.  
  1006. Echo NOLINE "Executing following command:*nfd2pragma"
  1007. Type ENV:UseFDArgs
  1008. Echo "*n"
  1009.  
  1010. fd2pragma `Type ENV:UseFDArgs`
  1011.  
  1012. Lab CleanUp
  1013. Delete >NIL: ENV:UseFD#?
  1014. Echo "All Done. You can close this window now."
  1015.