program downgrau;
{ macht einen Download mit 16 Grauwert-Masken auf den Delta-10 }
const esc: char = #$1b;
var ch,n1,n2: char;
    i,j,k,e: integer;
var   g: array[0..15] of string[11];

begin
{ array mit 16 Grauwerten initialisieren; Download immer mit 11 Bytes;
  Pixel 4 pins hoch, 7 pins breit (ohne "halbe" pins) }
g[0]:= '@@@@@@@@@@@';
g[1]:= '@@@@@@H@@@@';
g[2]:= '@@B@@@H@@@@';
g[3]:= '@@H@@@J@@@@';
g[4]:= '@@J@@@J@@@@';
g[5]:= '@@J@D@J@@@@';
g[6]:= 'A@J@D@J@@@@';
g[7]:= 'D@J@E@J@@@@';
{ oberstes Bit aus Grauwerten herausmaskieren }
for i:=0 to 7 do
  begin
  for j:=1 to 11 do
    begin
    g[i][j]:=chr(ord(g[i][j])-$40);
    end;
  end;
{ restliche Grauwerte sind Komplemente }
for i:=8 to 15 do
  begin
  for j:=1 to 8 do
    begin
    if odd(j) then g[i][j]:=chr(15-ord(g[15-i][j]))
              else g[i][j]:=chr(0);
    end;
    for j:=9 to 11 do
      g[i][11]:=chr(0);
  end;

{ Download der 16 Grauwerte anstelle der Zeichen @,A,B,...,O }
n2:=chr(7);
for i:=0 to 15 do
  begin
  n1:=chr(i+$40);
  write(lst,esc,'*',chr(1),n1,n2);
  for j:=1 to 11 do
    write(lst,g[i][j]);
  end;
writeln('Okay, das wars.');
end.


