II.1.4 DOS Environment

To specify a search path for include files, an optional environment variable ASEM51INC can be defined:

        SET ASEM51INC=<path>

<path> may be any number of directories separated by ';' characters. Be sure that the whole definition doesn't contain any blanks or tabs! If ASEM51INC is defined, the assembler searches the specified <path> for include files that can neither be found in the working directory, nor in the search path specified with the /INCLUDES option. The <path> directories will be searched from left to right.


Examples:

1.)    SET ASEM51INC=C:\ASEM51\MCU;D:\MICROS\MCS51\INCL
If include files can neither be found in the working directory, nor in the /INCLUDES path (if specified), the assembler searches next C:\ASEM51\MCU and finally D:\MICROS\MCS51\INCL.
2.)    SET ASEM51INC=C:\ASEM51\MCU;%PATH%
If ASEM51INC is defined as above in AUTOEXEC.BAT after the PATH statement, the assembler finally searches the directory C:\ASEM51\MCU and then all the directories, contained in the DOS program search path, from left to right!

The maximum length of <path> is limited to 255 characters. This cannot be exceeded with the SET command of the DOS command interpreter COMMAND.COM, but with third party command interpreters like 4DOS (max. 512 characters)!

Note that trailing blanks and tabs behind the names of environment variables seem to be considered significant under MS-DOS! If one subsequently defines

             SET ASEM51INC =C:\ASEM51\MCU
and          SET ASEM51INC=C:\8051\MCU
there will be two (!) entries concurrently in the DOS environment! However, the assembler will recognize the second one only. Since DOS doesn't truncate trailing blanks and tabs from variable names, the assembler can't do this either! That is why you should be sure, to always define the environment variable without blanks and tabs.