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

{%begin
 %integer n, i
 %byteinteger c    

{main}
   init

  %cycle
    prompt("ino ($) (FFFFFFFF end): "); rhex(n); skipsymbol
    %exit %if n = 16_FFFFFFFF
    write(n,0) ; space; printstring("offset= ");
    i = rem(n,8)
    %if i = 0 %start
        write( 8, 0 )
    %else
        write( i, 0 )
    %finish
    newline
    n = SUPERB + ( (n+7) >> 3 )
    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
