home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
simtel
/
sigm
/
vols000
/
vol044
/
du-v77.doc
< prev
next >
Wrap
Text File
|
1984-04-29
|
6KB
|
198 lines
DU-V77.DOC
by Ward Christensen
with additional notes by Ron Fowler and Keith Petersen
(revised 7/23/81)
HOW TO USE DU ver 7.7 DISK UTILITY
INSTALLATION:
The 7.0 and later versions of DU are designed to
be installed with a minimum of trouble. In fact, in al-
most all cases, no changes to the source file should be
necessary to get DU up and running. This is because DU
uses the disk paramter block of CP/M to determine the
characteristics of the disk environment. (see the dis-
claimer for certain non-standard versions of CP/M 1.4).
The only parameter that should need to be changed
will be the clock speed flag at 103H. Leave this byte
zero if you have a 2 mhz clock. Patch it non-zero for
4 mhz. This is only needed for the "Z" (sleep) command.
USE:
Any valid command string may be placed as an
operand of the original DU command, i.e.:
A>DU G0;D;G2;=OK<D><A><1A>;D
Functions supported:
Tnn Seek to track nn (no read)
Snn Position to sector nn, and read
Gnn Position to group nn and read.
G Shows current position
V Views the current sector.
(assumes ASCII data)
Vnn Views nn sectors
Fname print directory for file "name",
then positions to its directory
sector. (Won't position under
CP/M 2.x, but see = command below.)
=string Ascii search, starting at current
sector. <xx> hex may be imbedded,
or used alone: To find "IN 0FEH":
=<db><fe>
Ignores bit 7 unless <xx> is used.
L Re-logs in the current disk. You may pull
out a disk, put in a new, and "L" just
to log it in.
Lx Logs in disk 'x', such as: LB
Ux Logs user 'x' for next F command. Gives
'?' error if not CP/M version 2.x.
D Dump sector, hex + ASCII
A Dump sector, ASCII only
H Dump sector, hex only
note all dump commands (D, A, H) may be optionally
followed by a starting and ending address:
D0,7F is the same as just D
D3,5
A20,3F
CHaddr,val,val,val... change hex in sector
CAaddr,char string... change ASCII in sector
NOTE that <xx> may be hex imbedded
in the Ascii: ca0,OK<d><a><1a>
----> Use W to write changes to disk.
Note that the C command echoes
the overlaid data for verification.
CHaddr-addr,byte
or CAaddr-addr,byte repeats a change
+ advance 1 sector (if below track 2,
this advances to next numerical, if
2 or >, advances based on CP/M's normal
sector scrambling algorithm, i.e. so +
will get the next logical sector of the file
- backs up 1 logical sector
Note + and - may take an amount:
for example, +F steps in 15 sectors.
Note also that "-" issued at the first logical
sector of the disk will wrap back to the last.
Further, "+" issued at the last sector will
wrap forward to the first.
? Gives command summary
# Prints the disk parameters
M Dumps a map of the group allocations
for files.
Mn Shows which file is allocated to
group "n".
N Resets CP/M via the BDOS. This may
make it possible under some implementations
of CP/M to change the disk format (e.g., density,
sides, etc)
R Reads the sector currently positioned to
into memory. Note R (Read) is implicit in
the G, +, and - commands, but N-O-T in the
S and T commands (I did it because I was
tired of disk reading after T command before
I had a chance to issue the S command)
W Write back the current sector (N-O-T-E may
not be used after an F command, as CP/M was
used to find the file in the directory
X Exit back to CP/M (Must press return). Ctl-c
was too easy to hit over modem lines, so I
decided on 2-byte (X, CR) to exit.
P Toggle printer switch on/off
Y Yanks current sector into sequential memory and
prints ending address. This allows sectors to
be written sequentially into memory starting at
3000H, for later recovery by DDT, etc.
Z Sleep - causes the program to pause, such
as to look at a dump. Z is 1 sec. Znn
is nn tenths of a second on a 2 MHz 8080.
< Saves current sector in a save buffer
> Gets saved buffer. < and > may be used
to move a sector to another place.
/ Repeats entire command. Defaults
or /nn to "forever". NN may be 2 to 65535
multiple commands may be separated by ";"
Example: the following commands will erase the
b disk directory to all E5's:
lb log in b drive
g0 position to dir.
ch0-7f,e5 fill with e5
< save the sector
>;w;+;/16 restore, write, next,
repeat 16
----This could be shortened to:
lb;g0;ch0-7f,e5;<
>;w;+;/16
INTERPRETATION OF DIRECTORY DATA PRESENTED BY THE DU PROGRAM
The following explains the format of a CP/M directory entry
as shown by DU, using either the "F" (find file) command,
or just doing "D" (dump) of the directory sectors, which
are located in groups 0 and 1 on a single density disk.
----------------
Sample result of "FSID.COM" command:
40 00534944 20202020 20434F4D 0000003A *.SID COM...:*
50 33343536 3738393A 00000000 00000000 *3456789:........*
First line -
40 00534944 20202020 20434F4D 0000003A *.SID COM...:*
|| ||| | || || | |
|| ||^----hex file name-----^ || || ^file name^
|| || || || in ASCII
|| || extent-^^ ||
|| || ||
|| || file size in sectors-^^
|| ||
|| ^^-00 = file active
|| E5 = file erased
^^-displacement of line in directory sector
Second line -
50 33343536 3738393A 00000000 00000000 *3456789:........*
| |
| |
^---allocation group numbers-------^
END