Microsoft KB Archive/84469

= BC.EXE Command-Line Options for VB for MS-DOS and Basic PDS =

Article ID: 84469

Article Last Modified on 8/16/2005

-

APPLIES TO


 * Microsoft Visual Basic for MS-DOS
 * Microsoft BASIC Professional Development System 7.0
 * Microsoft BASIC Professional Development System 7.1

-



This article was previously published under Q84469



SUMMARY
This article documents all the BC.EXE command-line options (switches) available in the Standard and Professional Editions of Microsoft Visual Basic for MS-DOS, version 1.0; and Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2, versions 7.0 and 7.1. Some comparisons with earlier versions of BC.EXE are also mentioned.

These BC.EXE command-line options can also be found in the following manuals:


 * Pages 555-562 (Chapter 16) of the &quot;Microsoft Basic 7.0: Programmer's Guide&quot; for versions 7.0 and 7.1
 * Pages 608-610 of the &quot;Microsoft Basic 7.0: Language Reference&quot; (Appendix C: &quot;Command-Line Tools Quick Reference&quot;) for 7.0 and 7.1



MORE INFORMATION
Option Definition -- --

/A     Creates a listing of the disassembled object code for each source line and shows the assembly-language code generated by       the compiler.

/Ah    Allows dynamic arrays of records, fixed-length strings, and numeric data to occupy all of available conventional memory. If this option is not specified, the maximum size is 64K per array. Note that this option has no effect on the way data items are passed to procedures. (See also the REM $DYNAMIC       metacommand.)

/C: Sets the size ( = bytes) of the buffer receiving remote data using an asynchronous communications adapter for each communications port. (The transmission buffer is allocated 512       bytes for each communications port and cannot be changed on        the BC command line.)  This option has no effect if the asynchronous communications card is not present. The default buffer size is 256 bytes total for BOTH ports; the maximum size is 32,767 bytes. The default, /c:512, is automatically added when invoking the Make EXE File command from the Run menu in QuickBasic 4.0b and 4.5 (not in QuickBasic 4.0).

/D     Generates debugging code for run-time error checking and enables CTRL+BREAK. This option is the same as the Produce Debug Code option from the Run menu Make EXE File command within the environment.

/E     Indicates the presence of ON ERROR with RESUME linenumber statements. (See also the discussion of the /x option in this       list.)

/MBF   Causes the QuickBasic conversion functions to treat IEEE-format numbers as Microsoft binary format numbers. The intrinsic functions MKS$, MKD$, CVS, and CVD are converted to       MKSMBF$, MKDMBF$, CVSMBF, and CVDMBF, respectively. See the &quot;Microsoft QuickBasic 4.0: Basic Language Reference&quot; manual or corresponding Help for more information about these functions.

/O     Substitutes the appropriate BCOMxx.LIB stand-alone program library for the BRUNxx.LIB run-time module library.

/R     Stores arrays in row-major order. Basic normally stores arrays in column-major order. This option is useful if you are using other language routines that store arrays in row order.

/S     Writes quoted strings to the object file instead of the symbol table. Use this option when an &quot;Out of memory&quot; error message occurs in a program that has many string constants.

/T     This option is for terse. It suppresses warning messages during compilation. However, severe error messages still are displayed. This option is not available in QuickBasic 4.0. Also, /t is automatically added to the BC command line in       QuickBasic 4.0b and 4.5 whenever you choose the Make EXE File command from within QB.EXE.

/V     Enables event trapping for communications (COM), light pen (PEN), joystick (STRIG), timer (TIMER), music buffer (PLAY), and function keys (KEY). Use this option to check between statements for an occurrence of an event.

/W     Enables event trapping for the same statements as /v, but checks at each line number or label for occurrence of an       event (thus /w does less-frequent checking than /v).

/X     Indicates presence of ON ERROR with RESUME, RESUME NEXT, or        RESUME 0.

/Zd    Produces an object file containing line-number records corresponding to the line numbers of the source file. This option is useful when you want to perform source-level debugging using the Microsoft Symbolic Debug Utility (SYMDEB) available with Microsoft Macro Assembler version 4.0.

/Zi    Produces an object file containing debugging information used by the Microsoft CodeView debugger, available with Microsoft C       version 5.0, Microsoft Macro Assembler version 5.0, and Microsoft Basic Compiler version 6.0. The following BC.EXE options are supported in Microsoft Visual Basic for MS-DOS, version 1.0; in Microsoft Basic Compiler for MS-DOS, versions 6.0, 6.0b; and in Basic PDS for MS-DOS and MS OS/2, versions 7.0 and 7.1, but not in QuickBasic for MS-DOS, versions 4.0, 4.0b, or 4.5: /Lp    Creates a protected-mode object file for use in MS OS/2 protected mode, no matter which operating system you are in at       compile time.

/Lr    Creates a real-mode object file for use in MS-DOS or MS OS/2 real mode (MS-DOS 3.x box), no matter which operating system you are in at compile time.

/FPi   Generates in-line (i) coprocessor instructions for floating point (FP) math. If a coprocessor is not present at run time, the Basic run-time system will emulate a coprocessor.

/FPa   Generates code using alternate (a) math library, which runs faster than emulating a coprocessor when none is present. The following BC.EXE options and features added in Visual Basic for MS-DOS, version 1.0; and Basic PDS for MS-DOS, versions 7.0 and 7.1 are not found in earlier versions: /Es    Allows you to share expanded memory between Basic and mixed-language routines that make use of expanded memory. Specify /Es when you are going to use a mixed-language routine that makes use of expanded memory.

/Fs    Enables you to store string data in far memory.

/G2    Generates instructions specific to the 80286 processor chip that result in smaller, faster executable code.

/Ot    Optimizes the performance of procedure calls.

/Ib:x  Increases the amount of conventional memory reserved for ISAM's buffers. The x here represents pagebuffers and defaults to 6 for PROISAM and 9 for PROISAMD. Maximum number for x is       512.

/Ie:x  If you have expanded memory, ISAM will automatically use up to        1.2 MB of it for its buffers. ISAM takes as much EMS memory as possible by default, which increases conventional memory as well as improves performance. The x in this case represents the amount of EMS memory to reserve.

/Ii:x  Specifies the number of non-NULL indexes used in the program. Use this option if your program has more than 30 indexes. The x stands for indexes. In Visual Basic for MS-DOS, version 1.0; and Basic PDS for MS-DOS versions 7.0 and 7.1, the MS-DOS INCLUDE environment variable enables you to determine where BC.EXE will look for included files without changing the $INCLUDE metacommand in your source file.

In Visual Basic for MS-DOS, version 1.0; and Basic PDS for MS-DOS and MS OS/2, version 7.1, the following options were added for BC.EXE: /? or /Help    Displays compiler syntax and options.

/FBr[filename] Generates a file containing restricted program symbol information for use with the Programmer's WorkBench (PWB) Source Browser. This information file has the name specified by the &quot;filename&quot; argument. If no name is specified, it has the same name as the source file with an .SBR filename extension. The file contains information about the definitions and references to               all global symbols.

/FBx[filename] Generates a file containing extended program symbol information for use with the Programmer's WorkBench Source Browser. This information file has the name specified by the &quot;filename&quot; argument. If no name is               specified, it has the same name as the source file with an .SBR filename extension. The file contains information about the definitions and references to               all global and local symbols.

The information for the /Z option applies to PWB, as               well as to the M editor. Visual Basic for MS-DOS, version 1.0 maintains the same compiler switches as Basic PDS for MS-DOS, version 7.1 with the following exceptions. The /Lp, /Lr, /FBr, /FBx, and /Fs switches have all been eliminated. The /G3 switch has been added. Listed below is a description of the /G3 switch: /G3            Generates instructions specific to the 80386 processor which potentially results in smaller and faster executable code.

Additional query words: VBmsdos QuickBas BasicCom 1.00 4.50 4.00 4.00b 6.00 6.00b 7.00 7.10 PWB.EXE switch option

Keywords: KB84469

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.