1690 lines
66 KiB
Perl
1690 lines
66 KiB
Perl
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4967 Date: 09-12-93 20:18
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #1
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
The
|
|||
|
|
|||
|
Fabulous
|
|||
|
|
|||
|
#### #### ### ### ##########
|
|||
|
##### ##### ### ### ##########
|
|||
|
### ## ## ### ### ### ###
|
|||
|
### ## ## ### ### ### ########
|
|||
|
### ### ### ### ### ########
|
|||
|
### # ### ### ### ###
|
|||
|
### ### ### ### ###
|
|||
|
### ### ## ########## ## ### ##
|
|||
|
### ### ## ######## ## ### ##
|
|||
|
|
|||
|
List
|
|||
|
|
|||
|
(MicroSoft's Undocumented Features)
|
|||
|
|
|||
|
Volume 1 Number 6
|
|||
|
|
|||
|
===============================================================================
|
|||
|
|
|||
|
1) TRUENAME
|
|||
|
|
|||
|
Internal DOS 5.0 command. Canonicalize a filename or path (using
|
|||
|
DOS interrupt 21h, function 60) prints the actual directory.
|
|||
|
|
|||
|
SYNTAX
|
|||
|
|
|||
|
TRUENAME filename prints the complete path to file
|
|||
|
|
|||
|
TRUENAME directory prints the complete path to directory
|
|||
|
|
|||
|
Note: If the path is in a network, it starts with a \\machine-name
|
|||
|
|
|||
|
Michael Larsson
|
|||
|
|
|||
|
|
|||
|
TRUENAME is analogous to the "whence" command in the UNIX Korn
|
|||
|
shell. It returns the real fully qualified pathname for a command.
|
|||
|
|
|||
|
TRUENAME is useful in networks, where a physical drive may be mapped
|
|||
|
to a logical volume, and the user needs to know the physical location
|
|||
|
of the file. It ignores the DOS SUBST, and JOIN commands, or network
|
|||
|
MAPped drives.
|
|||
|
|
|||
|
It is an undocumented MS/DOS feature, but is documented in 4DOS as
|
|||
|
follows:
|
|||
|
|
|||
|
SYNTAX (Internal DOS 5.0 / 4DOS)
|
|||
|
|
|||
|
TRUENAME [d:][path]filename
|
|||
|
|
|||
|
PURPOSE
|
|||
|
|
|||
|
Returns a fully qualified filename.
|
|||
|
|
|||
|
COMMENTS
|
|||
|
|
|||
|
TRUENAME will see "through" JOIN and SUBST commands, and requires
|
|||
|
MS-DOS 3.0 or above.
|
|||
|
|
|||
|
EXAMPLE
|
|||
|
|
|||
|
The following command uses TRUENAME to get the true pathname for a
|
|||
|
file:
|
|||
|
|
|||
|
c:\> subst d: c:\util\test
|
|||
|
c:\> truename d:\test.exe
|
|||
|
|
|||
|
c:\util\test\test.exe
|
|||
|
|
|||
|
Dennis McCunney
|
|||
|
|
|||
|
TRUENAME : will reveal the full name drive and path of the filename.
|
|||
|
If you specify a wildcard ('*') in the filename, it will expand
|
|||
|
the filename to use question marks instead. If the path includes
|
|||
|
the ..\ sequence, TRUENAME will examine the directory structure and
|
|||
|
calculate the path. Stranger still, the line:
|
|||
|
|
|||
|
TRUENAME \CRONK\FLIBBET\..\ART
|
|||
|
produces the response:
|
|||
|
C:\CRONK\ART
|
|||
|
|
|||
|
even if the directories \CRONK\FLIBBET and the file ART don't exist!
|
|||
|
Don't expect this command to work across networks.
|
|||
|
|
|||
|
PC Magazine #212 Pg. 48-49
|
|||
|
Forwarded by:
|
|||
|
Rodney Atkins
|
|||
|
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... A feature is a bug with seniority.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4968 Date: 09-12-93 20:19
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #2
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
2) FDISK /STATUS ?
|
|||
|
|
|||
|
Prints a screen just like using option 4 of fdisk "Partition
|
|||
|
information", but includes extended partition information.
|
|||
|
Nice if you want to get an overview without fear of pressing
|
|||
|
the wrong keys.
|
|||
|
Armin Hanisch
|
|||
|
|
|||
|
Doesn't work in Ver 3.30.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
FDISK /MBR
|
|||
|
|
|||
|
MS-DOS 5.0 FDISK has an undocumented parameter, /MBR, that causes it
|
|||
|
to write the master boot record to the hard disk without altering the
|
|||
|
partition table information. While this feature is not documented, it
|
|||
|
can be told to customers on a need-to-know basis.
|
|||
|
|
|||
|
What is the MBR?
|
|||
|
|
|||
|
At the end of the ROM BIOS bootstrap routine, the BIOS will read and
|
|||
|
execute the first physical sector of the first floppy or hard drive on
|
|||
|
the system. This first sector of the hard disk is called the master
|
|||
|
boot record, or sometimes the partition table or master boot block. At
|
|||
|
the beginning of this sector of the hard disk is a small program. At
|
|||
|
the end of this sector is where the partition information, or
|
|||
|
partition table, is stored. This program uses the partition
|
|||
|
information to determine which partition is bootable (usually the
|
|||
|
first primary DOS partition) and attempts to boot from it.
|
|||
|
|
|||
|
This program is what is written to the disk by FDISK /MBR and is
|
|||
|
usually called the master boot record. During normal operation,
|
|||
|
FDISK only writes this program to the disk if there is no master
|
|||
|
boot record.
|
|||
|
|
|||
|
Why is the MBR changed during Setup?
|
|||
|
|
|||
|
During installation of Microsoft MS-DOS 5 Upgrade, Setup will replace
|
|||
|
the master boot record on the hard disk with code to display the
|
|||
|
message:
|
|||
|
|
|||
|
The MS-DOS 5.0 Setup was not completed.
|
|||
|
Insert the UNINSTALL #1 diskette in drive A.
|
|||
|
Press the ENTER key to continue.
|
|||
|
|
|||
|
This message should be erased and the master boot code rewritten
|
|||
|
before Setup is completed. If a problem occurs during Setup and you
|
|||
|
return to the previous MS-DOS, UNINSTAL should also remove this
|
|||
|
message. However, should Setup or UNINSTAL fail to remove this
|
|||
|
message, or should the master boot record become corrupted, a new
|
|||
|
master boot record can be written to the disk using the following
|
|||
|
command:
|
|||
|
|
|||
|
C:\>fdisk /mbr
|
|||
|
|
|||
|
Warning: Writing the master boot record to the hard disk in this
|
|||
|
manner can make certain hard disks unusable. IE: those partitioned
|
|||
|
with SpeedStor, or Microhouse's DrivePro program. It can also cause
|
|||
|
problems for some dual-boot programs, or for disks with more than 4
|
|||
|
partitions. Specific information is below.
|
|||
|
|
|||
|
WARNINGS:
|
|||
|
|
|||
|
This option should not be used if:
|
|||
|
|
|||
|
- the disk was partitioned using Storage Dimensions' SpeedStor
|
|||
|
utility with its /Bootall option
|
|||
|
- the disk was partitioned using MicroHouse's DrivePro program AND
|
|||
|
the drive was NOT setup using a standard CMOS value.
|
|||
|
- more than 4 partitions exist
|
|||
|
- certain dual-boot programs are in use
|
|||
|
|
|||
|
Storage Dimensions' SpeedStor utility using the /Bootall option
|
|||
|
redefines the drive's physical parameters (cylinder, head, sector).
|
|||
|
/BOOTALL stores information on how the drive has been changed in an
|
|||
|
area of the master boot record that MS-DOS does not use. FDISK /MBR
|
|||
|
will erase that information, making the disk unusable.
|
|||
|
|
|||
|
MicroHouse's DrivePro program functions similarly to SpeedStor above,
|
|||
|
and has the same boot record vulnerability. MicroHouse identifies their
|
|||
|
boot program at boot-up by a small MICROHOUSE logo near the left side of
|
|||
|
the screen about two-thirds down, at power on. If you see this logo,
|
|||
|
do NOT use FDISK /MBR, or the drive will become unusable.
|
|||
|
|
|||
|
Some older OEM versions of MS-DOS and some third-party partitioning
|
|||
|
utilities can create more than 4 partitions. Additional partition
|
|||
|
information is commonly stored information on partitions in an area
|
|||
|
that FDISK /MBR will overwrite.
|
|||
|
|
|||
|
Some dual-boot programs have a special MBR that asks the user which
|
|||
|
operating system they want on bootup. FDISK /MBR erases this program.
|
|||
|
Dual-boot systems that boot whichever partition is marked Active are
|
|||
|
not affected by FDISK /MBR.
|
|||
|
|
|||
|
Edited: MicroSoft Publication
|
|||
|
forwarded by Don Dean
|
|||
|
editing suggestions made by
|
|||
|
Matt Mc_Carthy (info re:
|
|||
|
MicroHouse's DrivePro)
|
|||
|
|
|||
|
... BUG (n.) An undocumented feature FEATURE (n.) A documented bug.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4969 Date: 09-12-93 20:21
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #3
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
2) FDISK /MBR (Continued)
|
|||
|
|
|||
|
If you have a Boot Sector Virus, just boot from a known "clean"
|
|||
|
floppy disk (which has the System files and FDISK on it - IE:
|
|||
|
your "disaster recovery disk") and run FDISK /MBR. Bye, Bye Virus!
|
|||
|
|
|||
|
Gary Cooper
|
|||
|
|
|||
|
Make sure it's write protected ..
|
|||
|
|
|||
|
Jasen Betts
|
|||
|
|
|||
|
|
|||
|
[Begin quote]
|
|||
|
|
|||
|
One of the FDISK functions, updating the Master Boot Record (MBR),
|
|||
|
does not appear on any of the FDISK menus. The Master Boot Record is
|
|||
|
located at the beginning of your primary fixed disk. It is composed of
|
|||
|
two parts -- the master boot code and the partition table. The master
|
|||
|
boot code is a short program that determines which operating system
|
|||
|
will start the computer, then transfers control to that operating system.
|
|||
|
The partition table contains information about the partitions located on
|
|||
|
the fixed disk.
|
|||
|
|
|||
|
The Master Boot Record may need to be updated when:
|
|||
|
|
|||
|
* An operating system other than MS-DOS is on the fixed disk.
|
|||
|
Some operating systems replace the master boot code with their
|
|||
|
own program, which may not allow MS-DOS to start the system,
|
|||
|
even if the partitions are valid DOS partitions. If this condition
|
|||
|
exists, updating the Master Boot Record will replace only the master
|
|||
|
boot code.
|
|||
|
|
|||
|
* The information at the beginning of the fixed disk has been
|
|||
|
overwritten. The partition information is destroyed and the fixed
|
|||
|
disk will no longer start any operating system. If this condition
|
|||
|
exists, updating the Master Boot Record will replace both the master
|
|||
|
boot code and the partition table. However, the partition table will
|
|||
|
not have any defined partitions.
|
|||
|
|
|||
|
If you cannot get your system to start MS-DOS from the fixed disk and
|
|||
|
you are sure the initialization process was performed correctly, you
|
|||
|
may need to update the Master Boot Record. To do this, enter the
|
|||
|
following command:
|
|||
|
|
|||
|
FDISK /MBR
|
|||
|
|
|||
|
FDISK does not display any menus or messages while it is updating the
|
|||
|
Master Boot Record. When the procedure is complete, the MS-DOS
|
|||
|
prompt is displayed.
|
|||
|
|
|||
|
If you are unable to start MS-DOS from the fixed disk after updating
|
|||
|
the Master Boot Record, you may need to partition and format your fixed
|
|||
|
disk. If you still cannot use the fixed disk to start MS-DOS, contact
|
|||
|
your Authorized COMPAQ Computer Dealer for further assistance.
|
|||
|
|
|||
|
[End quote]
|
|||
|
Compaq DOS 4.01 Manual
|
|||
|
Submitted by
|
|||
|
Paul Maserang
|
|||
|
|
|||
|
If the situation at hand involved a trashed partition table. This
|
|||
|
regenerates the partition table, but does NOT restore the user
|
|||
|
partition information in it. Therefore, after using FDISK /MBR, you
|
|||
|
must still use FDISK without the /MBR switch to re-enter the partition
|
|||
|
information before you can do anything else. If the newly entered
|
|||
|
partition information is identical to that which existed there prior
|
|||
|
to the partition table being trashed, and nothing else has been damaged,
|
|||
|
there should be no need to reformat the drive, because the boot sector,
|
|||
|
FATs, directories, and data should still be undisturbed. If the boot
|
|||
|
sector or either of the two hidden system files (IBMBIO.COM/IBMDOS.COM
|
|||
|
or IO.SYS/MSDOS.SYS) are damaged, the SYS command can be used to restore
|
|||
|
them without losing anything else.
|
|||
|
|
|||
|
Paul Maserang
|
|||
|
|
|||
|
... Its not a bug, its an undocumented feature.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4970 Date: 09-12-93 20:23
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #4
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
2) FDISK /MBR (Concluded)
|
|||
|
|
|||
|
Paul, I work _only_ with the Microsoft versions, and have not had the
|
|||
|
same experience. The /MBR parameter _only_ rewrites the MBR. It does
|
|||
|
not affect the partition information. I use it daily on various
|
|||
|
machines and have not lost one byte of data.
|
|||
|
|
|||
|
Matt Mc_carthy
|
|||
|
|
|||
|
I guess you didn't know that "Master Boot Record" and "Partition Table"
|
|||
|
refer to the same thing. What you're talking about is the master boot
|
|||
|
CODE, the executable code that accompanies the partition table and is
|
|||
|
located on the same physical sector (0).
|
|||
|
|
|||
|
Here's what I find in the first few bytes of my physical sector 0
|
|||
|
(unassembled with DEBUG after copying the sector to a file):
|
|||
|
|
|||
|
2BB7:0100 33C0 XOR AX,AX
|
|||
|
2BB7:0102 FA CLI
|
|||
|
2BB7:0103 BED0 MOV SS,AX
|
|||
|
2BB7:0105 BC007C MOV SP,7C00
|
|||
|
2BB7:0108 BEC0 MOV ES,AX
|
|||
|
2BB7:010A BED8 MOV DS,AX
|
|||
|
2BB7:010C FB STI
|
|||
|
2BB7:010D 8BF4 MOV SI,SP
|
|||
|
2BB7:010F BF0006 MOV DI,0600
|
|||
|
2BB7:0112 B90002 MOV CX,0200
|
|||
|
2BB7:0115 FC CLD
|
|||
|
2BB7:0116 F3 REPZ
|
|||
|
2BB7:0117 A4 MOVSB
|
|||
|
2BB7:0118 EA1D060000 JMP 0000:061D
|
|||
|
|
|||
|
I also find the following text in the first half of the sector:
|
|||
|
|
|||
|
Missing operating system.Error loading operating system.Invalid
|
|||
|
partition table.Author - Siegmar Schmidt
|
|||
|
|
|||
|
I have only one partition on my C: drive, and its information is in
|
|||
|
the last of four possible positions in the partition table. The first
|
|||
|
significant byte (non-zero) is at offset 01EEh in physical sector 0.
|
|||
|
The rest, from offset 00EDh to 01EDh is nothing but 00h.
|
|||
|
|
|||
|
So it would appear that everything from offset 0000h to 00ECh is the
|
|||
|
Master Boot CODE, and everything from 00EDh to the end of the sector
|
|||
|
(01FFh) is the Master Boot RECORD (aka partition table). More likely,
|
|||
|
the partition table probably begins at offset 0100h, and takes up the
|
|||
|
last 256 of the 512 bytes available in the sector.
|
|||
|
|
|||
|
Beginning with the first significant byte of my partition table (at
|
|||
|
offset 01EEh), this is what mine shows:
|
|||
|
|
|||
|
80 01 01 04 03 91 65 11 00 00 00 07 A3 00 00 55 AA
|
|||
|
^^
|
|||
|
This first byte, I think, is the drive on which this partition
|
|||
|
is located, and the next byte might indicate that this is the
|
|||
|
first (primary) partition (in my case, the ONLY partition for
|
|||
|
this drive).
|
|||
|
|
|||
|
Now, according to my manual, FDISK /MBR can either re-write only
|
|||
|
the Master Boot CODE when necessary; or it can re-write both the
|
|||
|
Master Boot Code AND the Master Boot RECORD, if it determines that
|
|||
|
the partition table has been corrupted.
|
|||
|
|
|||
|
If it does re-write both, then you do have to use FDISK without
|
|||
|
the /MBR switch after using it with the switch, because the
|
|||
|
re-written partition table has no defined partitions until you do.
|
|||
|
But when you use the /MBR switch, it produces no screen output
|
|||
|
(at least not on the version I'm using), so you don't know whether
|
|||
|
it did both or just the code. So you should still check to see that
|
|||
|
you have a valid partition by using FDISK without the /MBR switch
|
|||
|
afterwards.
|
|||
|
|
|||
|
Paul Maserang
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Life has a lot of undocumented features!
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4971 Date: 09-12-93 20:24
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #5
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
3) SHELL=C:\COMMAND.COM /E:1024 /F /P
|
|||
|
|
|||
|
The /F in your Config.sys SHELL= statement is another undocumented
|
|||
|
feature.
|
|||
|
|
|||
|
It forces a "Fail" response to the "Abort, Retry, Fail" prompt issued
|
|||
|
by the DOS critical error handler.
|
|||
|
|
|||
|
Dennis McCunney
|
|||
|
|
|||
|
The /F switch on the SHELL command in CONFIG.SYS will not work in
|
|||
|
a DESQview environment. The only thing I have found that will is a
|
|||
|
program called FATAL.COM.
|
|||
|
|
|||
|
Bruce Bowman
|
|||
|
|
|||
|
COMMAND /F
|
|||
|
|
|||
|
Makes all those annoying "Abort, Retry, Ignore, Fail?"
|
|||
|
disk error messages default to "Fail".
|
|||
|
|
|||
|
Erik Ratcliffe
|
|||
|
|
|||
|
For DOS 3.30 (somebody might care to check these for other versions):
|
|||
|
|
|||
|
COMMAND /P
|
|||
|
|
|||
|
Docs say that this doesn't allow you to exit back to the
|
|||
|
previous shell (ie /Permanent), but /P also forces
|
|||
|
\autoexec.bat to be run on secondary shells.
|
|||
|
|
|||
|
COMMAND /D
|
|||
|
|
|||
|
(When used with a primary shell, or secondary with /P)
|
|||
|
prevents execution of \autoexec.bat
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
I just checked, and these also both apply to DOS 5.00
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
===============================================================================
|
|||
|
4) VER/R
|
|||
|
|
|||
|
Yields extended information about the OS Version. IE:
|
|||
|
|
|||
|
MS-DOS Version 5.00
|
|||
|
Revision A
|
|||
|
DOS is in HMA
|
|||
|
|
|||
|
Billy Gilbreath
|
|||
|
|
|||
|
Doesn't work with DOS 3.30
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
===============================================================================
|
|||
|
5) ECHO OFF from the command line erases the prompt and leaves
|
|||
|
just a cursor on the screen.
|
|||
|
|
|||
|
ECHO ON from the command line restores the prompt.
|
|||
|
|
|||
|
This works with all version of DOS (tested so far!).
|
|||
|
|
|||
|
Michael Larsson
|
|||
|
|
|||
|
One of the most frequently asked questions in the BatPower echo
|
|||
|
is "How do I ECHO a blank line?" The most common answer is "ECHO."
|
|||
|
However, I have captured a few posts which expand on the
|
|||
|
possible answers to this request:
|
|||
|
|
|||
|
Editor's Note
|
|||
|
|
|||
|
ECHO"
|
|||
|
|
|||
|
Paul Welsh
|
|||
|
|
|||
|
just about any white space character will work.
|
|||
|
|
|||
|
Alan Newbery
|
|||
|
|
|||
|
I just found out myself that any delimiter will work here
|
|||
|
(ECHO. ECHO" ECHO, ECHO: ECHO; ECHO[ ECHO] etc.). Apparently
|
|||
|
it's just the way that the command handles the delimiter and
|
|||
|
has been available from way back. Microsoft just began
|
|||
|
mentioning it in the documentation recently, though, and their
|
|||
|
examples use a period.
|
|||
|
|
|||
|
John Whitfield
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... _My_ software never has bugs. It just develops random features...
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4972 Date: 09-12-93 20:26
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #6
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
6) FORMAT
|
|||
|
|
|||
|
FORMAT /H
|
|||
|
|
|||
|
In DOS 3.30 (I don't know about other versions), FORMAT /H
|
|||
|
will cause the format to begin immediately after pressing Y
|
|||
|
in response to "Format another?", rather than displaying
|
|||
|
"Place disk to be formatted in drive A: and press Enter" on
|
|||
|
a second and subsequent disks.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
On 5.0 it comes back as "invalid switch".
|
|||
|
|
|||
|
John Mudge
|
|||
|
|
|||
|
FORMAT A: /AUTOTEST
|
|||
|
|
|||
|
The autotest parameter will allow format to proceed, checking
|
|||
|
existing format (unless the /u parameter is also present) and
|
|||
|
proceeding with the format.
|
|||
|
|
|||
|
All this will take place with no delay and no waiting for user
|
|||
|
input. It will also end without pausing. It will not ask for
|
|||
|
a volume label or whether to format another diskette.
|
|||
|
|
|||
|
WARNING! This procedure will also work on hard drives! Be very
|
|||
|
cautious if you plan to use this feature.
|
|||
|
|
|||
|
Wayne Woodman
|
|||
|
|
|||
|
Problem is that it won't take any other switches like /U, /S or
|
|||
|
/Q which is a bit of a shame really.
|
|||
|
|
|||
|
Peter Lovell
|
|||
|
|
|||
|
With Dos 5 it certainly takes /u and /s as I have used it, in
|
|||
|
fact I think /u is required if the disk is not pre-formatted as
|
|||
|
the drive hangs up otherwise.
|
|||
|
|
|||
|
I would agree about /q though, this does not work and gives the
|
|||
|
error message you quote.
|
|||
|
|
|||
|
Terry Kreft
|
|||
|
|
|||
|
|
|||
|
FORMAT/U is not available in DOS 3.30
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
FORMAT C: /BACKUP
|
|||
|
|
|||
|
This week I've read some articles in Dutch computer magazines about
|
|||
|
MUF's which are very interesting (if you don't already know about
|
|||
|
them).
|
|||
|
|
|||
|
I already knew the FORMAT option /AUTOTEST, but new to me was the
|
|||
|
/BACKUP option.
|
|||
|
|
|||
|
EXAMPLE: FORMAT A: /BACKUP
|
|||
|
|
|||
|
It seems to work exactly like /AUTOTEST, but it DOES ask for a
|
|||
|
volume label.
|
|||
|
Willem Van.den.broek
|
|||
|
|
|||
|
FORMAT/SELECT
|
|||
|
|
|||
|
is like DOS-Mirror ... for safety-fanatics only
|
|||
|
|
|||
|
FORMAT/SELECT/U
|
|||
|
|
|||
|
makes disks unreadable (remember the U)
|
|||
|
|
|||
|
Reinhard Kujawa
|
|||
|
Info from The German magazine PC PRAXIS
|
|||
|
|
|||
|
FORMAT A: /SPACE
|
|||
|
|
|||
|
On IBM DOS v6.01 the command:
|
|||
|
|
|||
|
FORMAT A: /SPACE
|
|||
|
|
|||
|
puts a 12288 byte file named MIRROR.FIL on the disk ...
|
|||
|
|
|||
|
So, the command:
|
|||
|
|
|||
|
FORMAT A: /U /SPACE
|
|||
|
|
|||
|
just ruins the durn diskette! A subsequent "DIR A:" gives you a:
|
|||
|
|
|||
|
General failure reading drive A
|
|||
|
Abort, Retry, Fail
|
|||
|
|
|||
|
Vernon Frazee
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Hidden OLR feature: CTRL-ALT-DEL to view BBS user password file.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4973 Date: 09-12-93 20:28
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #7
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
7) DRIVPARM /c
|
|||
|
|
|||
|
Syntax: DRIVPARM /d:number [/c] [/f:factor] [/h:heads] [/i] [/n]
|
|||
|
[/s:sectors] [/t:tracks]
|
|||
|
|
|||
|
/d:n refers to the drive NUMBER (0=A:, 1=B:, 2=C:, etc...) of the drive
|
|||
|
whose parameters you are changing (in your case, it would be 2 for
|
|||
|
B:).
|
|||
|
|
|||
|
/c is the switch I was referring to for change line support. IF YOU
|
|||
|
INCLUDE /c, YOU ARE TELLING DOS THAT YOUR COMPUTER *CAN* TELL
|
|||
|
WHETHER THE DRIVE DOOR HAS BEEN OPENED SINCE THE LAST ACCESS.
|
|||
|
|
|||
|
/i specifies an electronically-compatible 3.5 inch floppy disk-drive.
|
|||
|
You should use it if your computer's ROM BIOS does NOT support 3.5
|
|||
|
floppy diskette drives.
|
|||
|
|
|||
|
/n specifies a NON-removable block device
|
|||
|
|
|||
|
The other parms are similar to DRIVER.SYS
|
|||
|
|
|||
|
IBM Technical Publication Information
|
|||
|
forwarded by Andrew Barnhardt
|
|||
|
|
|||
|
The '/C' switch doesn't actually check to see if the drive -door-
|
|||
|
has been opened or not, but it does make another check to see if
|
|||
|
the disk in there now is different from the one when the drive was
|
|||
|
last accessed. I have to use that switch with my 5 1/4 floppy
|
|||
|
because it's an older drive working with a new motherboard (at
|
|||
|
least that's the explanation I've heard).
|
|||
|
|
|||
|
Andrew Barnhardt
|
|||
|
|
|||
|
Does DRIVPARM return an errorlevel, or give a warning message?
|
|||
|
|
|||
|
Gary Cooper
|
|||
|
|
|||
|
No, not that I'm aware of. You insert the drivparm command in
|
|||
|
your CONFIG.SYS file. Just DRIVPARM=xx xx ...
|
|||
|
|
|||
|
Andrew Barnhardt
|
|||
|
===============================================================================
|
|||
|
8) IF EXIST
|
|||
|
|
|||
|
IE: IF EXIST EMMXXXX0 GOTO APPLICATION
|
|||
|
|
|||
|
This is a handy quirk of DOS - installable drivers are seen as files
|
|||
|
in all directories. You can use the if exist test to either test for
|
|||
|
the existence of a directory, with "if exist <dirname>\nul", (which
|
|||
|
fails if the directory does not exist because the nul device is not
|
|||
|
found,) or to test whether a driver is loaded.
|
|||
|
|
|||
|
Caveats: you need to know the name of the directory or the driver
|
|||
|
whose existance you are testing, and this is MS/DOS specific - it
|
|||
|
doesn't work on network drives, and may not work under DR-DOS.
|
|||
|
|
|||
|
Gary Marden
|
|||
|
|
|||
|
This works definitely under DRDOS:
|
|||
|
|
|||
|
DR DOS Version 6.0
|
|||
|
Copyright (c) 1976,1982,1988,1990,1991 Digital Research Inc.
|
|||
|
Alle Rechte vorbehalten.
|
|||
|
|
|||
|
C:\>if exist emmxxxx0 echo ja
|
|||
|
ja
|
|||
|
|
|||
|
Wolfram Serber
|
|||
|
|
|||
|
Where did you learn the "EMMXXXX0" name from?
|
|||
|
|
|||
|
Instead of typing MEM /C, type MEM /D for the "debug" listing.
|
|||
|
That should give the names you're looking for.
|
|||
|
|
|||
|
Erik Ratcliffe
|
|||
|
|
|||
|
The trouble is, EXISTS returns TRUE for COM3/4 and LPT2/3 even
|
|||
|
though the hardware does not exist.
|
|||
|
|
|||
|
Rudy Lacchin
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Aha! Another 'undocumented feature'!
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4974 Date: 09-12-93 20:30
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #8
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
9) SWITCHES
|
|||
|
|
|||
|
SWITCHES=/W
|
|||
|
|
|||
|
Enables you to have your WINA20 file anywhere on your boot
|
|||
|
drive. Without this you have to have it in the root directory.
|
|||
|
|
|||
|
Erik Ratcliffe
|
|||
|
|
|||
|
You should also mention that this one should not be used with
|
|||
|
Windows 3.1. I've noticed a lot of people who do, and it wastes
|
|||
|
around 120K of UMBs.
|
|||
|
|
|||
|
George Hannah
|
|||
|
|
|||
|
This is documented in DOS 6.0
|
|||
|
|
|||
|
Richard Pade
|
|||
|
|
|||
|
SWITCHES=/F
|
|||
|
|
|||
|
Do you know that there is a rarely known switch called /F?
|
|||
|
If you put this line:
|
|||
|
|
|||
|
SWITCHES=/F
|
|||
|
|
|||
|
as the first line in your CONFIG.SYS, MS-DOS would not delay 2
|
|||
|
seconds, but immediately start processing your CONFIG.SYS. This
|
|||
|
trick has no other effects (AFAIK), but those who DO know better,
|
|||
|
correct me if I'm wrong!
|
|||
|
|
|||
|
Samuel Tan Yi Hsuen
|
|||
|
|
|||
|
But where would you put the switch, it's not like you load a device
|
|||
|
driver that early in boot up do you?
|
|||
|
|
|||
|
RF? Beats me. I think it goes in the SHELL= statement. Just don't
|
|||
|
RF? remember what character you use. I saw it mentioned in the
|
|||
|
RF? Tech conference /K maybe?
|
|||
|
|
|||
|
No, it's SWITCHES=/F, right?
|
|||
|
|
|||
|
Paul Senechko
|
|||
|
|
|||
|
Actually, its both:
|
|||
|
|
|||
|
/W allows you to move the WINA20.386 file
|
|||
|
/K makes your AT Keyboard act like a XT
|
|||
|
/F Disables the wait
|
|||
|
/N Disables F5/F8 exiting
|
|||
|
|
|||
|
and to use any just put the command SWITCHES= and the parameters
|
|||
|
on the first line of your config.sys (Can go on other lines, but for
|
|||
|
the /F and /N you need it at the first line....), also the Switches
|
|||
|
command IS compatible w/ DOS 5, but only using the /W & /K options
|
|||
|
|
|||
|
John Guillory
|
|||
|
|
|||
|
===============================================================================
|
|||
|
10) FOR IN DO
|
|||
|
|
|||
|
for %%z in (test1 test2 test3) do goto %%z
|
|||
|
goto end
|
|||
|
:test1
|
|||
|
echo test1
|
|||
|
:test2
|
|||
|
echo test2
|
|||
|
:test3
|
|||
|
echo test3
|
|||
|
:end
|
|||
|
|
|||
|
When I posted this explaining the traps and pitfalls
|
|||
|
of FOR IN DO, something got lost. GOTO commands in FOR IN DO
|
|||
|
statements do not work correctly / as expected. This fragment
|
|||
|
will work in 4DOS, but not with COMMAND.COM. You've seen
|
|||
|
what happens when running under COMMAND.COM already. 4DOS
|
|||
|
will display test1 test2 test3.
|
|||
|
|
|||
|
So, that's what I was trying to explain: that GOTO's don't work
|
|||
|
right, and that IF's will break FOR IN DO's.
|
|||
|
|
|||
|
Bill George
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Any sufficiently advanced bug will become a feature.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4975 Date: 09-12-93 20:32
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #9
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
11) FOR %%V IN /SOMETHING
|
|||
|
|
|||
|
... quoting Dirk Treusch to All ...
|
|||
|
|
|||
|
How can a batch file (without 4DOS) determine from which drive it has
|
|||
|
been started?
|
|||
|
|
|||
|
Example: C:\> a:test.bat
|
|||
|
|
|||
|
Now my batch should be able to find out that it is located on drive A:
|
|||
|
(not the path - only drive!).
|
|||
|
|
|||
|
Mitch Ames responds:
|
|||
|
|
|||
|
The variable %0 contains the name of the batch file
|
|||
|
_as_it_was_typed_at_the_command_line. If you call the batch file as
|
|||
|
A:TEST.BAT, %0 will be "A:TEST.BAT". If you have the directory on
|
|||
|
your path, and simply type TEST, then %0 will be "TEST". The drive,
|
|||
|
path and extension will only appear in %0 if you enter them in the
|
|||
|
command used to call the batch file (either typed at the command
|
|||
|
line, or called from another batch file).
|
|||
|
|
|||
|
So you _must_ specify the drive as part of the batch filename for
|
|||
|
this to work. To extract the drive only, use STRINGS, or similar (I
|
|||
|
don't have a copy, so don't ask me to post it). Alternatively use
|
|||
|
the undocumented FOR %%V in /SOMETHING command, eg:
|
|||
|
|
|||
|
set drive=
|
|||
|
for %%v in (/%0) do call test2 %%v
|
|||
|
echo Calling drive is %drive%
|
|||
|
|
|||
|
where TEST2.BAT is:
|
|||
|
|
|||
|
if not '%drive%'=='' set drive=%1:
|
|||
|
|
|||
|
Disclaimer - I haven't tested this. Debugging is up to you.
|
|||
|
|
|||
|
(You can, of course, fit this into a single recursive batch file -
|
|||
|
but that's left as an exercise for the student.)
|
|||
|
|
|||
|
FOR %%V IN (/SOMETHING) DO WHATEVER will do WHATEVER twice - the
|
|||
|
first time with %%V set to the first character in SOMETHING ("S"),
|
|||
|
the second time with all the remaining characters in SOMETHING
|
|||
|
("OMETHING"). If SOMETHING is only a single character, WHATEVER will
|
|||
|
only be called once, with that character in %%V. If the single
|
|||
|
character is a wildcard (? or *) that wild card will _not_ be
|
|||
|
expanded to a set of filenames. (The main purpose of this feature is
|
|||
|
apparently to allow inclusion of the literal characters "?" and "*"
|
|||
|
without them being expanded.)
|
|||
|
|
|||
|
This works in DOS 3.30 and 5 - I don't know about other versions.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
===============================================================================
|
|||
|
12) LEADING SLASH WITH FOR IN DO LOOP
|
|||
|
|
|||
|
In the FOR statement in the INIT and COUNT routines below the
|
|||
|
parameters in the () show a leading "/". This seems to separate
|
|||
|
the first digit of the environmental variable used within the
|
|||
|
brackets (). Am I correct? Is this documented anywhere?
|
|||
|
|
|||
|
:================= INIT =================
|
|||
|
set &=%4&|set n$=%4|set m$=%3|set #=%2|set !=%0
|
|||
|
if not '%m$%'=='0' for %%a in (/%m$%z) do if '%%a'=='0' set @=0
|
|||
|
%!%
|
|||
|
:================= COUNT ================
|
|||
|
if '%&%'=='&' goto PROCESS
|
|||
|
for %%a in (/%&%) do set &=%%a
|
|||
|
|
|||
|
Peter Joynson
|
|||
|
|
|||
|
I have read some articles about this in PC Computing & PC Magazine.
|
|||
|
I don't believe it is documented anywhere but you're right, it strips
|
|||
|
off the first character of whatever string is passed. I will try to
|
|||
|
find one of the articles that explains it better if you need it.
|
|||
|
|
|||
|
Robert Hupf
|
|||
|
|
|||
|
Correct. I believe it is not documented (up to DOS 5 anyway) by MS,
|
|||
|
but I have read from other sources that the leading / will split an
|
|||
|
item into the first character and everything else. Eg:
|
|||
|
|
|||
|
for %%n in (/hello there) do echo %%n
|
|||
|
|
|||
|
will display "h", "ello" and "there". "There" is not split because
|
|||
|
it is a separate item, delimited by the space. If used with an item
|
|||
|
including wildcard (? or *) characters the item will not be expanded
|
|||
|
to the files which match it, thus allowing inclusion of those
|
|||
|
characters in the set. Eg:
|
|||
|
|
|||
|
for %%n in (/? /*.bat hello) do echo %%n
|
|||
|
|
|||
|
will display "?", "*", ".bat", "hello". This apparently is the
|
|||
|
original reason for the feature, but it may also be used recursively
|
|||
|
to parse a string one character at a time.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Features should be discovered, not documented.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4976 Date: 09-12-93 20:34
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #10
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
13) ATTRIB
|
|||
|
|
|||
|
ATTRIB +h dirname
|
|||
|
|
|||
|
Is there anyway to create a hidden directory on a hard drive?
|
|||
|
|
|||
|
I've since learned that DOS 5.0 ATTRIB can do the same thing
|
|||
|
from the command line: ATTRIB +h dirname.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
ATTRIB ,
|
|||
|
|
|||
|
attrib ,|echo y|del *.*
|
|||
|
|
|||
|
It is not really piping the output of attrib to echo. Using the pipe
|
|||
|
is one way of stacking multiple commands on one line. All the "attrib ,"
|
|||
|
does is reset _ALL_ attributes on _ALL_ files in the current directory.
|
|||
|
So if you were to run that from the root of your c: drive you would no
|
|||
|
longer have a bootable drive.
|
|||
|
|
|||
|
Jim Banghart
|
|||
|
|
|||
|
Worked fine here, took out all the files (system, hidden, read-only),
|
|||
|
like a dream with no lock up, using MSDos 5.0
|
|||
|
|
|||
|
Terry Kreft
|
|||
|
|
|||
|
I do not recommend this practice. It does attempt to pipe the output
|
|||
|
of attrib to echo, and thus writes a file to the directory specified
|
|||
|
by the environment variable TEMP. If you try to run this program in
|
|||
|
your TEMP directory, you will get a sharing violation. It also
|
|||
|
actually slows your program, because it has to write and delete a
|
|||
|
useless file (unless you have your TEMP on a ramdisk).
|
|||
|
|
|||
|
I can't say I see much reason for stacking commands like this -- put
|
|||
|
the commands on separate lines. A character is a character, be it a
|
|||
|
carriage return or a pipe, and your files will be easier to understand.
|
|||
|
|
|||
|
Bruce Bowman
|
|||
|
===============================================================================
|
|||
|
14) INSTALLHIGH
|
|||
|
|
|||
|
I think I may have found an undocumented feature for DOS 6....
|
|||
|
I wasn't able to find this anywhere in the online help. It's
|
|||
|
called INSTALLHIGH= and amazingly enough it works just like
|
|||
|
INSTALL= but loads the file high!
|
|||
|
|
|||
|
The only drawback to this is: Memmaker will not go through and
|
|||
|
add switches for that particular line during the "optimizing
|
|||
|
process". It just takes it as it is currently. But then again
|
|||
|
INSTALL= is ignored too!
|
|||
|
|
|||
|
Example:
|
|||
|
DEVICE=C:\DOS\HIMEM.SYS
|
|||
|
DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN WIN=F500-F7FF WIN=F200-F4FF
|
|||
|
dos=HIGH
|
|||
|
dos=UMB
|
|||
|
installhigh=c:\dos\share.exe
|
|||
|
|
|||
|
Robin Francis
|
|||
|
|
|||
|
MUF reported in the magazine C'T: You can use the DOS 6.0 command
|
|||
|
"installhigh" in config.sys to load TSR programs into UMA. A 48 byte
|
|||
|
environment will be added for every program. If you use it you don't
|
|||
|
need the "loadhigh" in autoexec.bat any more.
|
|||
|
|
|||
|
But Memmaker can't handle installhigh!
|
|||
|
|
|||
|
Thomas Erbe
|
|||
|
|
|||
|
Further to Robins explanation, INSTALLHIGH cannot be directed to a
|
|||
|
specific UMB area and thus defaults to largest currently available.
|
|||
|
Like INSTALL it is processed (about) last of C.SYS lines and causes
|
|||
|
more consumed RAM overhead than calling TSR from A.BAT or later.
|
|||
|
|
|||
|
Richard Pade
|
|||
|
|
|||
|
There is an undocumented CONFIG.SYS command called INSTALLHIGH. It
|
|||
|
is similar to INSTALL except that it will load the TSR into an UMB.
|
|||
|
It is available under DOS 6. However, it does not support the
|
|||
|
/L and /S switches that DEVICEHIGH and LOADHIGH support.
|
|||
|
|
|||
|
Tom Dyas
|
|||
|
|
|||
|
Then it is useless, isn't it? It has less than the capabilities of
|
|||
|
LOADHIGH and DEVICEHIGH but load the same TSRs that they load ... no
|
|||
|
wonder it is an undocumented command.
|
|||
|
|
|||
|
Wayne Moses
|
|||
|
|
|||
|
Just wondering, does INSTALLHIGH work with Microsoft DOS 5? It
|
|||
|
would also be nice to know why it is undocumented. It doesn't do
|
|||
|
anything major! Microsoft gains nothing by keeping it undocumented.
|
|||
|
Loading TSR's from CONFIG.SYS is better because an environment is
|
|||
|
not allocated for the TSR. A very small amount of memory is
|
|||
|
conserved, but it is still conserved.
|
|||
|
|
|||
|
Tom Dyas
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... DOS 6.0 - DOS 4.01 with its features documented.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4977 Date: 09-12-93 20:35
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #11
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
15) : (command)
|
|||
|
|
|||
|
DOS uses a leading : to indicate a label. If the next character
|
|||
|
following the : is a space or other non-alphanumeric char, DOS
|
|||
|
will decide it's an invalid label and skip to the next line,
|
|||
|
performing no further action.
|
|||
|
|
|||
|
Dennis Mccunney
|
|||
|
===============================================================================
|
|||
|
16) PATH
|
|||
|
|
|||
|
With MS-Dos 6.0 you CAN exceed the normal path length limit by
|
|||
|
putting a "Set Path=C:\;..." in your Config.Sys file instead of
|
|||
|
your AutoExec.Bat file. The usual limits do not apply there.
|
|||
|
|
|||
|
I have put in a path well over 800 characters and it works fine.
|
|||
|
The path doesn't display correctly via PATH or SET, but it's in
|
|||
|
there and it all gets searched.
|
|||
|
|
|||
|
I don't recommend having a path that long, mine is normally
|
|||
|
only 6-8 directories.
|
|||
|
|
|||
|
Andrew Barnhardt
|
|||
|
===============================================================================
|
|||
|
17) EDLIN
|
|||
|
|
|||
|
where an EDLIN script is:
|
|||
|
|
|||
|
-1,#r 1:^Z 1:
|
|||
|
-1,#r 2:^Z 2:
|
|||
|
-1,#r 3:^Z 3:
|
|||
|
-1,#r 4:^Z 4:
|
|||
|
-1,#r 5:^Z 5:
|
|||
|
-1,#r 6:^Z 6:
|
|||
|
-1,#r 7:^Z 7:
|
|||
|
-1,#r 8:^Z 8:
|
|||
|
-1,#r 9:^Z 9:
|
|||
|
e
|
|||
|
|
|||
|
Note the spaces (one after R, two after ^Z) which prevent replacement
|
|||
|
of the second digit in a two digit number.
|
|||
|
|
|||
|
This will update the last line only, so needs to be done at each
|
|||
|
boot. '#' means last line +1. '-1' means the line before the current
|
|||
|
one (ie: the last line of the file, if "#" is the current line). Note
|
|||
|
that you can only use '-1' in later versions (it works in 5, but not
|
|||
|
in 3.30 as far as I know).
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
===============================================================================
|
|||
|
18) DELIMITING CHARACTER:
|
|||
|
|
|||
|
Prior to DOS 5.0, there was an undocumented DOS function that
|
|||
|
would allow you to set the DOS option delimiting character to
|
|||
|
something else, like -. Once you did this, you could use either
|
|||
|
\ *or* / in PATH specs.
|
|||
|
|
|||
|
DOS 5.0 removed the function to *set* the option delimiter, but
|
|||
|
*retained* the one to query what it currently is! (Don't ask me,
|
|||
|
ask M'Soft...) Fortunately, the MKS Toolkit still works with no
|
|||
|
apparent glitches.
|
|||
|
|
|||
|
I believe in pre-DOS 3.X versions that there was a parm you could
|
|||
|
provide in CONFIG.SYS to do this, but have no further details.
|
|||
|
|
|||
|
Just remember: "undocumented" is a synonym for "unsupported, and
|
|||
|
not guaranteed to be there next release", which is what happened
|
|||
|
in the case I mentioned above.
|
|||
|
|
|||
|
Dennis Mccunney
|
|||
|
===============================================================================
|
|||
|
19) REM IN LINES WITH PIPES OR REDIRECTS
|
|||
|
|
|||
|
ie: REM echo y | del *.*
|
|||
|
|
|||
|
Michael Serber reported that he encountered problems when
|
|||
|
he tried to REM out an "echo y|del *.*" line in his batch
|
|||
|
file. Here is the content of some of the responses he
|
|||
|
received in response to his question asking why he experienced
|
|||
|
the problem:
|
|||
|
|
|||
|
It (the problem) appears to only occur if there is a pipe or
|
|||
|
redirection in the line (REM'd out), leading me to believe that
|
|||
|
DOS first handles pipes and redirections, then goes back to
|
|||
|
find out what to do with them.
|
|||
|
|
|||
|
John Mudge
|
|||
|
|
|||
|
It's actually doing what it thinks you've told it: piping the
|
|||
|
output of REM to DEL. Since REM _has_ no output (remember
|
|||
|
REM > NULLFILE?), DEL hangs, waiting for the answer to its
|
|||
|
question.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
What is happening here is that DOS reads the entire line, and
|
|||
|
always processes redirection and piping *first*, regardless of
|
|||
|
where they happen to appear.
|
|||
|
|
|||
|
Dennis Mccunney
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... That's not a bug! It's a seldom-used, undocumented feature!
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4978 Date: 09-12-93 20:38
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #12
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
20) CALL
|
|||
|
|
|||
|
The DOS 5.0 manual, in the command reference for CALL, states:
|
|||
|
|
|||
|
Syntax: call [drive:][path]filename [batch-parameters]
|
|||
|
|
|||
|
Parameters [drive:][path]filename
|
|||
|
|
|||
|
Specifies the name and location of the batch program you
|
|||
|
want to call. Filename must have a .BAT extension.
|
|||
|
|
|||
|
The latter sentence is not true in DOS 5.0. CALL works
|
|||
|
equally well whether "filename" is a .BAT, .COM, or .EXE
|
|||
|
file, or even internal command the following all work
|
|||
|
just fine:
|
|||
|
|
|||
|
call dir
|
|||
|
call mem
|
|||
|
call tree
|
|||
|
call echo Phhhhhhht!
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
===============================================================================
|
|||
|
21) CHOICE
|
|||
|
|
|||
|
I blundered onto an interesting choice.com feature:
|
|||
|
|
|||
|
CHOICE /C:XM*; /N /T:2,5
|
|||
|
if errorlevel=4 goto help
|
|||
|
if errorlevel=3 goto end
|
|||
|
......etc
|
|||
|
|
|||
|
The "*" is the escape key, and the ";" is F1 etc.
|
|||
|
|
|||
|
Robert Lindsay
|
|||
|
|
|||
|
===============================================================================
|
|||
|
22) MEM /A
|
|||
|
|
|||
|
If you do a MEM /A it'll give you details of what's in the first meg
|
|||
|
of memory.
|
|||
|
|
|||
|
Windoze owners get MSD.EXE (a pretty undocumented utility), that tells
|
|||
|
you this sort of thing. If you do a MEM /A it'll give you details of
|
|||
|
what's in the first meg of memory.
|
|||
|
|
|||
|
Ben Davis
|
|||
|
|
|||
|
===============================================================================
|
|||
|
23) MOUSE /U
|
|||
|
|
|||
|
Microsoft mouse driver version 8.1 has a /U switch. Adding that switch
|
|||
|
loads all but 3.3k of the driver into HMA. It's not quite the most
|
|||
|
recent version mouse driver, but hey, a mouse driver is a mouse driver
|
|||
|
is a mouse driver, right? Especially when it only takes 3.3k of ram!
|
|||
|
|
|||
|
Mark Carter
|
|||
|
|
|||
|
Are you getting that result by loading the mouse driver high on a 286?
|
|||
|
If so, that is good news. Mine takes up 12k of main RAM (MS mouse
|
|||
|
driver ver. 7.0).
|
|||
|
|
|||
|
Gerry Pareja
|
|||
|
|
|||
|
Mouse 8.0 _is_ able to load itself into HMA (I think) on a 286 by using
|
|||
|
the undocumented /U switch. I read it in PC Magazine sometime back.
|
|||
|
Also, PC Mag said that the BUFFERS have to be set to a low value, e.g. 5.
|
|||
|
|
|||
|
Ng Cheng Kiang
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... All On-Line readers, press the un-documented ALT-H combination now...
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4979 Date: 09-12-93 20:40
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #13
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
24) %0
|
|||
|
|
|||
|
Note that %0 is (almost) always defined as the name of the batch file
|
|||
|
itself (including drive\directory as typed at the command line). The
|
|||
|
only time %0 is not defined is in Autoexec.bat when run by
|
|||
|
Command.com at boot time (or command/p).
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
The %0 parameter is the name of the program. But wait, there's
|
|||
|
more. If you want to test for the name of the program you are in!
|
|||
|
What do your want to test for?
|
|||
|
|
|||
|
One time you type "edit", another you type "EDIT", another "EDIT.BAT",
|
|||
|
another "C:EDIT.BAT", and another "C:\BELFRY\EDIT.BAT". How many
|
|||
|
combinations do you want to test for at the start of your batch file?
|
|||
|
|
|||
|
You can map the file name to upper case and take care of some of the
|
|||
|
problem as follows:
|
|||
|
|
|||
|
SET SAVEPATH=%PATH%
|
|||
|
PATH %0
|
|||
|
SET PROGNAME=%PATH%
|
|||
|
PATH %SAVEPATH%
|
|||
|
SET SAVEPATH=
|
|||
|
|
|||
|
To do the test, something like this might work:
|
|||
|
|
|||
|
FOR %%E IN (EDIT EDIT.BAT C:EDIT C:EDIT.BAT C:\BELFRY\EDIT ...
|
|||
|
... C:\BELFRY\EDIT.BAT) DO IF '%%E'=='%PROGNAME%' GOTO HIT
|
|||
|
ECHO BAD COMMAND OR FILE NAME
|
|||
|
GOTO ENDIT
|
|||
|
...
|
|||
|
:HIT
|
|||
|
REM START EXECUTION HERE....
|
|||
|
|
|||
|
There is one last gotcha to %0. When AUTOEXEC.BAT is run by the bootup
|
|||
|
sequence, %0 has no value. This is important if you want to find out if
|
|||
|
you are in AUTOEXEC.BAT, and if you are in AUTOEXEC.BAT for the first
|
|||
|
time.
|
|||
|
|
|||
|
I have seen this work with IBM's PC-DOS 3.10, various flavors of
|
|||
|
MS-DOS 3.10, 3.30, 3.31, 4.01, and 5.00. It also seems to work
|
|||
|
with DR-DOS 6.0. As to 4DOS, I have no idea, but would welcome
|
|||
|
feedback on the matter (although 4DOS and DR-DOS hardly qualify
|
|||
|
for a MUF entry....)
|
|||
|
|
|||
|
Mike Avery
|
|||
|
|
|||
|
So far as I know, it's not been documented anywhere 'officially',
|
|||
|
but I did read about it in an article sometime back, probably
|
|||
|
either in PC Magazine or in PC Computing.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
I've never seen it documented - it just bit me one day REAL HARD!
|
|||
|
|
|||
|
Well, the way I figured it was that when the boot process hands control
|
|||
|
to AUTOEXEC.BAT, the normal command line interface isn't used, so %0
|
|||
|
never gets set.
|
|||
|
|
|||
|
Mike Avery
|
|||
|
|
|||
|
This feature can actually be useful, because you can put
|
|||
|
statements like this in your autoexec:
|
|||
|
|
|||
|
if NOT (%0) == () goto skip
|
|||
|
[statements that should not be re-executed go here]
|
|||
|
:skip
|
|||
|
[statements that can be re-executed go here]
|
|||
|
path ...
|
|||
|
set ...
|
|||
|
etc.
|
|||
|
|
|||
|
Then you can recreate your bootup environment at any time by
|
|||
|
simply typing AUTOEXEC.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Bill Gates and his search for undocumented Windows 3.1 code...
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4980 Date: 09-12-93 20:44
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #14
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
25) , . ...
|
|||
|
|
|||
|
DIR, Using a comma IMMEDIATELY after DIR, shows ALL files, including
|
|||
|
the HIDDEN ones.
|
|||
|
|
|||
|
EXAMPLE: DIR,
|
|||
|
|
|||
|
Willem van den Broek
|
|||
|
|
|||
|
This appears only to work with version 5. I tried it with 3.30,
|
|||
|
and it didn't display either IO.SYS, MSDOS.SYS (both with S, H
|
|||
|
and R attribs) or a test file with A and H attribs.
|
|||
|
|
|||
|
With version 5 it displayed the test file with H and A, but would
|
|||
|
not display IO.SYS or MSDOS.SYS with S, H and R. This doesn't
|
|||
|
surprise me actually, since S alone (without H) will prevent
|
|||
|
inclusion of a file in a normal DIR.
|
|||
|
|
|||
|
I didn't try version 4.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
Interesting: it does for me (display DOS5 IO.SYS and MSDOS.SYS):
|
|||
|
However, 4DOS does not do it:
|
|||
|
|
|||
|
Dennis Mccunney
|
|||
|
|
|||
|
It was pointed out in the 4DOS echo, and there were people
|
|||
|
who said it didn't work for them. But, on my machine
|
|||
|
running straight dos6, it works! DIR, (dir comma) in my C:\
|
|||
|
shows all files including hidden and system.
|
|||
|
|
|||
|
Bill George
|
|||
|
|
|||
|
DIR.. With DOS 6.0 you can get a directory of -all- files (hidden,
|
|||
|
system, etc.) with this command.
|
|||
|
|
|||
|
It was in a PC/Mag. or PC/Comp. issue not too long ago.
|
|||
|
|
|||
|
Andrew Barnhardt
|
|||
|
|
|||
|
Have you noticed also how DIR... only displays directories, not
|
|||
|
files?
|
|||
|
|
|||
|
Gary Marden
|
|||
|
|
|||
|
That's pretty slick. I tried DIR.. and got the parent
|
|||
|
directory. DIR... got the current directory subdirs only.
|
|||
|
|
|||
|
Bill George
|
|||
|
|
|||
|
Works for any level of directories. ".." will go to the previous
|
|||
|
directory as with pure DOS, "..." will go to the directory before
|
|||
|
the previous and so on.
|
|||
|
|
|||
|
Ng Cheng Kiang
|
|||
|
|
|||
|
In DOS 5.0 it displays directories and files with no extensions.
|
|||
|
I tried "DIR ...", "DIR...", and "DIR ....". They all behave
|
|||
|
the same way.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
With DOS 5.0 and NDOS 6.0 DIR... gives me a list of
|
|||
|
subdirectories off of the root and a list of all files in
|
|||
|
the root directory, regardless of the file extension.
|
|||
|
It will yield this result regardless of what directory /
|
|||
|
subdirectory I am in at the time the command is issued.
|
|||
|
|
|||
|
Gary Cooper
|
|||
|
|
|||
|
COMMAND.COM generally seems to ignore excess characters. Try
|
|||
|
copying something the AIRPLANES.PLAN, for example, and see what
|
|||
|
happens.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
While I was playing around with "dir ..." and trying to see how
|
|||
|
it parses to showing all extensionless entities in the current
|
|||
|
directory, I noticed that DIR doesn't care if a specified directory
|
|||
|
structure exists or not, as long as the overall structure points
|
|||
|
back to something that does exist, i.e.
|
|||
|
|
|||
|
"dir \thisdirdoesnotexist\.."
|
|||
|
|
|||
|
will ignore the garbage and show the root directory. If
|
|||
|
c:\bat exists, then
|
|||
|
|
|||
|
"dir c:\bat\thisdirdoesnotexist\nordoesthisone\..\.."
|
|||
|
|
|||
|
will show the c:\bat directory.
|
|||
|
|
|||
|
Again, absolutely useless as far as i can tell <g>, but interesting.
|
|||
|
|
|||
|
BTW, has anybody solved the "dir ..." mystery yet? I also noticed
|
|||
|
"dir \..." works while "dir \bat\..." fails (any explicitly specified
|
|||
|
directory other than the root generates an "invalid directory"
|
|||
|
message).
|
|||
|
|
|||
|
Paul Leonard
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... WOMAN.ZIP....Great program, no documentation!
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4981 Date: 09-12-93 20:48
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #15
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
26) COPY. A:
|
|||
|
|
|||
|
The use of a decimal point IMMEDIATELY after some DOS statements,
|
|||
|
will replace *.*
|
|||
|
|
|||
|
EXAMPLES: DEL. (erase all files in current directory)
|
|||
|
COPY. A: (copy all files in current directory to A:)
|
|||
|
|
|||
|
There may be more statements with which it works, but I haven't
|
|||
|
tried them yet.
|
|||
|
|
|||
|
Willem van den Broek
|
|||
|
|
|||
|
"." means the current directory, and Command.com will assume that
|
|||
|
\directory implies \directory\*.* for most commands where a
|
|||
|
filename(s) should be specified, eg:
|
|||
|
|
|||
|
DIR \ is the same as DIR \*.*
|
|||
|
COPY \FRED is the same as COPY \FRED\*.*
|
|||
|
COPY. A:\ is the same as COPY .\*.* A:\ which is the same as COPY *.* A:\
|
|||
|
DEL. is the same as DEL .\*.* which is the same as DEL *.*
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
Have you noticed also how DIR ... only displays directories, not files?
|
|||
|
|
|||
|
Gary Marden
|
|||
|
|
|||
|
In DOS 5.0 it displays directories and files with no extensions.
|
|||
|
I tried "DIR ...", "DIR...", and "DIR ....". They all behave
|
|||
|
the same way.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
Another good thing is you can travel from directories to
|
|||
|
directories without typing "CD". Just type the directory name
|
|||
|
followed by a backslash '\'.
|
|||
|
|
|||
|
Example: To go from C:\BATCH to C:\WP51, you type "\wp51\".
|
|||
|
That's it! fast and easy.
|
|||
|
|
|||
|
Marc Y. Paulin
|
|||
|
|
|||
|
If you are in the following directory :
|
|||
|
|
|||
|
\WORD\FILES\LETTERS\APRIL
|
|||
|
|
|||
|
And wanted to go to the directory \WORD\FILES, you'd normally
|
|||
|
type two lines :
|
|||
|
|
|||
|
CD \
|
|||
|
CD WORD\FILES
|
|||
|
|
|||
|
Or even the single line "CD \WORD\FILES" to combine the two
|
|||
|
commands into one. There is a shorter way, simply type the
|
|||
|
following : CD ..\.. You're there !
|
|||
|
|
|||
|
Andrew Barnhardt
|
|||
|
|
|||
|
In DOS 5.0, it displays files and directories which have no extension.
|
|||
|
|
|||
|
Larry Kessler
|
|||
|
|
|||
|
On this machine with DOS 5.0 and NDOS 6.0 DIR... gives me a list of
|
|||
|
subdirectories off of the root and a list of all files in the root
|
|||
|
directory, regardless of the file extension. It will yield this result
|
|||
|
regardless of what directory/subdirectory I am in at the time the command
|
|||
|
is issued.
|
|||
|
|
|||
|
Gary Cooper
|
|||
|
|
|||
|
Editor's Note:
|
|||
|
|
|||
|
I admit that "features" in the last two MUFs may be documented
|
|||
|
(although obscure feature), the reason that it continues to be
|
|||
|
seen in the MUF list is because I believe that the ability to use
|
|||
|
the period immediately IE: COPY. is not documented. What is
|
|||
|
documented is the fact that "." and ".." can be used to represent
|
|||
|
the current and parent directories respectively, and these will work
|
|||
|
with many applications which can handle directory names as arguments.
|
|||
|
In this case the "." could also be viewed as a replacement for "*.*"
|
|||
|
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Documentation - The worst part of programming.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4982 Date: 09-12-93 20:49
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #16
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
27) MULTIPLE DOS COMMANDS ON ONE LINE
|
|||
|
|
|||
|
set &=%4&|set n$=%4|set m$=%3|set #=%2|set !=%0
|
|||
|
/|\ /|\ /|\ /|\
|
|||
|
|_________|_________|________|_________________________Separators
|
|||
|
|
|||
|
|
|||
|
The separators (|) used in the line, are these doing anything
|
|||
|
other than separating commands? Can this be used for entering multiple
|
|||
|
commands on any line in a batch file regardless of type of command?
|
|||
|
|
|||
|
Peter Joynson
|
|||
|
|
|||
|
I believe you are right about this, but I think it pipes any output from
|
|||
|
the previous command to the next one (your example doesn't have any
|
|||
|
output. For example: ECHO Y|ERASE *.* This would pipe the Y to the
|
|||
|
command ERASE *.* so you wouldn't have to enter the Y for the "Are you
|
|||
|
sure" prompt.
|
|||
|
|
|||
|
Robert Hupf
|
|||
|
|
|||
|
The | is a pipe symbol, well documented in your DOS manual. (Read it
|
|||
|
before you read the rest of this message if you don't know about
|
|||
|
pipes already, otherwise the rest won't make sense.) Pipes can be
|
|||
|
used to put multiple commands on a single line, provided that the
|
|||
|
first command does not write anything to StdOout which might cause a
|
|||
|
problem when read by the second command as StdIn. Also, it is assumed
|
|||
|
that you don't want to see the output of any but the last command,
|
|||
|
since each command's output will be piped to the next's input. Note
|
|||
|
that in this case SET neither writes anything to StdOut nor reads
|
|||
|
StdIn. Thirdly, you must have write access to the current drive, or
|
|||
|
%temp% if defined, since a pipe always creates a temporary file. Eg
|
|||
|
this would not work if run from a write protected floppy (unless
|
|||
|
%temp% was defined), since DOS would fail to create the temporary
|
|||
|
files.
|
|||
|
|
|||
|
Pipes create temporary files even if no actual data is sent to
|
|||
|
StdOut because Command effectively treats this:
|
|||
|
|
|||
|
prog1 | prog2
|
|||
|
|
|||
|
as something like this:
|
|||
|
|
|||
|
prog1 > %temp%tempfile
|
|||
|
prog2 < %temp%tempfile
|
|||
|
del %temp%tempfile
|
|||
|
|
|||
|
Even if prog1 doesn't create any output, at least one zero length
|
|||
|
file is created. To demonstrate, try this
|
|||
|
|
|||
|
set temp=
|
|||
|
set | dir
|
|||
|
|
|||
|
I must say this beats the usual boring old "how do I echo a blank
|
|||
|
line in a batch file" etc.
|
|||
|
|
|||
|
Mitch Ames
|
|||
|
|
|||
|
===============================================================================
|
|||
|
28) COM or EXE
|
|||
|
|
|||
|
Also, have you noticed that 4DOS.COM (when viewed with LIST) begins
|
|||
|
with the letters "MZ"? Isn't that the mark of a .EXE file? Very
|
|||
|
interesting...
|
|||
|
|
|||
|
Thomas Smith
|
|||
|
|
|||
|
It sure is, and that's an example of something else that may be
|
|||
|
a MUF. DOS doesn't care whether the extension on an executable
|
|||
|
file is .COM or .EXE. It looks at the beginning of the file and
|
|||
|
does the right thing according to what it finds.
|
|||
|
|
|||
|
Gary Smith
|
|||
|
|
|||
|
===============================================================================
|
|||
|
|
|||
|
... Real users don't read documentation.
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|
|||
|
|
|||
|
<EFBFBD> Area: [ECHO] BATCH POWER PROG. <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Msg#: 4983 Date: 09-12-93 20:51
|
|||
|
From: Gary Cooper Read: Yes Replied: No
|
|||
|
To: ALL Mark:
|
|||
|
Subj: MUF Ver. 1.6 #17
|
|||
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
Editor's Note:
|
|||
|
|
|||
|
Technically the following information is NOT a MUF, but is included
|
|||
|
here due to the fact that it may help save someone a lot of grief!
|
|||
|
Similar to advising others not to use delayed cache writes and DOS
|
|||
|
6.0's DoubleSpace.
|
|||
|
|
|||
|
29) CHKDSK
|
|||
|
|
|||
|
Can you tell me the _date_ of the BAD CHKDSK? I live in
|
|||
|
fear of it as I mainly work on other peoples computers an I
|
|||
|
have no way of telling if I will destroy their HD with a
|
|||
|
simple chkdsk command!
|
|||
|
|
|||
|
Wallace Mcgee
|
|||
|
|
|||
|
The only problem with CHKDSK is with large partitions where DOS uses
|
|||
|
a 256-sector FAT. Specifically with partition sizes in the ranges of:
|
|||
|
|
|||
|
127MB-129MB
|
|||
|
254MB-258MB
|
|||
|
508MB-516MB
|
|||
|
1018MB-1030MB
|
|||
|
2035MB-2061MB
|
|||
|
|
|||
|
The date of the CHKDSK that has that problem is 04/09/91. The
|
|||
|
replacement being dated 11/11/91.
|
|||
|
|
|||
|
UNDELETE has the same problem for the same reason.
|
|||
|
|
|||
|
Bottom line is - if you don't have partitions in these size ranges -
|
|||
|
you don't have a problem.
|
|||
|
|
|||
|
The corrected versions can be had by downloading from the MS BBS.
|
|||
|
Probably also available off of CompuServ. The file to look for is:
|
|||
|
PD0464.EXE. The phone number for the MS BBS is (206) 936-6735.
|
|||
|
|
|||
|
Hope that helps you and others with the same question.
|
|||
|
|
|||
|
Steve Osterday
|
|||
|
|
|||
|
===============================================================================
|
|||
|
30) DELTREE
|
|||
|
|
|||
|
Another new, and potentially dangerous, feature of IBM DOS v6.01.
|
|||
|
If you were on drive C: and issued the command:
|
|||
|
|
|||
|
DELTREE /Y \
|
|||
|
|
|||
|
it would dutifully, and without stopping to ask for verification,
|
|||
|
delete your entire drive C:!
|
|||
|
|
|||
|
(You can test it on a floppy with directories, subdirectories,
|
|||
|
and files scattered throughout ... just make sure you specify
|
|||
|
and/or are on that drive (disk) when issuing the above command).
|
|||
|
|
|||
|
Vernon Frazee
|
|||
|
===============================================================================
|
|||
|
Well folks, that's it for Vol.1 #6
|
|||
|
|
|||
|
Please forward any information about other Fabulous MUFs to Gary Cooper
|
|||
|
in the FidoNet BatPower echo or at the addresses below.
|
|||
|
|
|||
|
Gary Cooper, Co-Sysop Programmer's Corner FidoNet 1:255/6.0
|
|||
|
gary.cooper.@f6.n255.z1.fidonet.org
|
|||
|
|
|||
|
Thanks! Till next time, we return you to your regularly scheduled
|
|||
|
BatPower program . . .
|
|||
|
|
|||
|
... Damn the documentation, full speed ahead!
|
|||
|
___ Blue Wave/QWK v2.12
|
|||
|
|
|||
|
-!- EzyQwk V1.02
|
|||
|
! Origin: Programmer's Corner BBS, Saint John, NB (v32/v42) (1:255/6)
|