Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

comp.os.msdos.programmer FAQ part 4/5
Section - - How can I change the switch character to - from /?

( Part1 - Part2 - Part3 - Part4 - Part5 - Single Page )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Zip codes ]


Top Document: comp.os.msdos.programmer FAQ part 4/5
Previous Document: - How can a program set DOS environment variables?
Next Document: - How can I write a TSR (terminate-stay-resident utility)?
See reader questions & answers on this topic! - Help others by sharing your knowledge

 Under DOS 5.0 and above you can not. INT 21 AX=3700, get switch
 character, always returns a '/' (hex 2F). But the DOS commands don't
 even call that function: they simply hard code '/' as the switch
 character.

 Some history: DOS used to let you change the switch character by using
 SWITCHAR= in CONFIG.SYS or by calling DOS function 3701. DOS commands
 and other programs called DOS function 3700 to find out the switch
 character. If you changed the switch character to '-' (the usual
 choice), you could then type "dir c:/c700 -p" rather than "dir c:\c700
 /p". Under DOS 4.0, the DOS commands ignored the switch character but
 functions 3700 and 3701 still worked and could be used by other
 programs. Under DOS 5.0, even those functions no longer work, though all
 DOS functions still accept '/' or '\' in file specs.

 You can reactivate the functions to get and set switchar by using
 programs like SLASH.ZIP or the sample TSR called SWITCHAR in
 amisl091.zip (see <Q:08.06> [How can I write a TSR
 (terminate-stay-resident utility)?]). DOS commands will still use the
 slash, but non-DOS programs that call DOS function 3700 will use your
 desired switch character. (DOS replacements like 4DOS may honor the
 switch character for internal commands.)

 Some readers may wonder why this is even an issue. Making '-' the switch
 character frees up the front slash to separate names in the path part of
 a file spec. This is easier for the ten-fingered to type, and it's one
 less difference to remember for commuters between DOS and Unix. The
 switch character is the only issue, since all the INT 21 functions
 accept '/' or '\' to separate directory names.

User Contributions:

Comment about this article, ask questions, or add new information about this topic:




Top Document: comp.os.msdos.programmer FAQ part 4/5
Previous Document: - How can a program set DOS environment variables?
Next Document: - How can I write a TSR (terminate-stay-resident utility)?

Part1 - Part2 - Part3 - Part4 - Part5 - Single Page

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
jeffrey@carlyle.org (Jeffrey Carlyle)





Last Update March 27 2014 @ 02:11 PM