You can place all project files in the same folder. If the file is in another folder, use full name with path, when you want to include it with the #include directive.
You did not read my reply. As I said, it has nothing to do with subroutines. Subroutines are another thing. If you write "call ABC", it means put <PC+1> to the stack and jump to the address whoose label is ABC.
If you have your subroutine saved in the separate file called abc.asm, than in the main program, you have to put somewhere a label "LABEL_ABC", and then include the file, like this:
LABEL_ABC:
#include "abc.asm"
.........
You can call this subroutine like this:
call LABEL_ABC
and not like this:
call abc
unless the first line in the file "abc.asm" is label called "abc".
maranaza