home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------;
- ; ;
- ; Switch Directory - DOS Copyright (c) Stephen M. Falatko, 1987, 1988 ;
- ; ;
- ; Switch Directory - DOS (SD) is a utility that allows easy ;
- ; switching between subdirectories and drives with a minimum of ;
- ; typing. SD has been designed to replace the DOS CD command ;
- ; while providing enhancements to the CD command. SD allows you ;
- ; to specify a specific subdirectory name, a combination of ;
- ; subdirectory names and search switches or a complete path ;
- ; specifier. All features of SD work across disk drives. If ;
- ; you have made a mistake, hitting Ctrl-Brk while SD is searching ;
- ; will break you out of SD and put you back in the subdirectory ;
- ; you started in. ;
- ; ;
- ; Switch Directory - DOS 1.0 is descended from SD version 3.4 and ;
- ; its predecessors. The improvement in SD is that SD - DOS can ;
- ; attach itself to DOS and provide the same functionality ;
- ; previously only available with SD in combination with PCED or ;
- ; CED. For users of PCED or CED, an enhanced version of SD 3.4 ;
- ; is available called Switch Directory - CED. ;
- ; on your disk drives. ;
- ; ;
- ; ;
- ; Usage: [d:\....]>SD [drive][command specification] ;
- ; ;
- ; Commands: ;
- ; ;
- ; During startup - ;
- ; with + no help ;
- ; with - no internal stack ;
- ; can also put configuration file on command line ;
- ; ;
- ; During normal use - ;
- ; \ - switch to specific path ;
- ; / - search below subdirectory ;
- ; these switches can be mixed ;
- ; ie. sd \turbo/source\myprog would be legal ;
- ; @ - switch to last path selected with "# ;
- ; @" - kill SD and release memory ;
- ; "+ or - - go to next highest or lowest path ;
- ; "#=[path] - store [path] in stack location # ;
- ; "#=@ - insert current path into stack location # ;
- ; "# - switch to entry number # ;
- ; "s - display stack ;
- ; ;
- ; ;
- ;The source code was originally developed from Vern Buerg's LDIR program and ;
- ;Charles Wooster's WHISK program. PrintS and GetDir are Copyrighted by their ;
- ;authors. ;
- ; ;
- ; 1/29/88 - Stephen Falatko ;
- ; ;
- ;Written for the A86 assembler (All numbers with leading 0 are hex) ;
- ; ;
- ; To Assemble: [d:]>A86 SDDOS.MAC SDDOS.ASM SDDOS.INS ;
- ; ;
- ; ;
- ;------------------------------------------------------------------------------;
-
-
- ;---------------------------------------------------------------------------;
- ; ;
- ; Macros and Equates ;
- ; ;
- ;---------------------------------------------------------------------------;
-
-
- LF Equ 10
- CR Equ 13
- Stopper Equ 255 ;Ends print strings
-
- ;
- ; These equates are for DOS functions. They are all in hex. A86 defaults
- ; to hex if the number has a leading 0.
- ;
-
- SetDrive Equ 0E
- CurrentDisk Equ 019 ;Get current disk
- SetDTA Equ 01A ;Set data transfer area
- ChangeDir Equ 03B ;Change directory
- GetPath Equ 047 ;Get current directory
-
-
- Change_Dir MACRO
-
- Mov DX,Offset #1
- Mov AH,ChangeDir
- PUSHF
- CALL Old_INT_21
- #EM
-
- Set_Drive MACRO
-
- Mov AH,SetDrive
- PUSHF
- CALL Old_INT_21
- #EM
-
- Get_Path MACRO
-
- Mov AH,GetPath
- PUSHF
- CALL Old_INT_21
- #EM
-
- Current_Disk MACRO
-
- Mov AH,CurrentDisk
- PUSHF
- CALL Old_INT_21
- #EM