he User's Guide for ZCPR2
fo Section 0 - Introduction Page #
0.0 Introduction
Thi� i� th� User'� Guid� fo� ZCPR2�� Th� purpos� o� thi� �
documen� i� t� cover�� i� som� detail�� al� o� th� program� �
provide� i� th� distributio� o� th� ZCPR� System�� Thi� documen� �
i� intende� t� serv� a� bot� � tutoria� an� � reference�� an� th� �
informatio� containe� i� i� is�� b� an� large�� als� containe� i� �
the online Help Files provided in the distribution.
Thi� User'� Guid� i� organize� i� th� followin� sections� �
Th� program� indicate� wit� th� sectio� name� ar� thos� discusse� �
in each section.
1. Input/Output 8. Command Files
CONFIG, TINIT SUB2
DEVICE ZEX
IOLOADER
RECORD 9. Named Directories
STARTUP CD
SYSIO STARTUP as ST
LD
2. Directory Utility MKDIR
XDIR3 PWD
3. Disk Utilities 10. ZCPR2
DU2 DIR, XDIR3
ERA, ERASE
4. Library Utilities REN, RENAME
LDIRZ TYPE, PAGE
LRUNZ LIST, PRINT
LU SAVE
JUMP
5. Menu GO
MCHECK GENINS
MENU PATH
WHEEL
6. File Compare PROTECT
COMPARE
CRC 11. Help
DIFF HELP2
7. File Copy
MCOPY
Thi� User'� Guide�� a� wel� a� th� othe� ZCPR� manuals�� wa� �
written on the author's ZCPR2 system using Word Star.
0.1 Overview of the ZCPR2 Help Files
Al� o� th� ZCPR� utilitie� ar� documente� onlin� b� mean� o� �
th� ZCPR� Hel� System� Thi� documen� wa� derive� fro� th� ZCPR2-�
Specifi� Hel� File� supplie� wit� th� ZCPR� System.
Th� reade� i� invite� t� rea� th� ZCPR� Concept� Manua� an� �
th� ZCPR� User'� Guid� a� wel� a� th� Hel� files� Th� Hel� file� �
duplicat� th� User'� Guide�� b� an� large�� an� the� provid� th� �
convenienc� o� allowin� th� use� t� acces� th� informatio� onlin� �
an� o� allowin� th� use� t� quickl� inde� int� th� informatio� t� �
th� particula� ite� h� i� intereste� in.
Th� followin� tabl� summarize� th� name� o� th� Hel� file� �
supplie� wit� th� ZCPR� Syste� an� th� program� covere� b�� eac� �
Help file.
Help File Programs Covered
--------- ----------------
CFILES Command File Processors -- SUB2 and ZEX
COMPARE Compare Utilities -- COMPARE, CRC, and DIFF
CPMTR CP/M-Supplied Transients -- PIP, STAT, etc
DU2 Disk Utility -- DU2
HELP Very Basic Help
HELP2 Help System -- HELP2
I� Redirectabl� I/� -- DEVICE� IOLOADER� RECORD�
SYSIO, and STARTUP/ST
LU Library Utilities -- LDIRZ, LRUNZ, LU
MCOPY File Copy Utility -- MCOPY
MENU Menu System -- MCHECK and MENU
NDIRS Named Directory Manipulation Utilities -- CD, LD,
MKDIR, PWD, STARTUP/ST, and ECHO
XDIR3 Extended Directory Display Utility -- XDIR3
Z2ALT Alternates to ZCPR2-Resident Commands --
ERASE, RENAME, PROTECT, PAGE, PRINT,
PATH, and WHEEL
Z2RES ZCPR2 Resident Commands
ZCPR2 The "Master" Help File
Onl�� tw� ZCPR� command� ar� no� covere� b� an� Hel� file� �
The� ar� CCPLO� an� GENINS� whic� ar� covere� i� th� Installatio� �
Manual.
0.2 A Note on File References
Fil� Reference� unde� ZCPR� ar� largel� o� th� sam� for� a� �
unde� CP/� excep� tha� � � (slash� ma� no� b� th� firs� characte� �
o� � fil� name��� Fil� Reference� ar� processe䠠 slightl� �
differentl�� unde� ZCPR2�� an� th� FCB� ar� slightl�� differen� �
betwee� ZCPR� an� CP/� whe� th� special�� disallowe� character� �
are included in a file reference.
The following are these disallowed characters:
< > , ; : = ? * [ ]
This�� o� course�� applie� t� unambiguou� fil� references� �
Ambiguous file references may contain ? or *.
0.3 Line Editing and Output Control
The following are the line editing functions --
rubout Delet� an� ech� th� las� characte� type� a� �
��������������������th� console.
Ctrl-H�� Delet� th� las� characte� typed�� Backspac� �
��������������������on� character� CRT-oriented
Ctrl-U Delet� th� entir� lin� type� a� th� console.
Ctrl-X Delet� th� entir� lin� type� a� th� console� �
��������������������Backspac� t� th� beginnin� o� th� curren� �
��������������������line� CRT-oriented.
Ctrl-R Retyp� curren� comman� line�� type� � "clea� �
��������������������line� followin� characte� deletio� wit� rub�
��������������������outs.
Ctrl-E Physica� en� o� line�� carriag� i� returned� �
��������������������bu� lin� i� no� sen� unti� th� carriag� re�
��������������������tur� ke� i� depressed.
Ctrl-M Terminates input (carriage return).
Ctrl-J Terminate� curren� inpu� (lin� feed)�� CRT-�
��������������������oriented
Ctrl-C CP/M system reboot (warm start).
Ctrl-Z En� inpu� fro� th� consol� (use� i� PIР an� �
��������������������ED).
Other control functions affect console output --
Ctrl-P Cop�� al� subsequen� consol� outpu� t� th� �
��������������������currently-assigne� lis� devic� (LST:)�� Out�
��������������������pu� i� sen� t� bot� th� lis� devic� an� th� �
��������������������consol� devic� unti� th� nex� Ctrl-Рi� �
��������������������typed� Us� o� Ctrl-� i� no� recommende� a� � �
��������������������genera� rul� unde� ZCPR2� an� i� i� preferre� �
��������������������tha� th� use� emplo�� � Redirectabl� I/� �
��������������������Devic� Drive� fo� thi� function.
�
����������Ctrl-S Sto� th� consol� outpu� temporarily� Progra� �
��������������������executio� an� outpu� continu� whe� th� nex� �
��������������������characte� i� type� a� th� console�� Typin� �
��������������������Ctrl-� return� contro� t� CP/M.
Inpu� line� ca� generall� b� quit� long�� th� siz� specifie� �
a� ZCPR� installatio� time�� The� ar� no� acte� upo� unti� th� �
carriag� retur� ke� i� typed.
Al� o� thes� lin� editin� function� ar� supporte� b�� th� �
CP/� BDO� and�� consequently�� use� b� ZCPR� itself�� Man� ZCPR� �
utilities� alth� no� all� us� th� BDO� lin� edito� also.
.fo Section 1 - Input/Output Page #
1.0 Input/Output
1.1 Redirectable I/O Under ZCPR2
Basically�� th� concep� o� redirectabl� I/Ϡ involve� th� �
assignmen� o� physica� device� t� logica� devices�� ZCPR�� an� �
CP/� suppor� fou� logica� devices:
CON: - Console - An I/O Device for User/System Commo
LST: - Printer - An Output-Only Device for Printouts
RDR: - Reader - An Input-Only Device
PUN: - Punch - An Output-Only Device
Unde� CP/M�� ther� ar� onl� fou� physica� device� whic� ma� �
b� assigne� t� eac� o� th� fou� logica� devices�� Unde� ZCPR2� �
ther� ma�� b� a� man� physica� device� a� desire� whic� ma�� b� �
assigned to each of the four logical devices.
��� "physica� device�� i� th� traditiona� sens堠 i� � �
conventiona� I/� device�� lik� � CR� o� � Printer�� I� th� sens� �
o� ZCPR2�� i� i� � devic� driver�� o� bod� o� software�� whic� i� �
communicate� wit� vi� th� BIOS�� Thi� bod� o� software� i� turn� �
may communicate with any device OR SET OF DEVICES that it wishes.
SYSIϠ i� � sampl� se� o� Redirectabl� I/� Driver� designe� �
t� b� use� wit� ZCPR� o� m� system�� Unde� SYSIO�� th� followin� �
"physical devices" are implemented:
CON: Devices - TTY
CRT
CRT Input and CRT/Remote Computer Output
CRT and Modem Input and CRT and Modem Output
in Parallel
CRT Input and CRT/Modem Output
LST: Devices - TTY
CRT
Modem
Remote Computer
RDR: and PUN: Devices - Modem
Clock
A� yo� ca� see�� th� "physica� devices� unde� ZCPR� ca� b� �
combination� o� actua� devices�� Th� CR� Inpu� an� CRT/Remot� �
Compute� Outpu� device�� fo� instance�� i� use� t� allo� � remot� �
compute� recor� scree� display� whic� g� t� th� CRT.
Unde� ZCPR2�� yo� ca� creat� a� man� sets�� o� packages�� o� �
Redirectabl� I/� Driver� a� yo� wish� Eac� packag� ca� b� se� u� �
t� giv� th� use� differen� type� o� capabilities�� Fo� instance� �
on� packag� ca� b� lik� th� on� ɠ hav� define� abov� whil� �
anothe� packag� ca� provid� Dis� Recordin� capability�� suc� a� �
CRT Input and CRT/Disk File Output.
Th� ZCPR�� Syste� o� Program� contain� thre� utilitie� �
designe� t� suppor� th� Redirectabl� I/� System� Thes� utilitie� �
and their functions are:
IOLOADER -- Load a Redirectable I/O Package
DEVICE -- Display and Select Physical I/O Devices
RECORD -- Turn on and off the Recording Facility
Thi� sectio� o� th� User'� Guid� discusse� thes� utilitie� �
an� ho� the� ar� intende� t� b� used.
Chapte� �� o� th� "Concept� Manua� fo� ZCPR2�� discusse� �
redirectabl� I/Ϡ a� i� ca� b� implemente� unde� ZCPR2�� Th� �
reader is invited to refer to this for much more detail.
1.2 Loading Redirectable I/O Drivers -- IOLOADER
IOLOADEҠ i� use� t� loa� a� indicate� o� implie� I/� drive� �
packag� int� you� redirectabl� I/� buffe� area�� IOLOADEҠ i� �
invoked by one of the following forms:
IOLOADER // <-- Print Help Message
IOLOADER <-- Load SYSIO.IO
IOLOADER filename <-- Load filename.IO
IOLOADER filename.typ <-- Load filename.typ
Not� tha� th� DIR�� prefi� i� NOԠ supporte� wit� thi� �
program�� I� al� case� o� loadin� files� IOLOADE� searche� alon� �
th� ZCPR� pat� fo� th� indicate� o� implie� file� Onc� found� i� �
is loaded into your redirectable I/O buffer.
GENINӠ i� use� t� instal� IOLOADER�� an� IOLOADE� nee� onl� �
kno� th� addres� o� th� externa� path� th� symbo� fo� th� curren� �
use� an� dis� indicator�� an� th� addres� o� th� redirectabl� I/� �
buffer� STARTU� ma� b� use� t� automaticall� execut� IOLOADE� o� �
Col� Boot�� or�� a� ST�� STARTU� ma� b� use� t� execut� IOLOADE� �
wheneve� � director� i� logge� int� b� CD.
1.3 Displaying and Selecting Redirectable I/O Drivers -- DEVICE
DEVICE�� o� DEVICE�� (s� calle� becaus� i� i� th� secon� �
generatio� o� m� DEVIC� program)�� i� use� t� allo� th� use� t� �
interactivel� displa� th� name� o� th� availabl� physica� device� �
(actually�� devic� drivers� whic� ma� b� assigne� t� th� logica� �
device� an� t� allo� th� use� t� assig� � physica� devic� t� � �
logical device by name.
�
DEVICE is invoked by one of the following forms:
DEVICE // <-- Print Help Info
DEVICE <-- Enter Interactive Command Mode
DEVICE cmd,cmd,... <-- Immediately Execute Commands
I� al� cases�� wheneve� yo� ar� givin� command� t� DEVICE� �
whethe� i� i� fro� th� comman� leve� o� ZCPR� o� fro� withi� �
DEVIC� itself�� yo� ca� specif� � serie� o� command� separate� b� �
commas.
The following commands can be given to DEVICE:
DISPLAY ALL or CON or LST or RDR or PUN
<-- Display Physical Device Driver Names which
can be assigned to CON:, LST:, RDR:, or PUN:
Logical Devices; also display the current
assignment
CON or LST or RDR or PUN = Device
<-- Assign a Physical Device Driver to a Logical
Device
I� al� cases� onl� th� firs� lette� o� DISPLA� an� th� firs� �
lette� o� � Logica� Devic� o� th� wor� "ALL� i� necessary�� Al� �
othe� letter� ar� ignored�� Th� complet� nam� o� th� device� �
however, is necessary.
Also��� th堠 spac� an� th� characte� "=�� ma�� b� use� �
interchangably and case is not significant.
The following are examples of DEVICE commands:
D C,D L or D=C,D=L
Display CON: and LST: Devices
con:=crt,list=tty,reader=mode� o� c=crt,� tty,r=modem
Select the Physical Device Driver called CRT for
the CON: Logical Device, select TTY for the LST:
Logical Device, and select MODEM for the RDR:
Th� followin� termina� sessio� furthe� illustrate� th� us� �
o� DEVIC� wit� m� particula� se� o� Redirectabl� I/� Drivers� M� �
comments are indicated by <<--.
B7>device display console
DEVICE2, Version 1.3
CON: Devices --
CRTMOD2 - Televideo 950 CRT Input and CRT/Modem Output
CRTREM - Televideo 950 CRT Input and CRT/Remote Output
CRTMOD - Televideo 950 CRT and Modem in Parallel
CRT - Televideo 950 CRT
TTY - Model 43 Printing Terminal
Current Assignment: CRTMOD
B7>device
DEVICE2, Version 1.3
DEVICE2 Interactive Command System
Type ? and Strike RETURN for Help
DEVICE2 Command? d l,lst:=modem <<-- Multiple Commands in
<<-- Free Format
LST: Devices --
MODEM - DC Hayes Smartmodem
REMOTE - Remote Computer
CRT - Televideo 950 CRT
TTY - Model 43 Printing Terminal
Current Assignment: TTY
DEVICE2 Command? display list
LST: Devices --
MODEM - DC Hayes Smartmodem
REMOTE - Remote Computer
CRT - Televideo 950 CRT
TTY - Model 43 Printing Terminal
Current Assignment: MODEM
DEVICE2 Command? l tty <<-- Assign Device
DEVICE2 Command? l ttyx <<-- How DEVICE Handles Errors
Invalid Name Assignment at -- TTYX
DEVICE2 Command? d l
LST: Devices --
MODEM - DC Hayes Smartmodem
REMOTE - Remote Computer
CRT - Televideo 950 CRT
TTY - Model 43 Printing Terminal
Current Assignment: TTY
DEVICE2 Command? ? <<-- Built-In Help
DEVICE2 Commands are of the form:
Command,Command, ... <-- Issue Commands
where "command" may take the following forms:
DISPLAY=ALL <-- Display Names of All Devices
DISPLAY=CON <-- Display Names of Consoles
DISPLAY=LST <-- Display Names of Printers
DISPLAY=RDR <-- Display Names of Readers
DISPLAY=PUN <-- Display Names of Punches
CON:=name <-- Select Console
LST:=name <-- Select Printer
RDR:=name <-- Select Reader
PUN:=name <-- Select Punch
� comman� lin� beginnin� wit� � semicolo� (;� i� � comment�
Th� � Comman� Exit� DEVICE2.
DEVICE2 Command? x <<-- Exit
1.4 Controlling the Disk Output Facility -- RECORD
RECORĠ i� use� t� contro� th� Dis� Outpu� Facilit� o� th� �
Redirectabl� I/� Drivers�� Copie� o� Consol� an� Printe� output� �
ca� b� create� i� dis� file� b� th� us� o� thi� facility�� an� i� �
ma� b� extende� int� � numbe� o� othe� application� a� well.
RECORD is invoked by one of the following forms:
RECORD or RECORD // <-- Get Help
RECORD ON or OFF <-- Console Recording
RECORD ON or OFF PRINTER <-- Printer Recording
Fo� RECOR� t� perfor� it� function�� i� mus� b� implemente� �
i� th� Redirectabl� I/� Drivers� Thi� i
� lef� a� a� exercis� fo� �
th� reader�� Th� Redirectabl� I/� Driver� supplie� wit� ZCPR� �
hav� simpl� RETur� instruction� a� th� subroutine� execute� b� �
the RECORD functions.
Fou� routine� ar� accesse� i� th� Redirectabl� I/Ϡ Drive� �
package to control the RECORD function. They are:
COPEN -- Open File for Recording Console Output
LOPEN -- Open File for Recording List Output
CCLOSE -- Close File for Recording Console Output
LCLOSE -- Close File for Recording List Output
I� th� case� o� COPE� an� LOPEN�� the� ar� passe� � pointe� �
t� th� firs� twelv� byte� o� a� FC� i� HL�� The� ar� t� cop� �
thes� twelv� byte� int� thei� interna� FCB� an� us� the� t� �
defin� th� fil� names�� Typically� th� outpu� file� generate� b� �
th� RECOR� functio� ar� place� i� th� curren� directory�� alth� �
th� Redirectabl� I/� Driver� ma� b� configure� t� plac� the� �
anywher� desired.
Whe� RECORĠ i� invoke� t� tur� OΠ on� o� th� recor� �
functions� i� prompt� th� use� fo� th� nam� o� th� fil� t� recor� �
into� RECOR� the� call� th� appropriat� OPE� routine.
Th� RECORĠ progra� know� i� dis� fil� outpu� driver� ar� �
availabl� thr� th� Redirectabl� I/� Packag� Statu� Routine�� I� �
Registe� � i� returne� wit� th� high-orde� bi� set�� suc� driver� �
ar� available.
RECORĠ i� tie� int� th� Redirectabl� I/� Package� an� work� �
wit� them�� Th� reade� i� invite� t� refe� t� th� Installatio� �
Manua� an� th� Concept� Manua� fo� furthe� detai� o� th� �
organizatio� an� functio� o� suc� packages.
RECOR� i� als� indirectl� tie� int� DEVICE� Invokin� RECOR� �
itsel栠 doe� no� necessaril�� star� th堠 recordin砠 proces� �
immediately�� Tw� function� mus� tak� plac� t� begi� recordin� �
outpu� ont� dis� files:
1) RECORD has to turn the appropriate Driver ON
2) DEVICE has to select the appropriate Driver
Thi� lead� t� interestin� possiblities�� B� turnin� RECOR� �
OFƠ durin� � recordin� session�� th� outpu� fil� i� close� an� �
availabl� fo� othe� uses�� I� RECOR� i� late� turne� ON�� th� �
outpu� fil� ma�� b� delete� (i� th� sam� fil� i� selecte� t� �
recor� into)�� However� i� � ne� devic� i� selecte� whil� RECOR� �
i� OΠ (say�� DEVICŠ CON:=CR� i� issued)�� the� recordin� i� �
SUSPENDE� (NO� turne� off� unti� th� recordin� devic� i� selecte� �
again�� Hence�� i� i� look� lik� th� recordin� sessio� i� no� �
goin� well�� recordin� ca� b� suspended�� th� proble� fixed�� an� �
the� recordin� ca� b� resumed.
Thi� combine� syste� o� DEVIC� an� RECOR� provide� � ver� �
flexibl� outpu� recordin� system�� I� addition�� th� outpu� �
recordin� nee� no� necessaril� g� t� � dis� file�� I� coul� b� �
se� u� t� sen� CON� outpu� t� th� CR� and� say� � Remot� Compute� �
fo� processing�� Th� syste� ca� b� configure� i� � larg� numbe� �
o� ways.
1.5 Redirectable I/O and the ZCPR2 System
Th� ZCPR� Syste� ca� functio� wit� o� withou� Redirectabl� �
I/Ϡ a� implemente� b� th� Redirectabl� I/� Drive� Package� an� �
th� IOLOADER�� DEVICE� an� RECOR� programs� Obviously� th� ZCPR� �
System is made much more flexible by employing these facilities.
DEVICŠ an� RECOR� ar� tie� directl� t� th� Redirectable I/� �
Package� themselves� The� don'� us� an� o� th� othe� feature� o� �
th� ZCPR� Syste� t� spea� of�� an� the� ar� installe� b�� GENIN� �
(the� nee� t� kno� wher� th� Redirectabl� I/� Buffe� i� located)� �
IOLOADE� als� need� t� b� tol� wher� th� Redirectabl� I/Ϡ Buffe� �
i� locate� b� GENINS�� an� i� use� th� ZCPR� pat� t� fin� it� �
files.
Th� program� controllin� th� Redirectabl� I/� Driver� ar� �
tied together in this manner:
IOLOADER loads the drivers
DEVICE controls the drivers
RECORD enables and disables the disk recording
facilities of the drivers
1.6 On the Programming of Terminals
Th� CR� Terminal� whic� i� usuall� th� principa� devic� use� �
a� � consol� fo� CP/� an� ZCPR2�� i� � first-lin� too� o� th� �
user�� I� i� th� devic� throug� whic� h� see� th� worl� o� hi� �
microcomputer� and� a� such� � fee� tha� i� shoul� b� a� flexibl� �
an� complian� � too� a� possibl� fo� him� bendin� t� hi� wil� an� �
doing as much work for him as possible.
ɠ foun� tha� th� Televide� 95� provide� � lo� o� th� fea�
ture� tha� � wante� t� se� i� � terminal�� I� soo� becam� evi�
dent�� however� tha� i� wa� necessar� t� se� u� � se� o� softwar� �
unde� ZCPR� whic� woul� progra� th� TV� 95� s� tha� � coul� mak� �
bette� us� o� it�� Th� TV� 95� i� wha� � woul� cal� a� intelli�
gen� terminal�� havin� � built-i� microcompute� whic� provide� �
offlin� editin� an� man� othe� features�� includin� character-�
strin� programmabl� functio� key� an� � statu� line�� whic� mak� �
lif� much�� muc� nicer�� � hav� create� tw� programs� CONFI� an� �
TINIT�� whic� progra� thi� termina� t� m� tastes�� Th� use� i� �
invite� t� rea� th� built-i� documentatio� an� th� documentatio� �
i� th� sourc� code.
.fo Section 2 - The ZCPR2 Directory Utility XDIR3 Page #
2.0 Directory Utility
2.1 Overview of XDIR3
XDIR�� i� a� extende� director� displa� utilit� designe� t� �
ru� unde� CP/� 2.� an� suppor� som� o� th� extende� feature� o� �
ZCPR� a� well� An� conventiona� CP/� 2.� use� ma� us� XDIR3� bu� �
h� shoul� mak� sur� h� turn� of� th� ZCPR2-specifi� feature� b� �
runnin� th� ZCPR� Installatio� Program�� GENINS�� o� XDIR�� an� �
manuall� turnin� the� of� befor� usin� XDIR3.
XDIR�� automaticall�� adapt� t� an� Org-� CP/͠ 2.�� system� �
regardles� o� th� siz� o� it� disks� I� read� th� dis� paramete� �
bloc� informatio� fro� th� operatin� syste� t� determin� wha� th� �
attribute� o� th� dis� i� i� workin� wit� are�� an� i� the� �
present� it� displa� informatio� accordingly.
XDIR3 runs in two basic modes:
. as a directory display utility
. as a file scanner utility (File Name Buffer Facility)
XDIR�� i� � ZCPR� utilit� whic� support� th� extende� ZCPR� �
features� particularl� name� directories.
A� � director�� displa�� utility��� i� display� t� yo� �
informatio� abou� th� file� o� � particula� dis� i� al� use� �
area� o� � particula� use� area�� I� give� yo�� th� followin� �
information:
. Name of File
. Size of File (in K bytes)
. Attributes of File (Read/Only or System)
. Sum of Sizes of All Files Displayed
. Total Number of Files on Disk
. Amount of Space Remaining on Disk
. What Disk and What User Area you are looking at
A� � fil� scanne� utility� i� doe� th� following:
. Logs a group of selected files to disk for later scan
. Prints the contents of such a log file
� Scan� � lo� fil� an� compare� i� wit� th� file�
selected by you, telling you what files are
missing and what files are additional
XDIR� i� quit� human-oriented�� wit� man� built-i� feature� �
whic� provid� � human-interfac� typ� o� servic� t� th� user� �
Some of these include:
. Named Directories may be specified
. The file listing is alphabetized by file name and
type or file type and name, depending on user
preference
. The file listing is organized vertically or
horizontally, depending on user preference
. Output may also be sent to disk or printer
� XDIR� i� designe� t� ru� quickly
2.2 Basic Use of XDIR3 under ZCPR2
XDIR3 is invoked by one of the following command lines:
XDIR afn oooo... or XDIR afn /oooo...
and
XDIR /oooo...
where all elements after the XDIR command are optional.
'afn�� i� a� ambiguou� fil� reference�� a� describe� o� th� �
followin� frames�� 'o� i� a� optio� letter� whic� i� on� o� mor� �
o� th� option� describe� o� th� nex� frame�� Not� tha� sinc� � �
slas� denote� tha� a� optio� follows� a� af� ma� no� begi� wit� � �
slash�� Thi� ca� b� change� b� a� equat� i� th� sourc� cod� o� �
XDIR3 if desired.
Aa - Set the attributes of the files to be displayed
a=S for System Files, a=N for Non-System Files
a=A for All Files (Non-System and System)
D - Send Output to Disk
Ff - Engage File Name Buffer Facility
f=L to Log File Names to Disk
f=P to Print Names Logged to Disk
f=S to Scan Disk for File Names and Compare to
Log
G - Toggle Grouping (group files by name and type or
type and name)
H - Toggle Horizontal or Vertical display format
I - Inspect files selected by FL option
N - Negate Selection; select those files which do NOT
match the ambiguous file name
P - Send Output to Printer
'afn' is an ambiguous file reference, of the general form:
dir:filename.typ
where
filename.typ is a conventional CP/M ambiguous file name
(wild card characters of ? and * are OK,
but file name must NOT start with /)
dir: is a ZCPR2 directory specification, which may
be one of the following forms:
d: where 'd' is a disk letter (A-P) to indicate
the current user area on that disk
u: where 'u' is a user number (0-31) to indicate
that user on the current disk; 'u' may
be a '?', in which case all user areas
are selected
du: where 'du' specifies both disk and user
name: where 'name' is the name of a directory
(disk/user area)
Examples of an ambiguous file reference are:
A:FILE.TXT A4:FILE.TXT
ROOT:FILE.TXT A?:*.COM
12:*.* A12:SYSLIB*.*
Examples of XDIR3 commands are:
XDIR ROOT:*.COM AAN
-- Select All Files in directory ROOT which do
NOT match *.COM
XDIR B10: ASD
-- Select the System Files in B10, and send
output to disk as well as console
XDIR /AADP
-- Select All Files in current directory, and
send output to disk and printer as well as
console
2.3 XDIR3 Output Control Options
These options are:
D - Send Output to Disk
G - Toggle Grouping (group files by name and type or
type and name)
H - Toggle Horizontal or Vertical display format
P - Send Output to Printer
� an� � ar� fairl� obvious�� I� � i� specified�� th� outpu� �
goe� t� you� printe� (CP/� LST�� device� a� wel� a� you� console� �
I� � i� specified�� th� outpu� goe� t� you� curren� director� a� �
th� fil� XDIR.DIR� I� XDIR.DI� alread� exists� i� i� replaced.
� an� � ar� toggle� options� If� vi� GENIN� a� installatio� �
time�� yo� selecte� alphabetizatio� b� fil� nam� an� type�� th� � �
optio� wil� fli� thi� t� alphabetiz� b� fil� typ� an� name�� an� �
vice-versa� Th� sam� wit� th� � option.
Ǡ allow� yo� t� selec� you� displa� t� b� alphabetize� b� �
fil� nam� an� typ� o� typ� an� name�� I� b� fil� nam� an� type� �
the� AA.TX� come� befor� BB.COM�� I� b� fil� typ� an� name� the� �
BB.CO͠ come� befor� AA.TXT�� Alphabetizatio� b� fil� nam� an� �
typ� group� file� o� th� sam� nam� togethe� (F� fields�� lik� al� �
XDIR3.�� files)�� whil� b� fil� typ� an� nam� group� file� o� th� �
sam� typ� togethe� (F� fields� lik� al� *.TX� files).
� allow� yo� t� selec� you� alphabetize� file� t� b� liste� �
dow� th� scree� (vertical� o� acros� th� scree� (horizontal)� �
Th� scree� i� divide� int� thre� columns�� an� � vertica� listin� �
alphabetize� dow� th� firs� column� the� th� second� an� the� th� �
third� whil� � horizonta� listin� alphabetize� first� second� an� �
third columns on the first line, and so on with each line.
ɠ lik� t� grou� m� listing� b� fil� typ� first�� an� the� �
name�� an� � als� prefe� th� vertica� displa� format�� Her� i� �
suc� � listing:
XDIR III, Version 1.5 Vertical Listing by File Type and Name
Disk: B User: 7, File Attributes: Non-System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
SYSLIB .ART 108 STD .MSG 4 Z2INS .WS 52
XDIR3 .BAK 24 TALK .SUM 12 Z2CON .WSH 8
DU2 .HLP 36 S100 .TXT 4 Z2INS .WSH 8
XDIR3 .HLP 24 Z2CON .WS 112
11 Files Occupying 392K, 67 Files on Disk and 4020K Free
Note that we are alphabetized down the columns by file type.
Some prefer to alphabetize by file name:
XDIR III, Version 1.5 Vertical Listing by File Name and Type
Disk: B User: 7, File Attributes: Non-System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
DU2 .HLP 36 TALK .SUM 12 Z2CON .WS 112
S100 .TXT 4 XDIR1 .DIR 4 Z2CON .WSH 8
STD .MSG 4 XDIR3 .BAK 24 Z2INS .WS 52
SYSLIB .ART 108 XDIR3 .HLP 24 Z2INS .WSH 8
12 Files Occupying 396K, 68 Files on Disk and 4016K Free
Again�� w� ar� alphabetize� dow� th� columns�� bu� th� orde� �
i� b� fil� nam� an� the� fil� type�� Refe� bac� t� th� previou� �
screen display to compare.
Finally�� som� prefe� horizonta� a� oppose� t� vertica� �
listings�� Her� i� anothe� listin� whic� i� horizonta� an� �
grouped by file name first.
XDIR III, Version 1.5 Horizontal Listing by File Name and Type
Disk: B User: 7, File Attributes: Non-System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
DU2 .HLP 36 S100 .TXT 4 STD .MSG 4
SYSLIB .ART 108 TALK .SUM 12 XDIR1 .DIR 4
XDIR2 .DIR 4 XDIR3 .BAK 24 XDIR3 .HLP 24
Z2CON .WS 112 Z2CON .WSH 8 Z2INS .WS 52
Z2INS .WSH 8
13 Files Occupying 400K, 69 Files on Disk and 4012K Free
2.4 XDIR3 File Selection Options
Th� followin� option� (an� th� DIR�� field�� contro� fil� �
selection:
Aa - Set the attributes of the files to be displayed
a=S for System Files, a=N for Non-System Files
a=A for All Files (Non-System and System)
N - Negate Selection; select those files which do NOT
match the ambiguous file name
Th� � optio� negate� you� ambiguou� fil� nam� reference� bu� �
i� stay� i� th� SAM� se� o� syste� o� non-syste� files�� Fo� �
instance�� XDIҠ *.CO� /NA� select� al� SYSTE� file� whic� d� NO� �
matc� *.COM� I� yo� hav� installe� XDIR� t� automaticall� selec� �
bot� SYSTE� an� NON-SYSTE� files�� the� XDI� *.CO� /� wil� selec� �
all non-COM files in your current directory.
�
Th� �� optio� set� th� attribute� o� th� file� t� b� �
displayed�� I� A� i� presented�� the� bot� Non-Syste� an� Syste� �
file� wil� b� displayed�� I� AS�� the� jus� Syste� files� an� i� �
AN� the� jus� Non-System�
Yo�� ca� se� th� defaul� fil� attribut� displa�� t� b� �
whateve� yo�� desire��� Usin� GENINS��� yo�� ca� hav� XDIR� �
automaticall� selec� jus� th� Syste� files�� jus� th� Non-Syste� �
files�� o� bot� Non-Syste� an� Syste� file� whene
ve� yo� ru� i� �
withou� usin� th� � option.
B7>xdir root:*.com aan
XDIR III, Version 1.5 Vertical Listing by File Type and Name
Disk: A User: 15, File Attributes: Non-System System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
VITALS .BAD 4 R TEXT .CFG 4 R NAMES .DIR 4
ASM .CFG 4 R CPZM .CPM 12 R BAD .DOC 8 R
C .CFG 4 R CPZMH .CPM 12 R NOTESHD .DOC 16 R
PASCAL .CFG 4 R FNAMES .DIR 4 SYSIO .IO 4 RS
STD .CFG 4 R LD .DIR 4 NEWDISK .ZEX 4 R
15 Files Occupying 92K, 266 Files on Disk and 1568K Free
Thi� select� al� non-CO� file� i� th� director� ROOT�� Bot� �
Syste� an� Non-Syste� file� ar� selected�� Not� tha� SYSIO.I� i� �
th� onl�� Syste� fil� whic� wa� selected�� an� i� happen� t� b� �
Read/Only as well.
B7>xdir root:*.com asn
XDIR III, Version 1.5 Vertical Listing by File Type and Name
Disk: A User: 15, File Attributes: System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
SYSIO .IO 4 RS
1 Files Occupying 4K, 266 Files on Disk and 1568K Free
Thi� select� th� non-CO� Syste� file� i� th� director� ROOT� �
As expected, SYSIO.IO is the only file given.
B7>xdir root:*.com n
XDIR III, Version 1.5 Vertical Listing by File Type and Name
Disk: A User: 15, File Attributes: Non-System
Filename.Typ Size K RS Filename.Typ Size K RS Filename.Typ Size K RS
-------- --- ------ -- -------- --- ------ -- -------- --- ------ --
VITALS .BAD 4 R TEXT .CFG 4 R NAMES .DIR 4
ASM .CFG 4 R CPZM .CPM 12 R BAD .DOC 8 R
C .CFG 4 R CPZMH .CPM 12 R NOTESHD .DOC 16 R
PASCAL .CFG 4 R FNAMES .DIR 4 NEWDISK .ZEX 4 R
STD .CFG 4 R LD .DIR 4
14 Files Occupying 88K, 266 Files on Disk and 1568K Free
Thi� select� th� non-CO� file� i� th� director� ROOԠ whic� �
are Non-System. Non-System is my selected default for XDIR3.
2.5 XDIR3 File Name Buffer Facility
Th� option� o� XDIR� whic� dea� wit� th� Fil� Nam� Buffe� �
Facility are:
Ff - Engage File Name Buffer Facility
f=L to Log File Names to Disk
f=P to Print Names Logged to Disk
f=S to Scan Disk for File Names and Compare to
Log
I - Inspect files selected by FL option
Th� fil� selectio� option� com� int� pla� a� wel� wit� th� �
F̠ optio� t� selec� th� file� t� b� place� int� th� lo� file� �
FNAMES.DIR.
Th� F� optio� write� th� use� number� an� fil� name� o� th� �
selecte� file� t� dis� int� th� fil� name� FNAMES.DIR�� I� �
FNAMES.DI� alread� exists�� the� i� i� rewritten� Th� FNAMES.DI� �
files is used by the FP and FS options.
Th� ɠ optio� (fo� inspect� allow� th� use� t� manuall� �
approve each file before its name is placed into FNAMES.DIR.
Th� F� optio� simpl� print� ou� th� use� number� an� name� �
o� al� th� file� store� i� FNAMES.DIR�� I� FNAMES.DI� i� no� i� �
th� curren� directory�� F� wil� searc� alon� th� ZCPR� pat� unti� �
it finds it or reaches the end of the path.
Th� F� optio� scan� FNAMES.DI� an� th� file� selecte� b� th� �
use� (o� implie� i� n� specifi� fil� selectio� optio� i� given� �
an� compare� them� I� � fil� exist� i� FNAMES.DI� bu� no� i� th� �
selecte� files� it� nam� i� printe� a� � missin� file� I� � fil� �
exist� o� dis� bu� no� i� th� FNAMES.DI� file�� the� it� nam� i� �
printed as an additional file.
Not� tha� th� use� shoul� kee� i� min� wha� h� i� scannin� �
fo� whe� h� use� th� Fil� Nam� Buffe� Facility� Fo� instance� i� �
h� select� bot� Non-syste� an� Syste� file� wit� th� F̠ optio� �
an� the� default� t� Non-Syste� wit� th� F� option�� the� severa� �
files will come up missing while this is not necessarily true.
Usin� GENINS�� th� Installatio� Progra� fo� ZCPR2�� yo�� ca� �
creat� tw� differen� version� o� XDIR�� -- on� fo� Director� �
Displa��� operation� an� on� fo� Fil� Nam� Buffe� Facilit� �
functions� I� yo� d� this� the� yo� coul� als� se� th� Director� �
Displa� versio� t� wor� wit� Non-Syste� file� b�� default�� whil� �
yo�� coul� se� th� Fil� Nam� Buffe� Facilit� versio� t� wor� wit� �
bot� Non-Syste� an� Syste� files.
Th� followin� i� � sampl� termina� sessio� whic� illustrate� �
th� us� o� th� XDIR� Fil� Nam� Buffe� Facility�� Comment� ar� �
place� ou� t� th� sid� o� th� command� an� ar� denote� b� "<--".
B7>xdir /fli <-- Log Files to Disk and Inspect
XDIR III, Version 1.5
Inspection of Files for Logging to Disk
Log 7 DU2 .HLP to Disk (Y/N/<CR>=Y)? Y
Log 7 S100 .TXT to Disk (Y/N/<CR>=Y)? N
Log 7 STD .MSG to Disk (Y/N/<CR>=Y)? N
Log 7 SYSLIB .ART to Disk (Y/N/<CR>=Y)? N
Log 7 TALK .SUM to Disk (Y/N/<CR>=Y)? N
Log 7 TEMP .TXT to Disk (Y/N/<CR>=Y)? Y
Log 7 XDIR3 .HLP to Disk (Y/N/<CR>=Y)? Y
Log 7 Z2CON .WS to Disk (Y/N/<CR>=Y)? Y
Log 7 Z2CON .WSH to Disk (Y/N/<CR>=Y)? Y
Log 7 Z2INS .WS to Disk (Y/N/<CR>=Y)? Y
Log 7 Z2INS .WSH to Disk (Y/N/<CR>=Y)? Y
Logging File Names to Disk --
7 File Names to be Logged to Disk
Horizontal Listing by File Name and Type
U Filename.Typ U Filename.Typ U Filename.Typ U Filename.Typ
- -------- --- - -------- --- - -------- --- - -------- ---
7 DU2 .HLP 7 TEMP .TXT 7 XDIR3 .HLP 7 Z2CON .WS
7 Z2CON .WSH 7 Z2INS .WS 7 Z2INS .WSH
B7>xdir /fp <-- Print out the names of the logged files
XDIR III, Version 1.5
Printout of Recrded File Names --
7 File Names Recorded
Horizontal Listing by File Name and Type
U Filename.Typ U Filename.Typ U Filename.Typ U Filename.Typ
- -------- --- - -------- --- - -------- --- - -------- ---
7 DU2 .HLP 7 TEMP .TXT 7 XDIR3 .HLP 7 Z2CON .WS
7 Z2CON .WSH 7 Z2INS .WS 7 Z2INS .WSH
B7>era temp.txt <-- Erase one of the logged files
TEMP .TXT <-- for this demo
B7>xdir /fs <-- Scan the disk
XDIR III, Version 1.5
File Name Scanner
Files Named in FNAMES.DIR missing from Disk --
Horizontal Listing by Fie Name and Type
U Filename.Typ U Filename.Typ U Filename.Typ U Filename.Typ
- -------- --- - -------- --- - -------- --- - -------- ---
7 TEMP .TXT
Additional Files on Disk NOT in FNAMES.DIR --
Horizontal Listing by File Name and Type
U Filename.Typ U Filename.Typ U Filename.Typ U Filename.Typ
- -------- --- - -------- --- - -------- --- - -------- ---
7 FNAMES .DIR 7 S100 .TXT 7 STD .MSG 7 SYSLIB .ART
7 TALK .SUM
File Scan Complete
2.6 Use of XDIR3 on Secure Systems
O� Secur� Systems� suc� a� Remot� CP/� Systems� XDIR� ma� b� �
configured�� vi� GENINS�� t� provid� � secur� director�� utility� �
Som� idea� alon� thi� lin� include:
. You can install XDIR3 so that it cannot look at any
directory other than the one it is in
. You can install XDIR3 so that you can look at the
current user area on any disk, but not in other
user areas
. You can install XDIR3 so that you can look at all
user areas on the current disk, but not on any
other disk
. You can install XDIR3 so that you cannot look at any
System files
. You can install XDIR3 so that none of the F options
are available
� Yo� ca� instal� XDIR� s� tha� user� ma� lis� th�
files (FP) or scan the disk (FS), but not log
files to disk (FL)
Thes� ar� jus� som� o� th� way� � hav� designe� XDIR� t� b� �
flexibl� i� thes� type� o� environments�� I� � mor� conventiona� �
environment�� suc� a� � softwar� developmen� environment�� yo� �
woul� probabl�� wan� XDIR�� t� giv� yo�� complet� acces� t� �
everything.
Se� th� nex� sectio� o� installatio� fo� mor� detail� o� �
setting XDIR3 capabilities and defaults.
2.7 Installation of XDIR3
GENINӠ i� th� installatio� progra� whic� come� alon� wit� �
ZCPR�� an� allow� th� use� t� defin� th� basi� capabilitie� an� �
defaul� function� execute� b� � particula� cop�� o� � ZCPR� �
utility�� GENIN� i� awar� o� th� specifi� requirement� o� al� o� �
th� ke� ZCPR� utilities�� includin� XDIR3�� an� adapt� fo� eac� �
utility'� specifi� needs.
Whe� GENIN� i� executed�� i� ask� th� use� fo� th� nam� o� �
th� fil� t� b� installed�� Th� use� ma� specif� thi� fil� i� th� �
norma� ZCPR� format:
dir:filename.typ
GENINӠ wil� rea� th� firs� bloc� o� thi� file�� whic� �
contain� th� customizatio� information�� an� the� allo� yo� t� d� �
on� o� thre� thing� (it� basi� comman� prompt):
. Display the Current Features
. Set the Features of the program to the user's liking
. Exit and optionally create a new COM file
Th� feature� whic� ma� b� se� b� th� syste� manage� unde� �
GENINS for XDIR3 are:
. Whether the user may specify a directory (disk/user)
. If directory specification is allowed, whether the
user may specify just disk or just user (but not
necessarily both)
. Whether the user may employ any of the F options
. If the F options may be used, if the user may employ
the FL option specificially
. Whether the user may employ the AS option
. Whether XDIR3 will perform a Directory Display
of File Name Buffer Facility function by default
. Whether XDIR3 will display Non-System or System files
(or both) by default
. Whether the alphabetization will be by file name and
type or type and name by default
. Whether the listing will be vertical or horizontal by
default
� Whethe� ZCPR� Externa� Path� ar� available� and� i�
so, what the base path address is
�
I� th� use� i� no� runnin� ZCPR2�� h� shoul� disabl� al� o� �
the ZCPR2 features.
This Page Intentionally Left Blank
For the Sake of My Sanity
Figuring This One Out is Left as an Exercise for the Reader
.fo Section 3 - Disk Utility Page #
3.0 Disk Utility
3.1 Invoking DU2 and DU2 Installation
DU2 is invoked by a command line of the following form:
DU2 <text>
wher� <text� i� an� vali� DU� comman� sequence�� I� th� firs� tw� �
character� o� <text� ar� '/?'�� th� built-i� documentatio� i� �
displaye� an� th� use� i� returne� t� CP/M�� a� pe� th� TOOLSE� �
Convention.
Examples:
DU2 /?
-- Displa� Built-i� Documentation
DU2 lb,g0,d
-- Execut� command� t� Lo� i� Driv� B�� got� Grou� 0�� an� �
displa� th� firs� Bloc� o� Grou� 0
DU�� i� designe� t� b� installe� wit� � minimu� o� trouble� �
I� fact�� i� almos� al� cases�� n� change� t� th� sourc� fil� �
shoul� b� necessar� t� ge� DU� u� an� running�� Thi� i� becaus� �
DU� use� th� dis� paramete� bloc� o� CP/� t� determin� th� char-�
acteristic� o� th� dis� environment.
Th� onl� parameter� tha� shoul� nee� t� b� change� wil� b� �
th� cloc� spee� fla� an� th� numbe� o� line� o� th� CON�� Device� �
GENIN� ca� b� use� t� perfor� thi� installation�
DU� i� intende� fo� us� o� � ZCPR� system�� A� such� i� wil� �
onl�� ru� wit� � Z8� microprocesso� an� o� � CP/� 2.� (o� higher� �
system� DU� wil� NO� ru� o� CP/� 1.4.
3.2 DU2 Command Summary
@ Exec Prev Command =data Search for data
< Save Current Block in Temp > Get Saved Block
<B Save Current Block on Queue >B Get Block from Queue
<G Save Current Group on Queue >G Get Current Group
<Gn Save Group N on Queue >Gn Get Group N
# Print Disk Stats ? Print Help Info
+n Advance to Next Sector -n Back up to Last Sec
! Halt and Wait for User /nn Repeat Command Line
n Exec Macro (0<=n<=9) :n<text> Define Macro n
:Pn Print Macro n :PA Print All Macros
:P@ Print Prev Command
An-n ASCII Dump Hn-n Hex Dump
Dn-n ASCII and Hex Dump
CAn vals or CAn1-n2 val Change ASCII Values
CHn vals or CHn1-n2 val Change Hex Values
Ffile Find File Uu Set User u for F
Tn Position to Track n (dec) Sn Position to Sec n
Gn Position to Group n (hex) G Show position
Ld Log in Disk N New Disk
M Map Disk Mn Show file in Group n
P Toggle Printer
Q Print Queue Statistics QZ Zero (Empty) Queue
QSfile Save Queue as File
R Read Current Block W Write Current Block
Vn View n blocks Zn Sleep n Seconds
X Exit to CP/M; opt Warm Boot ^C Exit to CP/M
�� comman� lin� ma� consis� o� onl� on� comman� o� � serie� �
o� command� separate� b� commas�� I� th� latte� form�� th� �
command� ar� execute� sequentially�� Th� onl� exception� t� thi� �
rul� ar� th� :ntex� comman� (whic� store� th� comman� lin� awa� �
a� � macro� an� th� *n� comman� (whic� repeat� th� comman� line).
3.3 Commands for Logging and Viewing Disk Parameters
Th� followin� command� ar� discusse� i� thi� sectio� o� th� �
HELP file:
F -- Find File
L -- Log in Disk
N -- New Disk (Reset Disk System)
M -- Map Disk Directory
U -- Select User Number
# -- Print Disk and Queue Statistics
Ffilename.typ
Prin� director�� fo� fil� "filename.typ"�� Thi� comman� �
present� th� director�� entr�� fo� th� firs� exten� o� th� �
indicate� file�� Se� th� sectio� o� "Interpretin� th� DU� �
Director�� Display� fo� inf� o� ho� t� interpre� th� informatio� �
presented.
Example (actual DU2 session):
DU2 B1? fz80.mac
40 015A3830 20202020 204D4143 0000000E *.Z80 MAC....*
50 9A000000 00000000 00000000 00000000 *................*
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? ftest.txt
++ File Not Found ++
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
L[d]
Th� simpl� "L� comman� re-log� i� th� curren� disk�� Yo� ma� �
pul� ou� � disk�� pu� i� � new�� an� "L� jus� t� lo� i� in�� Th� �
for� "Ld"�� wher� � i� � vali� driv� lette� (lik� "LB")�� i� use� �
t� lo� i� � specifi� dis� an� permi� yo�� t� wor� o� tha� �
particula� dis� fro� thi� tim� foreword.
Example (actual DU2 session):
DU2 B1? l
DU2 B1? la
DU2 A1? lb
N
Thi� tell� DU� tha� yo� jus� pu� i� � ne� disk�� Fo� thos� �
BIOӠ implementation� tha� nee� t� b� tol� specificall�� (Reset� �
tha� � dis� chang� ha� bee� made� us� thi� comman� ever� tim� yo� �
chang� � dis� whil� DU� i� running.
Example:
DU2 B1? n
Note�� Ther� wa� � significan� dela� befor� th� promp� �
returned. A complete disk system reset took place.
M[n]
Dump� � ma� o� th� grou� allocation� fo� files�� M� show� �
whic� fil� i� allocate� t� grou� "n".
Example (actual DU2 session, edited):
DU2 B1? m
0010-0010 07 STD .MSG 00 : 0011-0011 07 TALK .SUM 00
0012-0012 07 Z2CON .WSH 00 : 0013-0013 00 LDIR .C 00
0014-001
4 00 COMMAND .LBR 01 : 0015-0015 00 LDIR .C 00
< Detail Left Out >
004B-004B 08 MASTER .CAT 03 : 004C-0050 00 COMMAND .LBR 05
0051-0051 00 COMMAND .LBR 07 : 0052-0052 00 UNERA15 .COM 00
0053-0053 08 MENU .CPR 00 : 0054-0057 00 COMMAND .LBR 07
Type Any Character to Continue or ^C to Abort -
DU2 B1? m54
0054-0057 00 COMMAND .LBR 07 :
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
The entries are divided up as follows:
0010-0010 07 STD .MSG 00 : 0011-0011 07 TALK .SUM 00
^ ^ ^ ^
| | Filename Extent
| User Number
Group Range
Uu
Log� use� 'u� fo� nex� � (Fin� File� command.
�
Example (actual DU2 session):
DU2 B1? u7
DU2 B7? u1
#
Prints the disk parameters:
. Current Disk Drive . Number of Tracks on Disk
. Size of Group in Blocks . Number of Sectors Per Track
. Number of Groups on Disk . Number of Directory Entries
. Number of System Tracks
Prints the queue statistics:
. Size of Queue . Space Available
Example (actual DU2 session):
DU2 B1? #
+=============================+
| -- Queue Information -- |
+-----------------------------+
0 Blocks in Queue
249 Blocks Left in Queue
Address of Head of Queue: 3E00 Hex
Address of Tail of Queue: 3E00 Hex
+=============================+
| -- Disk Information -- |
+-----------------------------+
Disk Drive: B
Tracks: 244
Sectors/Track: 336
Group Size: 32 Blocks/Group
Total Groups: 1280
Directory Entries: 512
System Tracks: 122
===============================
3.4 Commands for Positioning and Reading Data
Th� followin� command� ar� discusse� i� thi� sectio� o� th� �
HELP file:
G -- Position to Group
S -- Position to Sector
T -- Position to Track
R -- Read Block
W -- Write Block
+ -- Advance to Next Logical Sector
- -- Backup to Last Logical Sector
G[nn]
Positio� t� grou� n� an� rea� block�� I� th� for� i� simpl� �
"G", show your current position.
Example (actual DU2 session):
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? g4
Group = 0004:00, Track = 122, Sector = 129, Physical Sector = 129
DU2 B1? g
Group = 0004:00, Track = 122, Sector = 129, Physical Sector = 129
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
Tnn and Snn
"Tnn�� doe� � see� t� trac� n� bu� doe� no� rea� � block� �
"Snn�� position� t� secto� n� o� th� curren� trac� an� read� th� �
bloc� there. Example (actual DU2 session):
DU2 B1? t124
Group = 0015:00, Track = 124, Sector = 1, Physical Sector = 1
DU2 B1? s24
Group = 0015:17, Track = 124, Sector = 24, Physical Sector = 24
R and W
� read� th� bloc� currentl� positione� t� int� memory�� Not� �
� (Read� i� implici� i� th� G�� +� an� - commands� bu� NO� i� th� �
� an� � commands.
� write� bac� th� curren� bloc� (NOTE� ma� no� b� use� afte� �
a� Ơ command�� a� CP/͠ wa� use� t� fin� th� fil� i� th� �
directory).
Examples:
DU2 B1? r
DU2 B1? w
+[nn] and -[nn]
"+�� advance� � secto� (i� belo� trac� 2�� thi� advance� t� �
nex� numerica� secto� an� i� � o� more�� advance� base� o� th� �
system'� secto� skewin� algorithm�� i.e�� s� � wil� ge� th� nex� �
logica� secto� o� th� file)� "-� backup� u� � secto� i� th� sam� �
sense.
Not� � an� - ma� tak� a� amount�� fo� example�� +1� step� i� �
1� sectors� Not� als� tha� "-� issue� a� th� firs� logica� secto� �
o� th� dis� wil� wra� bac� t� th� las� an� "+� issue� a� las� �
secto� wil� wra� forwar� t� th� first.
Examples (actual DU2 session):
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? d
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
20 004C4449 52202020 20432020 00000038 *.LDIR C ...8*
30 13001500 00000000 00000000 00000000 *................*
40 0843504D 55472020 20434154 01000046 *.CPMUG CAT...F*
50 1C001E00 38003D00 41004300 45000000 *....8.=.A.C.E...*
60 00434F4D 4D414E44 204C4252 01000080 *.COMMAND LBR....*
70 14001600 17001800 19001A00 1B001D00 *................*
DU2 B1? +d
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
20 00554E45 52413135 2041534D 00000060 *.UNERA15 ASM...`*
30 3E003F00 40000000 00000000 00000000 *>.?.@...........*
40 075A3249 4E532020 20575348 0000002A *.Z2INS WSH...**
50 21002500 00000000 00000000 00000000 *!.%.............*
60 075A3243 4F4E2020 20575348 0000003F *.Z2CON WSH...?*
70 12002200 00000000 00000000 00000000 *..".............*
DU2 B1? +d
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
00 07445532 20202020 2042414B 00000057 *.DU2 BAK...W*
10 26002800 29000000 00000000 00000000 *&.(.)...........*
20 04535441 52545550 20C3CF4D 0000001E *.STARTUP COM....*
30 27000000 00000000 00000000 00000000 *'...............*
40 00434F4D 4D414E44 204C4252 03000080 *.COMMAND LBR....*
50 1F002000 30003100 32003300 34003500 *.. .0.1.2.3.4.5.*
60 00434F4D 4D414E44 204C4252 05000080 *.COMMAND LBR....*
70 36003700 39004C00 4D004E00 4F005000 *6.7.9.L.M.N.O.P.*
DU2 B1? +2
Group = 0000:04, Track = 122, Sector = 5, Physical Sector = 5
DU2 B1? d
00 084D4153 54455220 20434154 01000080 *.MASTER CAT....*
10 2D002F00 3A003B00 3C004200 44004600 *-./.:.;.<.B.D.F.*
20 00464958 54455820 2041534D 0100001E *.FIXTEX ASM....*
30 65006600 69006B00 6C000000 00000000 *e.f.i.k.l.......*
40 00554E45 52413135 20434F4D 00000007 *.UNERA15 COM....*
50 52000000 00000000 00000000 00000000 *R...............*
60 084D454E 55202020 20C35052 00000008 *.MENU CPR....*
70 53000000 00000000 00000000 00000000 *S...............*
DU2 B1? -3d
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
20 00554E45 52413135 2041534D 00000060 *.UNERA15 ASM...`*
30 3E003F00 40000000 00000000 00000000 *>.?.@...........*
40 075A3249 4E532020 20575348 0000002A *.Z2INS WSH...**
50 21002500 00000000 00000000 00000000 *!.%.............*
60 075A3243 4F4E2020 20575348 0000003F *.Z2CON WSH...?*
70 12002200 00000000 00000000 00000000 *..".............*
3.5 Commands for Searching for Data
=string
Thi� comman� perform� � searc� fo� th� indicate� ASCI� text� �
startin� a� curren� sector�� <xx� he� ma� b� imbedded�� o� use� �
alone�� T� fin� "I� 0FEH"�� =<db><fe>�� Bi� � i� ignore� unles� �
<xx� i� used� Not� that� du� t� th� parsin� schem� o� DU2� form� �
suc� a� "+=string"�� whic� position� t� th� nex� secto� an� the� �
start� th� search�� ar� allowed�� Form� lik� "+2=string�� ar� �
equally permitted. The search may be aborted by a ^C. Example:
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? =DU2
= at 24
Group = 0000:0E, Track = 122, Sector = 15, Physical Sector = 15
DU2 B1? d
00 07533130 30202020 20545854 0000000C *.S100 TXT....*
10 0C010000 00000000 00000000 00000000 *................*
20 07445532 20202020 2042414B 00000068 *.DU2 BAK...h*
30 2A006100 6D007800 00000000 00000000 **.a.m.x.........*
40 015A3830 20202020 204D4143 0000000E *.Z80 MAC....*
50 9A000000 00000000 00000000 00000000 *................*
60 E5444953 4B4F5554 20434F4E 00000020 *eDISKOUT CON... *
70 60000000 00000000 00000000 00000000 *`...............*
DU2 B1? +=DU2
Group = 0000:0F, Track = 122, Sector = 16, Physical Sector = 16
= at 64
Group = 0000:10, Track = 122, Sector = 17, Physical Sector = 17
DU2 B1? d
00 075A3243 4F4E2020 20575320 05000080 *.Z2CON WS ....*
10 3D013E01 3F014001 41014201 43014401 *=.>
[email protected].*
20 075A3243 4F4E2020 20575320 06000077 *.Z2CON WS ...w*
30 45014601 47014801 00000000 00000000 *E.F.G.H.........*
40 E5444953 4B4F5554 20434F4E 00000020 *eDISKOUT CON... *
50 97000000 00000000 00000000 00000000 *................*
60 07445532 20202020 20484C50 01000006 *.DU2 HLP....*
70 98009900 9B009C00 9D000000 00000000 *................*
DU2 B1? +=DU2,d
Group = 0000:11, Track = 122, Sector = 18, Physical Sector = 18
= at 24
Group = 0000:11, Track = 122, Sector = 18, Physical Sector = 18
00 E547454E 494E5320 204D4143 01000080 *eGENINS MAC....*
10 D700EF00 F000F400 F500F600 F700F800 *W.o.p.t.u.v.w.x.*
20 E5445532 20202020 2041534D 01000080 *eDU2 ASM....*
30 EC00ED00 EE00FA00 07010B01 0E011301 *l.m.n.z.........*
40 04445532 20202020 20C3CF4D 0000004E *.DU2 COM...N*
50 F100F200 F3000000 00000000 00000000 *q.r.s...........*
60 E547454E 494E5320 204D4143 02000039 *eGENINS MAC...9*
70 F9000F01 00000000 00000000 00000000 *y...............*
3.6 Commands for Saving and Restoring Data
Th� followin� command� ar� discusse� i� thi� sectio� o� th� �
HELP file:
< -- Save Current Block
> -- Restore Saved Block
<B -- Save Current Block at Tail of Queue
>B -- Load Current Block from Head of Queue
<G -- Read and Save Group at Tail of Queue
>G -- Copy Group from Head of Queue and Write
Q -- Print Queue Statistics
QZ -- Zero (Clear) Queue
QS -- Save Queue as a File
< and >
"<�� save� curren� bloc� i� a� interna� sav� buffer�� ">� �
copie� th� interna� sav� buffe� int� th� curren� bloc� are� (bu� �
doe� NO� writ� i� ou� t� disk).
<B and >B
"<B� save� th� curren� bloc� ont� th� tai� o� th� DU� Queue� �
Thi� Queue�� � FIF� (Firs� In-Firs� Out� dat� structure�� ca� b� �
use� t� collec� � numbe� o� block� fo� late� cop� t� � dis� fil� �
o� explici� placemen� somewher� o� th� disk�� ">B� extract� th� �
bloc� a� th� hea� o� th� DU� Queu� an� place� i� int� th� workin� �
buffe� area.
<G[nn] and >G[nn]
"<G� read� th� curren� grou� an� save� i� o� tai� o� th� DU� �
Queue�� Th� siz� o� � grou� i� dependen� o� th� forma� o� th� �
disk�� an� DU�� automaticall� adjust� t� th� prope� grou� siz� �
withou� yo� havin� t� worr� abou� wha� i� is�� ">G� copie� th� �
grou� a� th� hea� o� th� DU� Queu� ont� disk� I� n� i� specifie� �
(a� i� "<Gnn� o� ">Gnn")�� the� th� indicate� grou� i� rea� fro� �
o� writte� to�� I� n� i� no� given�� the� th� grou� yo�� ar� �
currentl� positione� t� i� affected.
Q, QZ, and QSfile
Ѡ report� th� statu� o� th� DU�� Queue�� namel�� ho�� man� �
block� ar� store� i� i� an� ho� muc� spac� remains�� Qڠ zeroe� �
(clears� th� DU� Queue�� "QSfilename.typ� save� th� DU� Queu� o� �
disk in the current user area as the indicated file.
Examples (actual DU2 session):
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? d
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
20 004C4449 52202020 20432020 00000038 *.LDIR C ...8*
30 13001500 00000000 00000000 00000000 *................*
40 0843504D 55472020 20434154 01000046 *.CPMUG CAT...F*
50 1C001E00 38003D00 41004300 45000000 *....8.=.A.C.E...*
60 00434F4D 4D414E44 204C4252 01000080 *.COMMAND LBR....*
70 14001600 17001800 19001A00 1B001D00 *................*
DU2 B1? <
DU2 B1? ch0-7f e5
DU2 B1? d
00 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
10 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
20 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
30 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
40 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
50 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
60 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
70 E5E5E5E5 E5E5E5E5 E5E5E5E5 E5E5E5E5 *eeeeeeeeeeeeeeee*
DU2 B1? >,d
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
20 004C4449 52202020 20432020 00000038 *.LDIR C ...8*
30 13001500 00000000 00000000 00000000 *................*
40 0843504D 55472020 20434154 01000046 *.CPMUG CAT...F*
50 1C001E00 38003D00 41004300 45000000 *....8.=.A.C.E...*
60 00434F4D 4D414E44 204C4252 01000080 *.COMMAND LBR....*
70 14001600 17001800 19001A00 1B001D00 *................*
DU2 B1? q
** Queue Status Summary **
0 Blocks in Queue
249 Blocks Left in Queue
Address of Head of Queue: 3E00 Hex
Address of Tail of Queue: 3E00 Hex
DU2 B1? <g
Reading from Group 0000
32 Blocks in Queue
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? g1
Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
DU2 B1? <g
Reading from Group 0001
64 Blocks in Queue
Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
DU2 B1? q
** Queue Status Summary **
64 Blocks in Queue
185 Blocks Left in Queue
Address of Head of Queue: 3E00 Hex
Address of Tail of Queue: 5E00 Hex
DU2 B1? qsdir.sys
Queue Saved in File
DU2 B1? qz
** Queue Status Summary **
0 Blocks in Queue
249 Blocks Left in Queue
Address of Head of Queue: 3E00 Hex
Address of Tail of Queue: 3E00 Hex
DU2 B1? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B1? <b
1 Blocks in Queue
DU2 B1? +<b
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
2 Blocks in Queue
DU2 B1? +<b
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
3 Blocks in Queue
DU2 B1? +<b
Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
4 Blocks in Queue
DU2 B1? +2<b
Group = 0000:05, Track = 122, Sector = 6, Physical Sector = 6
5 Blocks in Queue
3.7 Commands for Viewing Data
V[nn]
֠ view� th� curren� bloc� a� ASCI� characters�� Th� for� �
"Vnn�� view� th� indicate� numbe� o� block� startin� a� th� �
curren� one.
A, D, and H
Ġ display� � bloc� o� portio� thereo� i� bot� hexadecima� �
notatio� an� a� ASCI� characters�� � display� � bloc� o� portio� �
thereo� a� ASCI� characters�� an� � display� � bloc� o� portio� �
thereo� a� hexadecima� numbers�� Al� thre� command� accep� � �
range� suc� a� th� following:
D0-#7F is the same as just D
D3-5
A20-#3F
See next section for examples.
3.8 Commands for Altering Data
CH and CA
CȠ allow� th� use� t� chang� th� content� o� th� curren� �
bloc� b� specifyin� ne� value� a� hexadecima� numbers� C� allow� �
the same by specifying an ASCII character string.
CHaddr val val val...
Change Hex data values in block
CAaddr char string...
Change ASCII data values in block
NOT� tha� <xx� ma� b� he� imbedde� i� th� ASCII�
ca0 OK<d><a><1a>
Use W to write changes to disk.
Ranges may be specified:
CHaddr-addr byte or CAaddr-addr byte
Changes a range of bytes to the same value
Examples (actual DU2 session):
DU2 B7? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B7? d
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
20 004C4449 52202020 20432020 00000038 *.LDIR C ...8*
30 13001500 00000000 00000000 00000000 *................*
40 0843504D 55472020 20434154 01000046
*.CPMUG CAT...F*
50 1C001E00 38003D00 41004300 45000000 *....8.=.A.C.E...*
60 00434F4D 4D414E44 204C4252 01000080 *.COMMAND LBR....*
70 14001600 17001800 19001A00 1B001D00 *................*
DU2 B7? d0-#f
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
DU2 B7? h0-#f
00 07535444 20202020 204D5347 00000002
DU2 B7? a0-#f
00 *.STD MSG....*
DU2 B7? fdu2.hlp
20 07445532 20202020 20484C50 01000039 *.DU2 HLP...9*
30 28009800 99009B00 9C009D00 00000000 *(...............*
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
�DU2 B7? g28
Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
DU2 B7? d
00 496E766F 6B696E67 20445532 20616E64 *Invoking DU2 and*
10 20445532 20496E73 74616C6C 6174696F * DU2 Installatio*
20 6E0D0A44 55322043 6F6D6D61 6E642053 *n..DU2 Command S*
30 756D6D61 72790D0A 436F6D6D 616E6473 *ummary..Commands*
40 20666F72 204C6F67 67696E67 20446973 * for Logging Dis*
50 6B732061 6E642045 78616D69 6E696E67 *ks and Examining*
60 20446973 6B205061 72616D65 74657273 * Disk Parameters*
70 0D0A436F 6D6D616E 64732066 6F722050 *..Commands for P*
DU2 B7? v
Invoking DU2 and DU2 Installation
DU2 Command Summary
Commands for Logging Disks and Examining Disk Parameters
Commands for P
Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
DU2 B7? v3
Invoking DU2 and DU2 Installation
DU2 Command Summary
Commands for Logging Disks and Examining Disk Parameters
Commands for Positioning and Reading Data
Commands for Searching for Data
Commands for Saving and Restoring Data
Commands for Viewing data
Commands for Altering Data
Commands for Manipulating Macros and the @ Command
Miscellanea
Examples of command use
Interpret
Group = 0028:02, Track = 125, Sector = 275, Physical Sector = 275
DU2 B7? g28
Group = 0028:00, Track = 125, Sector = 273, Physical Sector = 273
DU2 B7? d
00 496E766F 6B696E67 20445532 20616E64 *Invoking DU2 and*
10 20445532 20496E73 74616C6C 6174696F * DU2 Installatio*
20 6E0D0A44 55322043 6F6D6D61 6E642053 *n..DU2 Command S*
30 756D6D61 72790D0A 436F6D6D 616E6473 *ummary..Commands*
40 20666F72 204C6F67 67696E67 20446973 * for Logging Dis*
50 6B732061 6E642045 78616D69 6E696E67 *ks and Examining*
60 20446973 6B205061 72616D65 74657273 * Disk Parameters*
70 0D0A436F 6D6D616E 64732066 6F722050 *..Commands for P*
DU2 B7? ch0-10 0
DU2 B7? d
00 00000000 00000000 00000000 00000000 *................*
10 00445532 20496E73 74616C6C 6174696F *.DU2 Installatio*
20 6E0D0A44 55322043 6F6D6D61 6E642053 *n..DU2 Command S*
30 756D6D61 72790D0A 436F6D6D 616E6473 *ummary..Commands*
40 20666F72 204C6F67 67696E67 20446973 * for Logging Dis*
50 6B732061 6E642045 78616D69 6E696E67 *ks and Examining*
60 20446973 6B205061 72616D65 74657273 * Disk Parameters*
70 0D0A436F 6D6D616E 64732066 6F722050 *..Commands for P*
DU2 B7? ca11 This is a test
DU2 B7? d0-#1f
00 00000000 00000000 00000000 00000000 *................*
10 00546869 73206973 20612074 6573746F *.This is a testo*
3.9 Commands for Manipulating Macros and the @ Command
Macros
�� Macr� i� � short-han� yo� ca� us� t� defin� � comman� �
sequence�� Rathe� tha� havin� t� typ� a� involve� comman� ove� �
an� ove� again�� th� DU� macr� facilit� allow� yo� t� assig� thi� �
comman� sequenc� t� � numbe� (� t� 9� an� the� execut� i� b� �
simpl�� presentin� thi� numbe� a� � command�� Th� followin� �
commands are associated with this facility.
:ntext and n
":n<text>� define� th� tex� followin� th� digi� 'n� t� b� � �
Macro�� A� always�� � <� � <� 9�� Th� macr� definition� ma� b� �
create� an� redefine� a� will�� I� � macr� ha� alread�� bee� �
define� fo� th� indicate� number�� i� wil� b� overwritte� b� th� �
executio� o� thi� command�� "n"� wher� � <� � <� 9� execute� th� �
indicate� macro.
:Pn and :PA
":Pn"� wher� � <� � <� 9� print� th� tex� o� Macr� Numbe� n� �
":PA� print� th� tex� o� al� 1� macros.
@ and :P@
"@� execute� th� previou� comman� lin� tha� di� no� contai� �
th� "@� Command�� Thi� provide� a� eas� wa� t� repea� th� las� �
comman� lin� typed� Fo� example:
g0 <-- go to Group 0
ch0-7f e5,< <-- Initialize the first block and Save
>,w,+ <-- Read in the Saved Block, Write it
out to disk, and advance to next
logical block
@ <-- Do the Previous Command Again
@ <-- And Again
@ <-- And Again
":P@�� print� th� previou� comman� lin� (an� doe� no� chang� �
it).
Examples (edited DU2 session):
DU2 B7? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B7? :1+,d0-#1f
DU2 B7? :p1
Macro Definitions --
1: +,d0-#1f
DU2 B7? 1
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
DU2 B7? 1
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
00 07444953 4B4F5554 20434F4E 00000000 *.DISKOUT CON....*
10 00000000 00000000 00000000 00000000 *................*
DU2 B7? 1
Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
00 04584449 52202020 20C3CF4D 00000054 *.XDIR COM...T*
10 2C002E00 48000000 00000000 00000000 *,...H...........*
DU2 B7? g0,d0-#1f
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
DU2 B7? 1
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
�
DU2 B7? :pa
Macro Definitions --
0:
1: +,d0-#1f
2:
< Detail Left Out >
9:
DU2 B7? g0,d0-#1f,1,1,1
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
00 07444953 4B4F5554 20434F4E 00000000 *.DISKOUT CON....*
10 00000000 00000000 00000000 00000000 *................*
Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
00 04584449 52202020 20C3CF4D 00000054 *.XDIR COM...T*
10 2C002E00 48000000 00000000 00000000 *,...H...........*
DU2 B7? @
Command --
g0,d0-#1f,+,d0-#1f,+,d0-#1f,+,d0-#1f
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
10 10000000 00000000 00000000 00000000 *................*
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
10 11002300 24000000 00000000 00000000 *..#.$...........*
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
00 07444953 4B4F5554 20434F4E 00000000 *.DISKOUT CON....*
10 00000000 00000000 00000000 00000000 *................*
Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
00 04584449 52202020 20C3CF4D 00000054 *.XDIR COM...T*
10 2C002E00 48000000 00000000 00000000 *,...H...........*
3.10 Miscellanea
?
"?�� give� � comman� summar� an� tell� th� use� wha� th� �
curren� value� ar� fo� Processo� Cloc� Spee� an� Line� pe� Pag� �
o� CON�� a� wel� a� th� addres� fo� th� Grou� Storag� Buffe� �
(wher� th� DU� Queu� begins).
*[nn]
"*nn�� repeat� th� curren� comman� lin� (a� entere� s� far� �
n� times�� Thi� comman� default� t� "forever� i� n� i� no� �
specified� 'nn� ma� b� � t� 65535.
!
"!�� halt� processin� o� commands�� display� � continuatio� �
messag� t� th� user�� an� wait� fo� th� use� t� typ� an�� key� �
Typin� � Control-� abort� comman� processing�� Thi� comman� i� �
usefu� i� stoppin� loop� t� giv� th� use� a� muc� tim� a� h� �
want� t� revie� th� display.
P
"P� toggle� th� printe� switc� o� an� off� I� allow� yo� t� �
tur� o� an� of� � recordin� o� you� consol� output.
X
"X� exi� bac� t� CP/M�� Th� use� i� give� th� optio� t� War� �
Boot� i� whic� cas� th� CC� an� BDO� ar� reloaded� o� not.
Z[nn]
"Znn� cause� th� progra� t� sleep� o� pause� an� ma� b� use� �
t� loo� a� � dum� quickl� i� � loopin� comman� line� � i� � sec� �
Zn� i� n� second� o� a� � MH� 8080�� Th� processo� spee� ma�� b� �
specifie� b� th� use� unde� GENIN� fo� hi� particula� system.
^C
"^C" exits to CP/M and Warm Boots.
Examples (actual DU2 session):
DU2 B7? g0
Group = 0000:00, Track = 122, Sector = 1, Physical Sector = 1
DU2 B7? d0-#f,+,!,*
00 07535444 20202020 204D5347 00000002 *.STD MSG....*
Group = 0000:01, Track = 122, Sector = 2, Physical Sector = 2
Type Any Character to Continue or ^C to Abort -
00 0754414C 4B202020 2053554D 00000049 *.TALK SUM...I*
Group = 0000:02, Track = 122, Sector = 3, Physical Sector = 3
Type Any Character to Continue or ^C to Abort -
00 07444953 4B4F5554 20434F4E 00000000 *.DISKOUT CON....*
Group = 0000:03, Track = 122, Sector = 4, Physical Sector = 4
Type Any Character to Continue or ^C to Abort -
00 04584449 52202020 20C3CF4D 00000054 *.XDIR COM...T*
Group = 0000:04, Track = 122, Sector = 5, Physical Sector = 5
Type Any Character to Continue or ^C to Abort -
DU2 B7? g1
Group = 0001:00, Track = 122, Sector = 33, Physical Sector = 33
DU2 B7? d0-#f,+,*3
00 E5482020 20202020 2042414B 00000004 *eH BAK....*
Group = 0001:01, Track = 122, Sector = 34, Physical Sector = 34
00 E5535542 32202020 2042414B 0100007B *eSUB2 BAK...{*
Group = 0001:02, Track = 122, Sector = 35, Physical Sector = 35
00 E5434420 20202020 204D4143 00000047 *eCD MAC...G*
Group = 0001:03, Track = 122, Sector = 36, Physical Sector = 36
DU2 B7? ^C
B7>
3.11 Examples
Multiple commands may be separated by ","
An�� vali� comman� strin� ma� b� place� a� a� operan� o� th� �
origina� DU� command� i.e.:
A>DU2 G0,D,G2,=OK<D><A><1A>,D
Example�� th� followin� command� wil� eras� th� dis� �
director� t� al� 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
Using Macros, the following two macros could be defined:
Macro 0 --
:0g0,ch0-7f e5,<
Macro 1 --
:1>,w,+,/16
Now�� fo� th� use� t� initializ� th� director� o� Driv� A� �
an� the� o� Driv� B:� th� followin� command� coul� b� issued:
la,0 <-- Log in A and Initialize first block
1 <-- Perform write
lb,0 <-- Log in B and Initialize first block
1 <-- Perform write
n,0 <-- Declare New Disk and Initialize first
block
1 <-- Perform write
3.12 Interpretation of Directory Data Presented by DU2
Th� followin� explain� th� forma� o� � CP/� director�� entr� �
a� show� b� DU2�� usin� eithe� th� � (Fin� File�� command�� o� �
jus� doin� � (Dump� o� th� director� sectors�� whic� ar� locate� �
i� group� � an� � o� � singl� densit� disk�� Sampl� resul� o� �
"FSID.COM� command:
First 40 00534944 20202020 20434F4D 0000003A *.SID COM...:*
line || ||| | || || | |
|| ||^----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 50 33343536 3738393A 00000000 00000000 *3456789:........*
line | |
^---allocation group numbers-------^
fi z2ug1.ws
fi z2ug2.ws
fi z2ug3.ws