%include "dkmain.imp-nolist"
%include "readdk.imp-nolist"

{%begin
 %integer i, j, n
 %byteinteger c    

{main}
   init

  %cycle
    prompt("blk no. ($) (FFFFFFFF end): "); rhex(n); skipsymbol
    %exit %if n = 16_FFFFFFFF
    write(n,0)
    newline
    i = ReadDisk( n )
    %continueif i = 0

    write(0,3); printsymbol(':')
    %for i=1,1,512%cycle
        c = buffer(i)
        %if c = 0 %start
              printsymbol( ' ' )
              printsymbol( ' ' )
        %elseif c <= ' ' %or c > 126 
              phex2( c )
        %else
             printsymbol( '|' )
             printsymbol( c )
        %finish
        %exit %if i=512
        %if rem(i,  32 )= 0 %start
              newline
              write(i,3); printsymbol(':')
        %finish
    %repeat
    newline
  %repeat

  bye
%endofprogram
