Ü@ chdir ͵ ͠ ͖ 8{ Ăy0 2$@NAMES DIRZCPR2 ͯ 2DU2.COM from DU.COM ver 7.5 1/23/81 by RLC!9"&1& | 7/ DU2 cannot run on CP/M Version 1.4 -- AbortingZ%*"""""" "3"i""""Zͳ j / DU2 - Disk Utility II, Version 1.0 Type ? for Help !~(G((##~/5> !( 2&m>2&2&1&2&>2&!"&T (:&y~# (,(ͫ2&G!%~|(####^#Vx!(0~08:0#0G!4 ~#+ (, !0(s!(~#+ !4|(/ Error -- Macro Expanded Command Line too LongÃ!(,~# /Invalid Command at or after xÃ/+++ Out of memory +++ Ã~ (;/ Warning: Remainder of Command Line after "@" Deleted/ Command -- !,(~#  > !(Ð~ͫP#~ͫ@((/Macro Definitions --A(B#ͳØ#/Previous Command Line Definition -- @: !,#ͳz Ø/ z0/: !4~#  > 08 0W/ Invalid Macro Number Specified in CommandÃ#!4sÃQØ/+=============================+ | -- Queue Information -- | +-----------------------------+ ~/ +=============================+ | -- Disk Information -- | +-----------------------------+ Disk Drive: :&A/ Tracks: *&#/ Sectors/Track: *&/ Group Size: :& (:#Z($S /Invalid Queue Command Ã!>"&"&!"&/** Queue Status Summary ** ~Ø*& /Address of Head of Queue: *&DMͺ/ Hex Address of Tail of Queue: *&DMͺ/ Hex *& *&| } `i/ Blocks Left in Queue ~,| |\YY*&|X\ͣͣ*& \ x \/Queue Saved in File Ø! w#z( *&#| "&*&!(zʘ"&|˜Ã:G{z{2& Ø/User Number Out of Range Ã:&2&Ø{ :pW x; T ʃ8 4 Øͳ ͽ̽ɯ2&2&2&2&2&2&2&<2&2&!"&"&"&#"&"&> 2,!>"&"&!4 6 $> 2( 2&O Ø~ (m,(iͫ#AO:Gy8!/Disk Letter Out of Range Ãy2&||^#V#"&!~#foͧ%*&7*&|2&J*&"&!"&*&#r%r%DM>BK:=ڤ͟*&*&7͢! x ͟*&| / MAP not permitted -- Block Queue would be overlaidÃ<2&J :&z%:&z%͏{(>2&BKͺ>-> 2& *&#} |(# T ('z {( ͺf :&  ͺf Q͡*&ó%|ʮ ~> >(~%# >. :&~~> © >)/ ++ Free ++ :&2&C>:%~# 8~8ͪ *&#"&!"&!>~(5~_#~< :&(W#_% *&|(>*2&"&  *&+"&| *&:&~ͫB(GD !&>2&Ø#*&*&| }(!*&! "&*&#"& Ø/Block Queue is Full -- Block Not Saved *& Ã/ Blocks in Queue *| >#~*&ͫ,( (͏*&̈́%m"&"&2&7 /Reading from Group *&DMͺ/ *&"&>2&*&:&2&y /++ No "<" Save Command Issued ++ Ã~#ɯ2&T !(6 D<G~{|:& *&}i2&*&7*&͢J!~#"&:&{ !T (T~(=~0 0 ( ( (~ͪ, (**&7*&͢/ ++ EOF ++ ͡D:& `/++ Can't dump, no sector read ++ /Use G command following F, or R or S following T Ã~,( PBK (,(#P`i}%%:&A(-~}%}%{(#} T ʃ:&H(4*~ 8~8>.{(#} *͡T ʃ{ Ø͡{ Ø~,( (T( S(#Gʛ|*&̈́%m>2&z|*&̈́%|7͢2&J(*&*&̈́%*&͋%*&+:&G}2&:&Gr%"&*&2&:&2&- o&"&͏*&̈́%m"&2&7͢2&(bk:&)= :&o*&j%8 *&*& #>2&\YY\< !2&/++ File Not Found ++ Ø=2&o&))))) >D2&n~.( (,(ͫ#~ ,#.|#> ~ (,( z z *&7*&͢D~ (,( z *&+| *&| *&"&*&+"&*&"&z *&#*&̈́%0*&#*&̈́%0"&!"&.Ø*&*&̈́%8$/Group = *&DMͺ>::&>,/ Track = *&/, Sector = *&/, Physical Sector = *&͡~ͫ#͏S#- ͏S#BK |H(6A|~ ʘ,ʘ"&'#y(ʘ*&~ ʘ,ʘ|#~ ʘ,ʘ ("&͏{y(ʘ*& ~ ʘ,ʘ|:& ͢Ø/++ Can't read - not positioned ++ Position by: Track then Sector, or Group ØØ><>>:&xy 802$'    d    }0}o|g0:$2$z0y> >*T ʃ~ ͽʃ#~ #z {dƀ_/++ Bad Displacement (Not 0-7FH) ++ Ã~#(5~ͫ , ->#0|:8 A|G|0))))o#~# #~ͫ0:0#bk)))o|g/ DU2 :&A:&o&/? ' :'G!(o|g> w> !(:q2&:&(=2&á/ Type Any Character to Continue or ^C to Abort - ͽ(͡<:&ʃZ%> > `_O > :& . 0 ( y >2& 8:&<2&:&*&̈́%m"&BK*&"&*&̈́%`i0 :& +*& :& g"&DM/++ Not Within Tracks 0-*&/ ++ Ã>2&(./++ READ Failed, Sector may be Invalid ++ :& ./++ Cannot Write Unless Read Issued ++ (/++ WRITE Failed ++ /Introductory HELP on DU2 (Disk Utility) The DU2 program is designed to provide the user with the ability to manipulate information on the disk as easily as the DDT and SID utilities allow the user to manipulate information in memory. The following is a summary of the commands available to the DU2 user. This same list is invoked internally by the ? Command of DU2. For additional information on disk structures and how to use DU2 in general, refer to the files DU2.DOC and DU2.HLP. >2&Q2&/======================================================= -- Command Summary -- ------------------------------------------------------- Operands in brackets [...] are optional @ Repeat Previous Non-@ Command Line +[nn] Step In [nn (decimal)] Sectors; -[nn] Step Out Sectors Note: + or - need not be followed by a "," to delimit commands. # Print Disk Parameters for Current Drive =xxx Search for ASCII xxx from Current Sector Note: upper/lower case matters. Use for hex: To find "IN 0" use: =<0> or "(tab)H,0(CR)(LF)" use: =<9>H,0 *[nn] Repeat [nn (decimal) times]; ! Pause for User :ntext Define 'text' to be Macro n; n Perform Macro n, 0<=n<=9 :Pn Print Macro n, 0<=n<=9 :Px Print All Macros if x=A or Print Prev Line if x=@ Q/------------------------------------------------------- A[ff,tt] ASCII Dump C Change: CHaddr byte byte... (hex) or CAaddr data... (Ascii) Allowed for imbedded hex. or CHfrom-thru byte e.g. ch0-7f,e5 or CAfrom-thru byte D[ff,tt] Dump (Hex and ASCII) Ffn.ft Find File Gnn CP/M Allocation Group nn (hex) H[ff,tt] Hex Dump L[d] Log in Current Drive or Drive d M[nn] Map [from group nn (hex)] Q/------------------------------------------------------- N Load New Disk; P Toggle Printer Switch Q Queue Status; QZ Zero (Empty) Queue QSfn.ft Save Queue as a File on Disk < Save Current Block into Temp; > Restore Temp Block B Restore Queue Block G[n] Restore Queue Group Snn Sector nn (decimal) Tnn Track nn (decimal) Unn Set User nn (decimal) for Find command (CP/M-2 only) V[nn] View [nn (decimal)] ASCII Blocks R Read Current Block; W Write Current Block X Exit Program Z[nn] Sleep [nn (decimal) seconds] Q/------------------------------------------------------- Command Line is of the form: DU2 du? "d" is Logged-In Disk, "u" is Current User Cancel a function with C or Ctrl-C. Suspend output with S or Ctrl-S. Separate commands with ",". Example: g0 +,d,z2,* would step in, dump, sleep 2 sec, and repeat until control-c typed. "nn" usage varies with command as follows: +, -, *, T, S, U, V, Z nn in Decimal (use #nn for Hex) G, M nn in Hexadecimal (use #nn for Decimal) "ff" and "tt" are in Hexadecimal (use #ff or #tt for Decimal) ======================================================= Q/======================================================= DU2 Status Information ------------------------------------------------------- Processor Speed: :p0/ MHz Number of Lines on CON: :qo&/ Group Save Buffer Address: >ͺ/ Hex ======================================================= :& KÃ/ Exit to CP/M -- Do you wish to Warm Boot (Y/N/=N)? ͽͫY*&y(#x}/o|/g#ɷ|g}o0  }o|gBKx ! T]x( &!&~:&w*&"&"&w:2@+-= #3?6*!-ACDFGHL M NP QR@STUVpWX%Z+ Do you wish to Warm Boot (Y/N/=N)? ͽͫY*&y(#x}/o|/g#ɷ|g}o0  }o|gBKx ! T]x( &!&~:&w*&"&"&w:2@+-= #3?6*!-ACDFGHL M NP QR@STUVpWX%Z+ Do you wish to Warm Boot (Y/N/=N)? ͽͫY*&y(#x}/o|/g#ɷ|g}o0  }o|gBKx ! T]x( &!&~:&w*&"&"&w:2@+-= #3?6*!-ACDFGH~